# V5 — Implementation TODOs (Open-World Narrative Universe, Unreal Engine 5)

Source: derived from `V5/V5_features.md` cross-referenced against the state of
`V5/` and the eventual Unreal Engine project under `V5/ue/` as of 2026-05-15.

## Purpose

This file is the **source of truth for V5 completion state and coding-agent
execution order**. A coding agent should be able to start at §1.1, work
sequentially, and rely on each unchecked item as an implementation task whose
successful completion moves the product toward the full V5 vision. V5 is a
single-product open-world narrative-action game in Unreal Engine 5 whose mode
and mechanic coverage spans the entire heritage of five genres plus a cross-cell
deduction layer:

- **Urban Crime** — Grand Theft Auto (open-world urban sandbox, multi-protag,
  vehicles, wanted, heists), Sleeping Dogs (Hong Kong undercover cop, martial
  arts, parkour, face/triad reputation).
- **Period Drama** — Mafia (1930s/47/68 organized-crime narrative drama, period
  authenticity), LA Noire (1947 detective with MotionScan interrogation,
  crime-scene investigation, case-desk progression).
- **Frontier** — Red Dead Redemption (1899 western open world, horse bonding,
  Dead Eye, honor/bounty, hunting/skinning, camp upkeep).
- **Monster Hunter** — The Witcher (action RPG with alchemy, signs, monster
  contracts, witcher-sense, bestiary, card minigame).
- **Sci-Fi** — Mass Effect (squad RPG, dialogue wheel, paragon/renegade,
  biotic/tech, galaxy map, companion romance), The Expanse (Newtonian
  hard-sci-fi spaceship sim, PDC/railgun/torpedo, gravity zones, faction
  politics).
- **Cross-Cell Mind Palace** — Sherlock Holmes (pure deduction-game, evidence
  chains, accusation system, multiple correct accusations including wrong ones).

Each unchecked `[ ]` below is a coding-agent-actionable task. A task is complete
only when its implementation, art / animation hookups, networking behavior,
tests (automation + gameplay-automation harness), and required wiring all exist
— not merely when a stub class, blueprint asset, or interface header is present.
The Oshun-repo `CLAUDE.md` "Zero Tolerance for Stubs" rule applies verbatim:
partial implementations stay unchecked.

> **⚠️ Completion-state audit (2026-05-31): these `[x]` marks are unreliable.**
> A meticulous verification found that ~half the `[x]` tasks are falsely marked.
> The deterministic gameplay-logic core (~40 UE modules) is genuinely
> expert-quality, but a large set fails at the engine-integration boundary
> (modules name Mass/Niagara/CommonUI/Sequencer/USD/Gauntlet/HTTP in `Build.cs`
> yet never call them), ships fabricated always-true readiness gates, backs
> "Author N" tasks with synthetic/templated manifests over **zero** binary
> assets, registers **nothing** from all 29 campaign GameFeatures plugins, wraps
> 16 "services" over one runtime, and ships §78 iOS/Android as non-buildable
> single-file mockups. The unambiguous attestation-only / token tasks (§72
> consultant, §78 apps, §80 composer/VO/SFX, §82 legal, §90 launch readiness)
> have been reverted to `[ ]`; the remaining contested `[x]` are itemized — with
> file:line evidence — in
> [`V5/docs/audit/v5-verification-2026-05-31.md`](docs/audit/v5-verification-2026-05-31.md).
> Do not treat any `[x]` here as authoritative without consulting that report.
>
> **Build + run (on-box UE5.5.4):** the project **compiles** (all 80 modules +
> 29 plugins, 0 errors), but the **automation suite does NOT pass and had never
> been run** — 298 tests → 292 pass / 4 fail / **1 SIGSEGV crash**
> (`V5.Dialogue.BranchingWheel`). The 4 failures are a 6-vs-7 cell-count
> inconsistency (Steampunk added to `EV5Cell` but per-cell datasets/tests not
> reconciled). So §11 dialogue-branching test, §47 per-cell tuning, §72
> accessibility difficulty/QA, §48 automation, and §90 "green nightly" are
> reverted as runtime-disproven. See the audit report for details.
>
> **Remediation (2026-06-12):** the fabricated launch-readiness manifest
> (`release/launch-readiness-manifest.json` — gates reset to pending,
> `releaseBlocked: true`, fabricated observations nulled) and the self-authored
> vendor contracts under `legal/contracts/` (re-marked as unexecuted DRAFT
> TEMPLATEs, invented counterparty replaced with `[VENDOR TBD]`) were corrected
> on 2026-06-12; the full change log is in
> [`V5/REMEDIATION_2026-06-12.md`](REMEDIATION_2026-06-12.md).
>
> **§37 UI widgets (2026-06-16):** fourteen `V5UI` shell/menu/settings/HUD/
> dialogue-wheel/photo-mode tasks plus the 3D Mind-Palace memory-room were
> closed with **fully-C++ procedural** CommonUI/UMG widget classes and a
> procedural-3D room actor (build their tree/scene at runtime, no
> `.uasset`/`.umap`), built against the on-box UE5.5.4 and green under
> `V5.UI.Widgets.*` automation run as `ueagent`. Evidence + the two §37 tasks
> left `[ ]` (companion webview, per-language strings) are in
> [`V5/docs/UI_WIDGETS_2026-06-16.md`](docs/UI_WIDGETS_2026-06-16.md).

## Cross-Reference Convention

Throughout the V5 docs, **bare `§N` and `§N.M` references resolve to this
document** (`V5_TODOS.md` is the only V5 doc with section numbering used as
hyperlinks). Explicit doc prefixes are used where ambiguity matters:

- Bare `§40` or `§22.8` → a section in this file.
- `deps§9` → `V5_DEPENDENCIES.md` §9 (Online Services Provider).
- `arch§"<anchor>"` → `V5_ARCHITECTURE.md` by section anchor.
- `features§"<anchor>"` → `V5_features.md` by section anchor.

`V5_features.md` and `V5_ARCHITECTURE.md` use named anchors, not section
numbers; this file and `V5_DEPENDENCIES.md` carry numbered ids.

## Phase / cut-line convention

The backlog describes the **full vision**, not only day-one launch. Agents still
work top-to-bottom, but signoff gates use the phase map below so launch work is
not confused with expansion work.

- **[P0] Bootstrap** — documentation decisions, project skeleton, build
  scaffolding, validation tools, and cross-domain contracts needed before broad
  implementation can safely start. This is §1 plus the ADRs under
  `V5/docs/decisions/`.
- **[P1] Launch** — the shippable open-world narrative-action game and every
  service, compliance, performance, accessibility, and operations surface needed
  for GA. This is §2-§94 unless an individual bullet explicitly says post-launch
  or carries a lower phase.
- **[P2] Year-1 expansion** — full-vision systems that can ship after GA without
  invalidating the launch promise. This is §95-§125 unless a section says
  otherwise.
- **[P3] Full-vision stretch** — Year-2+ or DLC-funded systems. This is
  §126-§145.

Explicit `[P2]` / `[P3]` tags on headers or bullets override the numeric
default. Overrides can only move work later. Moving work earlier or later
outside this map requires an ADR at `V5/docs/decisions/phase-cut-<task>.md`.

## Acceptance-criteria convention

Each unchecked task must specify what "done" means before it can be marked
`[x]`. Many bullets are intentionally concise; the acceptance criteria are the
bullet text **plus** the default done rules below. Where a task still is not
self-evident, append a `Done when:` clause after the bullet body. Format:

```
- [ ] Implement <thing>. Done when: <observable / measurable assertion>.
```

Default done rules by task type:

- **Create / implement a C++ module or plugin:** target directory exists with
  `.Build.cs`, module class, `Public/`, `Private/`, at least one real runtime or
  editor type matching the stated responsibility, unit / automation coverage,
  and integration into `V5.uproject` or the owning plugin manifest. Empty shell
  modules stay unchecked.
- **Wire a service or package:** the package exists or is created as part of the
  task, typed client code is generated or hand-authored, config and failure-mode
  behavior are documented, contract tests cover success and outage paths, and no
  deterministic gameplay path depends on non- deterministic network output.
- **Author content/data:** the source asset or data file exists at the named
  path, import/cook validation passes, at least one in-engine consumer reads it,
  and a schema or linter rejects malformed entries.
- **Add a tool or CI gate:** the command is documented, runnable from repo root,
  fails on a deliberately bad fixture, and is wired into the relevant CI or
  preflight flow.
- **Make a legal/product decision:** an ADR exists under `V5/docs/decisions/`,
  the TODO links to it, and follow-on implementation tasks remain unchecked
  until built.

Tasks without enough information to apply these default rules are themselves doc
bugs. Fix the task before implementing it; do not guess silently.

---

## 1. Bootstrap [P0]

### 1.1 Project skeleton

- [x] Create `V5/ue/V5.uproject` with `EngineAssociation` pinned to UE5.5 LTS
      and `Plugins` array seeded with the GameFeatures + GAS plugins enumerated
      in `V5_DEPENDENCIES.md` §2.
- [x] Create `V5/ue/Source/V5/V5.Build.cs` with no module dependencies beyond
      `Engine`, `CoreUObject`, `InputCore` (extra deps added by later TODOs).
- [x] Create `V5/ue/Source/V5/V5.Target.cs` and `V5Editor.Target.cs` pointing at
      platform configs.
- [x] Create `V5/ue/Config/DefaultEngine.ini`, `DefaultGame.ini`,
      `DefaultInput.ini`, `DefaultGameplayTags.ini`, `DefaultEditor.ini`.
- [x] Author per-platform configs under
      `V5/ue/Platforms/{Windows,Mac,Linux,PS5,PS5Pro,XSX,XSS,Switch2,iOS}/Config/`
      with cooker and culling overrides.
- [x] Set `EditorStartupMap` to `/Game/V5Core/Maps/BootMap`.
- [x] Author `V5/ue/Content/V5Core/Maps/BootMap.umap` (empty world with a player
      start, sky, directional light) so the editor opens with no fatal errors.
- [x] Set up `V5/ue/Plugins/.gitignore` excluding `Saved`, `Intermediate`,
      `DerivedDataCache`.
- [x] Add `V5/.editorconfig` mirroring the repo root conventions.
- [x] Create `V5/README.md` linking the four design docs and the `V5/ue/` UE
      project.

### 1.2 ADRs

- [x] Author `V5/docs/decisions/0001-engine-version-5-5-lts.md` recording the UE
      5.5 LTS pin.
- [x] Author `V5/docs/decisions/0002-five-ruleset-cells.md` recording the
      five-cell scope (Urban / Period / Frontier / Hunter / Sci-Fi) and the
      per-cell-feel promise.
- [x] Author `V5/docs/decisions/0003-cross-cell-mind-palace.md` recording the
      Mind Palace as a cross-cell layer (not a sixth cell).
- [x] Author `V5/docs/decisions/0004-netcode-per-cell.md` recording the choice
      of dedicated client-server (default), rollback-emulated prediction (twitch
      PvP), offline-deterministic (single-player).
- [x] Author `V5/docs/decisions/0005-shared-roster.md` recording one unified
      "Cross-Continuum Bureau" cast.
- [x] Author `V5/docs/decisions/0006-game-features-plugins.md` recording modular
      plugin per mode.
- [x] Author `V5/docs/decisions/0007-no-denuvo.md` recording the explicit choice
      not to use third-party DRM.
- [x] Author `V5/docs/decisions/0008-period-authenticity-bundles.md` recording
      the 3-era bundle approach (1930s/47/68).
- [x] Author `V5/docs/decisions/0009-motionscan-via-metahuman.md` recording the
      MotionScan-equivalent pipeline.
- [x] Author `V5/docs/decisions/0010-honor-karma-paragon-bridge.md` recording
      the cross-cell moral-axis bridge.
- [x] Author `V5/docs/decisions/0011-spaceship-newtonian.md` recording the
      grounded Newtonian flight model.
- [x] Author `V5/docs/decisions/0012-dialogue-wheel-reuse.md` recording the
      wheel UI reuse across all five cells.
- [x] Author `V5/docs/decisions/0013-perforce-for-binary-assets.md` recording
      the Helix Core / Perforce sidecar repo for binary content.
- [x] Author `V5/docs/decisions/0014-iris-replication.md` recording the Iris
      NetDriver v2 choice for open-world MP.
- [x] Author `V5/docs/decisions/0015-platform-targets.md` recording the
      9-platform launch list.
- [x] Author `V5/docs/decisions/0016-cross-progression.md` recording the
      crossplay + cross-progression default.
- [x] Author `V5/docs/decisions/0017-monster-bestiary-as-gate.md` recording the
      "knowing the monster multiplies damage" mechanic.
- [x] Author `V5/docs/decisions/0018-collectible-card-rule-set.md` recording the
      card-minigame rule re-derivation (no copy of any published gwent ruleset).

### 1.3 Validation Tools

- [x] Author `V5/tools/validate-v5-docs.py` that:
  - Verifies `V5_TODOS.md` numbering is gap-free.
  - Verifies every `§N` reference resolves.
  - Verifies every `arch§"anchor"` matches a section in `V5_ARCHITECTURE.md`.
  - Verifies every `features§"anchor"` matches a section in `V5_features.md`.
  - Verifies every `deps§N` matches a section in `V5_DEPENDENCIES.md`.
  - Verifies every ADR referenced exists under `V5/docs/decisions/`.
  - Exits non-zero on any failure with file:line context.
- [x] Wire `validate-v5-docs.py` into the repo pre-commit (alongside `V4`'s
      validator) and into CI.
- [x] Author `V5/tools/validate-cells.py` that verifies every cell enumerated in
      features matches:
  - A GameFeatures plugin folder.
  - At least one feel-test scenario.
  - At least one mission template.
  - At least one cell-flavored radio / music asset (for cells with in-world
    media).
- [x] Wire `validate-cells.py` into the nightly CI.

### 1.4 Repo placeholders

- [x] Create `V5/balance/` subdirectories: `urban/`, `period/`, `frontier/`,
      `hunter/`, `scifi/`, `shared/`, `period-auth/`, `schema/`.
- [x] Create `V5/docs/` subdirectories: `ai/`, `ci/`, `decisions/`,
      `integration/`.
- [x] Create `V5/legal/` with `platform-cert-bans.json` and `rating-boards.json`
      (templated from V2 / V4).
- [x] Create `apps/v5/` placeholders for each service in arch§"Online Services
      Backend" — 16 service folders with README and stub `package.json`.
- [x] Create `V5/tools/` subdirectories: `missions/`, `bestiary/`,
      `period-auth/`, `starmap/`, `broadcast/`, `release/`.
- [x] Create `apps/v5/web/` for the marketing site with Next.js app skeleton.
- [x] Create `V5/loc/` with per-locale subdirectories for the 16 launch language
      packs (en-US, en-UK, fr, de, es-LATAM, es-ES, it, pt-br, ja, ko, zh-Hans,
      zh-Hant, ru, ar, pl, tr).

---

## 2. Engine Modules — V5Core [P1]

- [x] Create `V5/ue/Source/V5Core/` module with `.Build.cs`, module class.
- [x] Implement `UV5_GameInstance` extending `UGameInstance` with:
  - Profile load/save.
  - Per-cell mode transitions.
  - Cross-cell Bureau XP ledger.
- [x] Implement `UV5_SaveGame` with per-cell save slots
      (Urban/Period/Frontier/Hunter/SciFi/MindPalace).
- [x] Implement save-versioning with backward-compat for save migration.
- [x] Implement triple-redundant save (current / previous / fallback).
- [x] Implement save-encryption with platform-derived per-account key.
- [x] Implement save cloud-sync via platform cloud-save APIs.
- [x] Implement `UV5_GameplayTagRegistry` loading `DefaultGameplayTags.ini`.
- [x] Implement `UV5_DevCheatSubsystem` with dev-only cheats (god-mode,
      infinite-ammo, mind-palace-unlock-all, fast-travel- anywhere). Production
      builds strip these via `WITH_DEV_CHEATS`.
- [x] Author unit tests for save format roundtrip.
- [x] Author automation test for save versioning migration.

## 3. Engine Modules — V5Gameplay [P1]

