Repository navigation
Project Observatory 0.13.0
A minor release: three audit-and-fix runs over 0.12.0 (2026-10-03) — 173 defects found, 167 fixed (two
of them in part), the rest open and named. The findings, the checks and what is still open are in
docs/reports/2026-10-03-observatory-audit-run-{1,2,3}/README.md. The companion plugin
observatory-log is 0.14.0: its hook and its handling-secrets skill text changed.
Changed
- Every engine git call goes through one hardened door (
safe_git.py): no credential helper,
askpass, pager, fsmonitor, hook, signer, external diff, textconv or filter driver runs, only the
https, http, ssh, git and file transports are allowed, and ssh runs in BatchMode. Plain values
of your git config (url.*.insteadOf,safe.directory, excludes, proxies) still apply. A
consequence: a collector sees an LFS file as its pointer. SECURITY.md lists what remains. - The wheel carries the tested dependency lock; README → Install is two steps (the wheel, then
its[full]extra under that lock), andfull update --applyinstalls with it. - A vault
PROJECTis the project's folder name; a registry id (project:local-alpha-web) or
name is accepted and normalised to that folder, and two projects claiming one string are refused. full agent installchecks that Claude Code really installed the plugin before saying so,
anduninstallleavessettings.jsonas it was before the install.- No key is not "ready":
model_statusisno-key,nextnamesinstall_key.py, and doctor
andassistant statusshow where the key comes from (an inheritedOPENROUTER_API_KEYtoo). - Bare
observatorywithout a workspace exits 2 (it printed its guidance and exited 0). - The registry guard refuses a swing over ±25% only above a floor (more than 5 projects added
or more than 1 lost), so a small estate can grow; an empty registry is always refused. - Every
full <command> --helpprints help and runs nothing,full google --forceand
full plugins --only ID --forceare accepted, and doctor lists every known setting. - PassionCode design system 1.1.0: the dark control edge is
#6f5e77(3:1 on every surface),
on the dashboard, the website and the Mac app. - The Mac app: one dashboard window; a window reopened after a workspace change shows that
workspace; Start Server is offered only where it can start; no model or budget is a named step;
the assistant and Settings in the dashboard's tones; ⌥⌘↑/↓ walk the conversations. configure model chainandconfigure budgetset what the assistant needs;vault.py remove
removes a slot or its retired archives on the record.
Fixed
- Keychain and prompts:
git ls-remote, scheduled commits, the remotes probe (agcrypt::
remote started its helper), collectors and the Stop hook could run a credential helper, signer,
hook or filter of the user's git config; the dashboard window cancels every password or
certificate challenge. - Lost work:
full cleanup --apply --include manualcould remove a dirty worktree after saving
an empty or unappliable patch; it now proves the patch applies first. - Keys: a second sighting of one leaked slot stopped the whole board; a value typed as a name,
owner or note reached the registry and the pages; the keyserver's leak route could be turned into
vault options; refusals over MCP and the keyserver quoted the caller's value; a vault slot
reached the Keys page only after an OpenRouter scan; a key with no limit read as spent. - New user:
full localwith no projects source ended in a traceback; the first board said the
dashboard was unverified; a folder whose remote is on another host had no history and its
unpushed commits were reported nowhere; seven handed-over commands were refused by the step
runner; messages named source-tree paths; a missing[full]extra was blamed on the interpreter. - Dashboard: keyboard focus was lost after a sort or a reset; the project panel said "no
commits" for a project with commits; empty pages gave no command; demo pages carried the
builder's paths; the server answered HEAD with 501; the Russian copy had meaning errors. - CLI: a bare
full open --stoplooked on the default port, not this workspace's.
macOS app
ProjectObservatory-0.13.0-macos.zip is the Mac app (macOS 14+), signed with a Developer ID and notarized by Apple, with the ticket stapled. Check it against SHA256SUMS, unzip it and move Project Observatory.app to /Applications; Gatekeeper opens it without a warning. It needs the engine from the wheel above (README → Install).