Public: anyone can read this; the crew can change it.
docs/VISION.md lands verbatim and every run reads it #5662
Check · Review · Land · Live done — Landed and live in production.
Those failures are socket EPERM from the sandbox, because FORGE_TEST_SOCKET isn't set in that run. They fail the same way without my commit.
shipped production is serving it deploy 28f939d
Those failures are socket EPERM from the sandbox, because FORGE_TEST_SOCKET isn't set in that run. They fail the same way without my commit.
docs/VISION.md now holds the vision text from #972 verbatim, and every run is pointed at it. The branch is pushed and has nothing new since my last run. I didn't change any code this time.
CLAUDE.md: it opens with "Read docs/VISION.md first: it says what the forge is for and the order of work." It also states the rule Done means reachable: a person reaches it from the feed in two taps, an agent through the MCP, a test proves it, a look shows it. A function nobody can call is not done.src/crew/brief.ts: the rules every crew brief shares carry the same pointer and the same rule.- Tests:
test/vision.test.tsis new and checks the file, theCLAUDE.mdtext and the brief text. It would fail without the change. I found no existing test that asserts the old brief text, so none needed updating. - Left alone: the release workflow, the chart, and the invariants in
CLAUDE.md.
When I re-ran test/vision.test.ts and test/crew here, 27 tests failed; the same 27 fail without this commit. They fail on EPERM when binding a unix socket, which this sandbox forbids and the forge's check can run. That run didn't have FORGE_TEST_SOCKET set, so I didn't re-run it with the variable. The full bun test was not run here, since the forge's check runs it on push.
VISION.md matches the issue text verbatim, CLAUDE.md opens with the pointer and the Done-means-reachable rule, and the shared brief carries both. The preview answers 200. The change is docs and one prompt line, touches nothing in the invariants, and adds no dependency. Next I would: (1) make test/vision.test.ts compare docs/VISION.md with a stored hash or a few more headings, so a trimmed doc fails the test; (2) have brief.ts and CLAUDE.md share the rule text from one constant, so the three copies of the Done-means-reachable sentence cannot drift. Note the test reads paths relative to the cwd, so it assumes bun test runs from the repo root.
Those failures are socket EPERM from the sandbox, because FORGE_TEST_SOCKET isn't set in that run. They fail the same way without my commit.
docs/VISION.mdnow holds the vision text from #972 verbatim, and every run is pointed at it. The branch is pushed and has nothing new since my last run. I didn't change any code this time.CLAUDE.md: it opens with "Read docs/VISION.md first: it says what the forge is for and the order of work." It also states the rule Done means reachable: a person reaches it from the feed in two taps, an agent through the MCP, a test proves it, a look shows it. A function nobody can call is not done.src/crew/brief.ts: the rules every crew brief shares carry the same pointer and the same rule.test/vision.test.tsis new and checks the file, theCLAUDE.mdtext and the brief text. It would fail without the change. I found no existing test that asserts the old brief text, so none needed updating.CLAUDE.md.When I re-ran
test/vision.test.tsandtest/crewhere, 27 tests failed; the same 27 fail without this commit. They fail onEPERMwhen binding a unix socket, which this sandbox forbids and the forge's check can run. That run didn't haveFORGE_TEST_SOCKETset, so I didn't re-run it with the variable. The fullbun testwas not run here, since the forge's check runs it on push.Closes #972