Lesson 2 · Architecture
The pipeline: five deterministic gears
Everything runs offline, at $0, with no clock and no randomness. Run it twice: the bytes are identical.
Manifest
corpus-manifest.json freezes 2.537 read-only references. Any other family = hard fail. Raw is never copied, cloned or mirrored.
Bridge
2.537 bridge lines: 1.195 pre-existing package.jsonl reused + 1.342 synthesized. Derived metadata only — raw untouched.
Extraction
extraction-rules-v4: versioned patterns over source.md (wiki scaffold structurally removed) and raw/transcript.txt. 5-signal cap, priority-ordered.
Queue
queue-scoring-v2: theme×persona clusters, hard gates, transparent 0–5 sub-scores with published weights, conflict penalty.
Artifacts
signals.jsonl · indicators.jsonl · opportunity-queue.jsonl · founder-brief.md · coverage.json — all byte-identical across runs.
Why determinism matters
A queue that changes between runs cannot be audited. Every artifact here can be regenerated and hash-compared: two independent processes produced identical SHA-256 for all four core artifacts.
node run-extract.mjs --verify # signals/*, coverage.json — byte-identical
node run-queue.mjs --verify # indicators, queue, brief — byte-identical