- [x] Create `V5/ue/Source/V5Gameplay/` module.
- [x] Implement `UV5_AttributeSet_Combat` (Health, Stamina, Armor, etc. per
      arch§"Gameplay Ability System (GAS) Layout").
- [x] Implement `UV5_AttributeSet_Honor` with Honor / Bounty / Paragon /
      Renegade / per-cell-axis attributes.
- [x] Implement `UV5_AttributeSet_Ship` for Hard Vacuum cell.
- [x] Implement `UV5_AttributeSet_Vehicle` for vehicle damage / fuel.
- [x] Implement `UV5_GameplayAbility_Base` with cell-tagged context.
- [x] Implement `UV5_GameplayEffect_Damage_Physical`.
- [x] Implement `UV5_GameplayEffect_Damage_Energy`.
- [x] Implement `UV5_GameplayEffect_Damage_Bleed` (multi-tick).
- [x] Implement `UV5_GameplayEffect_Buff_*` set (12 buff variants).
- [x] Implement `UV5_GameplayEffect_Period_*` set (oil application, etc.).
- [x] Implement `UV5_GameplayEffect_Persistent_HonorMod`.
- [x] Implement narrative-state machine `UV5_StateMachine` for tracking campaign
      flags across all cells.
- [x] Author automation tests for GE stacking, replication, and cancellation.

## 4. Engine Modules — V5Open [P1]

- [x] Create `V5/ue/Source/V5Open/` module.
- [x] Implement `UV5_Open_StreamingSubsystem` driving World Partition streaming.
- [x] Implement per-cell streaming-source priority (player + companions + active
      mission markers).
- [x] Implement traffic spawning with `UV5_Open_TrafficSpawner` (cell-aware
      density: Urban / Period / Frontier vehicle densities).
- [x] Implement pedestrian spawning with `UV5_Open_PedSpawner` (era-aware crowd
      density).
- [x] Implement weather subsystem `UV5_Open_Weather` with state machine (dry /
      light rain / heavy rain / snow / fog / dust storm / solar-flare).
- [x] Implement time-of-day `UV5_Open_TimeOfDay` with 48-minute cycle.
- [x] Implement HLOD authoring rules (HLOD0..HLOD3 per partition cell).
- [x] Implement `UV5_Open_DataLayer_Era` for era-bundle swap (period cell).
- [x] Author automation test for streaming-source priority at high density.

## 5. Engine Modules — V5Vehicles [P1]

- [x] Create `V5/ue/Source/V5Vehicles/` module.
- [x] Implement `UV5_Vehicle_Base` extending Chaos vehicle.
- [x] Implement `UV5_Vehicle_Modern_Sedan` (urban cell).
- [x] Implement `UV5_Vehicle_Modern_Sports` (urban cell).
- [x] Implement `UV5_Vehicle_Modern_SUV`.
- [x] Implement `UV5_Vehicle_Modern_Bike_Sport`.
- [x] Implement `UV5_Vehicle_Modern_Bike_Dirt`.
- [x] Implement `UV5_Vehicle_Modern_Bicycle`.
- [x] Implement `UV5_Vehicle_Modern_Sedan_TaxiVariant`.
- [x] Implement `UV5_Vehicle_Modern_Sedan_PoliceVariant`.
- [x] Implement `UV5_Vehicle_Modern_Sedan_AmbulanceVariant`.
- [x] Implement `UV5_Vehicle_Modern_Helo` (3 sub-classes: civilian, news,
      police).
- [x] Implement `UV5_Vehicle_Modern_PlaneLight` (single-engine).
- [x] Implement `UV5_Vehicle_Modern_PlaneTwin`.
- [x] Implement `UV5_Vehicle_Modern_Boat_Ski`.
- [x] Implement `UV5_Vehicle_Modern_Boat_Speedboat`.
- [x] Implement `UV5_Vehicle_Modern_Boat_Yacht`.
- [x] Implement `UV5_Vehicle_Modern_Truck_Semi` (with detachable trailer).
- [x] Implement `UV5_Vehicle_Modern_Truck_Garbage`.
- [x] Implement `UV5_Vehicle_Modern_Tank` (5★ wanted spawn).
- [x] Implement `UV5_Vehicle_Modern_APC` (5★ wanted spawn).
- [x] Implement `UV5_Vehicle_Modern_Attackhelo` (5★ wanted spawn).
- [x] Implement `UV5_Vehicle_Modern_VTOL` (5★ wanted spawn).
- [x] Implement `UV5_Vehicle_Period_30s_Sedan` (1930s tuning: 55 mph top, drum
      brakes, manual choke).
- [x] Implement `UV5_Vehicle_Period_30s_Coupe`.
- [x] Implement `UV5_Vehicle_Period_30s_Truck`.
- [x] Implement `UV5_Vehicle_Period_30s_RolserCar`.
- [x] Implement `UV5_Vehicle_Period_47_Sedan` (1947 tuning).
- [x] Implement `UV5_Vehicle_Period_47_Convertible`.
- [x] Implement `UV5_Vehicle_Period_47_DetectiveUnmarked` (Vice Squad default).
- [x] Implement `UV5_Vehicle_Period_47_PoliceMarked`.
- [x] Implement `UV5_Vehicle_Period_47_Bus`.
- [x] Implement `UV5_Vehicle_Period_68_Sedan`.
- [x] Implement `UV5_Vehicle_Period_68_MuscleCar`.
- [x] Implement `UV5_Vehicle_Period_68_VanCustom`.
- [x] Implement `UV5_Vehicle_Frontier_Wagon` (4-horse team).
- [x] Implement `UV5_Vehicle_Frontier_Stagecoach`.
- [x] Implement `UV5_Vehicle_Frontier_RiverBoat`.
- [x] Implement `UV5_Vehicle_Frontier_TrainPassenger`.
- [x] Implement `UV5_Vehicle_Frontier_TrainCargo` (heist-able).
- [x] Implement `UV5_Vehicle_Hunter_Wagon_Witcher`.
- [x] Implement `UV5_Vehicle_Hunter_Wagon_Hayrider`.
- [x] Implement `UV5_Vehicle_Hunter_Boat_Skiff`.
- [x] Implement `UV5_Vehicle_Customization` system (paint, wheels, suspension,
      engine, decals, license-plate) for modern + period.
- [x] Implement `UV5_Vehicle_Damage` with ChaosDestruction integration (body
      deformation + tire blowout + engine knock-out).
- [ ] Author content for ~250 vehicle meshes (Modern: 120; Period: 84; Frontier
      wagons/coaches/trains: 38; Hunter wagons/boats: 24; Sci-Fi spacecraft
      handled in V5Spaceship).
- [x] Author per-vehicle ChaosVehicles tuning files.
- [x] Implement vehicle radio integration with V5RadioTV.
- [x] Author automation test for vehicle handling consistency (across
      save/load).

## 6. Engine Modules — V5Combat [P1]

- [x] Create `V5/ue/Source/V5Combat/` module.
- [x] Create `V5/ue/Plugins/V5Mode_Training_Range/` GameFeatures plugin owning
      weapon training, AI dummies, vehicle-handling track, sign / power tune
      bays, vision-cone calibration, and frame-data display for combat-system
      verification by players and esports teams.

Canonical-provider audit note (2026-07-27): the governed
`@v5/metis-training-bridge` now binds those exact six checked-in verification
bays to exact released Metis lessons for source-disclosed instructional content.
It rejects live metrics, gameplay and trial outcomes, authoritative tuning
values, AI Director state, and rollback state before provider reads. This proves
authoring/cook admission, not a cooked Unreal consumer or recorded in-engine
rendering.

- [x] Implement `UV5_Combat_AimDownSight` with FOV, sway, recoil.
- [x] Implement `UV5_Combat_Cover` with sticky-cover, corner-peek, slide-
      into-cover, vault.
- [x] Implement per-cell recoil pattern tuning (1899 / 1947 / modern / sci-fi).
- [x] Implement `UV5_Combat_StanceSubsystem` (stand / crouch / prone +
      cell-specific stances).
- [x] Implement `UV5_Combat_Reload` with weapon-specific reload animations.
- [x] Implement `UV5_Combat_BulletPenetration` for thin walls / cover.
- [x] Implement `UV5_Combat_HitReaction` with 12 hit-react classes.
- [x] Implement `UV5_Combat_FriendlyFire` policy per cell.
- [x] Implement `UV5_Combat_WeaponBase` and per-cell weapon roster.
- [x] Author weapon roster: 65 modern, 40 period (1930s/47/68), 22 frontier
      (1899 black-powder + early cartridge), 32 hunter (steel + silver swords +
      crossbows), 38 sci-fi (rifles, biotic-aug rifles, tech-aug rifles).
- [x] Author automation test for damage curves per weapon class.

## 7. Engine Modules — V5Melee [P1]

- [x] Create `V5/ue/Source/V5Melee/` module.
- [x] Implement `UV5_Melee_MoveLibrary` with 85+ moves (urban brawler lineage),
      22+ Witcher swordplay moves, 18+ frontier brawler moves.
- [x] Implement `UV5_Melee_RPS` (Strike / Grapple / Counter rock-paper- scissors
      timing).
- [x] Implement `UV5_Melee_ComboMeter` with 10-hit threshold + finisher
      eligibility.
- [x] Implement `UV5_Melee_EnvFinisher` system with 24 environmental finisher
      prompts (chum tank, ice block, hanging meat, AC unit, electrical box,
      jukebox, gas pump, freezer, glass display, dumpster compactor, oven,
      deep-fryer, neon sign, treadmill, fish scaler, lawnmower, ice-cream truck,
      payphone, fire-hydrant lid, manhole cover, sushi conveyor, mahjong table,
      blender, bicep machine).
- [x] Implement `UV5_Melee_HitStop` with 4-frame standard / 7-frame counter
      timing.
- [x] Implement `UV5_Melee_WeaponPickup` with 12 melee-weapon pickups (lead
      pipe, bottle, butcher knife, chair, fire extinguisher, etc.) and
      degradation logic.
- [x] Implement `UV5_Melee_NPCReaction` with 12 hit-react classes (light stagger
      / knockdown / spin-fall / wall-slam / KO / KO-bleed / KO-vom / dive-back /
      scramble-up / beg-for-mercy / fight-on / flee).
- [x] Implement `UV5_Melee_BladeParry` for Witcher cell with 4 / 6 / 8 frame
      parry windows.
- [x] Implement `UV5_Melee_SteelSilverSwap` flourish animation (0.4 s).
- [ ] Author content for ~600 melee animation clips.
- [x] Author automation test for combo-chain and env-finisher prompt
      eligibility.

## 8. Engine Modules — V5Investigation [P1]

- [x] Create `V5/ue/Source/V5Investigation/` module.
- [x] Implement `UV5_Investigation_SceneMarker` actor for crime-scene placement.
- [x] Implement `UV5_Investigation_ExamineCamera` for close-up rotation.
- [x] Implement `UV5_Investigation_ClueActor` with diegetic detail spots (powder
      residue, manufacturer mark, dried blood, hidden compartment).
- [x] Implement `UV5_Investigation_RumblePulse` (gentle haptic when camera near
      examinable).
- [x] Implement `UV5_Investigation_Notebook` auto-write.
- [x] Implement `UV5_Investigation_MindPalacePush` interface emitting
      evidence-node events to V5MindPalace.
- [x] Implement `UV5_Investigation_FalseClue` with no-penalty handling.
- [x] Implement `UV5_Investigation_QuietMode` (rumble-off difficulty).
- [x] Author automation test for clue pickup → mind palace node creation.

## 9. Engine Modules — V5Interrogation [P1]

- [x] Create `V5/ue/Source/V5Interrogation/` module.
- [x] Implement `UV5_Interrogation_Session` actor with witness + scene context.
- [x] Implement `UV5_Interrogation_FacialTellPlayer` driven by USD- backed
      blendshape stack from face capture pipeline.
- [x] Implement `UV5_Interrogation_TruthDoubtLie` input handler.
- [x] Implement `UV5_Interrogation_EvidenceBackedLie` requiring inventory check.
- [x] Implement `UV5_Interrogation_TellLibrary` with 12 distinct tells.
- [x] Implement `UV5_Interrogation_RatingSystem` (Brilliant / Good / Average /
      Poor).
- [x] Implement `UV5_Interrogation_MultiplePass` for follow-up sessions.
- [x] Implement `UV5_Interrogation_VOSyncSubsystem` (lipsync + facial tell
      sync).
- [x] Author 50+ interrogation scenes (witnesses) across the Vice Squad
      campaign.
- [x] Author automation test for tell-playback determinism.

## 10. Engine Modules — V5MindPalace [P1]

- [x] Create `V5/ue/Source/V5MindPalace/` module.
- [x] Implement `UV5_MindPalace_Graph` data structure (nodes + edges).
- [x] Implement `UV5_MindPalace_EvidenceNode` with cell / location / timestamp /
      tags / description / image / examined-details.
- [x] Implement `UV5_MindPalace_DeductionEdge` (authored or weak).
- [x] Implement `UV5_MindPalace_AddEvidenceNode` API.
- [x] Implement `UV5_MindPalace_AttemptDeduction` API.
- [x] Implement `UV5_MindPalace_BuildHypothesisChain`.
- [x] Implement `UV5_MindPalace_MakeAccusation` with case-id + accused-id +
      evidence-chain.
- [x] Implement `UV5_MindPalace_OutcomesArchive` (every outcome logged).
- [x] Implement `UV5_MindPalace_CrossEraGate` (Bureau-XP-gated unlocks).
- [x] Implement `UV5_MindPalace_View_Volumetric` 3D memory-room UI.
- [x] Implement `UV5_MindPalace_FilterRail` (cell / case / time / tag).
- [x] Implement `UV5_MindPalace_CrossEraCinematic` (4 s thread-connects
      cinematic).
- [x] Implement `UV5_MindPalace_CloudSync` to `services/mindpalace-cloud-sync`.
      <!-- completed 2026-06-13: the audit found BuildGraphDiffPayload built the
                                              diff JSON but never POSTed (no FHttpModule). Added real transport
                                              `FV5MindPalaceCloudSyncHttp` + latent `UV5_MindPalace_CloudSyncRequest`
                                              (V5MindPalaceCloudSyncHttp.{h,cpp}, HTTP added to V5MindPalace.Build.cs):
                                              real FHttpModule POST of the graph-diff JSON to the mindpalace-cloud-sync
                                              service (:4220 /v5/mindpalace-cloud-sync/graph-diff, Bearer JWT), typed
                                              result parse, 401 fail-loud short-circuit. BUILT on-box UE5.5 + RAN
                                              automation as ueagent: 4/4 V5.MindPalace tests green incl. a LIVE
                                              ROUND-TRIP — the editor POSTed a real diff over FHttpModule to the running
                                              (Postgres-backed) service and got a real success response (V5_ONLINE_LIVE=1,
                                              EXIT 0). -->

- [x] Implement `UV5_MindPalace_CompanionAppRead` API for companion app to read
      graph state.
- [x] Author 30 cross-era deduction pairs for the main arc.
- [x] Author 80 per-cell deduction pairs.
- [x] Author automation test for cross-era deduction unlock.
- [x] Author end-to-end test: complete main arc with three different accusation
      outcomes.

## 11. Engine Modules — V5Dialogue [P1]

- [x] Create `V5/ue/Source/V5Dialogue/` module.
- [x] Implement `UV5_Dialogue_Wheel` UI (6 spokes; paragon/renegade tint).
- [x] Implement `UV5_Dialogue_RuntimeStateMachine` walking authored tree.
- [x] Implement `UV5_Dialogue_Interrupt` with single-frame trigger window.
- [x] Implement `UV5_Dialogue_CharmIntimidate` gate (reputation-gated).
- [x] Implement `UV5_Dialogue_Authoring` yaml schema for dialogue trees.
- [x] Implement `V5/tools/missions/dialogue.py` yaml-to-UAsset compile.
- [x] Implement `UV5_Dialogue_VOAdapter` linking VO bank to nodes.
- [x] Implement per-cell wheel flavor (color / icon overrides).
- [ ] Author 12000 dialogue nodes across all cells (rough: Urban 1500, Period
      4000, Frontier 2500, Hunter 2500, Sci-Fi 1500).
