Build Log · June 25, 2026

Stop building the instrument — build the observer

An advisor's review pushed back on Claude's instinct to keep building the Principle Engine. The session switched from building the measuring instrument to building the observer — the researcher's own contamination guard, an assumptions scoreboard, a chronological archive — and wrote a hard gate that makes 'Tim runs next' the default.

  • ForgeKit OS
  • Transfer Research
  • Principle Engine
  • Strike
new for-zeb files (observer, assumptions, archive, bench)
4

new for-zeb files (observer, assumptions, archive, bench)

advisor suggestions triaged (2 accepted, 1 pushed back, 1 reframed)
4

advisor suggestions triaged (2 accepted, 1 pushed back, 1 reframed)

Strikes captured (incl. the SDLC 'it's just X' frame)
3

Strikes captured (incl. the SDLC 'it's just X' frame)

hard gate making Tim-runs-next the default
1

hard gate making Tim-runs-next the default

Timeline

  1. Start

    Read the advisor's review, didn't just agree

    Two suggestions better than what Claude built, one a trap, one a reframe worth ratifying

  2. Split

    Diverged from the advisor on two points

    Rejected the 4-week calendar (gate on evidence, not a date); rejected 'design Tim's project' (criteria, not design — contamination risk)

  3. Build

    Observer kit, not more instrument

    researcher-role.md, assumptions.md, chronological archive.md, burden-of-proof rule, project-selection criteria

  4. Gate

    Made 'Tim runs' the default next move

    Any further kit session must first name a specific handoff blocker — fourth meta-session in a row

  5. Harvest

    Two Strikes + Anvils to the journal

    Observation precedes imagination; ForgeKit is in its discovery phase (method now, OS later)

What shipped

  • New for-zeb/researcher-role.md — the observer kit: names the four contamination mistakes Zeb WILL make watching Tim (help him, explain intent, read encouragement as evidence, fish for praise), the 'don't be nice' commitment to extract up front, and a 5-item capture list for the moment Tim leaves before memory rewrites the result

  • New for-zeb/assumptions.md — the pre-registration scoreboard: write the bet BEFORE Tim starts, mark Confirmed/Rejected/Modified/Unknown after, never edit the assumption to fit the result. Makes the anti-bias rules enforceable instead of aspirational

  • New for-zeb/archive.md — the graveyard, reorganized chronologically (not by category) so it reads as a history you can tell as a story; retirement type becomes a tag, not the organizing axis

  • Added the burden-of-proof rule to principle-engine-vocabulary.md: no new primitive, tier, or rule until an existing experiment FAILS to explain observed behavior — shifts the question from 'should we add this?' to 'did reality force us to?'

  • Added project-selection criteria to handoff-protocol.md §Step 0.5: Tim picks his own real project against criteria (real stakes, enough surface, his choice) — Claude must NOT design it, because designing it pre-selects conditions that flatter the loop

  • Hardened the engine gate: 'Tim runs' is now the explicit default; any further kit session must first name a specific blocker that would stop the handoff if left unbuilt

  • Two Strikes + Anvils captured: observation precedes imagination (the burden-of-proof law); ForgeKit is in its discovery phase — an experimental method now, an operating system later

  • THE-LOOP.md: told Tim the AI is a partner in ALL eight steps (not just Execution), while deliberately staying silent on who OWNS each step — the ownership boundary (AI owns Execution, human owns Intent+Judgment) is a finding for Tim to reinvent, not be told

  • New for-zeb/BENCH.md — the one-page glance-before-handoff researcher note: what this is, the one move (minimal→watch→structured), the four rules, the hard gate, a map to every other for-zeb file

  • Armed the kit against the SDLC trap (a senior engineer maps the loop onto the SDLC he already runs and hands it back relabeled — a false positive that looks like reinvention): added the SDLC-discrimination interview question to observation-guide.md and the recognition-vs-transfer scoring rule to evidence-framework.md

  • Captured the 'it's just X is a discovery' Strike: 'it's just the SDLC' and 'it's just a Zeb primitive' are opposite outcomes and both are real findings — only an unrun experiment is failure

“Every improvement to ForgeKit should come from observed human behavior before it comes from imagination.”
— The North Star sentence — the Strike this session made operational