Forager-Field-Notes / STATUS.md
HomesteaderLabs's picture
Safety fix: never return an edible verdict from a single photo
6f38f56 verified
|
Raw History Blame
3.97 kB

STATUS

Running log of where the Field Station actually is. Newest entry at the top. Append, do not rewrite.

Cross-repo facts live in the Forager wiki at ~/Documents/Forager/forager-wiki/.


2026-08-15 — shared observability package; the dev harness stops shipping to the Space

The dev harness was being uploaded to the public Space. deploy.py's IGNORE list excluded scripts/* but not observability/*, so the whole Postgres harness went up with every deploy. Now excluded. Verified the Space runtime never imported it: app.py, pipeline/ and game/ are clean.

forager-obs adopted. The toxic_as_edible rule was implemented here inline in SessionWriter and separately in forager_ml as a property on InferenceOutcome, with the flagship 0.0 claim resting on both. It now comes from github.com/thefullnacho/forager-obs (public, main), an editable sibling install, along with connect/migrate, the batch-writer contract (SessionWriter is now a BaseWriter) and the val-set walk including k_groups.

The session-grained schema stays here. forager_ml's is image-grained. Those answer different questions and are deliberately not merged — recorded in the wiki so a later pass does not "fix" it.

Compose collision fixed. This repo and forager_ml both bound host port 5433 and derived the same Compose project name from their parent directory (observability in both), so bringing up the second silently recreated the first's container. Now 5434 / forager-fs-obs, and both run side by side for the first time.

Verified: 4 observability tests + 4 two-photo tests green against a live Postgres on 5434, and the Space's pipeline imports unchanged.

In flight

  • two-photo-safety branch is 1 commit ahead and this repo has no git remote. It is a local repo that deploys to Hugging Face via deploy.py.
  • The Space has not been redeployed. The deploy.py exclusion takes effect on the next python deploy.py <user>/forager-field-station, so observability/ is still present in the currently published Space.

Next concrete action

Decide whether to redeploy the Space now (which removes the dev harness from the public repo) or fold it into the next content deploy.

2026-10-25 — merge + GitHub remote

Changed: two-photo-safety fast-forwarded into master (two-photo safety protocol, observability harness, confidence-banded single-photo gate, shared forager-obs). Repo now has a private GitHub remote, thefullnacho/forager-field-station, default branch master; both branches pushed. assets/ (local backyard photos, video) is gitignored.

In flight

  • The Space has still not been redeployed. observability/ is still in the published Space until the next deploy.py run. [non-production] Approve the redeploy (it publishes).
  • The forager_ml convergence drift check stays local-only. Its reason (no remote here) is gone, so it could move into CI now.

Next concrete action

Space redeploy deferred (2026-10-25): fold it into the next content deploy, which will also remove observability/ from the public Space.

2026-10-27 — safety fix deploy blocked

The fix that removes the 0.85 single-photo edible shortcut (209f6b6) is on master but not live. The live Space is build-small-hackathon/Forager-Field-Notes, not the HomesteaderLabs/forager-field-station named in the docs (that one doesn't exist). The HomesteaderLabs token has read-only access to the hackathon org, so the upload was refused (403). Nothing changed on the Space; it still serves the 2026-06-14 build and is sleeping. A new Space under HomesteaderLabs returned 402: Gradio on free CPU needs PRO.

  • [non-production] Get write access back on build-small-hackathon, or choose a new home (PRO for HomesteaderLabs, or a different host), then re-run deploy.py.
  • [non-production] Until then, decide whether the live Space should keep serving the shortcut.