STATE
- iteration: 5
- phase: major pivots allowed (iterations 1–6)
- last_focus: #13 Build-ready (canonical data + validator; worldgen, controls, UI, nav, save, physics, M1 behaviours)
- consecutive_iterations_all_4plus: 0
- stop rule: every item at 4+ for two consecutive iterations with no major changes, or iteration 20, then write DONE.md
- tiebreak rule: lowest score first; if tied, the item touched least recently; if still tied, the lowest rubric number
Scores
| # | Rubric item | Score | Evidence (one line) | Last touched |
|---|---|---|---|---|
| 1 | First hour cozy, clear, hooky | 3 | Flux timings now support §14 (broken shed tinged at 6.5 min, so the first-Deep-watch gleaner is reachable); no pacing sim or playtest proxy yet | i1 |
| 2 | Automation satisfying, clear progression | 3 | AE unit makes factory sizing legible ("this lamp keeps 6 alembics clean", S01 §3b); unlock timing (S06) unproven | i1 |
| 3 | Emergence is real, with sim evidence | 4 | S09: tipping point at 13 AE with hysteresis; rain return at each front; the same factory fails three different ways by site; flux sinks the island 44 fathoms without mining; roots loop and acting entities not yet modelled | i2 |
| 4 | Vertical tension drives decisions | 3 | New: deep factories cost buoyancy via crystal taint (S09 E3); the log buoyancy curve and tide are still unsimulated (S03) | i1 |
| 5 | 10+ recurring decisions with real tradeoffs | 3 | 16 decisions; K2 (vent/scrub/none) and K4 (siting) now shown real with costs and the dominant scrubber fixed (D35); others unchecked | i1 |
| 6 | Dread without combat, systemic and fair | 3 | Gleaner-eligible territory is now a measured function of layout (S09); the V formula is rescaled but entity behavior is unsimulated (S07) | i1 |
| 7 | Research is a satisfying puzzle that replays | 4 | S05: with pools shown and a partial Prism, thinking needs 49% fewer failed tests than guessing; 69% aha; a 3-currency frontier (flux, warp, clues); stable difficulty (p90 16 vs median 12); worked example; whisperer and arranger clues not modelled, no playtest | i3 |
| 8 | Endings earned; the arc lands | 3 | Three mutually exclusive sustained-state accumulators; thresholds untested | i1 |
| 9 | Replay value across seeds | 3 | S05: 400/400 distinct recipe graphs, 25% overlap between seeds, gate ancestry varies (Metal needs Hush in 15% of seeds, Breath in 14%); island shape, keeper and charter variety still unmeasured | i3 |
| 10 | Art bible cohesive, matches reference, readable | 3 | m01 palette; new trace-haze band and poisoned-cloud signal; LUT untested (m02) | i2 |
| 11 | Art production plan realistic, no purchases | 3 | Asset list now split per milestone (S10: 76 code / 27 procedural / 125 AI, 18 hand); D41 removes the dependency on an image model with placeholders and an owner drop folder; still no lanternforge prototype | i4 |
| 12 | Scope realistic, first slice small | 4 | S10 audit (228 assets, about 33 kLOC, within the 25–45 kLOC band); 1.0 core vs layers vs cuts decided; exact M1 manifest (79 assets, about 12 kLOC) with a not-in list; 3 deployable checkpoints, the first tiny | i4 |
| 13 | Build-ready, no questions needed | 4 | docs/data/ canonical JSON (176 records, validator: 0 problems, S01 and S05 parity); GDD §20.6–20.12 specify worldgen, controls, UI flows, entity navigation, save format, physics and M1 state machines; M2+ machine behaviours are still table prose |
i5 |
Next focus
Everything else sits at 3. Least recently touched (i1): #1, #2, #4, #5, #6, #8. The rubric order gives #1 First hour: build S06, a pacing sim of the first hour (chores, timings, unlocks), and tighten §14.
Pivot notes
None yet. A pivot candidate worth watching: if S05 shows the deduction puzzle is shallow, revisit D20 (add a light theory layer, or restructure the clues).
Environment notes
- Python 3.14 is available. numpy and Pillow are not installed. Sims and mockups use the stdlib only.
docs/art/mockups/pngw.pyis a minimal PNG writer and palette loader. Import it from sims withsys.path.- Project venv:
.venv/(gitignored) has numpy and Pillow. Recreate it withpython3 -m venv .venv && .venv/bin/pip install numpy pillow. Run sims with.venv/bin/python. - Canonical data:
docs/data/make_data.py→*.json. Run it after any number change; it runsvalidate.py. - Flux reference engine:
docs/sims/fluxcore.py, with tuned params indocs/sims/S01_chosen_params.json. S09 reuses it. - Deploys:
web/builds the dossier and deploys a separate Workerlanternholdon routesbryanbecker.com/lanternhold*, leaving the main site Worker untouched. Runcd web && npm run deploy. Screenshot pages withnode web/scripts/shot.mjs. - Owner confirmed all i1 assumptions (Q1–Q9). Audio is skipped (D25): don't spend iterations on it.
- No reference image exists. The brief's written mood is canonical (D26). If
docs/reference/inspiration.pngappears, view it on art iterations.