Commit Graph

12 Commits

Author SHA1 Message Date
type-two
f2da81a9cf [data] the ladder, the ground, and the broadcast schedule
Round 5 (MEGA), all eight orders.

THE COMMISSION LADDER — the fax is the tutorial. The queue used to open on
one MELT, i.e. "build eight machines correctly, in order, with no feedback
until the last one works". Now four rungs teach one mechanic each and never
say so: 20 raw ore (extractor->belt->uplink) -> 15 luma (the demuxer, and the
slurry is your problem) -> 18 hf-dust (waste is inventory) -> 1 melt
(graduation; first-taste keeps its id, reward 50->80). Measured against SIM's
real sim: rung 1 clears at tick 650 = 21.7s with 4 machine types, against a
3-minute budget.

data/seams.json — seam regions per stratum, richness, and a seam-free
relicReserve in the SE so SIM's seed-derived optical fossil always has
somewhere legal to land. stream-crust-west covers all three reference-factory
extractors, pinned by a test.

data/stations.json — the whole dial: FKTRY FM, THE STANDARD (30 lines of
Correction propaganda, 10 minutes before a repeat), NUMBERS, DEAD AIR. The
numbers station is a real treasure map: each 5-figure group is
[x+32][y+32][richness*9] and three of them are the hidden seams. The validator
recomputes them from seams.json, so the map cannot drift, and no decoy is
allowed to decode onto real treasure.

Also:
- mosquito trap: input-free recipe, the shape LANE-SIM detects traps by (my
  first pass took ingredients, which would have silently made it an ordinary
  crafter). Unblocks vaporwave-sunset after four rounds; FORWARD_CANON pruned.
- cooler final 0.0018 -> 0.001: the additive ruling made two coolers immortal.
  Now 1 doubles output, 2 nearly eliminates downtime, 3 is an absurd shrine.
- SIM's tuning constants imported; the hand-copies are retired.
- the optical fossil canon: §1's fossils "sing when excavated", so the world is
  silent until you dig up the severed audio bus. One margin hint, mid-ladder.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-18 13:47:08 +10:00
type-two
8dd4616580 [orchestrator] MEGA round 5: the paint and the pipe
Supersedes unexecuted round-5 orders. Folds in the live first-eyes review findings
(silence, void floor, onboarding cliff, quiet payoffs) + John's hidden-radio idea.

Contracts v6: AudioFX (THE SPEAKER - all Web Audio synthesis, no asset files),
RelicState + excavate + relicFound (the optical-fossil hidden pipe: find it and the
game grows a tuner - FKTRY FM, Correction propaganda subtitled by THE SCREEN's
chyron, a shortwave numbers station reading hidden-seam coordinates, dead air).
main.ts wires audio + first-gesture unlock; src/audio stub awaits LANE-SCREEN.

Lane orders: SIM = wildlife + seams-become-real + the relic + research time;
RENDER = the floor (seam glints, strata whispers), relic shimmer (no signposting),
juice, break-room cabinet -> match.html; UI = mercy toast, tuner dock, SCREEN
click-to-enlarge, camera hints; SCREEN = era feed + THE SPEAKER (3 audio layers,
4 stations, spectral verification); DATA = the commission-ladder tutorial,
stations.json broadcast schedule, seams.json final.

Ship gate: after review, redeploy partly.party/glytch.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-18 12:56:09 +10:00
type-two
557c78b208 [orchestrator] round 4 review + contracts v5 + round 5 orders
Review: 5/5 pass, 318/318, tsc clean. Verified live: STANDARDS COMMITTEE renders all
eras with ratified nodes, fuel gauge + ON RESERVE state, composite seam in the tree.
Fixed the demo brownout (mine): __fktryDemo now grants referenceFactoryTech() via
testkit before dispatching (swaps to the grantResearch command when SIM lands it).