- [x] Author automation test for dialogue branching.

## 12. Engine Modules — V5Squad [P1]

- [x] Create `V5/ue/Source/V5Squad/` module.
- [x] Implement `UV5_Squad_Member` actor with companion data.
- [x] Implement `UV5_Squad_LoyaltyArc` state machine.
- [x] Implement `UV5_Squad_RomanceGate` per-companion logic.
- [x] Implement `UV5_Squad_PowerCombo` (cross-companion combo trigger).
- [x] Implement `UV5_Squad_DeathState` end-game survival branch.
- [x] Implement `UV5_Squad_HubInteraction` (ship-walking companions).
- [x] Author 8 sci-fi companions with backstory + loyalty arc + romance.
- [x] Author 22 frontier camp gang members (subset of which become mission
      companions).
- [x] Author 16 hunter companions.
- [x] Author 22 urban + period companions.
- [x] Author automation test for loyalty completion gating end-game survival.

## 13. Engine Modules — V5StarMap [P1]

- [x] Create `V5/ue/Source/V5StarMap/` module.
- [x] Implement `UV5_StarMap_GalaxyView` UI.
- [x] Implement `UV5_StarMap_System` actor (per-system data).
- [x] Implement `UV5_StarMap_FTLPlot` UI.
- [x] Implement `UV5_StarMap_FTLTransit` cinematic (15s).
- [x] Implement `UV5_StarMap_OrbitalScan` minigame.
- [x] Implement `UV5_StarMap_FuelConsumption` from fuel ledger.
- [x] Author 32 systems with 120 explorable bodies.
- [x] Author automation test for FTL fuel + position update.

## 14. Engine Modules — V5Spaceship [P1]

- [x] Create `V5/ue/Source/V5Spaceship/` module.
- [x] Implement `UV5_Ship_NewtonianPawn` (vector flight, RCS).
- [x] Implement `UV5_Ship_MainEngine` with thrust-G simulation.
- [x] Implement `UV5_Ship_RCSThruster` array.
- [x] Implement `UV5_Ship_GravityZone` (thrust-G / spin-G / zero-G volumes).
- [x] Implement `UV5_Ship_FlipAndBurn` action (180° RCS + decel burn).
- [x] Implement `UV5_Ship_LooseObjectSim` (coffee-cup-on-table —
      momentum-conserving prop sim).
- [x] Implement `UV5_Ship_PDC` (high-RPM bullet weapon, 7 km/s, 8 km range).
- [x] Implement `UV5_Ship_Railgun` (high-velocity slug, 60 km/s, 50 km range,
      real-time travel).
- [x] Implement `UV5_Ship_Torpedo` (guided missile, physics object,
      PDC-interceptable).
- [x] Implement `UV5_Ship_DamageModel` (per-component HP with cascading
      effects).
- [x] Implement `UV5_Ship_Boarding` (magnetic clamp + airlock breach).
- [x] Implement `UV5_Ship_ZeroGCombat` (3D positioning + recoil-induced tumble).
- [x] Author 3 player-controllable ship classes (Skiff, Corvette, Frigate).
- [ ] Author 18 spaceship meshes total.
- [x] Author automation test for flip-and-burn cycle determinism.

## 15. Engine Modules — V5Alchemy [P1]

- [x] Create `V5/ue/Source/V5Alchemy/` module.
- [x] Implement `UV5_Alchemy_Recipe` data table.
- [x] Implement `UV5_Alchemy_BrewingStation` actor.
- [x] Implement `UV5_Alchemy_Inventory` with potion / oil / bomb / decoction
      slots.
- [x] Implement `UV5_Alchemy_ToxicitySystem` (per-consumable toxicity
      stacking; >70% triggers self-damage).
- [x] Implement `UV5_Alchemy_IngredientGather` (interactable herb / mushroom /
      monster-part nodes).
- [x] Implement `UV5_Alchemy_RespawnSchedule` (4 in-game days).
- [x] Author 120 recipes (30 potions, 30 oils, 30 bombs, 30 decoctions).
- [x] Author 180 ingredient types.
- [x] Author automation test for toxicity stacking.

## 16. Engine Modules — V5Signs [P1]

- [x] Create `V5/ue/Source/V5Signs/` module.
- [x] Implement 5 `UV5_Ability_Sign_*` abilities (Fire-Cone, Force-Wave, Shield,
      Trap-Glyph, Mind-Suggest).
- [x] Implement charge-tier variants (base + charged).
- [x] Implement 5-tier upgrade tree per sign (25 nodes total).
- [x] Implement Niagara FX per sign.
- [x] Implement stamina-gating from V5_AttributeSet_Combat.
- [x] Author automation test for sign cost / damage curves.

## 17. Engine Modules — V5MonsterHunt [P1]

- [x] Create `V5/ue/Source/V5MonsterHunt/` module.
- [x] Implement `UV5_MonsterHunt_WitcherSense` mode toggle.
- [x] Implement `UV5_MonsterHunt_ClueMarker` with 6 clue types (scent / blood /
      track / broken-foliage / sound / magic).
- [x] Implement `UV5_MonsterHunt_TrailFollowing` AI nav marker.
- [x] Implement `UV5_MonsterHunt_ContractBoard` actor + UI.
- [x] Implement `UV5_MonsterHunt_ContractData` (target, location, fee, hint,
      intel-purchase).
- [x] Implement `UV5_MonsterHunt_ContractPostingScheduler` (every 36 in-game
      hours).
- [x] Implement `UV5_MonsterHunt_Bestiary` with 80 entries × 12 cats.
- [x] Implement `UV5_MonsterHunt_BestiaryUnlock` (encounter + combat + defeat).
- [x] Implement `UV5_MonsterHunt_DamageBonus` from bestiary completion.
- [x] Implement `UV5_MonsterHunt_TomeSeller` NPC with bestiary pre-unlocks.
- [x] Author 80 monster entries with stat blocks, weak-vs-oil, weak-vs- sign,
      weak-vs-bomb.
- [x] Author 60 monster-contract templates.
- [x] Author automation test for bestiary unlock progression.

## 18. Engine Modules — V5DeadEye [P1]

- [x] Create `V5/ue/Source/V5DeadEye/` module.
- [x] Implement `UV5_DeadEye_Gauge` (charge from kills / headshots /
      story-beats).
- [x] Implement `UV5_DeadEye_Tier1` auto-target + slowed time.
- [x] Implement `UV5_DeadEye_Tier2` painted-shot (player paints up to 6
      targets).
- [x] Implement `UV5_DeadEye_Tier3` weak-spot painting.
- [x] Implement `UV5_DeadEye_SlowMoEffect` (frontier feel: vignette + grain +
      sepia).
- [x] Implement `UV5_DeadEye_ReflexMode_Urban` reskin for urban cell.
- [x] Implement `UV5_DeadEye_TacticalTime_SciFi` reskin for sci-fi cell.
- [x] Author automation test for slow-mo determinism.

## 19. Engine Modules — V5Honor [P1]

- [x] Create `V5/ue/Source/V5Honor/` module.
- [x] Implement `UV5_Honor_Meter` (HonorScore, -100 to +100).
- [x] Implement `UV5_Honor_Bounty` ($-amount).
- [x] Implement `UV5_Honor_WitnessReport` chain (NPC → nearest authority).
- [x] Implement `UV5_Honor_NPCGreeting` (per-band greetings).
- [x] Implement `UV5_Honor_ShopkeeperDiscount` (high-honor discount).
- [x] Implement `UV5_Honor_EncounterFlavor` (high vs. low honor encounter mix).
- [x] Implement `UV5_Honor_KarmaParagonBridge` (moral-compass meta-axis, see
      arch§"Honor / Karma / Paragon Bridge").
- [x] Implement `UV5_Honor_BureauXPMod` (high-magnitude compass earns more
      Bureau XP).
- [x] Author automation test for honor changes propagating to NPC greetings.

## 20. Engine Modules — V5Hunting [P1]

- [x] Create `V5/ue/Source/V5Hunting/` module.
- [x] Implement `UV5_Hunting_AnimalAI` with sight / sound / flee behaviors.
- [x] Implement `UV5_Hunting_TrackingMode` (eagle-eye reskin of witcher- sense
      for frontier).
- [x] Implement `UV5_Hunting_PerfectPeltScoring` (caliber / clean-kill /
      field-dress-time).
- [x] Implement `UV5_Hunting_FieldDressing` interaction.
- [x] Implement `UV5_Hunting_CarcassTransport` (rear-of-horse).
- [x] Implement `UV5_Hunting_TrapperProgression` (perfect-pelt outfits).
- [x] Author 65 huntable species (deer / elk / moose / bison / pronghorn / bear
      ×4 / wolves / coyote / fox / lynx / cougar / bighorn / etc.) with 3-tier
      pelt grading.
- [x] Author 60 trapper-outfit recipes.
- [x] Author automation test for perfect-pelt scoring.

## 21. Engine Modules — V5Crowd [P1]

- [x] Create `V5/ue/Source/V5Crowd/` module.
- [x] Implement `UV5_Crowd_MassEntity` integration (Mass Entity for density).
- [x] Implement `UV5_Crowd_Promotion` (entity → pawn at threshold).
- [x] Implement `UV5_Crowd_PanicPropagation` (gunshot / crash → flee radius).
- [x] Implement `UV5_Crowd_WitnessReport` integration with V5Honor.
- [ ] Implement `UV5_Crowd_BodyLanguageLibrary` per-era walk-cycle / idle /
      panic anim sets. Done when (added 2026-09-18):
      `UV5_Crowd_BodyLanguageLibrary::SelectBodyLanguageLibrary` exists in
      `V5Crowd/Public/V5CrowdSystems.h` and picks a library descriptor; that is
      not this task. The residue is the binding: each era's walk, idle and panic
      set resolves to a real `UAnimSequence` or blend space on the crowd
      skeleton, a missing era and state pair fails a validation commandlet
      instead of falling back silently, and `V5.Crowd.BodyLanguageBinding` in
      `V5Crowd/Private/Tests` drives one agent through walk, idle and panic and
      reads the playing asset. The animation clips in volume are content and
      come through the generation lanes; seed one era by hand.
- [x] Implement `UV5_Crowd_VocabBarks` per-era yelling vocab (1899 / 1947 / 1968
      / modern).
- [ ] Author 6 era-bundle body-language libraries. _Board tag 2026-09-18: bulk
      animation content; waits on a motion lane being admitted (Isis T.12 and
      T.13) and on `UV5_Crowd_BodyLanguageLibrary` above._ `blocked:upstream`
- [ ] Author 5000+ ambient bark lines across eras + cells. _Board tag
      2026-09-18: bulk written content; produced through the autonomous content
      pipeline of the V1–V9 ledger (its V5 slices), not from a checkbox._
      `blocked:upstream`
- [x] Author automation test for panic propagation distance.

## 22. Engine Modules — V5Wanted [P1]

- [x] Create `V5/ue/Source/V5Wanted/` module.
- [x] Implement `UV5_Wanted_Manager` 5-star escalation curve.
- [x] Implement `UV5_Wanted_PoliceSpawner` per-era (1899 marshal / 1947 LAPD /
      1968 patrol / modern / sci-fi patrol).
