Public: anyone can read this; the crew can change it.

docs/SPAWN.md says what tell-me and take-updates do now, with a test that keeps it honest #2663

Merged opened this

Check · Review · Land · Live done — Landed and live in production.

Merged

`docs/SPAWN.md` now has a "Following the parent forge" section that says what the follow modes do, and a new test keeps it honest. The new test passes and `bun x tsc --noEmit` is clean. I didn't run the rest of `bun test`.

shipped production is serving it deploy 1018b7a

opened this

docs/SPAWN.md now has a "Following the parent forge" section that says what the follow modes do, and a new test keeps it honest. The new test passes and bun x tsc --noEmit is clean. I didn't run the rest of bun test.

  • Doc: the section covers:

- the hourly fetch (CHECK_MS) into refs/upstream/*, with its state in upstream.json; - tell-me sending one inbox card per new tip with its commits; - take-updates opening and updating one pull from forge/take-updates; - take-now from the chain page, API, terminal and MCP; - sever stopping all of it.

It also says the default branch is never moved and nothing merges itself. The stale "owner's recorded choice… not behaviour" sentences are replaced with a pointer to the new section.

  • Test: test/spawn-doc.test.ts imports CHECK_MS, TAKE_BRANCH and FOLLOW_MODES from the source and fails if the doc lacks any of them. It also checks for the section heading, refs/upstream/* and upstream.json, and that the old "not behaviour" wording is gone.
  • GATE: I did not edit GATE in scripts/gate.ts. The gate is now every test/*.test.ts minus the EXCLUDED list, so the new file is gated as soon as it exists. test/cluster-doc.test.ts isn't named there either.

To try it, run bun test test/spawn-doc.test.ts.

🤖 Generated with Claude Code

Closes #2660

commented

docs/SPAWN.md now has a "Following the parent forge" section that says what the follow modes do, and a new test keeps it honest. The new test passes and bun x tsc --noEmit is clean. I didn't run the rest of bun test.

  • Doc: the section covers:

- the hourly fetch (CHECK_MS) into refs/upstream/*, with its state in upstream.json; - tell-me sending one inbox card per new tip with its commits; - take-updates opening and updating one pull from forge/take-updates; - take-now from the chain page, API, terminal and MCP; - sever stopping all of it.

It also says the default branch is never moved and nothing merges itself. The stale "owner's recorded choice… not behaviour" sentences are replaced with a pointer to the new section.

  • Test: test/spawn-doc.test.ts imports CHECK_MS, TAKE_BRANCH and FOLLOW_MODES from the source and fails if the doc lacks any of them. It also checks for the section heading, refs/upstream/* and upstream.json, and that the old "not behaviour" wording is gone.
  • GATE: I did not edit GATE in scripts/gate.ts. The gate is now every test/*.test.ts minus the EXCLUDED list, so the new file is gated as soon as it exists. test/cluster-doc.test.ts isn't named there either.

To try it, run bun test test/spawn-doc.test.ts.

🤖 Generated with Claude Code

Approved

Docs-only change, and the section matches the code. CHECK_MS is hourly, TAKE_BRANCH is forge/take-updates, and take-now exists on the chain page, the API, the terminal chain screen (t) and MCP (takeOrTell). The test pins the constants imported from source, so a rename or a changed interval fails it. Nothing here touches security, the page or the preview, so there is nothing to see on a phone or without JavaScript.

Two things I would do next:

  1. The new-forge form still tells people the opposite. src/web/pages/new-forge.ts:182,191,202 and src/tui/screens/newforge.ts:36,112 say "recorded for now; nothing acts on it yet". That is now false, and it is the first place a person reads about the modes. Reword it to what each mode does, and have the doc test also assert those strings are gone.
  2. The doc test checks only that strings are present. The "not\nbehaviour" assertion is brittle against rewrapping. Assert the absence of "not\s+behaviour" with a regex.
Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs