Status: the authoritative map of what is missing between today's V1–V7 and a
fully-AI-generated open-world detective universe. Date: 2026-06-04. Every gap
below is grounded in a real file/interface (cited), and maps to a V8 subsystem
(V8_ARCHITECTURE.md) and a V8_TODOS.md phase.
Convention: HAVE = real, wired code today. PARTIAL = scaffold/templates
/types only. MISSING = no implementation. → names the V8 closer.
0. The thesis in one paragraph#
V1–V7 already deliver (a) a real, playable open-world detective game with a Sherlock-style deduction engine (V5, ~107K lines UE C++), and (b) a real multi-modal AI content factory (isis image/music/voice/3D/video, hathor LLM-NPC, yemaya's CrewAI/LangGraph creative agents + a Knox/Van-Dine mystery-fairness validator). They are not connected, and the one thing neither half can do is generate a complete, fair, solvable case. V8 builds the missing generator, proves solvability formally, and compiles output into V5's existing authored case format so it ships with no engine rewrite.
1. The three macro-gaps#
Gap A — There is no case/mystery generator (only a validator)#
- HAVE:
libs/yemaya/agents/src/quality-assurance/mystery-fairness-validator.ts— a real, domain-specific fairness checker (Knox Decalogue + Van Dine 20 rules) over aMysterySession(clues: Map<ClueId,Clue>,solutions: Map<SolutionId,Solution>,characters,timeline) returning aFairnessAnalysis(score,rating, violations). It validates a case. - HAVE:
…/quality-assurance/investigation-mechanic-balance-analyzer.ts— scores clue-distribution, deduction-chain completeness, red-herring fairness. - MISSING: anything that produces a
MysterySession. No solve-first ground-truth builder, no clue-derivation pass, no uniqueness enforcement, no red-herring generator. Confirmed by repo-wide search: only validators exist. →Clew (generative case engine) + Minos (formal solvability proof), feeding the existing validator as a gate.V8_TODOSPhase 2–3.
Gap B — The agent factory is not connected to the game#
- HAVE: a real UE5 detective game. Case data contracts exist and are loaded
from a JSON manifest:
V5/ue/Source/V5MindPalace/Public/V5MindPalaceTypes.h:33FV5MindPalaceEvidenceNode(NodeId, CaseId, SourceId, Cell, LocationId, TimestampInFiction, Tags, Description, Image:FSoftObjectPath, ExaminedDetails, bFalseLead).- same file
:72FV5MindPalaceDeductionEdge(FromNodeId, ToNodeId, DeductionText, Confidence, Kind, bCrossEra, RequiredBureauTier, UnlockFlag). - same file
:117FV5MindPalaceAccusationOutcome(AccusedId, EvidenceChain, RequiredEdgeIds, Rating∈{Brilliant,Good,Doubtful,Wrong}, OutcomeBranch∈{TruthRevealed,PlausibleConviction,PoliticalCoverup,Unproven}). V5/ue/Source/V5DetectiveColdCases/Public/V5DetectiveColdCasesTypes.h:17FV5ColdCasePackDefinition(PackId, WeekNumber, CaseId, LeadCell, SourceCells, EvidenceNodeCount, DeductionPairCount, VoiceOverMinutes, VoiceLineCount, DropSlug, RewardId, Title).- on-disk:
V5/ue/Plugins/V5Mode_Detective_ColdCases/Content/Data/cold_cases_manifest.json(schemaVersion:1,packs[], eachmindPalace.evidenceNodeIds[]+deductionPairIds[]), validated byV5/tools/cold-cases/validate-cold-cases.py.
- HAVE: an asset factory —
libs/isis/clientIsisClient.submitJob() / submitAndWait()returningJobOutput.files[].url;libs/hathor/llm-npcDialogueGenerator.generateResponse(). - MISSING: the compiler that turns a validated
MysterySession(+ its assets) intoFV5*structs + acold_cases_manifest.jsonpack; the asset manifest binding generated audio/mesh/texture toFSoftObjectPaths; the runtime relay so the game can request cases on demand. yemaya/agents has zero references to V5/Unreal today. →Daedalus (case compiler + runtime relay).V8_TODOSPhase 4 & 9.
Gap C — Orchestration & integrations are scaffold, not live#
- PARTIAL:
apps/lilith/svc-ai/src/agent-coordination.ts:24carries the literal marker// stub:legitimate Until the coordination protocols are wired to a real LLM … the response strings and confidences are scaffolds. - PARTIAL:
libs/neith/integration-hathornarrative/quest generators are deterministic templates (Freytag tension tables, fixed complication graphs), not LLM-driven. - PARTIAL: yemaya
*-integrationdirs (isis/hathor/sophia/bellona) are type-layer wrappers around@isis/client,@hathor/client,@sophia/client; not end-to-end pipelines. - HAVE (substrate): yemaya
WorkflowBuilder/WorkflowExecutor/StateGraph(LangGraph-style) andCreativeAgentbase (realllmProvider.complete()calls) — the right bones, under-used. →Promote to live: Anansesɛm writers'-room DAG on the existing orchestration substrate; wire the integration adapters to real job calls.V8_TODOSPhase 5–6.
2. Capability matrix — every element a fully-generated detective universe needs#
| Element | Status today | Evidence | V8 closer |
|---|---|---|---|
| Open-world detective game loop | HAVE | V5 investigation/interrogation/Mind-Palace/accusation, ~107K lines C++ | reuse |
| Sherlock-style deduction graph | HAVE | FV5MindPalaceDeductionEdge, pair-and-deduce |
reuse |
| On-disk authored case format | HAVE | cold_cases_manifest.json + validator.py |
Daedalus emits it |
| Mystery fairness scoring | HAVE | mystery-fairness-validator.ts (Knox/Van Dine) |
reuse as gate |
| Investigation balance scoring | HAVE | investigation-mechanic-balance-analyzer.ts |
reuse as gate |
| Image / music / voice / 3D / video gen | HAVE | isis/ai-providers + IsisClient.submitJob |
Loom orchestrates |
| LLM NPC dialogue | HAVE | hathor/llm-npc DialogueGenerator |
Ori-Detective bridge |
| Multi-agent orchestration substrate | HAVE | yemaya WorkflowBuilder/StateGraph |
Anansesɛm uses it |
| Creative agents (story/char/dialogue) | HAVE | yemaya CreativeAgent base + specialists |
Anansesɛm extends |
| Case ground-truth generator (solve-first) | MISSING | — | Clew Stage 1 |
| Clue derivation tied to solution vars | MISSING | — | Clew Stage 2 |
| Red-herring generator (fairly refutable) | MISSING | — | Clew Stage 2 |
| Formal unique-solution proof (CSP/ASP) | MISSING | — | Minos Stage 3 |
| Canon / continuity knowledge graph | PARTIAL | yemaya canon-enforcement lib exists; not graph-RAG |
Palimpsest Stage 0/4 |
| MysterySession → FV5* case compiler | MISSING | — | Daedalus Stage 4 |
| Generated-asset → FSoftObjectPath manifest | MISSING | — | Daedalus Stage 4 |
| Automated solver / playtest eval | MISSING | — | Theseus Stage 7 |
| LLM-as-judge quality gate (8-dim) | MISSING | — | Theseus Stage 7 |
| Runtime case-on-demand relay (UE5) | MISSING | — | Daedalus runtime Stage 9 |
| Live AI interrogation (ACE/Inworld) | MISSING | — | Ori-Detective + ACE Stage 9 |
| Open-world case director / drama mgr | MISSING | — | Oracle Stage 10 |
| Living suspects (memory/reflection/plan) | PARTIAL | V6 Ori spec exists; UE client is stubs | Ori-Detective Stage 6 |
| Cost / budget governance | HAVE | yemaya budget-management |
reuse |
| Human-in-the-loop review | HAVE | yemaya hitl |
reuse |
| Provenance / C2PA on exports | HAVE | V3 C2PA_EVERY_EXPORT.md |
reuse |
| Trust & safety on generated content | HAVE | V7 Sekhmet | reuse |
| Multiplayer canon sync | PARTIAL | V5 online services; no generated-case sync | Daedalus + Oracle Phase 9/11 |
| Determinism / replay of generation | MISSING | — | seed+journal, Phase 11 |
| Localization of generated cases | PARTIAL | V6/V7 loc | extend, Phase 11 |
| Accessibility of generated cases | PARTIAL | V6 accessibility | extend, Phase 11 |
3. What V8 explicitly does NOT redo#
- It does not re-author V5's hand-made 25 launch cases — those remain the golden reference corpus and eval fixtures for Theseus/judge calibration.
- It does not rebuild the UE deduction UI, interrogation rig, or world streaming — V8 emits data the existing systems already consume.
- It does not add a new asset provider — isis already wires Stability, Suno, ElevenLabs, Meshy, Hunyuan3D, LTX. V8 orchestrates them per case.
- It does not introduce a new orchestration framework — it uses yemaya's
WorkflowBuilder/StateGraph.
V8 is an integration + generation-completion version: one new generative core (Clew/Minos), one new bridge (Daedalus), and the promotion of existing scaffolds (Anansesɛm, the integration adapters, Ori) to live, verified, end-to-end production.