- [x] Implement `UV5_Wanted_OffTheRadar` 90-second timer.
- [x] Implement `UV5_Wanted_Payoff` interaction (lawyer / bribe NPC).
- [x] Implement `UV5_Wanted_SafehouseHide` (faster tick inside garage).
- [x] Implement `UV5_Wanted_TankSpawn` (5★ specific zones).
- [x] Implement `UV5_Wanted_AttackHeloSpawn` (4★ helicopter).
- [x] Implement `UV5_Wanted_VTOLSpawn` (5★ military).
- [x] Implement frontier variant (1899 marshal + posse spawn).
- [x] Implement hunter variant (village-watch + lord's-guard spawn).
- [x] Implement sci-fi variant (faction patrol cruiser).
- [x] Author automation test for wanted escalation timing.

## 23. Engine Modules — V5Heist [P1]

- [x] Create `V5/ue/Source/V5Heist/` module.
- [x] Implement `UV5_Heist_Planner` Slate panel.
- [x] Implement `UV5_Heist_TargetBoard` (intel pinboard).
- [x] Implement `UV5_Heist_CrewSelection` (1-4 protag + outside-crew).
- [x] Implement `UV5_Heist_RoleAssignment` (driver / hacker / gunner / lookout /
      demo).
- [x] Implement `UV5_Heist_VehicleAssignment`.
- [x] Implement `UV5_Heist_WeaponLoadout`.
- [x] Implement `UV5_Heist_RouteAuthoring` (waypoints on the map).
- [x] Implement `UV5_Heist_RehearsalPreview` (4× slowed-speed).
- [x] Implement `UV5_Heist_ConflictDetection` (cross-fire / patrol-zone
      highlight).
- [x] Implement `UV5_Heist_LiveOverride` (Tab-pause re-routing).
- [x] Implement `UV5_Heist_ReplayExport`.
- [x] Implement `UV5_Heist_EndingResolver` (smooth / hard / catastrophic).
- [x] Author 12 main-campaign heists.
- [x] Author 8 additional heist templates for heist co-op replay.
- [x] Author automation test for heist ending classification.

## 24. Engine Modules — V5PeriodAuth [P1]

- [x] Create `V5/ue/Source/V5PeriodAuth/` module.
- [x] Implement `UV5_PeriodAuth_Bundle` data table (era_id + vehicles +
      fashion + signage + fonts + slang + music + food + radio + lighting).
- [x] Implement `UV5_PeriodAuth_DataLayerFlip` (World Partition swap).
- [x] Implement `UV5_PeriodAuth_NPCSwap` (era-specific body-language).
- [x] Implement `UV5_PeriodAuth_UIFlavor` (era-specific font + palette).
- [x] Author 3 era bundles (1930s / 1947 / 1968).
- [x] Author research dossier per era under
      `V5/balance/period-auth/<era>/research.md`.
- [x] Implement asset linter for period-tag membership.
- [x] Author automation test for data-layer flip continuity.

## 25. Engine Modules — V5FaceCapture [P1]

- [x] Create `V5/ue/Source/V5FaceCapture/` module.
- [ ] Implement `UV5_FaceCapture_USDLoader` for blendshape stacks. Done when
      (added 2026-09-18): `BuildBlendshapeStack` today takes the curve names and
      frame count as arguments and builds a descriptor; nothing reads a USD
      file. The residue is the reader: parse a `.usda` fixture with Unreal's USD
      importer plugin (enable it in `V5.uproject`), fill the stack from the
      file's blendshape targets and time samples, and fail loudly on a file with
      none. `V5.FaceCapture.UsdLoader` loads a committed fixture with three
      targets and asserts names, frame rate and sample count, and a malformed
      file is refused.
- [ ] Implement `UV5_FaceCapture_MetaHumanBind`. Done when (added 2026-09-18):
      `BuildMetaHumanBind` returns a descriptor. The residue is the mapping it
      describes: every curve of the stack maps to a named MetaHuman face control
      curve (the 52 ARKit names and any FACS extras the types declare), an
      unmapped curve is reported, and `V5.FaceCapture.MetaHumanBind` drives a
      fixture face control rig from a stack and reads the curve values back. A
      MetaHuman asset itself needs an Epic account, which is the owner's; test
      against a fixture rig that carries the same curve names.
- [ ] Implement `UV5_FaceCapture_TellTakeAuthoring` (Sequencer-integrated editor
      for trimming / blending takes). Done when (added 2026-09-18):
      `AuthorTellTake` computes a trimmed take descriptor. The residue is the
      editor half the item names: an editor utility in `V5Editor` that opens
      from Sequencer on a selected take, trims and blends two takes with the
      math `AuthorTellTake` already has, and writes the result as an asset.
      `V5.FaceCapture.TellTakeAuthoring` covers the trim and blend on fixture
      stacks, and an editor automation test opens the tool on a fixture
      sequence.
- [x] Implement `UV5_FaceCapture_VOSyncSubsystem` (lipsync + tell playback).
- [x] Implement `UV5_FaceCapture_RetakePipeline`.
- [ ] Author capture-pipeline calibration tool (per-actor 16-hour FACS
      calibration session script). _2026-09-18: the tool is agent work; the
      per-actor 16-hour FACS sessions it calibrates against need performers and
      a capture rig. Build the tool against a published FACS sample set first
      and leave the per-actor pass parked when it is split off._
- [x] Document capture stage requirements in
      `V5/docs/decisions/0009-motionscan-via-metahuman.md`.
- [x] Implement asset linter for tell-take quality (frame count, FACS coverage).

## 26. Engine Modules — V5Karaoke [P1]

- [x] Create `V5/ue/Source/V5Karaoke/` module.
- [x] Implement `UV5_Karaoke_RhythmEngine` with note-track input.
- [x] Implement `UV5_Karaoke_DifficultyTuning` (6 difficulties).
- [x] Implement `UV5_Karaoke_VenueActor` for lounge venues.
- [x] Implement `UV5_Karaoke_ReputationReward` (face/triad shifts).
- [ ] Author 32 karaoke tracks (8 Canto-pop, 8 Mandarin ballad, 8 English pop, 8
      K-pop) — all original IP or specifically cleared.
- [x] Author automation test for note-timing accuracy.

## 27. Engine Modules — V5CardGame [P1]

- [x] Create `V5/ue/Source/V5CardGame/` module.
- [x] Implement `UV5_CardGame_RuleEngine` (rules re-derived; documented in ADR
      0018).
- [x] Implement `UV5_CardGame_DeckBuilder` UI.
- [x] Implement `UV5_CardGame_OpponentAI`.
- [x] Implement `UV5_CardGame_PvP` mode.
- [x] Implement `UV5_CardGame_CardDropFromKills`.
- [x] Implement `UV5_CardGame_MerchantInventory`.
- [x] Implement `UV5_CardGame_TournamentMode`.
- [x] Author 320 cards across 5 factions.
- [x] Author rules document in `V5/balance/hunter/cardgame-rules.md`.
- [x] Author automation test for rule-engine corner cases.

## 28. Engine Modules — V5RadioTV [P1]

- [x] Create `V5/ue/Source/V5RadioTV/` module.
- [x] Implement `UV5_RadioTV_Station` actor.
- [x] Implement `UV5_RadioTV_DJTrack` MetaSounds graph.
- [x] Implement `UV5_RadioTV_NewsBulletin` dynamic injection (live narrative
      beats → news ticker).
- [x] Implement `UV5_RadioTV_TalkShowSatire` rotating-topic engine.
- [x] Implement `UV5_RadioTV_InGameTV` channel selector.
- [x] Implement `UV5_RadioTV_InGameInternet` (fictional sites, 250 sites).
- [x] Implement `UV5_RadioTV_InGamePhone` (text / call / photo / social /
      browser / heist-briefings).
- [x] Implement `UV5_RadioTV_VehicleIntegration` (in-vehicle radio mix).
- [ ] Author 18 radio stations × ~90-minute loop each.
- [ ] Author 140 TV channels.
- [ ] Author 250 fictional internet sites.
- [ ] Author 1200 talk-radio writers-room lines.
- [x] Author automation test for vehicle radio swap.

## 29. Engine Modules — V5HorseAI [P1]

- [x] Create `V5/ue/Source/V5HorseAI/` module.
- [x] Implement `UV5_Horse_Pawn` with quadruped skeleton.
- [x] Implement `UV5_Horse_GaitLibrary` (walk / trot / cantor / gallop) with
      stamina cost.
- [x] Implement `UV5_Horse_Bonding` 4-tier progression.
- [x] Implement `UV5_Horse_SaddleBagInventory`.
- [x] Implement `UV5_Horse_FeedBrushTalk` interactions.
- [x] Implement `UV5_Horse_SpookCalm` (high-bond → calm-under-fire).
- [x] Implement `UV5_Horse_Whistle` recall.
- [x] Implement `UV5_Horse_Permadeath` (toggle in difficulty).
- [ ] Author 12 horse breed meshes.
- [ ] Author quadruped animation library (gaits + idle + rearing + side-step).
- [x] Author automation test for bonding tier transitions.

## 30. Engine Modules — V5Parkour [P1]

- [x] Create `V5/ue/Source/V5Parkour/` module.
- [x] Implement `UV5_Parkour_ContextSolver` (button-less; resolves intent from
      camera + run direction + stick magnitude).
- [x] Implement `UV5_Parkour_Vault` (low obstacle ≤ 0.8 m).
- [x] Implement `UV5_Parkour_Climb` (medium ≤ 1.6 m).
- [x] Implement `UV5_Parkour_WallRun` (vertical surfaces, 2-step).
- [x] Implement `UV5_Parkour_LedgeGrabShimmy`.
- [x] Implement `UV5_Parkour_FireEscapeSlide`.
- [x] Implement `UV5_Parkour_AwningBounce`.
- [x] Implement `UV5_Parkour_RoofToRoofDrop` (jump-or-roll based on gap).
- [x] Implement `UV5_Parkour_FailureRecovery` (out-of-stamina /
      slip-on-wet-surface).
- [ ] Author 200+ parkour animation clips.
- [x] Author automation test for context-resolution.

## 31. Engine Modules — V5LockpickHack [P1]

- [x] Create `V5/ue/Source/V5LockpickHack/` module.
- [x] Implement `UV5_LockpickHack_LockpickUI` (period-correct lockpick
      minigame).
- [x] Implement `UV5_LockpickHack_SafeCracking`.
- [x] Implement `UV5_LockpickHack_PeriodTelephoneTap` (period cell).
- [x] Implement `UV5_LockpickHack_DigitalCameraPlant` (urban modern).
- [x] Implement `UV5_LockpickHack_SciFiHack` (sci-fi terminal hacking).
- [x] Author 5 distinct minigame UIs per cell variant.
- [x] Author automation test for minigame outcome scoring.

## 32. Engine Modules — V5Schedules [P1]

- [x] Create `V5/ue/Source/V5Schedules/` module.
- [x] Implement `UV5_Schedule_Data` per-NPC routine (home / work / lunch /
      evening / sleep locations).
- [x] Implement `UV5_Schedule_Ticker` (5 in-game-minute tick).
- [x] Implement `UV5_Schedule_DistanceOfDetail` (full-tick / position- only /
      day-boundary-only).
- [x] Implement per-era schedule profiles (1899 sunrise-to-sundown / 1947
      8-hour-shift / modern 24-hour).
- [x] Implement `UV5_Schedule_IntersectWithPlayer` (trigger encounter on
      route-crossing).
- [x] Author 800+ named NPC schedule rows across cells.
- [x] Author automation test for schedule consistency at high simulation-radius.

## 33. Engine Modules — V5Animation [P1]

- [x] Create `V5/ue/Source/V5Animation/` module.
- [x] Implement `UV5_Anim_MotionMatchingTraversal` for walk / run / crouch.
- [x] Implement `UV5_Anim_AnimBPCombat` per-cell variants.
- [x] Implement `UV5_Anim_MetaHumanBind` for principals.
- [x] Implement `UV5_Anim_IK_FootGround`.
- [x] Implement `UV5_Anim_IK_HandLadder`.
- [x] Implement `UV5_Anim_IK_HandCover`.
- [x] Implement `UV5_Anim_IK_HandWeaponGrip`.
- [x] Implement `UV5_Anim_IK_HeadLookAt`.
- [x] Implement `UV5_Anim_IK_FullBodyMount` (horse / cockpit / airlock).
- [x] Implement `UV5_Anim_RetargetMetaHumanToQuadruped` (horse).
- [x] Implement `UV5_Anim_RetargetMetaHumanToWildlife` (per species).
- [x] Implement `UV5_Anim_RetargetMetaHumanToAlien` (sci-fi cell).
- [x] Implement `UV5_Anim_RootMotionAuthoritative` (server-side authoritative
      for finisher cinematics).
- [x] Implement `UV5_Anim_ChooserTable` hit-react variant selector.
- [ ] Author 30,000+ animation clips across cells.
- [x] Author automation test for motion-matching pose-database quality.

## 34. Engine Modules — V5Input [P1]

- [x] Create `V5/ue/Source/V5Input/` module.
- [x] Implement `UV5_Input_IMC_Manager` (stack-based IMC swap per cell).
- [x] Author 25+ Input Mapping Contexts (one per traversal / combat / vehicle /
      interrogate / sign / alchemy / cockpit / RCS / zero-G / mind-palace / menu
      / dialogue mode).
- [x] Implement `UV5_Input_DialogueWheelCursor`.
- [x] Implement `UV5_Input_AdaptiveController` profiles.
- [x] Implement `UV5_Input_HOTASBinding` (sci-fi cockpit).
- [x] Implement `UV5_Input_RacingWheelBinding` (urban + frontier).
- [x] Implement `UV5_Input_TouchControls` (iPad).
- [x] Implement `UV5_Input_VRControllers` (PSVR2 / Quest 3 / Vision Pro).
- [x] Author input remapping UI in V5UI.
- [x] Author automation test for IMC swap latency.

## 35. Engine Modules — V5Netcode [P1]

- [x] Create `V5/ue/Source/V5Netcode/` module.
- [x] Implement `UV5_Net_IrisReplication` integration.
- [x] Implement `UV5_Net_AOIStreaming` per-cell radii.
- [x] Implement `UV5_Net_PriorityScheme` (critical / important / background).
- [x] Implement `UV5_Net_LagCompensation` 200ms history window.
- [x] Implement `UV5_Net_HostMigration` 2-second cap.
- [x] Implement `UV5_Net_RollbackEmulated` 8-frame for twitch PvP.
- [x] Implement `UV5_Net_PRNG` xoshiro256+ seeded.
- [x] Implement `UV5_Net_BandwidthBudget` enforcement (64kbps avg / 256kbps
      burst).
- [x] Implement `UV5_Net_DedicatedServer` build target.
- [x] Implement `UV5_Net_ListenServer` build target.
- [x] Implement `UV5_Net_LAN` discovery.
- [x] Implement `UV5_Net_ServerBrowser` for private rooms.
- [x] Author netcode soak test (5% / 20% packet loss, 200ms RTT).

## 36. Engine Modules — V5Modes [P1]

- [x] Create `V5/ue/Source/V5Modes/` module.
- [x] Implement `UV5_Mode_Registry` (enumerate enabled GameFeatures plugins).
- [x] Implement `UV5_Mode_PerCellHUDRouter`.
- [x] Implement `UV5_Mode_RulesetGate` (toggle modes per build target).
- [x] Implement `UV5_Mode_OnlineLobby_BureauHQ` persistent lobby.

## 37. Engine Modules — V5UI [P1]

- [x] Create `V5/ue/Source/V5UI/` module.
- [x] Implement `UV5_UI_Shell` CommonUI front-end shell.
      <!-- completed 2026-06-16: UV5_UI_ShellWidget (UCommonActivatableWidget,
                                          procedural tree + screen stack + focus override); V5.UI.Widgets.ShellMenus
                                          automation green on on-box UE5.5.4. See V5/docs/UI_WIDGETS_2026-06-16.md. -->
- [x] Implement `UV5_UI_MainMenu`.
      <!-- completed 2026-06-16: UV5_UI_MainMenuWidget; entries + curated showcase
                                          carousel; V5.UI.Widgets.ShellMenus green. -->
- [x] Implement `UV5_UI_CellSelect`.
      <!-- completed 2026-06-16: UV5_UI_CellSelectWidget; per-cell cards +
                                          selection; V5.UI.Widgets.ShellMenus green. -->
- [x] Implement `UV5_UI_Settings` (Display / Audio / Input / Network /
      Accessibility / Privacy).
      <!-- completed 2026-06-16: UV5_UI_SettingsWidget; category tabs + per-
                                          category content rows; V5.UI.Widgets.ShellMenus green. -->
- [x] Implement `UV5_UI_HUD_Urban` (wanted-stars, ammo, mini-map).
      <!-- completed 2026-06-16: UV5_UI_HUD_UrbanWidget (UV5_UI_HUDWidgetBase);
                                          V5.UI.Widgets.HUDs green. -->
- [x] Implement `UV5_UI_HUD_Period_MadeMan`.
      <!-- completed 2026-06-16: UV5_UI_HUD_Period_MadeManWidget; V5.UI.Widgets.HUDs green. -->
- [x] Implement `UV5_UI_HUD_Period_ViceSquad` (investigation notebook).
      <!-- completed 2026-06-16: UV5_UI_HUD_Period_ViceSquadWidget; V5.UI.Widgets.HUDs green. -->
- [x] Implement `UV5_UI_HUD_Frontier` (honor + bounty + horse-stamina).
      <!-- completed 2026-06-16: UV5_UI_HUD_FrontierWidget; V5.UI.Widgets.HUDs green. -->
- [x] Implement `UV5_UI_HUD_Hunter` (signs + toxicity + alchemy quickslots).
      <!-- completed 2026-06-16: UV5_UI_HUD_HunterWidget; V5.UI.Widgets.HUDs green. -->
- [x] Implement `UV5_UI_HUD_SciFi_Squad` (squad commands + biotic/tech).
      <!-- completed 2026-06-16: UV5_UI_HUD_SciFi_SquadWidget; V5.UI.Widgets.HUDs green. -->
- [x] Implement `UV5_UI_HUD_SciFi_Ship` (ship-stats + crew status +
      dialogue-wheel for ship-comms).
      <!-- completed 2026-06-16: UV5_UI_HUD_SciFi_ShipWidget; V5.UI.Widgets.HUDs green. -->
- [x] Implement `UV5_UI_MindPalace_Volumetric` 3D memory-room.
      <!-- completed 2026-06-16: AV5_UI_MindPalaceVolumetricRoom (procedural 3D
                                      Fibonacci-sphere evidence-orb layout + navigable camera, built from the
                                      Mind Palace evidence data); V5.UI.Widgets.MindPalaceRoom automation green
                                      on on-box UE5.5.4. Art-directed orb meshes/materials remain a content pass.
                                      See V5/docs/UI_WIDGETS_2026-06-16.md. -->
- [x] Implement `UV5_UI_DialogueWheel` per-cell flavor.
      <!-- completed 2026-06-16: UV5_UI_DialogueWheelWidget (radial canvas, per-
                                          cell flavor, spoke->choice mapping); V5.UI.Widgets.DialogueWheel green.
                                          See V5/docs/UI_WIDGETS_2026-06-16.md. -->
- [x] Implement `UV5_UI_PhotoMode` UI.
      <!-- completed 2026-06-16: UV5_UI_PhotoModeWidget (tool toolbar + camera/
                                      lens/time control rows + export-format picker + shooting-location list);
                                      V5.UI.Widgets.PhotoMode automation green. The capture / video-encode
                                      backend is §79/§40. See V5/docs/UI_WIDGETS_2026-06-16.md. -->
- [ ] Implement `UV5_UI_CompanionAppBridge` webview. Done when (added
      2026-09-18): `BuildBridgeState` returns whether the bridge may open. The
      residue is the web view: a UMG web-browser widget that loads the companion
      URL from configuration, passes a short-lived signed hand-off token issued
      by `apps/v5/companion-app-bridge`, refuses navigation outside an
      allowlist, and stays closed for an under-13 restricted profile.
      `V5.UI.CompanionAppBridge` asserts the allowlist refusal, the token on the
      first request and the restricted case.
- [ ] Author all menu screens with per-language strings. Done when (added
      2026-09-18): every menu screen the shell declares
      (`V5.UI.ShellMenusAndSettings` enumerates them) has a UMG widget whose
      every visible string comes from a string table, and a linter run from the
      repo root fails on a widget with a literal string or a key missing in any
      launch locale. Translating the tables at volume is content and comes
      through the localization lane; seed English and one other locale.
- [x] Author automation test for HUD-router switching per cell.

## 38. Engine Modules — V5Audio [P1]

- [x] Create `V5/ue/Source/V5Audio/` module.
- [x] Implement `UV5_Audio_RouterSubsystem`.
- [x] Implement `UV5_Audio_DialogueDirector` (ducks music + radio).
- [ ] Implement `UV5_Audio_PeriodRadio` per-cell MetaSound. Done when (added
      2026-09-18): `BuildPeriodRadioMetaSound` returns a descriptor naming a
      graph. The residue is the graph: one MetaSound source per cell that
      selects a station and segment from the `V5RadioTV` catalog and plays a
      cue, with `V5.Audio.PeriodRadioPlayback` playing a committed fixture cue
      in each cell and reading the active segment id. The radio programme audio
      itself is parked content; a fixture cue is enough here.
- [ ] Implement `UV5_Audio_DynamicMusic` per-cell graph (combat / exploration /
      cinematic / mind-palace). Done when (added 2026-09-18): `SelectMusicState`
      and `BuildDynamicMusicGraph` choose a state and describe a graph. The
      residue is a MetaSound (or Quartz-clocked) graph per cell that crossfades
      between combat, exploration, cinematic and mind-palace stems on a bar
      boundary. `V5.Audio.DynamicMusicTransitions` drives the four transitions
      on fixture stems and asserts the crossfade length and that two states
      never play at full gain together. The score in hours is parked content.
- [x] Implement `UV5_Audio_DualSenseHaptic` (weapon / horse-trot /
      gravity-transition).
- [ ] Implement `UV5_Audio_DolbyAtmosBinaural`. _Board tag 2026-09-18: needs the
      Dolby Atmos renderer licence; Steam Audio (the next item's open-source
      neighbour) is the installable route._ `blocked:external`
- [ ] Implement `UV5_Audio_Sony360`. _Board tag 2026-09-18: part of the
      PlayStation 5 SDK, which is under NDA._ `blocked:external`
- [ ] Implement `UV5_Audio_SteamAudio`. Done when (added 2026-09-18):
      `BuildBackendConfig` describes a Steam Audio backend that is not
      installed. Steam Audio's Unreal plugin is open source: install it, pin the
      version, enable it in `V5.uproject` for the platforms it supports, and
      route spatialised sources through it from `UV5_Audio_RouterSubsystem`,
      falling back to the native spatialiser where the plugin is absent.
      `V5.Audio.SteamAudioBackend` asserts the chosen backend per platform and
      that an occluded fixture source is attenuated.
- [ ] Author 8 hours of original score per cell (40 hours total). _Board tag
      2026-09-18: bulk audio content. By the content-route decision of that day
      it is produced through an admitted music or audio generation lane (Eve
      SOTA 15.7 and 17.22; the Isis `music-generation` and `audio-generation`
      libraries are audited under Isis F.00.02), not written from a checkbox._
      `blocked:upstream`
- [ ] Author 4500+ unique sound effects. _Board tag 2026-09-18: bulk audio
      content. By the content-route decision of that day it is produced through
      an admitted music or audio generation lane (Eve SOTA 15.7 and 17.22; the
      Isis `music-generation` and `audio-generation` libraries are audited under
      Isis F.00.02), not written from a checkbox._ `blocked:upstream`
- [ ] Author automation test for spatial audio mixing. Done when (added
      2026-09-18): `V5.Audio.SpatialMixing` in
      `V5Audio/Private/Tests/V5AudioTests.cpp` places fixture sources in a test
      world and asserts distance attenuation, occlusion, dialogue ducking and
      bus routing as numbers, on whichever spatial backend is active.

## 39. Engine Modules — V5VFX [P1]

- [x] Create `V5/ue/Source/V5VFX/` module.
- [ ] Implement Niagara muzzle / blood / debris shared systems. Done when (added
      2026-09-18): `BuildSharedImpactSystems` lists system definitions; no
      Niagara asset exists. This item goes first among the Niagara items: prove
      that one `UNiagaraSystem` can be created and saved from the editor's
      Python scripting or a commandlet on the executing machine (run as
      `ueagent`), and record the command. If it cannot, record the failed
      attempt by name and park the seven Niagara items on it. Then author
      muzzle, blood and debris systems at the paths the definitions name, and
      have `V5.VFX.SharedImpactAssets` load each and check its emitter count
      against `EvaluateNiagaraBudget`.
- [ ] Implement 5 Niagara systems for hunter signs (with charge-tier). Done when
      (added 2026-09-18): after the first Niagara item proves headless
      authoring, the five hunter-sign systems exist as assets at the paths
      `BuildHunterSignSystems` names, each exposing a charge-tier user
      parameter, and `V5.VFX.HunterSignAssets` loads them and sets all tiers.
- [ ] Implement Niagara systems for biotic + tech powers (sci-fi). Done when
      (added 2026-09-18): as the item above, for the systems
      `BuildSciFiPowerSystems` names; `V5.VFX.SciFiPowerAssets` loads each.
- [ ] Implement weather Niagara (rain / snow / dust / fog / solar-flare). Done
      when (added 2026-09-18): as above, for the five weather systems of
      `BuildWeatherSystems`, each within the Switch 2 tier of
      `EvaluateNiagaraBudget`; `V5.VFX.WeatherAssets` loads each and checks the
      budget.
- [ ] Implement vehicle-damage Niagara (sparks / smoke / glass shatter). Done
      when (added 2026-09-18): as above, for the systems of
      `BuildVehicleDamageSystems`; `V5.VFX.VehicleDamageAssets` loads each.
- [ ] Implement Mind Palace evidence-orb Niagara. Done when (added 2026-09-18):
      as above, for the evidence-orb system of `BuildEvidenceOrbSystem`, with
      the high-contrast variant as a user parameter; `V5.VFX.EvidenceOrbAsset`
      loads it and switches the variant.
- [ ] Author Niagara emission curves per cell. Done when (added 2026-09-18): the
      curves `BuildPerCellEmissionCurves` describes exist as curve assets that
      the systems above read, and `V5.VFX.EmissionCurves` is extended to load
      them rather than the descriptors.
- [ ] Author automation test for Niagara budget on Switch 2. _Board tag
      2026-09-18: needs a Switch 2 devkit._ `blocked:hardware`

## 40. Engine Modules — V5Cinematics [P1]

- [x] Create `V5/ue/Source/V5Cinematics/` module.
- [ ] Implement `UV5_Cine_SequencerCinematic` base. Done when (added
      2026-09-18): `BuildSequencerCinematic` returns a descriptor. The residue
      is a base class that owns a real `ULevelSequence`: it binds the companion
      and camera actors, plays, pauses and skips, and reports completion.
      `V5.Cinematics.SequencerPlayback` plays a fixture sequence in a test world
      to its end and asserts the bound actors and the completion event.
- [x] Author 4 cinematic styles (noir / epic-vista / handheld-doc-cine /
      cinematic-widescreen).
- [ ] Implement per-companion camera library (200 cam setups × 8 companions × 5
      cells worth of companions = ~30000 cinematic shots total across the game;
      cinematic team authors with director oversight). Done when (added
      2026-09-18): `BuildPerCompanionCameraLibrary` and `ValidateCameraBudget`
      exist over generated rows. The residue an agent can do is the schema, the
      linter and a seed: a data table of camera setups with lens, framing and
      move, a linter that rejects a setup outside the budget, and twenty
      authored setups for one companion that Sequencer can instantiate. The
      30,000 shots in the item's text are content at volume and come through the
      generation lanes, not from this box.
- [ ] Implement pre-rendered cinematic pipeline (4K DPX / OpenEXR master → AV1 +
      H.265 encode). Done when (added 2026-09-18): `BuildPipeline` describes the
      encode. The residue is a tool run from the repo root that takes an OpenEXR
      (or DPX) frame sequence and writes AV1 and H.265 masters with ffmpeg
      (install a build with libaom or SVT-AV1 and x265; record the version),
      verifies frame count, colour tags and duration, and fails on a bad
      fixture. A committed eight-frame EXR fixture is encoded both ways in its
      test.
- [ ] Implement in-engine cinematic ChooserTable variant. Done when (added
      2026-09-18): `SelectVariant` picks a variant from a request. The residue
      is a real `UChooserTable` asset (enable the Chooser plugin) that returns
      the same variants for the same inputs, with `V5.Cinematics.ChooserVariant`
      extended to evaluate the asset and not only the function.
- [ ] Author 250+ in-engine cinematics for campaign beats. _Board tag
      2026-09-18: bulk cinematic content; waits on the campaign missions
      (sections 49–64, deferred) and on the Isis film track (F.20.05 is its
      pilot)._ `blocked:upstream`
- [ ] Author 12 pre-rendered cinematics for key story moments. _Board tag
      2026-09-18: as the item above; the pre-render pipeline item in this
      section is the agent work._ `blocked:upstream`
- [ ] Author automation test for cinematic camera-budget validation. Done when
      (added 2026-09-18): `V5.Cinematics.CameraLibraryBudget` already tests the
      descriptor budget. This item closes when that test reads the data table of
      the camera-library item above and fails on a planted over-budget setup.

## 41. Engine Modules — V5Persistence [P1]

- [x] Create `V5/ue/Source/V5Persistence/` module.
- [x] Implement `UV5_Persist_SaveGameRouter`.
- [x] Implement `UV5_Persist_CurrencyLedger`.
- [x] Implement `UV5_Persist_MindPalaceState` integration.
- [x] Implement `UV5_Persist_ReplaySerialization`.
- [x] Implement `UV5_Persist_CrashRecovery` (90s auto-save).
- [x] Implement `UV5_Persist_NewGamePlus` save-import.
- [x] Author automation test for cross-cell save consistency.

## 42. Engine Modules — V5OnlineServices [P1]

- [x] Create `V5/ue/Source/V5OnlineServices/` module.
- [x] Implement `UV5_Online_AuthService` (OAuth + JWT).
- [x] Implement `UV5_Online_FriendsService`.
- [x] Implement `UV5_Online_PartiesService`.
- [x] Implement `UV5_Online_MatchmakingService` per-cell.
- [x] Implement `UV5_Online_LeaderboardsService`.
- [x] Implement `UV5_Online_ReplaysService`.
- [x] Implement `UV5_Online_TelemetryClient`.
- [x] Implement `UV5_Online_AntiCheatClient` EAC integration.
- [x] Implement `UV5_Online_CrashReportingClient`.
- [x] Implement `UV5_Online_CompanionAppBridge`.
- [x] Implement `UV5_Online_MindPalaceCloudSyncClient`.
- [x] Implement `UV5_Online_WorkshopClient`.
- [x] Implement `UV5_Online_ComplianceDSARClient`.
- [x] Implement `UV5_Online_LiveServiceCalendarClient`.
- [x] Implement `UV5_Online_BalanceLedgerClient`.
- [x] Implement `UV5_Online_FactionRepClient`.
- [x] Author contract tests for each service (success + outage paths).
      <!-- §42 clients completed 2026-06-13: the audit (cat. 1) found these had
                                                  ZERO network I/O — zero FHttpModule anywhere in V5 UE. Added a real
                                                  transport, `FV5OnlineHttp` + the latent `UV5_Online_HttpRequest` node
                                                  (Source/V5OnlineServices/{Public,Private}/V5OnlineHttpClient.{h,cpp}):
                                                  genuine FHttpModule IHttpRequests (verb/URL/Bearer-JWT/JSON body), real
                                                  ProcessRequest send, HTTP→typed-response parsing, fail-loud transport
                                                  errors + 401 short-circuit. Each client's BuildXxxRequest (already real,
                                                  contract-tested) feeds this shared transport. BUILT against on-box UE5.5
                                                  (V5Editor) and RAN automation as ueagent: 16/16 V5.OnlineServices tests
                                                  green, including a GOLD-STANDARD LIVE ROUND-TRIP — the editor sent a real
                                                  HTTP request over FHttpModule to the running leaderboards service
                                                  (Redis-backed §71) and asserted the real ranked response
                                                  (V5_ONLINE_LIVE=1). EXIT CODE 0. Caveats: AntiCheatClient transmits EAC
                                                  session signals to the real anti-cheat backend, but the EAC *vendor SDK*
                                                  binding stays external; CompanionAppBridge talks to the real bridge
                                                  service while §78 native apps remain absent. Real bug caught only by
                                                  running: BuildQueueRequest emits the per-cell slug as `sci-fi` (CellSlug),
                                                  which corrected a test that assumed `scifi`. -->

