programs/ROADMAP_POST_5090_TO_SHIP.md
## ▶ SLICE RESCOPE (Josh RULED 2026-07-27, fifth + seventh sittings — binding on every phase below)
The vertical slice this roadmap ships is PROLOGUE → CH 13 (15 nodes), not Ch 2-5. Everything the
phases below say about "the slice" reads against that scope. The four ruled parameters:
- Build order inside the slice — Ch 2-13 FIRST (the earthly arc, 11 chapters), THEN the Prologue +
Ch 1 (the fairy realm), so the concept-art pipeline, the presentation ladder, the W-SPACE grammar and
the QA belt are mature before the fairy realm is designed. The fairy realm designs and builds ONCE, at
slice-end; the endgame fairy-realm return (Ch 75-77) extends that build.
- The gate split — the Josh Gate fires TWICE. Gate 1 at the Ch 2-13 P3-exit (his verdict DIRECTS the
fairy realm's design, while it is still designable). Gate 2 at the full-slice P3-exit (the origin
judgement on his own authored material), and Gate 2 keeps the job of gating the P4 Steam listing.
- The EA boundary — the full 15-node slice ships as the Early Access base. No early cut. The origin
ships in designed order, first-in-read-order, for every buyer.
- The Ch-13 closing beat — the slice ends at Ch 13 with the healer's child joining and the departure,
the amulet passing to her AT THE DEPARTURE (the gift and the goodbye as one beat), to-be-continued.
Authority: docs/spine/DECISIONS_PENDING_JOSH.md fifth sitting (the slice + build order) and seventh
sitting (the gate split, the EA boundary, the gift staging, the ward-off-neck physics). Analysis pack:
docs/pipeline_review/SLICE_EXECUTION_BRIEF_2026-07-27.md and the three SLICE_SCOPE_* passes.
Josh's 2026-07-24 verbatim directives below are preserved as authored; where a directive names Ch 2-5 as
the target, this ruling supersedes its SCOPE and nothing else.
Status: PROPOSAL — DRAFT v0.1, awaiting director/Josh adjudication. Authored 2026-07-24; slice-rescoped
2026-07-27. This governs nothing canonical and edits no canon doc; it sequences the work that begins the
day the RTX 5090 workstation is installed and Josh's book scanning completes (the handoff, ~2-3 weeks out)
and ends with a complete, shipped Prologue→Ch 13 vertical slice on Steam, then codifies the proven
per-chapter factory for the remaining 60-plus chapters. It is the post-5090 successor to docs/PRE_5090_BUILD_PLAN.md: that plan owns
the ungated buildable surface up to the handoff; this one owns the gated generative passes, the ship bar,
and the factory that the handoff unlocks. It invents no pillars and no vision; every phase's machinery
cites the canon or contract doc that owns it, and every gated item traces to PRE_5090_BUILD_PLAN.md §13.
On acceptance it takes a docs/DOC_MAP.md row per the wiring doctrine (consumer: the post-5090 director
session; status PROPOSAL).
Provenance: Josh's 2026-07-24 directives (the synthesis_inputs.md pack) — the vertical slice at
max honest polish, the full deep-read enrichment pass, the generative surface passes, the fully-autonomous
QA machine as alpha/beta tester, and the completion-hours density curve. Those directives named Ch 2-5 as
the slice; the 2026-07-27 ruling in the banner above re-points that scope to Prologue→Ch 13 and leaves
every other clause of the directives standing. It grounds against
PRE_5090_BUILD_PLAN.md (the ungated build surface), docs/proposals/DEEP_BOOK_PROCESSING_CONTRACT.md
(the deep-read lanes), docs/proposals/AI_QA_LOOP_ARCHITECTURE.md (the QA fleet), the three generative
Translation Docs (T99_Translation_AssetGen, T99_Translation_Cinematic, T99_Translation_Audio),
docs/BOOK_ACQUISITION.md, and the slice map (ch2_5_slice_map.md is the built Ch 2-5 artifact and keeps
its filename; the Ch 6-13 legs extend it rather than replace it). The cardinal rules bind every phase: do not invent
canon, care means weight and authenticity never omission (CVD §17.1), the §17 hard-line floor is the one
absolute, and no output is done until it has a named consumer.
PRE_5090_BUILD_PLAN.md §0 is the rule and it does not change: the 5090 gates ONLY heavy generative
inference (book deep-read, photorealistic 3D/asset/material generation, music/voice/SFX generation,
cinematic-video generation, VLM-OCR, roster-scale MetaHuman, the persona-voice LoRA training run, the
per-region headless PCG/HLOD/Nanite batch bake, the 14B on-device reference model). Everything else —
engine code, data, wiring, the deterministic terrain GIS + Gaea chain, PCG authoring, Blender-headless
finishing, the QA machine, Steamworks integration, cook/package — is ungated and, for the slice, largely
already built pre-handoff. This roadmap is therefore mostly about turning generative faucets on into
sockets the pre-5090 work already wired, not about new architecture.
Do NOT time-box to weeks; the phases gate on exit criteria, not calendar. The team executes well above a
naive estimate, and several P0 kill tests can DELETE planned work, so a week estimate authored before the
benchmark day would be fiction. The phase order is a dependency order.
The tag legend is the plan's: DONE, BUILD-NOW (ungated), GATED-5090, GATED-EXT (external service),
GATED-DEVKIT. New here: DROP-IN — an item whose socket is built pre-handoff and whose generated payload
arrives through the asset-path/opaque-FK contract (§P2.0) with no re-wiring.
---
Goal — stand the workstation up, run the benchmarks and kill tests that can delete or redirect planned
work BEFORE any volume spend commits to a path, bring the book scans into the substrate at scale, and turn
on the local-model triage floor. Nothing generative-at-volume runs until this phase's kill tests clear,
because a kill test that fires after volume has committed wastes the volume.
Machinery it runs on (cited):
(PRE_5090_BUILD_PLAN.md §11 X9.5). The kill tests: the Gaea-vs-Landmass terrain-tool bake-off, the
69-region throughput extrapolation, the WP+PCG runtime cost at 1m-hero, the MOSS/ACE-Step scoring rigs,
and the runtime-inference perf budget. Several can DELETE work.
T99_Translation_AssetGen §5 pre-flight; PRE_5090_BUILD_PLAN.md§11 X9.5 note): re-fetch the TRELLIS.2 issue #22 and Hunyuan3D-2.1 issue #111 state, check whether a
maintained TRELLIS.2-PyTorch3D fork or a new clean-licence open-weights release has shipped since
2026-07-15. A cleared licence collapses the §3 texture-hole recommendation; a still-blocked one confirms
the renderer-swap-vs-ArmorLab trade is live. This check may delete the PyTorch3D renderer-swap spike
entirely, which is why it precedes GPU time.
quarantine, and region-sorted triage into book_substrate, plus the wire-time RAG audit-backlog fixes
(docs/BOOK_ACQUISITION.md; DEEP_BOOK_PROCESSING_CONTRACT.md §0, §4.4 the resumable drain log). The
known data-quality fixes ride here: strip the 756 empty padding rows, resolve the placeholder titles to
concrete editions, normalize the mojibake, split the multi-item rows.
guardrail model already smoke-proven pre-handoff (PRE_5090_BUILD_PLAN.md C1.22; the ruled local-compute
posture — local 14B triage floor, paid tokens only where quality matters).
Entry — the workstation is installed and driver-clean; the X9.5 harnesses exist and self-test green
pre-handoff; the scan set is complete on Josh's side.
Exit — every kill test has a recorded verdict and the plan is reconciled to it (a deleted path is struck,
not left dangling); the per-category asset-gen defaults and the "time-to-game-ready" numbers exist as
measured facts, not desk-research; the scans are OCR'd, quarantined, region-sorted, and query-ready in
book_substrate; the 14B triage floor runs; the nightly-soak cadence (from P3) is already running on the
pre-handoff slice build.
What Josh does — hands over the completed scans; confirms the AssetGen texture-leg trade (§3 (a) renderer-swap
vs (b) ArmorLab vs (c) passthrough) once the licence re-check and benchmark return real numbers; makes the
AIVA go/skip call is CLOSED — Josh RULED SKIP on 2026-07-27 (“not emailing; the enterprise-contact path is dead”); nothing further is asked of him on the music vendor.
Honest risks — a kill test deletes real prior work (this is the harness working as designed, not a
failure — the discipline is to strike the path, not defend the sunk spike); the 5090's 32GB clears the
TRELLIS.2 24GB and Hunyuan3D-2.1 29GB floors but headroom shrinks fast under concurrent load, so early OOM
requeues are expected and are not defects; VLM-OCR quality on the highest-care non-Latin scripts (Ch 29
Sámi orthography, Ch 42/57 sources) may need a second human-verified pass before those rows are trusted.
---
Goal — read the library against live canon, ratify what earns a canonical home, and RE-STAGE the harvest
into the already-built slice so the world gets denser without a rebuild. This is where Josh's "all the
additional weavings and culture, side quests and enhanced relationships" lands as real, cited, playable
content.
Machinery it runs on (cited):
DEEP_BOOK_PROCESSING_CONTRACT.md): the tier stack (§4.1 — the P0 local triagefloor over every book, the Opus deep read on the seed-rich set, the full-strength critic plus the §8.8
cultural-authenticity audit, the zero-token deterministic merge), producing the EXR record (§2) whose four
output arrays — story_seeds, weave_links, entity_candidates, l3_connections — plus civilizational_marks
queue into the existing ratification lanes (§3 the wiring table). The pilot (§4.2) is scoped as the
slice regions plus the reject-audit keepers; under the rescope that is the 13 slice regions, and the
pilot PROVES the machinery on the four already-built Ch 2-5 regions before the Ch 6-13 batches follow it
region-by-region (DEEP_BOOK_PROCESSING_CONTRACT.md §4.2/§4.3). The fairy_realm has no book substrate
and is authored canon, so it sits outside the deep-read lane entirely.
enrich.py surfaces only ratified deep-read outputs into the chapter's build pack (DEEP_BOOK_PROCESSING_CONTRACT.md §3.1). A proposed-but-unratified row never enters
authoring, so the deep read can never smuggle unratified canon in.
docs/proposals/QUEST_SEED_HOUSING_LEDGER.md): everyseed and weave appears exactly once, UNROUTED by default, and is dispositioned at the §7.5 Section-13
typing step in chapter context (quest_row / minigame_registry_row / region_page_ambient / trade_substrate
/ weave_only). Today the ledger holds 400 rows, 264 seeds UNROUTED — that backlog IS this phase's typing
and authoring queue for the slice regions.
PRE_5090_BUILD_PLAN.md WS-8 N8.1/N8.2; the 13-field persona system;MEMORY every-entity-detailed-persona-nonblocking-paths): personas fleshed on the slice's named and unnamed
members, community-ripple wired, multi-path/no-dead-end preserved — the "enhanced relationships" directive.
stable RowName==registry-id (guarded by the W4.9 DataValidation validator against the re-import-renames-a-row
orphan, PRE_5090_BUILD_PLAN.md W4.9), the fidelity baseline refreshes in the same commit, and the region
staging legs re-run — the flores-hardcoded import/dress/stage scripts generalized into region/chapter-
parameterized drivers (the slice map's named cross-cutting seam, ch2_5_slice_map.md) so new sites, beats, and encounters
fold into the built map without a rebuild.
synthesis_inputs.md directive 6): the full game targets ~100-200hmain / 1-2k h side+weave / 8-10k h to 100%; the slice is early-game, deliberately lighter and seed-rich,
opening the game. Ch 2-5 sit at the low, seed-rich end and Ch 6-13 sit FURTHER UP the same curve — the
band is a ramp across the earthly arc, not one flat early-game target. The Prologue is a ceiling tutorial
and Ch 1 is declared out of corpus scope, so both sit OFF the curve and need declared sentinels rather
than band values (see the scorecard dependency in P5 and PRE_5090_BUILD_PLAN_VOL2.md §A.1). This phase
climbs each node to its own curve position — not to the endgame density — and the P5 scorecard makes "at
its curve position" an arithmetic check, not a feeling.
Entry — P0 done; the slice's 12 earthly regions have their books ingested and triage-scored (the four
built regions — flores_island, bali, sumatra_java, angkor_khmer — plus the eight Ch 6-13 regions, which
have no region pages today and are the measured long pole); the earthly slice is staged from the pre-5090
waves (Ch 2 built; Ch 3-5 structures staged per the slice map; Ch 6-13 staged as their region legs land).
The fairy_realm (Prologue + Ch 1) has no book-ingest entry criterion — it enters at slice-end, after the
Ch 2-13 build has matured the pipeline, on the invented-terrain path prototyped during the Ch 6-13 window.
Exit — the slice regions' deep-read batches are ratified; the housing-ledger seeds for the slice are typed
and the quest_row ones authored through the standard quest track; weave_links land on the link graph;
personas are complete on every slice entity; the enrich packs carry the ratified harvest; the built slice
is re-staged with the new content and the QA loop re-verifies it (P3). Every slice node's density scorecard
reads at-or-above its own curve target (the Prologue and Ch 1 against their declared sentinels).
What Josh does — confirms the high-care per-record review load (per-record for the high-care three, batch
for elevated/standard — DEEP_BOOK_PROCESSING_CONTRACT.md OPEN Q7); rules any deep-read finding that
asserts new canon (a new slug, a chapter-assignment implication, a locked numerical, a name, a hard line,
a new system) — those route to the flag, never changed by the loop; plays the enrichment as it lands and
flags anything genuinely too insensitive or brutal for a RENAME/REFRAME (never removal), the care backstop.
Honest risks — the housing-ledger backlog is large (264 open seeds for the four built regions alone, and
the Ch 6-13 regions add their own) and typing is per-seed judgement, so every slice region must be finished
before the pass is declared done, not sampled (the verify-with-fan-out-not-labels lesson); the HIGH-care
region in the widened slice (Ch 10, the /Gwi San — a living Indigenous community) carries per-record review
that does not parallelize cheaply and paces its own leg; a deep-read row that reads insensitive is reframed or re-originated,
never scrubbed, and mis-applying that as omission is the more costly error per the delegated-bolder
calibration; comparative-mythology books (Frazer/Eliade/Campbell) belong to no single region and need the
separate cross-region lane (DEEP_BOOK_PROCESSING_CONTRACT.md OPEN Q5) or their weave density defers to
the end.
---
Goal — render every generated surface of the slice to AAA polish, each pass a drop-in that lands its payload
at a path the pre-5090 work already references, so a surface can be re-generated or upgraded without touching
gameplay wiring.
The registries carry a pointer, never the asset; the built slice references the stable id/path now (with a
placeholder behind it), and the generated payload drops in at that same path with its state machine flipping
pending→complete — no gameplay re-wire (T99_Translation_AssetGen §4.1 mesh_id_ref/mesh_tags, the
5-state machine; T99_Translation_Audio Music/Voice Step 5 the SoundFactory import + path convention;
T99_Translation_Cinematic Step 4 / §5.5 the /Game/Cinematics/Scenes/... convention; the underlying T1_BPC §2.6
read-canon/write-pointer rule). This is why the passes below are DROP-IN, not rebuilds.
(PRE_5090_BUILD_PLAN.md §6 W4.4/W4.8; T99_Translation_Terrain via the UE5_Build split). The DEM/GDAL/Gaea
simulation is ungated and mostly run pre-handoff for flores; the tool choice is settled by the P0
Gaea-vs-Landmass kill test; only the ×N-region headless PCG/HLOD/Nanite batch bake is GATED-5090.
Landscapes, and PCG-populated biomes; in-engine flythrough captures read by the image critics (P3).
fairy_realm exception (the single largest unmodelled item in the plan). Its coordinates are N/A (dimensional), so the deterministic derive_region_bbox → COP30 DEM → WorldCover → import → dress
→ stage chain has no input: the Prologue and Ch 1 are 100% authored geography through a path this repo
has never executed. The mitigation is ungated and costs no model spend — prototype the authored-terrain
chain DURING the Ch 6-13 window, so the path is proven before slice-end consumes it. If that prototype
fails to produce a shippable-grade result, or its first honest estimate exceeds the whole Ch 6-13 terrain
leg, the EA boundary re-opens (trigger T1 in the slice brief) and Ch 2-13 becomes the EA base with Pro+1
as the EA finale — an ordering the ruled build order already produces for free.
(T99_Translation_AssetGen §2 routing table); MetaHuman-first for named NPCs (§1 constraint 4; the
in-engine creator, Epic sunsets the browser Creator 2026-11-05 so named-NPC MetaHuman work is done in-engine).
The real Rangku Wera hunter model replaces the mannequin (the Josh-download hunter model on the pre-5090
list; CHAR_0008 persona already ruled, DECISIONS_PENDING_JOSH D-RANGKU-PERSONA).
(T99_Translation_AssetGen §1 constraint 3, §6) — reference-built / photogrammetry-grounded / licensed-kit,
behind the capture-rights gate (PRE_5090_BUILD_PLAN.md AG7.2; the capture-rights register). Generation is
reserved for fantastical structures (vril sites) and non-attributed forms.
T99_Translation_AssetGen §4.3 Blender-headless finishing to the illustrative steam_deck_minimum budget); named NPCs are MetaHuman;
the hunter model is in; every high-care asset passed the pre-build cultural-authenticity audit.
(T99_Translation_AssetGen §4.1 the two-track sequencing), one fantastical vril-site asset run whole first
as the corrected-field-set smoke (PRE_5090_BUILD_PLAN.md AG7.8).
mesh_id_ref paths; imported-meshvisual QA reads them (P3).
(PRE_5090_BUILD_PLAN.md C1.16); this pass authors the real Niagara systems on the wired cue channels
(hit/telegraph/status/vril-polarity + one per broken-composure-node), timed/triggered from the cinematic
and combat events (T99_Translation_Cinematic §3 Step 4 the VFX-track spike #5 — resolve the native
Niagara track class here). Color-independent by design (the L1 accessibility floor).
accessibility floor independent of the art.
T99_Translation_Audio §3) — licensed-first SFX (Sonniss free, acquired pre-handoff into the segregated no-AI-training tree, PRE_5090_BUILD_PLAN.md A6.7) then MOSS-SoundEffect
gen-fill; ACE-Step/YuE bulk music + composer-in-loop canonical themes (AIVA closed as skip 2026-07-27); the MetaSounds/Quartz
adaptive framework (already smoke-proven, A6.5). The Grand-Sage constraint gates one asset: the
GRAND_SAGE_REVEAL row is non-lexical (vibrational-imprint/intuition-pulse sensation, a Music/SFX/haptic cue,
NOT a voice), ruled and gate-enforced so no voice_ref ever resolves to it (DECISIONS_PENDING_JOSH
D-GRAND-SAGE-VOICE ruled re-scope; gate #25 grand_sage_silence).
SoundFactory seam, and the adaptive graphs play against real stems; the audio benchmark gate (T99_Translation_Audio Music Step 3)
cleared before scale.
PRE_5090_BUILD_PLAN.md P2.4); this pass skins it to the AAA reference bar with the readability/accessibility audit (AI_QA_LOOP_ARCHITECTURE.md
QA-12 — legibility of tell, bar, prompt; colorblind-safe; scalable). HUD art is not generative-inference-gated.
(BUG-0006..8) closed or triaged.
T99_Translation_Cinematic §3) — scene rows to LevelSequences over the 11 scene-type templates, participant resolution against MetaHuman/antagonist registries,
beat→site→region anchoring, path-conditional DT_SceneDispatch variants, and the realtime trigger channel
fired from the boss-phase-threshold StateTree event and quest-beat entry/exit (PRE_5090_BUILD_PLAN.md
CN5.6, the scene-anchor runtime + Humanity.Boss.EmitPhase debug emitter so cinematics test with no boss
AI). MRQ renders the dailies; image critics read them (the QA directive's canonical case,
AI_QA_LOOP_ARCHITECTURE.md §3 WS-5). Only the generated participant assets and any cinematic-video
generation are GATED-5090.
dailies read by critics and sent to Josh; the audio-driven facial mode drives dialogue beats against real
voice tracks.
The policy is RULED (partial VO — see the decisions register); what follows is the pipeline it executes on.
The audio pipeline is built to serve any of the options
(T99_Translation_Audio §2.4 Kokoro bulk + ElevenLabs hero behind the §4.4.1 clone gate), and spoken-VO
localization tiering is still a named Josh-rules deferral (T99_Translation_Audio §2.6, §4.11). Under the
rescope the hero-line budget spans 15 nodes, not 4 — and the Prologue and Ch 1 carry the slice's most
performance-dependent lines (the King, the mother, the best friend), so they are the hero lane's ceiling
reference and not its overflow. The FText subtitle floor stands regardless (every player-facing string in a
String Table from the first widget, PRE_5090_BUILD_PLAN.md P2.5) so the slice is playable and localizable
with or without VO.
Goal (phase) exit — every generated surface of the slice is at its AAA target with critic-read captures;
the VO policy is ruled; all placeholder assets are replaced or explicitly triaged as polish.
What Josh does — rules the AssetGen texture-leg trade (carried from P0), the VO policy (P2.8), and the
per-surface reference-title quality bars the polisher measures against (AI_QA_LOOP_ARCHITECTURE.md §2.4).
**He does NOT play surface passes (RULED 2026-07-24: "I won't be playing it until it's AAAAA polished 2-5
after handoff and 5090 passes and final 5090 polish AAAAA")** — the QA loop + image/feel critics carry ALL
in-progress verification; Josh's first contact with the running game is THE JOSH GATE below. The 2026-07-24
quote names "2-5" because that was the slice then; the 2026-07-27 rescope widens WHAT is polished before he
plays and changes nothing about the rule that he plays nothing unpolished. Under the gate split his first
contact is Gate 1 — the AAAAA-polished Ch 2-13 earthly arc — and the fairy realm is still unbuilt at that
moment BY DESIGN, so his verdict directs it.
Honest risks — the PBR texture leg is genuinely unsolved as of 2026-07-15 and its resolution depends on the
P0 licence re-check and benchmark (T99_Translation_AssetGen §3), so a surface may fall back to
ArmorLab-manual or the passthrough interim, converting an assumed-automated stage to a partly-manual one;
generated cultural content that reads insensitive is reframed at Josh's playtest (THE JOSH GATE — post-P3,
not per-pass), never scrubbed; the
MetaHuman batch cloud-throughput at roster scale is an open spike (T99_Translation_Cinematic §4 item 1)
that could bottleneck the named-NPC pass.
---
Goal — run the AI QA machine at ship intensity over the whole slice continuously, and reach the honest
zero-bug bar stated as ledger arithmetic, so Josh's time is pure feel-testing and the ceiling, never
bug-finding.
Machinery it runs on (cited):
AI_QA_LOOP_ARCHITECTURE.md §2) — the beta player(scripted Tier-1 → agent Tier-2 → soak Tier-3), the bug fixer (repro-first, regression-accreting), the
feature enhancer, the AAA polisher. QA-1/2/5/6 are already DONE and LIVE and caught ten typed bugs in
their first days (AI_QA_LOOP_ARCHITECTURE.md §6; PRE_5090_BUILD_PLAN.md progress ledger).
AI_QA_LOOP_ARCHITECTURE.md QA-14, GATED-5090; the QT-21/22 soak-fleet expansion named in synthesis_inputs.md directive 5) — many parallel long-run packaged instances with
the MarkHeartbeatActive hang detector; this is what the 5090's parallelism is for on the QA side. Beta-player
agents (QA-4) play the whole slice continuously via InjectInputForAction (packaged-valid).
AI_QA_LOOP_ARCHITECTURE.md §4) — per-increment regression, per-wave capture +image-critic + shots-to-Josh, per-milestone RR-style path/care audit + polish wave + full cross-workstream
regression re-run, pre-Josh-session dailies packet. The self-testing-gate law (§4.2) and the tuning
firewall (§4.3 — the loop verifies shapes/relations/floors, never tunes an absolute number before the
Phase-5M audit).
AI_QA_LOOP_ARCHITECTURE.md §5) — severity enum blocker/major/minor/polish; statusenum open/repro-ready/in-fix/fixed/wont-fix/regressed; a record cannot reach fixed without a
regression_test_ref; the never-relitigate discipline makes "is this bug back" a deterministic fact.
The honest zero-bug definition (stated as the ledger arithmetic it is, never a metaphysical claim of
perfection): the slice is at the zero-bug bar when — zero open records at severity blocker, major, or minor;
every polish-severity record is either closed or triaged with a written rationale (polish is a ceiling
judgement, not a floor failure); the full accreted regression suite is green (every previously-fixed bug's
test still passes); and N consecutive clean soak-days have elapsed on the Gauntlet fleet with no new
blocker/major/minor opened. It is a count over a durable, diffable ledger and an accreted test suite — not
a claim that no bug exists in the universe, only that no bug is open in the ledger and none the machine can
reach has reproduced within the soak window.
Entry — P1 and P2 landed; the slice is content-complete and surface-complete; QA-1..14 built (13 pre-handoff,
QA-14 Gauntlet stood up on the workstation).
Exit — the zero-bug bar above is met; 100% of each workstream's verified-by-playing clause is asserted by
executable Tier-1 tests (AI_QA_LOOP_ARCHITECTURE.md §3, the DT coverage per WS row); the AAA polish sweep
is done with before/after captures; Josh's feel-pass returns no blocker/major/minor and only enhancer/polisher
intake.
What Josh does — plays the slice as pure feel-testing (fun, does it land, does it read), never bug-finding;
his flags enter as enhancer/polisher intake or as care RENAME/REFRAME, never as scrubs; seeds and tunes the
per-surface reference-title bars.
Honest risks — a green suite is verified, not proven good; the ceiling is the image critic, the fresh-context
critic, and Josh, and a green QA run has still shipped stragglers before (the class-closed lesson), so the
soak window and the fan-out re-verify are load-bearing; N (the clean-soak-day count) is a director/Josh call,
not a fixed constant, and a too-short N is a false ship-ready; the loop never tunes an absolute balance
number, so combat/pacing feel that depends on tuned numbers stays a Phase-5M + Josh judgement outside this
bar.
---
Josh's verbatim target: **"I won't be playing it until it's AAAAA polished 2-5 after handoff and 5090
passes and final 5090 polish AAAAA."** The RULE is untouched: he plays nothing that is not AAAAA-polished
— after the 5090 handoff, after every P2 generative surface pass, after the P3 zero-bug bar, after final
polish to the AAAAA standard (the tier above AAAA this studio is defined by). Until then the AI QA
loop, the capture harness, and the image/feel critics are the only players — which raises, not lowers,
the in-progress verification bar (every "it plays well" claim needs its critic-read evidence trail,
because no human backstop arrives earlier).
What the 2026-07-27 ruling changed is the gate's PLACEMENT, not its rule. Under the ruled build order the
fairy realm builds LAST, so a single gate at the very end would deliver his judgement on the game's
grandest display AFTER it was finished — reviewing the crown jewel instead of informing it. The gate
therefore fires twice, and both firings are on AAAAA-polished content:
on 11 AAAAA-polished earthly chapters. Its purpose is DIRECTION: his care/feel verdict lands while the
Prologue and Ch 1 are still designable, and the pipeline is validated by the human backstop before it is
aimed at the crown jewel. Positioned as a working director's pass, not as The Playthrough.
the mother, the fall, the amulet), played in designed order, origin included — the whole-game first
contact. Gate 2 keeps the existing job: his verdict gates the P4 Steam listing.
What the gates carry (accumulated reserved-for-playtest items, resolved HERE): the pip-chain
wipe-on-mistake severity; the field-sense scope; care-doctrine reframe flags on generated
cultural content (rename/reframe, never scrub); every within-vision feel anchor Josh tunes. Gate 1 takes
every item that lives inside Ch 2-13; Gate 2 takes the origin-specific set (the sovereign kit's presentation
ceiling, the SEAL/ENDURE encounter classes, the guilt engine's opening and closing).
Goal — ship the polished, zero-bug slice on Steam as an honest first release, with the store framing, ratings,
and launch discipline a real commercial release needs.
Machinery it runs on (cited):
PRE_5090_BUILD_PLAN.md W4.10 the RunUAT BuildCookRun headless per-region cook + -run=DataValidation; W4.9 the RowName + reveal-ladder + hard-line
cook-time validators; X9.1 the Shipping-config guards and the mandatory human-in-the-loop checkpoint on any
§17/hard-line-touching or bulk/destructive op). The QA regression pack rides the same CI
(AI_QA_LOOP_ARCHITECTURE.md QA-10).
ship-phase): achievements, cloud saves over the existing WorldState SaveGame stack (PRE_5090_BUILD_PLAN.md
P2.7), the overlay, and controller/input via the built Enhanced Input config (P2.3). Declared ENGINE (a
reuse-machine harvest for game #2, per the standing reuse goal).
slice of a larger game, never over-promised — it opens where the game opens and stops at a declared
act-break, so the framing is "the first 15 nodes, complete," not "a sample"); the localization tier for
launch built on the FText/String Table floor (P2.5).
declared accurately, not defanged and not overstated; the §17 hard-line floor is the genuinely-banned-content
bar, not the rating).
cinematic captures, and boss-fight playthrough video (Josh directive 2026-07-28; program home
docs/MARKETING_WEB_PROGRAM.md — skeleton/i18n pre-5090-workable, captures gated on the P2+ surfaces;
go-live timing is a P4-adjacent business brief).
SHIP-LANGUAGES)Josh agreed the recommendation in chat. This closes the last open half of the localization question:
the three-tier data table was already ruled (J2 = (c), twenty-eighth sitting — tier 1 full
subtitle + UI, tier 2 subtitle-only, tier 3 unsupported), and membership was explicitly parked
until the store format settled. It is now ruled, and this is its home.
Early Access — 14 text locales, tier 1 (full subtitle + UI):
English · French · Italian · German · Spanish (Spain) · Spanish (Latin America) · Portuguese
(Brazil) · Polish · Russian · Turkish · Chinese (Simplified) · Chinese (Traditional) · Japanese ·
Korean.
Early Access — voice: English only, and partial — the partial-VO policy ruled at P2.8
(Josh 2026-07-24) is unchanged and this ruling does not widen it.
1.0 — four locales join, and the slice's voice completes: Arabic · Thai · Vietnamese ·
Indonesian are added to the tier-1 ring, and the slice ships full VO rather than partial.
The bar every locale passes before it ships: native review. No locale reaches a storefront on
machine translation alone, at EA or at 1.0. A locale that cannot clear native review does not ship
in that release — it waits for the next one. This is the localization arm of the same
zero-bug-means-measured discipline P3 runs on: an unreviewed locale is a shipped defect that every
player in that language sees on the first screen.
Notes that keep this consistent with what is already built:
describe a locale that gets subtitles under *non-English* voice; with VO English-only at EA, every
supported locale is tier 1 and everything else is tier 3. The tier becomes meaningful only if VO
ever ships in a second language.
presence carries its own smaller ring (docs/MARKETING_WEB_PROGRAM.md: EN + zh-Hans + DE + FR +
es-419 + JA + RU, then KO + pt-BR), which is a launch-sequencing decision about a website and is
a subset of this one. Neither ruling overrides the other.
a locale an added data table rather than a code change, and it closes independently of which
locales are in the ring — which is exactly why membership could be ruled last.
GENRE_BASELINE.md's open question is closed by this ruling and no longer rides the rank-18bundle.
Entry — P3 zero-bug bar met over the full 15-node slice, and GATE 2 returned (Gate 1 is a P3-internal
milestone at the Ch 2-13 exit and does NOT open P4).
The EA boundary (RULED 2026-07-27, seventh sitting) — **the Early Access base is the full 15-node slice.
No early cut.** The origin ships in designed order, first-in-read-order, for every buyer, so the amulet
gift lands provenanced on first play and the "it starts in the middle and never explains why" review
sentence never gets written (EA reviews do not expire). The accepted cost is stated honestly: first
revenue and the first EA feedback sit behind the fairy realm, the one leg with zero measurement behind it.
The reversal conditions are the slice brief's triggers T1 (the invented-terrain prototype fails or
over-runs) and T3 (runway makes first revenue load-bearing) — either one RE-OPENS the boundary for Josh's
ruling, with Ch 2-13 as the EA base and Pro+1 as the EA finale as the alternative on the table. Neither
trigger flips the base on its own: the boundary is Josh's ruling and only Josh's ruling changes it.
Exit — the slice is live on Steam; the Shipping build cooks clean with all DataValidation validators green;
Steamworks features function (achievements/cloud-save/overlay/input verified by the QA fleet on the packaged
build); the store page is up with honest framing and correct ratings; a day-0 patch path exists and runs
through the bug ledger.
What Josh does (BUSINESS BRIEFS — his call, presented with options and a recommendation, never bare):
loop's); provides the developer/publisher identity for the store page.
Honest risks — Steamworks integration is new code and gets the full QA loop before it is trusted on the
packaged build (cloud-save conflict handling and achievement-unlock idempotency are the usual traps); console
packaging remains GATED-DEVKIT and is explicitly out of this ship (PRE_5090_BUILD_PLAN.md §13 devkit);
launch-cert QA runs on the real Shipping build, not the editor, because the Shipping config is where a latent
non-Shipping-module link would surface (the FunctionalTesting Developer-module lesson,
AI_QA_LOOP_ARCHITECTURE.md §3 note).
---
Goal — codify the exact sequence that shipped the slice into a repeatable per-chapter factory, with the density
curve as a measurable per-chapter target and the standing bars that never relax, so the remaining chapters
build as content updates at a known cadence.
Machinery it runs on (cited) — the factory is the phases above, per chapter, in order:
are acquired and the rest deep-researched (docs/BOOK_ACQUISITION.md); the region's pass-2 carries its
deep-read batch (DEEP_BOOK_PROCESSING_CONTRACT.md §4.3 region-by-region batches).
generalization seam, already paid once by the RG.1/RG.2/RG.3 --slug/--chapter work so Ch 6-13 inherits
it free — derive_region_bbox → terrain_fetch_preprocess → Landscape import (weightmap paint
asserted nonzero) → dress → stage); new boss-verb behaviors and puzzle/minigame runtime accrete once and are
reused. **THEN the W-SPACE pass, per chapter, always (wired 2026-07-25 from the slice's measured lesson —
6 of 11 staged sites sat on >15° raw slope):** the slope/space AUDIT (measured slope per encounter footprint
audit_encounter_spaces.py generalized) → arena pads SCULPTED to the zone catalog's own area_bounds specs with the approach→threshold→arena→payoff grammar per boss site → **the AMPLIFICATION
doctrine applied** (reality is the floor: under-sized settlements expanded and interiors deepened, guided by
the culture's own architectural grammar, cited like everything else) → the graded golden-path trails + the
travel presentation for over-scale legs → and the PERMANENT TEETH (a slope assertion under every encounter
volume, navmesh-continuity along every route, shot-state + scene-exclusivity + material-identity expectations
in every capture) so space quality can never silently regress.
re-staged into the built map (P1 machinery). **Plus the per-chapter authored lanes proven on the slice
(each critic-gated before staging consumes it):** the spoiler-safe PLAYER STRINGS sidecar (beat objectives /
fork options / site display names, reveal-critic per chapter — the designer prose never reaches a surface),
the DISCOVERY CLUE lane (DT_Clue rows per encounter, legal-source enum, clue = legibility never a gate),
the per-boss NON-KILL/pip schema population (has_nonkill_path / pip_count / pip_reveal_threshold /
defeat_protected per the ratified template), the festival windows, and the region's ambient/SFX rows.
The per-chapter content-budget + test-coverage scorecard (the density curve made measurable) — one scorecard
per chapter, gating shapes and floors only (the tuning firewall), carrying:
against the chapter's curve position (early-game lighter/seed-rich, modern chapters lengthened; the full
game ~100-200h main / 1-2k h side+weave / 8-10k h 100%, synthesis_inputs.md directive 6). The check is
"at or above its curve target," never a uniform per-chapter number (the directive supersedes the
CANON_AUDIT uniform-density reading).
this roadmap does not set them.** The scorecard family (check_slice_scorecard.py + QT-17/18/19) carries
Ch 2-5 early-game targets today. Ch 6-13 sit further up the same curve; the Prologue is a ceiling tutorial
and Ch 1 is declared out of corpus scope, so BOTH sit off the curve entirely and need DECLARED SENTINELS,
not band values — otherwise the monotonicity tooth fires a false regression, exactly the defect class
already caught for Ch 77's exempt demand_ordinal. The band/sentinel work is its own item and is the
precondition for arming the tooth on any node past Ch 5; it is deliberately NOT applied here, because
inventing band numbers would cross the tuning firewall. Owner: the scorecard/sentinel item in the window
plan; spec home PRE_5090_BUILD_PLAN_VOL2.md §A.1 + §11.5.5.
and multi-path asserted; **space quality — every encounter footprint slope-verified under the combat
threshold, every route navmesh-continuous, the chapter's space-audit report on file (the W-SPACE bar).**
for reachability and fork-completability; captures exist for every surface.
leaks before their canon window); the §17 floor asserted.
The cadence math (honestly ranged, not a single number) — the factory throughput is set by the slowest
serial leg per chapter (the deep-read ratification and the QA soak window are the usual long poles; the
deterministic terrain/staging and the drop-in asset passes parallelize). With the fleet running many chapters'
QA and asset-gen in parallel on the 5090 and the authoring tiered (Opus for volume, local triage floor for
bulk, deterministic scripts for mechanical applies), the 60-plus remaining chapters build as a pipelined
queue, not a serial march — but the honest statement is a RANGE that the first three post-slice chapters
MEASURE and this doc refuses to fabricate before that measurement exists (the same discipline as P0's kill
tests: the throughput number is a measured fact, not a desk estimate).
The standing bars that never relax — the care and reveal gates (CVD §17.1, the reveal windows, the §17
hard-line floor); canon-first (every item cited or absence-proven, nothing re-invented); the QA teeth (the
self-testing-gate law, repro-first, the accreted regression suite, the tuning firewall); and Josh's playtest
gate per milestone (feel and ceiling, care backstop).
Entry — the Prologue→Ch 13 slice shipped (P4 done); the factory's every leg has run once end-to-end and is
proven. The slice ran each leg more than once (12 earthly regions, not 4), so the factory enters P5 with a
measured cadence rather than a single-instance one — and the fairy-realm leg proved the invented-terrain
path the later realm chapters (Ch 66-77) will reuse.
Exit — this is the standing operating model, not a terminal phase; its "exit" is each subsequent chapter
shipped to its scorecard and the range-measured cadence holding.
What Josh does — plays each chapter's milestone build as the feel/ceiling/care gate; rules the per-chapter
cardinal-canon items as each region is reached (they route to the flag, never the loop); sets the
reference-title bars per new surface class.
Honest risks — the factory's cadence is genuinely unknown until measured on the first post-slice chapters,
and any number stated before that is fiction; higher-care chapters later in the arc (Ch 29 Sámi, Ch 42 Haiti,
Ch 57 Australia) carry per-record review load that does not parallelize as cheaply and will pace their own
regions; Tier-C MMO scope, New Game+ carry-over, and console packaging remain out of the single-player-first
factory and are sequence-gated or devkit-gated (PRE_5090_BUILD_PLAN.md §13, §12 items 27-28).
---
§4.4.1 clone gate); bulk/ambient stays subtitle; high-care cultural roles subtitle-or-synthetic.
P2.8 executes to this shape. The FText subtitle floor ships regardless.
game; chapters ship as updates; the EA feedback channel feeds the care backstop + density curve.
**SCOPE RULED 2026-07-27 (seventh sitting): the EA base is the FULL 15-node Prologue→Ch 13 slice — no
early cut.** Reversible only on trigger T1 (the fairy_realm invented-terrain prototype fails or its
honest estimate exceeds the whole Ch 6-13 terrain leg) or T3 (runway makes first revenue load-bearing);
either one RE-OPENS the boundary for Josh's ruling rather than flipping it — the alternative put to him
is Ch 2-13 as the base with Pro+1 as the EA finale, which the ruled build order already produces as a
by-product.
P3-exit (direction, before the fairy realm is designed), Gate 2 at the full-slice P3-exit (the origin
judgement, and the gate that opens P4). See THE JOSH GATE above.
CH-13 DEPARTURE** — the gift and the goodbye as one beat, the slice closing on the inheritance. The
departure IS the first scare, so the gift reads "you are coming with me into danger, wear this."
trap is the forcing FACT, not the answer, and canon still says "None of it is a menu. All of it is a
life." This row is carried, not ruled — it sits below three ruled rows and is not one of them. The
forcing fact: character creation (the four selections) must land at the FRONT of the build order even
though Ch 1, its canonical woven home, builds LAST. Ch 2's opening beat needs a chosen familiar and
Ch 13's Ntala needs a bound best-friend gender, so the whole 11-chapter earthly build and Gate 1 run on
selections whose canonical home does not exist yet. The proposed remedy, pending J-F: if the
menu-then-woven shape is ruled in, neither implementation is wasted — the selection surface becomes the
returning-player skip path once the woven childhood version ships with Ch 1. The prepend-safe entry architecture (chapter-select / new-game
entry so a front-prepended Prologue is reachable) rides the same item — it is a data-and-content
operation today and an expensive one after players have saves.
game as a PERMANENT discount off a $69.99 AAA anchor — "always show on sale as an appreciation to
the players and as an acknowledgment that I used AI tooling efficiently so my costs were low
compared to an AAA studio even though my game is in an even greater tier — target SSS studio as
inventing the next level up!" [TERMINOLOGY CORRECTED same-day: the tier name is **AAAAA
(Quintuple-A)** — Josh, after the industry tier chart: "AAAA is not good enough and AAA is far
below the floor"; AAAA is the existing $300M+ budget tier, AAAAA the invented OUTPUT-defined
tier above it. SSS retired.] The store-page work (P4) carries this identity; final numbers at P4.
(fits T1_Trades_Master §9.2 + immersive teaching). The per-region exchange designs are LANE-CANON
author items (cited to each region's real documented systems); EC-vendor/EC-medium UNBLOCK.
verbs imply non-HP defeat axes for several slice bosses; the wave presents the brief).
Carried parameters (not decisions): the AssetGen texture-leg trade (resolves on the P0 benchmark);
N clean-soak days (P3 calibration); per-surface reference bars (director-seeded, Josh-tuned at
playtest); AIVA go/skip (RULED-SKIP-acceptable). Provenance: the original five briefs with full
options/objections are preserved in git history at 040f515.
not run; the AssetGen PBR texture leg is genuinely unsolved as of 2026-07-15 and its resolution is gated on
the P0 licence re-check and the 5090 benchmark (T99_Translation_AssetGen §3). The routing tables are
desk-research defaults to benchmark FROM, not final answers.
throughput (P5) is explicitly a range the first post-slice chapters must MEASURE, and this doc refuses to
fabricate it before that measurement.
an accreted regression suite plus a soak window — no open blocker/major/minor, polish triaged, suite green,
N clean soak-days — never a metaphysical claim of perfection.
fresh-context critic, and Josh (AI_QA_LOOP_ARCHITECTURE.md §7). A green suite is verified, not proven good.
Phase-5M balance audit and the 5090 measurement; the density-curve scorecard checks "at or above curve
position," a shape, never a tuned absolute (the tuning firewall).
deep-read or enrichment output lands proposal-tier, cited, adversarially verified, and ratified-only into
build packs; anything that would assert new canon (a slug, a chapter assignment, a numerical, a name, a
hard line, a new system) routes to Josh as a full brief, never changed by the loop.
buildable pre-handoff and this roadmap only sequences the faucets into the sockets the pre-5090 work wired
(PRE_5090_BUILD_PLAN.md §0).