Contracts v5: grantResearch command (sandbox is a feature), SelectionState inspect
mode (RENDER's placed-and-selected auras), wildlife (WildlifeState + event),
coolRadius clarified ADDITIVE capped at HEAT_COOL_MAX. main.ts: typed selection
store (inspect-capable), sentinel string no longer sent, narrowing fixed in UI's
faithful-copy harness (my breakage, my fix).

Rulings: research-time approved; pack abandonment kept as design; DATA's ungating +
starter-plant arithmetic ratified; SCREEN era-feed + jammed-rot approved; UI tab
strip approved. MASTERPLAN: bare-stash ban, stale-numbers process note.

Round 5 = M2 closes: wildlife (dust piles, mosquito swarms, traps), research takes
time, era-aging sky, seam map groundwork, inspect-mode handshake.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 21:31:57 +10:00
type-two
dbb3615a64 [data] the composite seam + a tech tree that can actually be bought
Round 4 orders, all five.

The headline is a bug I authored: the v4 gating rule (any id in a
TechDef.unlocks is locked until that tech completes) turned three rounds of
tech authoring into a total bootstrap deadlock. Measured: melt not producible
at tick 0 (first-taste impossible), 0 of 24 techs reachable — every pack chain
gated behind packs you cannot make. disc-artifact-bottling cost 10 analog packs
and unlocked the only machine that bottles analog packs.

Fixed as a shape, not a patch, and both rules are now tests:
- the M1 melt chain is starting equipment (so first-taste is possible, and
  RENDER's era derivation correctly reads it as starting equipment)
- one pack is craftable at tick 0 — SPATIAL, made from the quantizer's own
  sins, so your first research is a study of your own damage
23/23 nodes now reachable; six emptied disc nodes deleted (no lane references
tech ids).

Also:
- §10 THE COMPOSITE SEAM transcribed: alpha/hard-matte/blue-hole/fringe-lace/
  green-spill/mixed-pixel/roto-chatter/ghost-feather/sodium-light (forward
  canon), matte bath, optical printer, chroma keyer, roto bench, neural keyer
  (powerDraw 240 — the codex's "appetite that dwarfs everything").
- ARCHAEOLOGY LAB canonized (kind: lab), ungated — a lab behind research is a
  lab you can never build.
- ASIC cooler live: the round-3 spec of 0.02 would have meant "never heats,
  free 100/s". Retuned to 0.0018, sane under both readings of the contract.
- accents where output-derivation can't work; CODEX_REF regex widened for §10.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 20:04:00 +10:00
type-two
83e3ad2107 [orchestrator] round 3 review + contracts v4 + composite seam codex + round 4 orders
Review: 5/5 lanes pass, 238/238, tsc clean. Verified live: scram duty-cycling with
tanks covering (zero brownout), shipment stamps, strain fever 0.824. Found 1 real bug
in review: UI BROWNOUT banner fires on covered deficit (topstrip.ts:66) - ordered.

Contracts v4: research (lab kind, setResearch, ResearchState, researched event),
SelectionState protocol (kills __remove sentinel, main.ts owns remove dispatch),
accent?, coolRadius? (spatial cooling), bandwidth.capacity?, save/load hardened,
heat ruled GROSS (net = heat - cool). tsconfig now typechecks data/ (DATA's proof).
Orchestrator patched lab entries into exhaustive kind maps (my breakage, my fix).

Rulings: pathspec-commit rule after 3 shared-index collisions (worktrees = named
escalation); bloom escalator reading accepted; UI ?uidemo + SCREEN boredom approved.

Codex: docs/FKTRY_LORE.md grew §10 THE COMPOSITE SEAM - keying/transparency artifact
family from the Corridor Crew compositing history + our corridorkey-mrp-mlx (which
doubles as a PYXLFK ground-truth artifact factory). DATA transcribes it round 4.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 19:43:48 +10:00
type-two
673a06dab8 [data] round 3 notes addendum: retune fixed two UI heat tests
Measured after LANE-UI landed live.test.ts: their THROTTLING/SCRAM HUD tests
fail on round-2 data and pass on round 3 (heat was decorative before). Their
remaining anchor-slab failure is independent of data — fails identically
either side of the retune; likely the reference layout circulating recovered
slabs back into the assembler instead of an uplink.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 18:26:21 +10:00
type-two
4cccd22ca4 [data] heat that fires, the muxer, reel + broadcast eras
Round 3 orders, all six. The validator move landed in 4803b6a (swept into
LANE-SCREEN's commit by the shared index); this is the rest.

- heat retune: round 2's numbers were below the sim's always-on cooling, so
  nothing could ever warm up. Decoder now 100 gen at 0.0033 heat / 0.001 cool
  -> throttles 10.2s, scrams 14.5s, 23.9s cycle, 25.8/s average (1.29x the
  ASIC). Verified against LANE-SIM's real sim, not just arithmetic.
- powerGen had to move: the scram/restart hysteresis forces ~30% duty, so at
  55 gen the decoder averaged worse than a steady ASIC and nobody would build
  one.
- two new tests refuse decorative heat (per-tick and per-craft). They caught a
  fresh instance of the same bug in chart-stco-map before it shipped.
- bufferCap 240 -> 300: one tank now covers exactly one decoder scram.
- ASIC COOLER spec'd (aura deferred to M4, no contract field requested yet);
  THE MUXER + moov brain sub-lines; reel + broadcast era tech.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 18:24:38 +10:00
type-two
08761e8eeb [orchestrator] round 2 review + contracts v3 + round 3 orders
Review: 5/5 lanes pass. 160/160 tests, tsc clean, M1 COMPLETE — verified live:
reference factory ships melt, commission queue advances with standing orders,
SCREEN's new artifact passes respond item-specifically (block 0.46 from bricks).

Contracts v3 (granted): EntityState.scrammed, SimSnapshot.commissionQueue,
MachineDef.coolPerTick, setRecipeAt command, Sim.save/load, ScreenFX.frame(t, snap),
BeltItem.id hardened required, MachineDef.color re-ruled as chassis/body.
main.ts: passes snapshot to screen.frame; dev __fktryDemo() builds reference factory.
happy-dom ACTUALLY installed this time (round-2 grant never landed; UI caught it).

Rulings: bandwidth units are per-second (SIM converts); heat retune ordered (nothing
can currently overheat - heatPerTick < ambient cooling); validator test moves to
data/; RENDER's color deviation approved as the ruling; scram wipe 3 frames; REMOVE
button approved. Round 3 orders in all lane docs.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 18:05:53 +10:00
type-two
3e70482447 [data] art direction, heat economy, container + bloom lines
Round 2 orders, all seven.

- data/CANON-DELTA.md: ledger of every invention beyond the codex, with the
  rationale and the arithmetic behind the numbers.
- colour + flavor on all 21 machines (kills UI's hardcoded lookup and RENDER's
  black-on-black); desaturated industrial per style guide §8.
- heat: software decoder 45->55 gen at 0.0025/tick (throttles 9.3s, scrams
  13.3s) so it's a burst generator, not a better ASIC; a pinch on the splicer.
- bufferCap 240 = 10s of the reference chain's one-decoder-down deficit.
- commission queue reordered into a ramp + 3 standing orders, incl. THE
  CORRECTION BUYBACK (the sellout loop: anchors clean THE SCREEN).
- container line (moov-shard/offset-ribbon/sync-key) unblocks the hex splicer;
  bloom grades 1-5. bloom-concentrate kept — LANE-SCREEN hardcodes it.
- validator 28 -> 36 tests, covering every v2 field; FORWARD_CANON pruned.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:20:36 +10:00
type-two
86d765f90b [orchestrator] round 1 review + contracts v2 + round 2 orders
Review: all 5 lanes pass — 70/70 tests, tsc clean, ownership audit clean,
integration verified live (sim -> events -> UI ticker + SCREEN corruption).

Contracts v2 (granted from lane requests): UIBus.pickTile (wired), BeltItem.id?,
MachineDef.{color,flavor,heatPerTick,bufferCap}?, CommissionDef.repeat?,
SimEvent 'scram'. main.ts: non-left pointerdown no longer places. happy-dom added.

Rulings: canon melt chain IS M1 (masterplan updated); rank-routing stays, splitters
next; anchor-slab sanitizing -> Correction buyback fiction; build-bar paging approved;
per-lane dev ports 8151-8155. Round 2 orders written in all lane docs.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 16:42:58 +10:00
type-two
f015a66283 [data] full codex catalog + data validator
Transcribe the §2-§6 codex into machine-readable canon and add the validator
that keeps five parallel lanes from drowning in dangling ids.

- validator (28 tests): recipes point back at their machine, every item/tech/
  commission reference resolves, ids unique + kebab-case, colors hex, footprints
  >=1x1, plus a reachability pass proving MELT is craftable from raw ore.
- items 9->36, machines 7->21, recipes 4->35, tech 0->17, commissions 1->10.
- mosh rewired to canon (gop-crate -> melt + reclaimed anchor slab); all seed
  recipe ids preserved so nothing dangles mid-round.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 16:04:27 +10:00
type-two
1a769e6cbd Baseline: GLYTCH prototype, FKTRY lore codex, scaffold + 5-lane orchestration docs
- index.html: WIMVEE GLYTCH match-the-glitch prototype (playable)
- docs/FKTRY_LORE.md: world bible / MODELBEAST asset codex
- fktry/: vite+three+TS scaffold, contracts, main loop, seed data
- fktry/MASTERPLAN.md + CONTRACTS.md + lanes/LANE-{SIM,RENDER,UI,SCREEN,DATA}.md:
  round protocol and Round 1 orders for parallel Opus 4.8 executors

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 15:51:12 +10:00