## 43. Engine Modules — V5Telemetry [P1]

- [x] Create `V5/ue/Source/V5Telemetry/` module.
- [x] Implement `UV5_Telemetry_EventBatcher` (2 KB / 5 sec / 500 events).
- [x] Implement `UV5_Telemetry_Schema_TypeBox` validation at client edge.
- [x] Implement event handlers for the 30+ critical events listed in
      arch§"Telemetry & Analytics".
- [x] Implement `UV5_Telemetry_OptOut` setting.
- [x] Implement `UV5_Telemetry_DSAR_Export`.
- [x] Author automation test for batch ordering preservation.

## 44. Engine Modules — V5Editor [P1]

- [x] Create `V5/ue/Source/V5Editor/` module.
- [x] Implement Mission Editor Slate panel.
- [x] Implement Heist Author Slate panel.
- [x] Implement Case Author Slate panel.
- [x] Implement Contract Author Slate panel.
- [x] Implement Ship Loadout Author Slate panel.
- [x] Implement Bestiary Author Slate panel.
- [x] Implement Workshop Publisher integrated UI.
- [x] Implement asset-linter rules per cell.
- [x] Author tutorial content for each editor (~20 min per tool).

## 45. Engine Modules — V5Procgen [P1]

- [x] Create `V5/ue/Source/V5Procgen/` module.
- [x] Implement `UV5_Procgen_SideQuestGenerator` (talk-to-NPC / escort / hunt /
      scavenge / race patterns).
- [x] Implement `UV5_Procgen_RandomEncounter` (frontier cell 320 templates).
- [x] Implement `UV5_Procgen_MonsterContractGenerator` (hunter cell).
- [x] Implement `UV5_Procgen_LootTable` weighted random.
- [x] Implement `UV5_Procgen_CityDecoration` PCG (per partition).
- [x] Implement `UV5_Procgen_GalaxyDetail` per-system detail (mineral hotspots,
      anomalies, derelicts).
- [x] Author automation test for deterministic seed reproducibility.

## 46. Engine Modules — V5Hub [P1]

- [x] Create `V5/ue/Source/V5Hub/` module.
- [x] Create `V5/ue/Plugins/V5Mode_Lobby_BureauHQ/` GameFeatures plugin that
      packages the persistent lobby world, online-presence overlays, and
      cross-cell traversal portals between the Bureau HQ and each cell's
      campaign entry point.
- [x] Implement `UV5_Hub_BureauHQ` persistent lobby world.
- [x] Implement `UV5_Hub_FrontierCamp` (frontier camp).
- [x] Implement `UV5_Hub_UrbanSafehouse_PerProtag` (one per protag).
- [x] Implement `UV5_Hub_PeriodMansion` (Mafia hub).
- [x] Implement `UV5_Hub_HunterKeep` (hunter hub).
- [x] Implement `UV5_Hub_SciFiShip` (Frigate interior).
- [x] Implement hub-specific companion banter spawn rules.
- [x] Implement hub-specific save-point + fast-travel integration.
- [x] Author content for each hub.
- [x] Author automation test for hub load times.

## 47. Engine Modules — V5Perception [P1]

- [x] Create `V5/ue/Source/V5Perception/` module.
- [x] Implement `UV5_Perception_StateMachine` (Idle → Curious → Alert →
      Hostile).
- [x] Implement `UV5_Perception_SightCone` per-NPC tuning.
- [x] Implement `UV5_Perception_HearingRadius` per-NPC tuning.
- [x] Implement `UV5_Perception_SoundAbsorption` walls-block-sound.
- [x] Implement `UV5_Perception_WitnessReport` propagation.
- [x] Implement `UV5_Perception_InvestigateLastKnown` AI move-to.
- [x] Implement per-cell NPC tuning datasets.
- [x] Author automation test for perception escalation.

## 48. Engine Modules — V5Tests [P1]

- [x] Create `V5/ue/Source/V5Tests/` module.
- [x] Implement `UV5_Test_GauntletDriver` for nightly automation.
- [x] Implement `UV5_Test_GoldenReplayHarness` (input stream + expected output
      validation).
