Anchor the gitignore patterns; a fresh clone did not compile

`spool/` is unanchored, so it matched `agent/pkg/spool/` - the durable
queue, source code - and the repository excluded it. Cloning and building
was what found it; nothing in the working tree ever would, because the
files are right there.

`data/` and `agent.json` have the same shape and are anchored too.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HViLj9gYNRtSr7YVZmW5sn
This commit is contained in:
2026-09-04 12:08:01 +05:30
parent 5453c26e4c
commit 2b69a0be3d
3 changed files with 438 additions and 20 deletions

55
.gitignore vendored
View File

@@ -2,38 +2,53 @@ __pycache__/
*.pyc
.venv/
venv/
.env
data/
models/*.onnx
models/*.caffemodel
models/*.prototxt
*.log
.pytest_cache/
*.log
# macOS Finder metadata and rotated engine logs.
.DS_Store
*.log.[0-9]
node_modules/
# --------------------------------------------------------------------------
# Everything below is ANCHORED with a leading slash on purpose.
#
# An unanchored pattern matches at every level, and `spool/` therefore excluded
# `agent/pkg/spool/` - the durable queue, source code - so a fresh clone did not
# compile at all. Found by cloning the repository and building it, which is the
# only way this class of mistake is ever found. `data/` and `agent.json` have
# exactly the same shape and are anchored for the same reason.
# --------------------------------------------------------------------------
# Camera credentials. Copied between machines by hand, never committed.
/.env
# The engine's writable state: the biometric database, the camera list, logs.
/data/
# Downloaded models, ~200 MB, fetched by `setup-models`.
/models/*.onnx
/models/*.caffemodel
/models/*.prototxt
# run-local.sh's working directory: the built binary, the encryption key and
# the broker's password file. Nothing here belongs in a repository.
.local/
/.local/
# The agent's local state when BEHAVISION_DATA_DIR points at a checkout.
# agent.json holds this PC's broker password and its API token.
agent.json
spool/
/agent.json
/spool/
# Build output. The Windows package is ~400 MB unpacked and is rebuilt from
# source by installer/build.ps1; the WebView2 bootstrapper is Microsoft's
# redistributable, fetched at build time rather than vendored into history.
/dist/
/build/
desktop/build/bin/
installer/vendor/
node_modules/
/desktop/build/bin/
/installer/vendor/
# NOT ignored, deliberately: server/internal/web/dist and
# desktop/frontend/dist. Both are `go:embed`ed at COMPILE time, so without
# them in the tree `go build ./...` fails on a fresh checkout - on a machine
# that may have no npm at all. They are ~200 KB and regenerating them is one
# command; a repository that does not compile is the more expensive problem.
# macOS finder metadata and rotated engine logs.
.DS_Store
*.log.[0-9]
# desktop/frontend/dist. Both are `go:embed`ed at COMPILE time, so without them
# in the tree `go build ./...` fails on a fresh checkout - on a machine that may
# have no npm at all. They are ~200 KB and regenerating them is one command; a
# repository that does not compile is the more expensive problem.