Download STATUS.md from build-small-hackathon/Forager-Field-Notes: direct link, hf CLI and curl.
- Browser
- Download file 3.97 kB
-
https://huggingface.co/spaces/build-small-hackathon/Forager-Field-Notes/resolve/refs%2Fpr%2F2/STATUS.md
- Command line
-
hf download hf://spaces/build-small-hackathon/Forager-Field-Notes@refs/pr/2/STATUS.md
-
curl -L -o STATUS.md https://huggingface.co/spaces/build-small-hackathon/Forager-Field-Notes/resolve/refs%2Fpr%2F2/STATUS.md
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-safetybranch is 1 commit ahead and this repo has no git remote. It is a local repo that deploys to Hugging Face viadeploy.py.- The Space has not been redeployed. The
deploy.pyexclusion takes effect on the nextpython deploy.py <user>/forager-field-station, soobservability/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 nextdeploy.pyrun. [non-production] Approve the redeploy (it publishes). - The
forager_mlconvergence 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-rundeploy.py. - [non-production] Until then, decide whether the live Space should keep serving the shortcut.