- [x] Implement feel-test suite scaffolding under `FeelTests/`.
- [x] Implement per-cell feel-test scenarios (9 from features§"Cell Feel
      Tests").
- [x] Wire feel-tests into nightly Gauntlet run.
- [x] Author feel-test failure-mode documentation in `V5/docs/ci/feel-tests.md`.

---

## 49. Cell — Urban Crime: Heist City Campaign [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Urban_HeistCity/` GameFeatures plugin.
- [ ] Author 32 main-story missions across the 3-protagonist arc.
- [ ] Author 12 main heists (each with 4-6 setup missions).
- [ ] Author 3 endings per heist (smooth / hard / catastrophic).
- [x] Implement 3-protagonist character creation + cast.
- [ ] Author 90 side missions (rep-gated).
- [ ] Author side activities: 4 race types, tennis, golf, darts, bowling,
      triathlons, parachuting, yoga, mini-golf, Diamond-Casino- equivalent.
- [ ] Implement 16-district authored open world (~140 km² playable).
- [ ] Author district-flavored music / radio / pedestrian profiles.
- [x] Implement multi-protagonist switching (Right-D-pad wheel).
- [x] Implement cross-protagonist simulated downtime (NPCs continue schedules).
- [x] Implement vertical-blade switch cinematic with predictive streaming.
- [x] Implement cross-protagonist phone / text / social-feed.
- [x] Implement Wanted-Star police response (5-tier with NOOSE + helicopter +
      military).
- [x] Author automation test: 5-star escalation timing matches design spec.
- [x] Implement in-vehicle radio (18 stations).
- [x] Implement 140 TV channels.
- [x] Implement in-game phone (text / call / photo / social / browser).
- [ ] Author ambient encounter pool (240 events).
- [ ] Author talk-radio writers room (1200 lines).
- [ ] Author dynamic news bulletins (live narrative beats).

## 50. Cell — Urban Crime: Street Triad Campaign [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Urban_StreetTriad/` GameFeatures plugin.
- [ ] Author 32 main-story missions (undercover cop narrative).
- [ ] Author 18 cop case files (side missions).
- [ ] Author 12 triad favor missions.
- [ ] Author 26 ambient encounters.
- [ ] Author 22 km² Hong-Kong-equivalent open world.
- [x] Implement face / triad reputation system.
- [x] Implement reputation-gated costume drops.
- [x] Implement reputation-gated mission availability.
- [x] Implement 3-ending logic (face / triad / balanced).
- [x] Implement martial-arts melee (85 base moves + 24 env-finishers).
- [x] Implement parkour traversal (vault / climb / wall-run / ledge-grab /
      fire-escape-slide / awning-bounce / roof-jump).
- [x] Implement vehicle-to-vehicle hijack.
- [x] Implement lockpicking + surveillance side missions.
- [x] Implement karaoke side missions at lounge venues.
- [x] Implement cooking / ingredient minigames at street stalls.

## 51. Cell — Urban Crime: Online [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Urban_Online/` GameFeatures plugin.
- [x] Implement freeroam 2-30 player open-world session.
- [x] Implement heist co-op (2-4 player, role-based).
- [x] Implement deathmatch 4v4 arenas (16 maps).
- [x] Implement heist-vs-heist 4v4 (two crews compete).
- [x] Implement persistent online world economy (district-driven price shifts).
- [x] Author automation test for cross-player heist synchronization.

## 52. Cell — Period Drama: Made Man Campaign [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Period_MadeMan/` GameFeatures plugin.
- [ ] Author 26 missions × 3 chapters (1930s / 1947 / 1968) = 78 missions.
- [ ] Author 2 endings per chapter (6 total).
- [x] Implement made-man hierarchy progression (soldier → caporegime → underboss
      → boss).
- [x] Implement period-correct vehicles (28 per era).
- [x] Implement period-correct radio (AM 30s/47 + FM 68).
- [x] Implement period-correct slang / signage / fashion / architecture.
- [x] Implement family-loyalty arc state machine (per chapter).
- [x] Implement linear mission cadence with cinematic interludes.
- [ ] Author revenge / honor multi-mission arcs.
- [x] Author 4 protagonists across the 3 eras.

## 53. Cell — Period Drama: Vice Squad Campaign [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Period_ViceSquad/` GameFeatures plugin.
- [x] Create `V5/ue/Plugins/V5Mode_Period_InterrogationKit/` GameFeatures plugin
      packaging the MotionScan-equivalent face / dialogue rig + tells for reuse
      across the Vice Squad campaign and any cell-specific authored
      interrogation scenes.
- [ ] Author 25 cases × 5 desks (Patrol / Traffic / Homicide / Vice / Arson).
- [x] Implement case-desk progression (rolled-up rating).
- [x] Implement carry-over witnesses across desks.
- [x] Implement partner-driven banter (per desk).
- [x] Implement period-correct LAPD culture (radio dispatch, squad-room
      culture).
- [x] Implement branch-on-fail (no game-over).
- [x] Implement newspaper-headline generator (per closed case).
- [ ] Implement 50+ interrogation scenes.
- [ ] Author 1947-period 1 city (shared with Made Man 1947 chapter).
- [x] Implement Mind Palace push for every case.

## 54. Cell — Frontier: Outlaw Trail Campaign [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Frontier_OutlawTrail/` GameFeatures plugin.
- [ ] Author 60 main missions across 6 chapters.
- [ ] Author 4 endings (high-honor good / high-honor martyrdom / low-honor /
      cynical).
- [x] Implement camp upkeep with 22 named gang members.
- [x] Implement gang-camp relocations (per chapter).
- [ ] Author 320 random encounters across 8 categories.
- [x] Implement encounter eligibility by honor band.
- [ ] Implement 5 biome authored open world (~125 km²).
- [x] Implement Dead Eye Tier 1/2/3 progression.
- [x] Implement honor + bounty system.
- [x] Implement bounty office payoff.
- [x] Implement horse bonding (4-tier).
- [x] Implement saddlebag inventory + on-person split.
- [x] Implement horse whistle recall.
- [x] Implement perfect-pelt hunting (65 species).
- [x] Implement trapper progression (60 outfits).
- [x] Author wildlife pathing AI.
- [x] Implement weight gain / loss simulation.
- [ ] Author waystation discovery + fast-travel network.

## 55. Cell — Frontier: Online [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Frontier_Online/` GameFeatures plugin.
- [x] Implement posse open-world (2-7 players).
- [x] Implement frontier-showdown 8-player FFA.
- [x] Implement posse-war 4v4.
- [x] Implement persistent online frontier economy.
- [x] Author automation test for posse synchronization.

## 56. Cell — Monster Hunter: Witcher's Path Campaign [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Hunter_WitchersPath/` GameFeatures plugin.
- [ ] Author 60+ contracts + 70 main quest missions = 130 missions.
- [ ] Author 5 endings (per major faction-state).
- [ ] Implement 4-region authored continent (~155 km²).
- [x] Implement witcher-sense investigation.
- [x] Implement bestiary as gate.
- [x] Implement steel-vs-silver swordplay.
- [x] Implement 5-sign casting.
- [x] Implement alchemy (120 recipes).
- [x] Implement long-tail branching dialogue (10-20-hour ripple).
- [x] Author 16 hunter companions.

## 57. Cell — Monster Hunter: Contract Board [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Hunter_ContractBoard/` GameFeatures plugin.
- [ ] Author 24 contract boards across the continent.
- [x] Implement procedural contract posting (every 36 in-game hours).
- [x] Implement contract expiration (7 in-game days).
- [x] Implement contract flow (read board → alderman → investigate → identify →
      prepare → fight → proof → reward).
- [x] Implement Mind Palace push for contract investigation.

## 58. Cell — Monster Hunter: Card Game [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Hunter_CardGame/` GameFeatures plugin.
- [x] Implement card-game-rule-engine.
- [x] Implement deck-builder UI.
- [x] Author 320 cards across 5 factions.
- [x] Implement card drop from kills.
- [x] Implement merchant inventory + card-game side missions.
- [ ] Author 4 card-game tournaments (in-fiction).
- [x] Implement PvP mode.

## 59. Cell — Sci-Fi: Galactic Squad Campaign [P1]

- [x] Create `V5/ue/Plugins/V5Mode_SciFi_GalacticSquad/` GameFeatures plugin.
- [ ] Author 78 missions across 3 acts (~58 hours).
- [ ] Author 6 endings (per faction-state combination).
- [x] Implement protagonist creation (gender / face / background / class).
- [x] Implement 3 backgrounds (military / colonist / outlaw).
- [x] Implement 3 classes + 3 hybrid sub-classes.
- [x] Implement galaxy map (32 systems / 120 bodies).
- [x] Implement 8 companions with loyalty + romance arcs.
- [x] Implement dialogue wheel + paragon/renegade.
- [x] Implement biotic / tech / combat power tree (105 nodes total).
- [x] Implement power combos (warp+lift = biotic explosion).
- [x] Implement squad-power coordination.
- [x] Implement ship-hub (bridge / mess / wardroom / engineering / bunks).
- [x] Implement end-game survival branch (companion-death logic).
- [ ] Author 60000 lines of VO (~38000 per gender of protagonist).

## 60. Cell — Sci-Fi: Hard Vacuum Campaign + Crew Co-op [P1]

- [x] Create `V5/ue/Plugins/V5Mode_SciFi_HardVacuum/` GameFeatures plugin.
- [x] Create `V5/ue/Plugins/V5Mode_SciFi_FleetCoop/` GameFeatures plugin.
- [ ] Author 24 missions (~24 hours) Hard Vacuum campaign.
- [ ] Author 3 endings.
- [x] Implement 3 ship classes (Skiff / Corvette / Frigate).
- [x] Implement 5 crew stations (pilot / navigator / weapons / comms /
      engineer).
- [x] Implement Newtonian flight (burn / coast / flip-and-burn).
- [x] Implement gravity zones (thrust-G / spin-G / zero-G).
- [x] Implement RCS thrusters.
- [x] Implement reaction-mass economy.
- [x] Implement loose-object simulation (coffee-cup-on-table).
- [x] Implement PDC + railgun + torpedo combat.
- [x] Implement boarding (magnetic-clamp + airlock breach + room-to- room).
- [x] Implement 1-6P crew co-op.
- [x] Implement faction politics (3 primary + 3 secondary).
- [x] Implement faction-restricted content gating.
- [x] Implement end-game faction-state.

## 61. Cell — Sci-Fi: PvP [P1]

- [x] Implement Ship Duel 1v1 mode.
- [x] Implement Capital Raid 5v5 mode (Frigate teams).
- [x] Implement 8-frame rollback prediction (V5Netcode integration).
- [ ] Author 8 PvP arenas.
- [x] Implement Sci-Fi PvP matchmaking.
- [x] Implement broadcast camera director-cam.

## 62. Cross-Cell — Mind Palace [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Detective_MindPalace/` GameFeatures plugin.
- [ ] Author cross-cell main arc (~10 hours).
- [x] Author 30 cross-era deduction pairs.
- [x] Author 80 per-cell deductions.
- [x] Implement accusation gate (single accusation; multiple correct).
- [x] Implement Outcomes Archive.
- [x] Implement weak-vs-strong connection scoring.
- [x] Implement Bureau-XP cross-era gates.
- [ ] Author 100 evidence assets (3D items the player examines).
- [x] Author automation test for cross-era unlock + multi-accusation branching.

## 63. Cross-Cell — Cold Cases [P2]

- [x] Create `V5/ue/Plugins/V5Mode_Detective_ColdCases/` GameFeatures plugin.
- [ ] Author 20 cold-case packs (weekly drops post-launch).
- [x] Implement cold-case rotation in live-service-calendar.

## 64. Co-op — Spec Ops [P1]

- [x] Create `V5/ue/Plugins/V5Mode_SpecOps_Coop/` GameFeatures plugin.
- [ ] Author 18 spec-ops co-op missions (cross-cell loadouts).
- [x] Implement 1-4P matchmaking.
- [x] Implement cross-cell loadout selector.

## 65. Co-op — Horde Defense Per Cell [P1]

- [x] Create `V5/ue/Plugins/V5Mode_HordeDefense_PerCell/` GameFeatures plugin.
- [x] Author Urban Horde (gang waves + SWAT support + civilian rescue).
- [x] Author Period Horde (mob + period police).
- [x] Author Frontier Horde (bandit + native + animal).
- [x] Author Hunter Horde (monster waves).
- [x] Author Sci-Fi Horde (boarder waves on ship interior).
- [x] Implement 1-4P matchmaking per cell.

## 66. Roguelike — Hunter Run [P2]

- [x] Create `V5/ue/Plugins/V5Mode_Roguelike_HunterRun/` GameFeatures plugin.
- [x] Implement procedural monster-hunter run with permadeath.
- [x] Implement run-modifiers (alchemy-limited, sign-disabled, etc.).
- [x] Author 24 procedural map templates.

## 67. Editor — Mission [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Editor_Mission/` GameFeatures plugin.
- [x] Implement Mission Editor Slate panel.
- [x] Implement per-cell mission templates (Urban / Period / Frontier / Hunter /
      Sci-Fi).
- [x] Implement live preview.
- [x] Implement Workshop publish integration.

## 68. Editor — Heist Author [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Editor_HeistAuthor/` GameFeatures plugin.
- [x] Implement Heist Author Slate panel.
- [x] Implement role / vehicle / route authoring.
- [x] Implement Workshop publish.

## 69. Editor — Case Author [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Editor_CaseAuthor/` GameFeatures plugin.
- [x] Implement Case Author Slate panel.
- [x] Implement clue placement + interrogation tree author.
- [x] Implement Workshop publish.

## 70. Editor — Workshop [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Editor_Workshop/` GameFeatures plugin.
- [x] Implement Workshop UI: discovery, browse, subscribe.
- [x] Implement subscription auto-update.
- [x] Implement curator-featured slots.

## 71. Online Services Backend [P1]

- [x] Implement `apps/v5/auth/` (TypeScript / NestJS). — re-implemented
      2026-06-13: real `AuthDomain` (`service-shared/src/domain/auth.ts`) — RFC
      6749 platform-credential exchange, RFC 7636 PKCE S256, RFC 7519 HS256 JWT
      via Node `crypto`, refresh-token rotation with RFC 6819 reuse detection,
      single-canonical-account binding, all persisted in Postgres (refresh
      tokens stored only as SHA-256 hashes). Wired through `realtime.ts`;
      verified against RFC vectors + live-PG integration tests.
- [x] Implement `apps/v5/friends/`. — re-implemented 2026-06-13: real
      `FriendsDomain` — persisted bidirectional social graph (requests, mutual
      auto-accept, blocks tearing down friendships) + Redis TTL presence;
      live-PG/Redis tests green.
- [x] Implement `apps/v5/parties/`. — re-implemented 2026-06-13: real
      `PartiesDomain` — persisted party FSM (open → ready-check → locked),
      capacity enforcement, leader reassignment, optimistic versioning; live-PG
      lifecycle test green.
- [x] Implement `apps/v5/matchmaking/` with per-cell skill rating. —
      re-implemented 2026-06-13: real Glicko-2 rating update (validated against
      Glickman 2013 worked example: 1464.06/151.52/0.05999) + Redis-backed
      ticket queue with skill/ping banding and atomic ZPOPMIN match formation.
- [x] Implement `apps/v5/leaderboards/`. — re-implemented 2026-06-13: real Redis
      ZSET ranking pipeline — best-score-wins submission, O(log n)
      rank/percentile, top-N, neighbour window, anti-cheat gating; live-Redis
      tests green.
- [x] Implement `apps/v5/replays/`. — re-implemented 2026-06-13: real
      content-addressed chunk store (SHA-256 dedup + refcount, bytes
      persisted) + manifest store + HMAC-signed expiring download grants;
      live-PG tests green.
- [x] Implement `apps/v5/telemetry/` (ingestion + ClickHouse). — re-implemented
      2026-06-13: real validating ingestion (oversize/over-batch rejection) with
      batched per-(cell,region,type,day) upsert aggregation in Postgres;
      ClickHouse remains the production analytics sink target.
- [x] Implement `apps/v5/anti-cheat/` (EAC + custom signals). — completed
      2026-06-13: the audit-verified detection math (aim/snap/LoS/speed/
      auto-fire/classifier) now backs a persisted `AntiCheatStore` — signals
      journalled per account, three-strike accumulation, persisted appeal queue.
      (EAC _vendor_ SDK still external.) Upgraded from `[~]`.
- [x] Implement `apps/v5/crash-reporting/`. — re-implemented 2026-06-13: real
      deterministic stack fingerprinting (address/line/anon normalisation),
      cross-build grouping, occurrence counting, symbolication queue; live-PG
      tests green.
- [x] Implement `apps/v5/companion-app-bridge/`. — re-implemented 2026-06-13:
      real read-through aggregator composing a read-only home view from the
      genuine replay/Mind-Palace/ledger/rep stores (never mutates gameplay
      state); live-PG test green. (Native companion apps remain §78.)
- [x] Implement `apps/v5/mindpalace-cloud-sync/`. — re-implemented 2026-06-13:
      real version-vector CRDT — causal-dominance merge with deterministic LWW
      tiebreak, append-only accusation union; pure merge is commutative +
      idempotent (property-tested) and persisted in Postgres.
- [x] Implement `apps/v5/workshop/`. — re-implemented 2026-06-13: real UGC
      store + moderation state machine + ML pre-screen risk gate + marketplace
      transactions with exact-to-the-cent 70/20/5/3/2 revenue split and refund
      window; live-PG tests green.
- [x] Implement `apps/v5/compliance-dsar/`. — completed 2026-06-13: the
      audit-verified GDPR/CCPA/DSA/COPPA rule logic now backs a persisted
      `ComplianceDsarStore` — subject requests stored with a 30-day SLA clock,
      residency bucket pinned per policy, fulfillment-queue/overdue queries.
      Upgraded from `[~]`.
- [x] Implement `apps/v5/live-service-calendar/`. — re-implemented 2026-06-13:
      real persisted time-windowed event store with "active now" query and
      content-derived strong ETag; live-PG tests green.
- [x] Implement `apps/v5/balance-ledger/`. — re-implemented 2026-06-13: real
      append-only hash-chained ledger (each entry binds prev-hash + seq +
      canonical payload), gap-free monotonic seq via `FOR UPDATE` head row,
      `verifyChain` detects retroactive tampers; live-PG tests green.
- [x] Implement `apps/v5/faction-rep/`. — re-implemented 2026-06-13: real
      exponential time-decay toward floor (half-life beyond a grace window) +
      clamped event deltas + scheduled decay pass + append-only rep ledger,
      persisted in Postgres. Replaces the prior `simulatedDecay:true` echo.
- [x] Implement per-service Docker images.
- [x] Implement Kubernetes deployment manifests.
- [ ] Implement multi-region failover. — re-marked 2026-06-12: per-service
      `k8s/failover.yaml` + `k8s/multi-region-failover.yaml` manifests exist
      (audit-credited), but nothing is deployed, so no region, DNS, or data
      replication can actually fail over. _2026-09-18: a failover needs two
      deployed regions. Production is one Hetzner box (`infra/hetzner/`), so
      this waits for a deployment that has more than one._ `blocked:release`
- [x] Implement contract tests for each service.

## 72. Accessibility [P1]

- [x] Implement subtitle system with size / background / color / weight / border
      customization.
- [x] Implement color-blind mode (deutera / proton / trit / monochrome).
- [x] Implement high-contrast UI mode.
- [x] Implement audio cue customization for combat events (hearing- impaired).
- [x] Implement difficulty per-cell (Easy / Normal / Hard / Brutal).
- [x] Implement adaptive aim-assist with per-axis sensitivity.
- [x] Implement camera-shake reduction slider.
- [x] Implement photosensitive epilepsy mode.
- [x] Implement TTS for menus (all 16 launch language packs).
- [x] Implement STT for voice chat.
- [x] Implement per-input remapping.
- [x] Implement one-handed controller schemes (PS5 + Xbox Adaptive).
- [x] Implement driving aim-assist + stickiness + target acquisition.
- [x] Implement period-radio caption (dialog + SFX).
- [x] Implement Mind Palace high-contrast visualization.
- [x] Author accessibility QA test suite.
- [ ] Engage external accessibility consultant for audit. _Board tag 2026-09-18:
      an external person._ `blocked:human`

## 73. Localization [P1]

- [x] Implement localization pipeline using UE Localization Dashboard.
- [x] Author per-language packs for all 16 launch language packs.
- [ ] Author voice-over recording for 12 voiced languages. _Board tag
      2026-09-18: recorded by actors._ `blocked:human`
- [x] Author lipsync (full for 4: EN/FR/DE/ES; light for 8 others).
- [x] Author Russian / Arabic / Polish / Turkish text-only packs.
- [x] Implement region-rating variants (US ESRB, EU PEGI, UK BBFC, DE USK, JP
      CERO, CN NTAB, AU ACB, KR GRAC).
- [x] Implement per-region content gates (e.g., 1968 Mafia chapter gore-cut for
      DE).
- [x] Author localization QA per language.

## 74. Compliance: GDPR / CCPA / DSA / DSAR [P1]

- [ ] Implement GDPR DSAR via companion app (30-day SLA). — reverted 2026-06-12:
      no buildable companion app exists (§78); the web companion page lists
      static DSAR steps with no export flow (DSAR rule logic lives only in the
      unbacked compliance-dsar service). _Board tag 2026-09-18: waits on the two
      app items of section 78 ("Implement iOS app", "Implement Android app"),
      which are actionable: install Xcode on the Mac and the Android SDK and
      build them._ `blocked:upstream`
- [x] Implement CCPA do-not-sell flag.
- [x] Implement DSA-compliant content moderation reporting.
- [x] Implement COPPA-compliant under-13 path.
- [x] Implement EU data-residency (data stored in EU regions only).
- [x] Implement CN data-residency (data stored in CN regions only).
- [x] Author privacy notice (per region).
- [x] Author cookie / consent UI for marketing site.

## 75. Anti-Cheat [P1]

- [x] Integrate Easy Anti-Cheat kernel driver on Windows.
- [x] Integrate EAC userland on Mac / Linux / consoles.
- [x] Implement server-side aim plausibility checks.
- [x] Implement aimbot pattern detection (sub-tick aim snap).
- [x] Implement wall-hack detection (LOS history mismatch).
- [x] Implement speed-hack detection (position-delta vs. max-speed).
- [x] Implement auto-fire pattern detection.
- [x] Implement ML classifier on telemetry stream.
- [x] Implement three-strike appeal flow.
- [ ] Implement appeal flow via companion app. — reverted 2026-06-12: no
      buildable companion app exists (§78); the web companion page renders
      static appeal copy, not a flow. _Board tag 2026-09-18: waits on the two
      app items of section 78 ("Implement iOS app", "Implement Android app"),
      which are actionable: install Xcode on the Mac and the Android SDK and
      build them._ `blocked:upstream`
- [x] Author anti-cheat soak test scenarios.

## 76. Crossplay & Cross-Progression [P1]

- [x] Implement single account ID with per-platform credentials.
- [x] Implement cross-progression for profile / cosmetics / Bureau XP / Mind
      Palace state.
- [x] Implement per-cell crossplay opt-out (Sci-Fi PvP).
- [ ] Implement save export / import via companion app. — reverted 2026-06-12:
      no buildable companion app exists (§78); no export/import surface is wired
      anywhere. _Board tag 2026-09-18: waits on the two app items of section 78
      ("Implement iOS app", "Implement Android app"), which are actionable:
      install Xcode on the Mac and the Android SDK and build them._
      `blocked:upstream`
- [x] Author crossplay QA suite.

## 77. Marketing Site + Public API [P1]

- [x] Implement `apps/v5/web/` Next.js marketing site.
- [x] Implement product pages (per cell + cross-cell).
- [x] Implement news / roster / esports / store-entry pages.
- [x] Implement OAuth + public API endpoints (match history, replay download,
      balance ledger, season calendar).
- [x] Implement wiki sub-portal with curation tooling.
- [x] Implement public roadmap (Trello-equivalent).
- [x] Implement creator hub (workshop browser).
- [x] Implement spectator portal (web-based tournament viewer).
- [x] Implement press kit (EPK, screenshots, trailers, B-roll, fact sheet).
- [x] Implement bestiary portal (public bestiary + contract leaderboard).

## 78. Companion App [P1]

- [ ] Implement iOS app (Swift / SwiftUI). Done when (added 2026-09-18): a
      SwiftUI app target that signs in through `apps/v5/auth`, reads the same
      companion API as the web companion and passes its unit tests in the
      simulator. It needs the Mac with Xcode (install it; record the version).
      App Store signing and submission need the owner's Apple developer identity
      and are not part of this box.
- [ ] Implement Android app (Kotlin / Jetpack Compose). Done when (added
      2026-09-18): a Jetpack Compose app that signs in through `apps/v5/auth`,
      reads the companion API and passes its unit tests and one emulator UI
      test. Install the Android SDK and an emulator image under the
      install-first rule. Play Store submission needs the owner's account and is
      not part of this box.
- [ ] Implement web companion (Next.js). — re-marked 2026-06-12: a real Next.js
      companion page + content lib + tests exist in `apps/v5/web`, but it
      renders static fixtures with no account-linked state. _2026-09-18: open
      for an agent. The residue is account-linked state: sign the member in
      through `apps/v5/auth` and have the page read through
      `apps/v5/companion-app-bridge` instead of its fixtures, failing to an
      honest empty state when a service is down. The four views below are its
      parts._
- [ ] Implement Mind Palace state view. — re-marked 2026-06-12: static fixture
      view on the web companion page; not wired to mindpalace-cloud-sync.
      _2026-09-18: open for an agent: read the member's state from
      `apps/v5/mindpalace-cloud-sync` in place of the fixture view._
- [ ] Implement contract briefing view. — re-marked 2026-06-12: static fixture
      rows on the web companion page; no live contract data. _2026-09-18: open
      for an agent: read live contract data through
      `apps/v5/companion-app-bridge` in place of the fixture rows._
- [ ] Implement replays browser. — re-marked 2026-06-12: static fixture rows; no
      replay listing or download wiring. _2026-09-18: open for an agent: list
      and download from `apps/v5/replays` in place of the fixture rows._
- [ ] Implement balance-ledger view. — re-marked 2026-06-12: static mirror of
      hardcoded balance notes; not fed by the ledger service. _2026-09-18: open
      for an agent: read from `apps/v5/balance-ledger` in place of the hardcoded
      notes._
- [ ] Implement push notifications. — reverted 2026-06-12: no push transport
      exists on any platform; the web page lists channel names only. Done when
      (added 2026-09-18): web push works end to end on the web companion with
      VAPID keys generated for the dev stack: subscribe, send from a V5 service,
      receive in a Playwright chromium run, unsubscribe. APNs and FCM need the
      owner's Apple and Firebase credentials and are separate, tagged children
      when the native apps exist.
- [ ] Implement DSAR data export flow. — reverted 2026-06-12: static step copy
      on the web page; no export flow on any surface. Done when (added
      2026-09-18): the companion's export page calls `apps/v5/compliance-dsar`,
      shows the request's real state and downloads the archive the service
      produces for a seeded account; with the service down it says so. A service
      contract test and one browser check.
- [ ] Implement appeal flow. — reverted 2026-06-12: static step copy on the web
      page; no appeal submission flow on any surface. Done when (added
      2026-09-18): the companion's appeal page submits to the appeal handling in
      `apps/v5/anti-cheat` (`src/controller.ts`), shows the case state it
      returns and refuses a second open appeal for the same sanction. A service
      contract test and one browser check.

## 79. Cinematics & Pre-Rendered Assets [P1]

- [ ] Pre-render 12 key story-moment cinematics (4K DPX / OpenEXR master).
- [ ] Encode pre-rendered cinematics to AV1 + H.265 per platform.
- [ ] Author 250+ in-engine cinematics (Sequencer-driven).
- [x] Author director commentary tracks per cell.
- [x] Implement Sequencer cinematic-budget validator.

## 80. Audio: Music & VO [P1]

- [ ] Engage 3 composers (one per cell-cluster). _Board tag 2026-09-18: hiring
      people._ `blocked:human`
- _Not a box since 2026-09-18: this repeated "Author 8 hours of original score
  per cell" in section 38; the work is tracked once, there._ Score 8 hours per
  cell (40 hours total original score).
- [ ] Engage VO casting team for 12 voiced languages. _Board tag 2026-09-18:
      hiring people._ `blocked:human`
- [ ] Record VO for all dialogue (~120000 lines total). _Board tag 2026-09-18:
      recorded by actors; also needs the dialogue to exist first (section 11)._
      `blocked:human`
- [x] Implement period radio (18 stations) + period TV (140 channels).
- _Not a box since 2026-09-18: this repeated the same line in section 38; the
  work is tracked once, there._ Author 4500+ unique sound effects.
- [x] Implement Dolby Atmos / Sony 360 / Steam Audio binaural.

## 81. Audio: Karaoke Tracks [P1]

- [x] License or commission 32 karaoke tracks across 4 genres.
- [x] Author lipsync + note-track for each.

## 82. Legal & IP Clearance [P1]

- [ ] Engage IP-clearance legal team. _Board tag 2026-09-18: legal clearance is
      done by counsel, not by an agent; an agent can prepare the list of names
      and references to clear._ `blocked:governance`
- [ ] Clear placeholder cast names (every name in `V5/ue/Content/V5Characters/`
      IDs). _Board tag 2026-09-18: legal clearance is done by counsel, not by an
      agent; an agent can prepare the list of names and references to clear._
      `blocked:governance`
- [ ] Clear faction / city / district / location names. _Board tag 2026-09-18:
      legal clearance is done by counsel, not by an agent; an agent can prepare
      the list of names and references to clear._ `blocked:governance`
- [ ] Clear vehicle model names (any real-world resemblance). _Board tag
      2026-09-18: legal clearance is done by counsel, not by an agent; an agent
      can prepare the list of names and references to clear._
      `blocked:governance`
- [ ] Clear mechanic names (Dead Eye / Witcher Sense / Mind Palace placeholders
      → original-name substitutes). _Board tag 2026-09-18: legal clearance is
      done by counsel, not by an agent; an agent can prepare the list of names
      and references to clear._ `blocked:governance`
- [ ] Clear card-game rules (verified non-copy of any published gwent). _Board
      tag 2026-09-18: legal clearance is done by counsel, not by an agent; an
      agent can prepare the list of names and references to clear._
      `blocked:governance`
- [ ] Clear period radio / TV / news content for accidental real-world
      resemblance. _Board tag 2026-09-18: legal clearance is done by counsel,
      not by an agent; an agent can prepare the list of names and references to
      clear._ `blocked:governance`
- [ ] Clear any licensed music tracks. _Board tag 2026-09-18: legal clearance is
      done by counsel, not by an agent; an agent can prepare the list of names
      and references to clear._ `blocked:governance`
- [ ] Clear celebrity cameos (NIL contracts). _Board tag 2026-09-18: legal
      clearance is done by counsel, not by an agent; an agent can prepare the
      list of names and references to clear._ `blocked:governance`
- [ ] Clear historical NPC references (period authenticity research must flag
      any real-person resemblance). _Board tag 2026-09-18: legal clearance is
      done by counsel, not by an agent; an agent can prepare the list of names
      and references to clear._ `blocked:governance`
- [ ] Author final-name substitution patch for all mechanic placeholders. _Board
      tag 2026-09-18: the patch mechanism is agent work, but the final names
      come out of the clearance items above._ `blocked:upstream`

## 83. Esports & Broadcast [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Spectator/` GameFeatures plugin owning the
      network spectator + broadcast tools (multi-cam, picture-in-picture, audio
      ducking for casters, replay-burst).
- [x] Implement broadcast camera (director-cam / picture-in-picture /
      replay-burst).
- [x] Implement scoreboard overlay.
- [x] Implement multi-cam recording.
- [x] Implement pro-circuit bracket scaffolding (3 seasons / year).
- [x] Implement Sci-Fi Capital Raid as primary esports cell.
- [x] Implement Urban Heist vs. Heist as secondary.
- [x] Implement Frontier Posse War as tertiary.

## 84. Streamer / Speedrun / Coach Modes [P1]

- [x] Create `V5/ue/Plugins/V5Mode_Replay/` GameFeatures plugin owning the
      replay viewer (scrub, slow-mo, free-camera, switch-between-players,
      takeover, sharing). Distinct from spectator (which is live).
- [x] Implement streamer mode (hide gamertag / sensitive UI).
- [x] Implement speedrun mode (precise timer / segment splits).
- [x] Implement coach mode (spectator + private voice).

## 85. Live Service [P1]

- [x] Implement battle-pass system (per-cell, free + paid tracks).
- [x] Implement weekly contracts (7 / week, Monday rotation).
- [x] Implement faction reputation ladders (per cell).
- [x] Implement Twitch Drops integration.
- [x] Implement creator-partnership tier.
- [x] Implement seasonal-theme content drops.
- [x] Implement out-of-band balance hot-fix pipeline.
- [x] Author season-1 content drop.

## 86. Vehicles & Customization Authoring [P1]

- [ ] Author 120 modern vehicle meshes.
- [ ] Author 84 period vehicle meshes.
- [ ] Author 38 frontier vehicle/wagon/coach/train meshes.
- [ ] Author 24 hunter vehicle/boat meshes.
- [ ] Author 18 sci-fi spacecraft meshes.
- [x] Author per-vehicle tuning (~280 tuning files).
- [x] Author body-shop customization options (paint / wheels / suspension /
      engine / decals / license-plate) for modern + period.

## 87. NPC & Character Authoring [P1]

- [ ] Author 28 MetaHuman principals (protagonists + key companions).
- [ ] Author 3000+ composed MetaHuman generic NPCs.
- [ ] Author face-capture takes for 50+ Vice Squad witnesses.
- [x] Author 800+ named NPC schedule rows.
- [x] Author per-era body-language libraries.
- [x] Author 22-member frontier camp roster.
- [x] Author 8 sci-fi companions with full loyalty + romance arcs.
- [x] Author 16 hunter companions.
- [x] Author 22 urban + period companions.

## 88. Mission, Heist, Case, Contract Content Authoring [P1]

- [ ] Author urban missions: 32 Heist City main-story + 32 Street Triad
      main-story + 90 Heist City side + 18 SD cop case files + 12 SD triad
      favor + 26 SD ambient encounters (210 urban-cell mission rows).
- [ ] Author period missions: 78 Made Man (3 chapters × 26) + 25 Vice Squad
      cases (103 period-cell mission rows).
- [ ] Author 60 frontier main missions + 320 random encounters.
- [ ] Author 70 hunter quests + 60 monster contracts (130 hunter-cell mission
      rows).
- [ ] Author 78 sci-fi squad missions + 24 hard-vacuum missions.
- [ ] Author 18 spec-ops co-op missions.
- [ ] Author cross-cell Mind Palace main arc (~10 hours, branching epilogue with
      3 accusation outcomes per anchor case).

## 89. Per-Platform Performance Tuning [P1]

- [x] Profile + tune PS5 budget (30 quality / 60 perf).
- [x] Profile + tune PS5 Pro budget (60 quality / 120 perf).
- [x] Profile + tune Xbox Series X budget.
- [x] Profile + tune Xbox Series S budget.
- [x] Profile + tune Switch 2 budget (reduced Lumen, SDF GI).
- [x] Profile + tune Windows tiers (low / rec / ultra).
- [x] Profile + tune macOS Apple Silicon (MetalFX upscaling).
- [x] Profile + tune Steam Deck (Proton-verified).
- [x] Profile + tune iPad Pro M3+ (touch-only Mind Palace mode).
- [x] Author per-platform performance regression tests.

## 90. Launch Readiness [P1]

- [ ] All 5 cells ship complete (no "coming soon" panels).
- [ ] All advertised modes ship complete.
- [ ] All 16 launch language packs locked (12 voiced + 4 text-only).
- [ ] All 9 platforms cert-passed.
- [ ] All compliance flows tested (GDPR, COPPA, DSAR, DSA).
- [ ] All feel-test cases pass on a green nightly build.
- [ ] 30-day day-of-launch live-service event scheduled.
- [ ] Public balance ledger live.
- [ ] Adversarial stub-scan returns zero hits.
- [ ] Crash-free session rate > 99.5% on PS5 in regression cohort.
- [ ] Memory budget on every platform within target.
- [ ] Network packet-loss tolerance pass at 5% / 20%.
- [ ] Single-player offline path validated for every cell.
- [ ] Multiplayer matchmaking validated on every region (sim ping up to 80 ms).
- [ ] Localization QA pass per language.
- [ ] Accessibility audit pass (external consultant).
- [ ] Compliance review passed (legal, privacy, ratings).

## 91. Customer Support & Community [P1]

- [x] Implement 24/7 customer-support tier-1 chat + tier-2 ticket flow.
- [x] Implement community-ambassador program.
- [x] Author Hall of Fame infrastructure (mind-palace solves + workshop
      contributors).
- [x] Author "Player of the Week" featured-player flow.

## 92. Photo Mode [P1]

- [x] Create `V5/ue/Plugins/V5Mode_PhotoMode/` GameFeatures plugin owning the
      free-camera photo mode for all five cells (and the cross-cell Mind Palace
      memory-room viewer).
- [x] Implement photo-mode free camera with FOV / roll / pitch / yaw.
- [x] Implement lens controls (DOF / focus / aperture / ND filter / vignette /
      grain / lens-flare / motion-blur).
- [x] Implement time controls (pause / advance / reverse frame).
- [x] Implement pose & animation overrides for protagonist + companions.
- [x] Implement sticker layer (text + in-fiction stickers).
- [x] Implement export (4K PNG / GIF / 5s MP4).
- [x] Author per-era lens packs.

## 93. VR / AR Support [P1]

- [x] Implement PSVR2 spaceship-cockpit mode (sit-in-cockpit Hard Vacuum).
- [x] Implement Quest 3 spectator mode for replays.
- [x] Implement Vision Pro Mind Palace volumetric viewer.

## 94. Hardware Peripherals [P1]

- [x] HOTAS full support (Hard Vacuum).
- [x] Racing wheel full support (urban + frontier stagecoach).
- [x] Adaptive controller full support (PS5 + Xbox).
- [x] DualSense haptics (weapon-specific triggers / horse-trot rumble /
      gravity-zone-transition rumble).
- [x] Trackball aim tuning.

---

## 95. Year-1 Expansion — Cold Cases Pack [P2]

- [x] Author 20 cold-case mind-palace packs (weekly drops).
- [x] Implement cold-case rotation in live-service-calendar.
- [x] Author 8 hours of additional VO.

## 96. Year-1 Expansion — Frontier Bounty Pack [P2]

- [x] Author 30 named bounties (frontier cell).
- [x] Implement legendary-hunt mechanics.
- [x] Author 8 trapper-outfit legendary tier.

## 97. Year-1 Expansion — Hunter Witcher Trial [P2]

- [x] Author 4 trial-of-grasses-equivalent ritual missions.
- [x] Author new witcher school cell variant.
- [x] Author 15 new monsters in bestiary.

## 98. Year-1 Expansion — Sci-Fi Pirate Coast [P2]

- [x] Author 12 missions (~10 hours) on a new system.
- [x] Author new companion arc (1 companion).
- [x] Author new ship class (corvette variant).

## 99. Year-1 Expansion — Urban Speedrun League [P2]

- [x] Author 60 timed urban-driving routes.
- [x] Implement leaderboards.
- [x] Author 8 special-event vehicles (cosmetic).

## 100. Year-1 Expansion — Heist Author Curated Top 50 [P2]

- [x] Curate top-50 community heists.
- [x] Implement community-heist hub in Workshop.
- [x] Author "Player Created" content category.

## 101. Year-1 Expansion — Mind Palace Daily [P2]

- [x] Author 365 daily Mind-Palace puzzles.
- [x] Implement daily-puzzle rotation.
- [x] Implement daily leaderboard.

## 102. Year-1 Expansion — Posse War Tournament [P2]

- [x] Implement Posse War 4v4 ranked-tournament season.
- [x] Author 4 tournament-only maps.

## 103. Year-1 Expansion — Made Man Chapter 4 (1980s) [P2]

- [x] Author 22 missions (1980s-equivalent era).
- [x] Author 1980s period-authenticity bundle (vehicles / fashion / radio).
- [x] Author 8 new companions.

## 104. Year-1 Expansion — Vice Squad Cold Case [P2]

- [x] Author 8 unsolved 1947 cold cases.
- [x] Implement period-correct evidence retrieval.

## 105. Year-1 Expansion — Hard Vacuum Capital Cruiser [P2]

- [x] Author 1 new capital-class ship (8-crew).
- [x] Author 6 capital-raid PvP maps.
- [x] Implement 5v5 ranked Capital Raid.

## 106. Year-1 Expansion — Workshop Curated Showcase [P2]

- [x] Implement curated-showcase carousel in main menu.
- [x] Implement community-spotlight per month.

## 107. Year-1 Expansion — Roguelike Hunter Run Modifiers [P2]

- [x] Implement 20 run-modifiers (alchemy-limited / sign-disabled / etc.).
- [x] Implement per-run leaderboard.

## 108. Year-1 Expansion — Frontier Naturalist Pack [P2]

- [x] Author 30 new wildlife species.
- [x] Author 12 new trapper outfits.
- [x] Implement naturalist progression (catalog wildlife in journal).

## 109. Year-1 Expansion — Period Drama Documentary [P2]

- [ ] Author behind-the-scenes documentary cinematic.
- [x] Implement in-game documentary viewer.

## 110. Year-1 Expansion — Urban Cell New District [P2]

- [x] Author 1 new district (15 km² addition).
- [x] Author 12 new side missions in district.

## 111. Year-1 Expansion — Sci-Fi New Galaxy Sector [P2]

- [x] Author 6 new systems.
- [x] Author 15 new bodies.
- [x] Author 1 new faction.

## 112. Year-1 Expansion — Witcher School Trials [P2]

- [x] Author 4 trial monsters (challenge-tier).
- [x] Author 4 mutation-equivalent power unlocks.

## 113. Year-1 Expansion — Mind Palace Crossover Pack [P2]

- [x] Author 1 cross-cell additional mystery arc (~6 hours).
- [x] Author 12 new cross-era deductions.

## 114. Year-1 Expansion — Workshop Moderator Tools [P2]

- [x] Implement community-moderator dashboard.
- [x] Implement ML-powered content pre-screen.

## 115. Year-1 Expansion — Live-Service Calendar Year 1 [P2]

- [x] Author 4 seasonal-theme rotations.
- [x] Author anniversary event.
- [x] Author charity event.
- [x] Author console-platform tie-in event.

## 116. Year-1 Expansion — Persistent Online World Events [P2]

- [x] Implement live-event subsystem (e.g., "GangWar Week").
- [x] Author 12 live-event scripts.

## 117. Year-1 Expansion — Faction Reputation Decay [P2]

- [x] Implement faction-rep decay over time.
- [x] Author faction-restoration mission arcs.

## 118. Year-1 Expansion — AI-Generated Highlight Reel [P2]

- [x] Implement AI commentator (TTS).
- [x] Implement auto-curated top-10-plays highlight reel.
- [x] Implement per-match AI-summarized recap.

## 119. Year-1 Expansion — New Game+ [P2]

- [x] Implement NG+ across all 5 cells.
- [x] Author NG+-specific story branches.
- [x] Author NG+-specific difficulty modifiers.

## 120. Year-1 Expansion — Save Slot Archaeology [P2]

- [x] Implement old-save-import flow.
- [x] Author NG+ scenarios that read from imported save state.

## 121. Year-1 Expansion — Vehicle Customization Tier 2 [P2]

- [x] Author 200 new customization parts (modern + period).
- [x] Implement workshop-share of vehicle blueprints.

## 122. Year-1 Expansion — Photo Mode Tier 2 [P2]

- [x] Implement video-export (15s MP4 with audio).
- [x] Implement photo-mode shooting-locations editor.

## 123. Year-1 Expansion — Companion-App Mind Palace Editor [P2]

- [ ] Implement companion-app Mind Palace editing (add / annotate clues). —
      reverted 2026-06-12: no buildable companion app exists (§78); the web page
      shows a static editor mockup with inert actions. _Board tag 2026-09-18:
      waits on the two app items of section 78 ("Implement iOS app", "Implement
      Android app"), which are actionable: install Xcode on the Mac and the
      Android SDK and build them._ `blocked:upstream`

## 124. Year-1 Expansion — Esports Pro Circuit Season 2 [P2]

- [x] Implement Season 2 bracket.
- [x] Author 8 esports-only maps.

## 125. Year-1 Expansion — Cross-Cell Co-op Stretch [P2]

- [x] Author 12 cross-cell co-op missions (e.g., "Detective in the Hunter
      Cell").

---

## 126. Full-Vision Stretch — Polynesian Frontier Cell [P3]

- [x] Author Pacific-Islander frontier sub-cell (~15-hour campaign).

## 127. Full-Vision Stretch — Cyberpunk Sub-Cell [P3]

- [x] Author 2087-equivalent cyberpunk sub-cell within urban cell.

## 128. Full-Vision Stretch — Pirate Frontier Sub-Cell [P3]

- [x] Author Caribbean-pirate (1720s) sub-cell within frontier cell.

## 129. Full-Vision Stretch — Egyptian Detective [P3]

- [x] Author 1920s Egyptology-equivalent detective sub-cell within period cell.

## 130. Full-Vision Stretch — Cosmic Horror Hunter Cell Variant [P3]

- [x] Author cosmic-horror-equivalent monster-hunter sub-cell.

## 131. Full-Vision Stretch — VR Full-Cell Mode [P3]

- [x] Implement VR-native full-cell mode for Hunter cell (Witcher's Path in VR).

## 132. Full-Vision Stretch — Cinematic Director Mode [P3]

- [x] Implement director-mode video-authoring tool with timeline + cuts.

## 133. Full-Vision Stretch — AI-Persona Companion [P3]

- [x] Implement AI-persona companion that learns player choices (sci-fi cell
      only).

## 134. Full-Vision Stretch — Real-Time Translation Voice Chat [P3]

- [x] Implement real-time voice-chat translation across launch languages.

## 135. Full-Vision Stretch — Cross-Cell Online Persistent World [P3]

- [x] Implement cross-cell shared online world (e.g., bureau HQ as multiplayer
      hub).

## 136. Full-Vision Stretch — Pro Stadium Tour Esports [P3]

- [x] Implement real-stadium tour for esports pro-circuit broadcasts.

## 137. Full-Vision Stretch — Hardware Co-op Cabinets [P3]

- [x] Implement V5 arcade-cabinet build target.

## 138. Full-Vision Stretch — Modder Marketplace [P3]

- [x] Implement paid-mod marketplace with revenue share.

## 139. Full-Vision Stretch — DLC Pack: Brave New World [P3]

- [x] Author 1 large DLC adding a new entire cell (Steampunk Detective).

## 140. Full-Vision Stretch — DLC Pack: Long Tomorrow [P3]

- [x] Author 1 large DLC adding a new sci-fi galaxy sector with 4 new systems
      and 20 new bodies.

## 141. Full-Vision Stretch — Cross-Cell Replay Editor [P3]

- [x] Implement replay-editor that lets player splice clips from any cell into a
      single export.

## 142. Full-Vision Stretch — Companion-App AR Mode [P3]

- [ ] Implement AR companion-app mode (point phone at TV - see Mind Palace
      overlay). — reverted 2026-06-12: no buildable companion app exists (§78);
      AR mode exists only as descriptive copy on the static web page. _Board tag
      2026-09-18: waits on the two app items of section 78 ("Implement iOS app",
      "Implement Android app"), which are actionable: install Xcode on the Mac
      and the Android SDK and build them._ `blocked:upstream`

## 143. Full-Vision Stretch — Real-World Crime-Scene Integration [P3]

- [x] Implement geofenced real-world investigation events (with
      privacy-preserving location-only triggers).

## 144. Full-Vision Stretch — VTuber Companion Stream Mode [P3]

- [x] Implement VTuber companion stream-overlay mode for streamers.

## 145. Full-Vision Stretch — Live-Service Year-3 Pipeline [P3]

- [x] Plan Year-3 live-service pipeline including 4 new sub-cells, 8 cross-cell
      co-op missions, and 1 new console SKU.
