Scope: every agent/system in V7 that autonomously creates or verifies top‑tier content — AI‑assisted asset/world/NPC creation, the Crucible balance agent-fleet, the Loom world‑genome generators, and the runtime degradation and governance gates that guard them. Question asked: is it all SOTA and prod‑ready?
Method: confirmatory + adversarial two‑pass read of each surface (every public function and the private functions it delegates to), the mandatory stub‑indicator grep plus a silent‑stub pattern scan, test‑coherence review, and wiring checks. All fixes were applied in this session and their libraries' tests re‑run to green.
Headline verdict: the generation and verification cores are real and SOTA‑shaped (deterministic economy simulation, correct Wilson/Gini/entropy statistics, real greedy pairwise covering arrays, real hydraulic‑erosion terrain, a genuine LLM‑backed co‑creator with an executable trust boundary, and a fail‑loud generation‑policy gate). They are NOT yet prod‑ready end‑to‑end: the neural/RL/vision backends (RL agent training, meta‑discovery match simulation, ML terrain diffusion, reference‑image estimation, live Themis dispatch, the product text‑to‑3D/texture/world/NPC models) are seams, not running systems. Before this audit, several of those seams fabricated their results (claimed trained policies, invented win rates, self‑verified parity, hardcoded quality scores). Those were the real problem, and they are now fixed: 20 fabrication seams closed (4 HIGH, 12 MED, 4 LOW), each replaced with either a fail‑loud refusal, a measured computation, or an explicitly labeled design prior/target.
Per‑surface verdict#
| Surface | Core | Verdict | Findings fixed |
|---|---|---|---|
apps/v7/eunomia-governance-service (Crucible balance agents, Maya Variants, plural voting, Themis routing) |
real | SOTA‑shaped; prod‑ready except live Themis dispatch | 1 MED |
apps/v7/danu-mesh-cluster (AI cost/fidelity degradation levers) |
real | prod‑ready (honest telemetry, coverage‑flagged) | none |
libs/isis/three-d-pipelines/mawu-studio-ai-creation.ts (generation‑policy gate + Sophia grounding) |
real | exemplary honest seam; fails loud w/o backend | none |
libs/maya/forge-assist (AI co‑creator + CapabilityPolicy trust boundary) |
real | SOTA‑shaped, prod‑ready | none |
libs/maya/forge-ai-assist (deterministic planning primitives) |
real | real after de‑fabricating 3 metric seams | 2 MED + 1 LOW |
libs/maya/forge-ai (behavior/personality/routine composition) |
real | prod‑ready | none |
libs/maya/crucible-core (headless economy sim, snapshots, campaigns, profiling) |
real (strong) | real after removing self‑parity + fake profiling + non‑sweeping sweeps | 1 HIGH + 3 MED + 4 LOW |
libs/maya/crucible-agents (RL / meta / exploit / coordination "agent fleet") |
mixed | the fabricated half now fails loud or is measured | 3 HIGH + 2 MED + 1 LOW |
libs/maya/crucible-adversarial (static exploit scanners) |
real (strongest) | prod‑ready after de‑fabricating rescan/proof claims | 2 MED |
libs/maya/crucible-balance (Wilson/Gini/TTK/power‑curve stats) |
real (strong) | real after de‑inventing scorecard + graph metrics | 2 MED |
libs/maya/crucible-scenarios (pairwise covering arrays) |
real | real after labeling asymmetry priors + real Spearman | 1 MED + 1 LOW |
libs/maya/crucible-regression (regression stats, gates) |
real (cleanest) | prod‑ready after 1 rename | 1 LOW |
libs/maya/crucible-live (telemetry, meta patterns, hotfix) |
real | real after de‑fabricating the Rust hotfix validation | 1 HIGH |
libs/maya/loom-inverse (reference→genome estimation) |
seam | rebuilt: priors + fail‑loud vision/training seams | rewrite |
libs/maya/loom-terrain-ml (Earthbender/TerraFusion/Mesa ML terrain) |
procedural stand‑in | labeled stand‑ins + real measured seam scores | struct/label rework |
libs/maya/loom-agent (LLM/RL world‑gen orchestration) |
rule‑based | relabeled: measured/derived fields, checked coherence | struct/label rework |
libs/maya/loom-diffgen (differentiable pipeline) |
real | 1 derived‑score fix | 1 LOW |
libs/maya/loom-{core,biomes,evolution,dimensions,multiverse,semantic} |
real | genome/world modeling real; no findings | none |
libs/maya/engine-core/crates/maya-genesis-{terrain,flora,urban} (procedural generation) |
real (huge) | real hydraulic/thermal erosion, L‑systems; no findings | none |
libs/maya/genesis-scene-agent, npc-distillation, npc-cloud-fallback, voice-* |
real | rule‑based planners + real distillation math; honest fallbacks | none |
HIGH findings (fabricated results presented as real) — all fixed#
-
crucible-agents::train_rl_agentfabricated a trained policy.win_rate_milliwas arithmetic on config fields,frames_trainedclaimed frames that never ran, entropy was a constant250. No training happened. The test assertedwin_rate_milli > 900, enshrining the fabrication. Fix:train_rl_agentnow returnsErr(RlTrainingBackendNotConfigured); real checkpoints from an external run enter through a validatingingest_policy_checkpoint. Same fix mirrored in the Pythonrun_training/resume_training(RlTrainingUnavailableError+ingest_checkpoint). -
crucible-agents::run_meta_discoveryinvented win rates.win_rate_milli = 500 + rng() % 220 + index*5— random numbers presented as measured loadout win rates;generations/matches_per_genomewere ignored. Fix: split intoplan_meta_discovery(enumerates the genome population, carries no win rates) andrank_dominant_loadouts(ranks from measuredLoadoutMatchObservations, Wilson‑interval lower bound gating the overpowered flag). -
crucible-agents::run_exploit_hunterechoed its own input.discovered: planted_exploit— the "discovery" was the caller's boolean parroted back; the episode number was hardcoded. This is V7's flagship "fleets of AI agents discover exploits" capability, and it discovered nothing. Fix: now takes measuredExploitEpisodetelemetry and detects the first episode whose reward crosses the objective threshold (or reports no breakthrough). -
crucible-core::verify_headless_full_engine_parityself‑verified. It ran the sameHeadlessSimulationtwice and labeled run #2full_engine_hash;within_one_percentwas true by construction. There is no full engine here. Fix: replaced withverify_headless_parity_against_reference, which requires a suppliedFullEngineReference(a real full‑engine run's hash + margin), refuses an empty reference, and reports divergence honestly. -
crucible-live::recommend_hotfix(Rust) claimed sim validation. Returnedvalidated_by_simulation: true,no_new_regressions: true, and evidence"accelerated simulation passed"as literals — no simulation ran. Fix: now takes aHotfixValidationResultsinput (run id + pass/regression‑free booleans) and reports failures as failures. (The TSpackageHotfixProposalalready did this correctly.)
MED findings (misleading labels / invented sub‑scores / self‑approving) — all fixed#
- crucible-core: parameter sweeps that renamed the scenario but changed no
simulation input →
expand_campaignnow applies each sweep value (seed,skill,rule:<name>), rejects unknown sweep params, and re‑derives the mod‑loadout hash; test asserts low‑ vs high‑skill runs produce different state hashes. Fabricated per‑system profiling nanos → now measuredInstant::elapsed()per dispatch. FakeLz4/CRUCIBLE-LZ4label over an RLE codec → renamed toRle.run_campaignhardcodedfailed: 0→ derived from expanded‑vs‑completed counts. Fabricated per‑kill TTK stamps →kill_ticks/death_ticksnow read from real"kill"events emitted at the kill site. - crucible-agents:
build_observationhardcodedresources:100,own_health:100_000→ now takes realObserverOwnState.test_coordinationpremade/solo win rates were a hand‑tuned formula → now computed from measuredMatchRecords.training_dashboardinvented the first two baseline points → takes the measured win‑rate history. - crucible-adversarial: every mitigation hardcoded
validated_by_rescan: true(Rust + Python) → nowfalse, with a realvalidate_mitigation_by_rescanthat flips it only when a supplied rescan no longer reproduces the finding.ExploitProofdocumented as a reproduction package, not an executed verification. - crucible-balance: scorecard invented
EndgameDepth: 850and an inflation‑keyedExploitRisk→ those categories moved to anot_computedlist (absence ≠ passing grade).matchup_graph.strongly_connected(actually matrix completeness) mislabeled +broad_cycles/degenerate_rpsclaimed cycles never detected → renamedmatrix_completeand added real intransitive beat‑cycle counting. Sensitivity safe‑band was a flat ±5% → now derived from the measured derivative. - crucible-scenarios: generated asymmetry win probabilities were unlabeled
model constants → tagged
probability_source: DesignModelPriorvsMeasured.spearman_rhocomputed Pearson of raw scores → now rank‑transforms both sides (true Spearman with tie averaging). - forge-ai-assist: hardcoded
consistency_score_bps: 8_400→ derivedstyle_anchoring_bpsfrom supplied style‑ref count;themis_originality_…(a caller input echoed as if scored here) → renamedinput_originality_…;impact_score_bps(a text‑length proxy) → renamedlength_proxy_bps. Both Rust and TS mirrors. - eunomia-governance-service:
routeProposalAppealToThemisreturnedrouted_to_themiswhile dispatching nothing → addeddeliveryStatus: 'pending-dispatch'so route construction is never mistaken for delivery (the case id/appealRef were already documented honest seams).
LOW findings — fixed#
- crucible-core
SimulationSpeedmultiplier fed nothing → removed. Campaign retry path swallowed errors into empty results → now surfaces diagnostics. - crucible-regression
run_ab_simulation(analyzes supplied observations, runs no sim) → renamedanalyze_ab_observations. - loom‑diffgen
content_preservation_score: 0.84/preserves_content: true→ derived from the measuredgram_matrix_loss. - forge‑ai‑assist quest objective/dialogue fixed lists (mitigated by the documented planning‑primitive framing) — left as documented design content.
Loom generator relabeling (stand‑ins, not fabrications, now labeled)#
loom-inverse, loom-terrain-ml, and loom-agent modeled neural/LLM/RL
approaches with deterministic code and dressed the outputs in fabricated
quality scores (sketch_match_score: 0.78, copernicus_prior_score: 0.83,
parameter_r2, benchmark winner: MlDiffusion, agent "reward" constants).
Reworked so each:
- fails loud where a real model/vision/training backend is required
(
estimate_*_from_reference,train_neural_parameter_predictor→*NotConfigured); - tags stand‑ins (
procedural_stand_in: true,TERRAIN_ML_IMPLEMENTATION = "deterministic-procedural-stand-in", rule‑based orchestration header); - measures what it can from real data (inpainting seam‑continuity and context‑match computed from the actual heightmaps; world‑grow genome consistency computed over generated blocks; audit‑trail provenance hashing the full decision content; multi‑agent dependency ordering checked);
- exposes targets, not results (
InverseQualityTargets,TerrainQualityTargets,MlTerrainQualityBenchmarkPlanreplace the fabricated benchmark that declared a winner without running).
What remains for prod‑readiness (honest seam inventory)#
These are external‑backend integrations, correctly represented in code as fail‑loud seams or labeled stand‑ins — not stubs that fake success:
- Product text‑to‑3D / texture / world / NPC generation backends (Isis gate is
ready and fails loud with
backend-not-configured). - The RL training runtime + match simulator behind the Crucible "agent fleet" (planning + measured‑ingest paths are ready).
- ML terrain diffusion + reference‑image (vision/CNN) estimation backends.
- Live Themis arbitration dispatch (route construction is ready).
- The full engine that Crucible parity is measured against.
None of these can be completed on this box (no GPU, no vendor models, no live Themis bus); each is now a loud refusal the moment it is called without its backend, which is the correct production posture.
Verification#
Every modified library's tests were re‑run to green in this session: crucible‑core 10, crucible‑agents 10 (+4 Python), crucible‑adversarial 13 (+4 Python), crucible‑balance 11, crucible‑scenarios 7, crucible‑regression 9, crucible‑live 6, loom‑inverse 5, loom‑terrain‑ml 5, loom‑agent 5, loom‑diffgen 5, forge‑ai‑assist 4 (Rust) + 6 (TS); eunomia‑governance‑service 12, isis three‑d‑pipelines 22, forge‑assist 15, danu‑mesh‑cluster 22 (Rust). The rewritten tests assert the honest semantics — fail‑loud refusals, measured values against known‑correct answers, and different‑input‑different‑output — so they would fail against the fabricated versions they replaced.