docs(governance): D-245 nature-layer believability acceptance gate + believability epic (T-1079..T-1084)

Lock the cascade's nature-half deliverable to "reads alive anywhere", not
"implemented" — the holy-grail objective surfaced by probing the generation
cascade.

- D-245 (architecture): the nature layers are accepted only when the
  believability litmus passes at randomly-sampled locations across all
  habitable bodies/seeds — multi-scale + never-repeating (macro identity,
  meso non-stationarity, micro mosaic), coherence + non-stationarity +
  intra-class variety + relief + climate-appropriateness, automated screen
  under a human sign-off, budgeted -> strict. Q-123: threshold calibration.
- T-1079 (epic, north-star, DoD=D-245) + findings T-1080 (uniform climate
  fields), T-1081 (near-zero relief), T-1082 (no water-body generator),
  T-1084 (intra-class micro-habitat mosaic), and T-1083 (the repeatable
  believability test protocol / D-245 enforcer).
- aliveness_probe bin: the exploratory probe that found these (runs the
  deterministic cascade for a body+seed, reports per-district nature +
  verdict). Seed for T-1083.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-28 07:59:34 +02:00
co-authored by Claude Opus 4.8
parent 85311f716c
commit c95f9d9a70
8 changed files with 552 additions and 2 deletions
+2
View File
@@ -310,6 +310,7 @@ line in place — keep the Q-record for the audit trail rather than deleting it.
- [D-242: Corp HQ settlement model — HQs are not cities; separate from the name pool, specialization-keyed, install-baked](decisions/architecture.md#d-242-corp-hq-settlement-model--hqs-are-not-cities-separate-from-the-name-pool-specialization-keyed-install-baked) — _architecture_
- [D-243: Spatial scale ladder — nested absolute containment with a single elastic planetary seam (resolves Q-110)](decisions/architecture.md#d-243-spatial-scale-ladder--nested-absolute-containment-with-a-single-elastic-planetary-seam-resolves-q-110) — _architecture_
- [D-244: Asset rendering — 3D objects in-world; 2D limited to textures + flat artwork](decisions/architecture.md#d-244-asset-rendering--3d-objects-in-world-2d-limited-to-textures--flat-artwork) — _architecture_
- [D-245: Nature-layer believability acceptance gate](decisions/architecture.md#d-245-nature-layer-believability-acceptance-gate) — _architecture_
## Open questions
@@ -396,6 +397,7 @@ line in place — keep the Q-record for the audit trail rather than deleting it.
- [Q-120: Adopt a garment-token vocabulary with generic fallback parents (the D-235 pattern, applied to clothing)?](questions/content.md#q-120-adopt-a-garment-token-vocabulary-with-generic-fallback-parents-the-d-235-pattern-applied-to-clothing) — _content_
- [Q-121: Where does cultural dress canon live — TOML registers now, prose pages in Phase 6?](questions/content.md#q-121-where-does-cultural-dress-canon-live--toml-registers-now-prose-pages-in-phase-6) — _content_
- [Q-122: Third-party asset sourcing policy — when to use CC0/purchased bases vs Trellis generation, per asset class?](questions/content.md#q-122-third-party-asset-sourcing-policy--when-to-use-cc0purchased-bases-vs-trellis-generation-per-asset-class) — _content_
- [Q-123: Believability gate threshold calibration](questions/architecture.md#q-123-believability-gate-threshold-calibration) — _architecture_
## Resolved questions
+17 -1
View File
@@ -1854,4 +1854,20 @@ Technical foundation decisions that constrain implementation: engine, client-ser
---
*101 decisions (D-001 through D-244, excluding gaps). Last updated: 2026-06-17 (D-244 — asset rendering direction: 3D objects in-world (Trellis environment + Quaternius characters via CharacterVisualDescriptor); 2D limited to textures + flat artwork; repurposes the early-spike sprite pipeline as the 2D-artwork generator; builds on D-148/D-149 and reconciles the sprite-era decisions D-043/D-044/D-049/D-066 (all amended); re-scopes T-961/T-1049/T-1050).*
### D-245: Nature-layer believability acceptance gate
- **Date:** 2026-06-28
- **Decision:** The cascade's **nature layers** (terrain, hydrology, climate, vegetation, sub-biome — everything that produces the *natural* environment, as distinct from the built layers: settlements/roads/buildings) are **"done" only when the believability litmus passes at randomly-sampled locations across all habitable bodies and world seeds.** The deliverable of the nature half of the cascade is **"the world reads as a living, real place *anywhere*,"** not "the layers are implemented." This is the current **holy-grail objective** for the generation cascade's nature half (the counterpart to "walkable exteriors" for the built half, [D-166](scope.md#d-166)).
- **"Anywhere" = held-out random sampling.** The gate draws *seeded-random* locations across the full surface of *multiple* habitable bodies and *multiple* world seeds — never curated spots. A body passes only when (essentially) all **land** probes pass; water is a separate coherence check. This is what stops "looks alive in the demo, dead everywhere else."
- **The litmus is multi-scale and never-repeating** (the Netherlands principle): one **macro** identity (e.g. "delta") that is **locally non-stationary** — the sub-biome *distribution* drifts every km², and no two same-class km² are identical. Macro coherence and local non-repetition are both required.
- **Automated necessary-conditions** (the screen, per probe): **(1) Coherence** — water zones render wet; vegetation is *conditioned* on moisture/water-distance/slope/aspect (not random); drainage monotonic; no impossible combos. **(2) Non-stationarity** — same-class km² measurably differ; sub-biome mix drifts; no detectable tile-period repeat. **(3) Intra-class variety** — a patch shows ≥K distinct micro-features, never 100% one material. **(4) Relief/landmark** — relief variance above a floor where the macro terrain warrants it. **(5) Climate-appropriateness** — ecology matches the climate envelope; *structured-sparse* passes, *blank* fails.
- **Irreducible human gate** — the automated checks are *necessary, not sufficient*. Final sign-off is a person reading rendered layer-maps of random probes and answering the *narrate-the-natural-history* litmus. Locked by **process** (periodic sampled review + recorded sign-off), not by code.
- **Strictness ramp** — starts **budgeted + advisory** (≥X% of land probes pass + human sign-off) and ratchets to **strict** (every land probe; hard push-gate block) once the enforcer's first baselines calibrate the thresholds — so all of Phase 4 is not blocked on an uncalibrated metric.
- **Rationale:** "Implemented" is a false summit. The aliveness probe ([T-1083](../../.pql)) showed the nature layers can pass **every binding law** ([D-239](#d-239) §8) and still render a **dead, uniform world** (`Wetland 100%`, dry ocean, no gradient). The deliverable that actually matters is *believability*, and the only way to make a gestalt judgment lockable is a random-sample gate where automated necessary-conditions **screen** a human sufficiency **sign-off**. Naming this the acceptance gate turns "feels alive" from an aspiration into a measurable, regressable target.
- **Implementation:** Enforced by **T-1083** (the believability sampling protocol — automated screen + per-layer map export for the human gate; snapshots baselines and runs in the push gate so nature cannot silently rot). Becomes the **definition-of-done** for epic **T-1079** and the needle-movers under it (**T-1080** meso non-stationarity, **T-1081** relief, **T-1082** water-bodies, **T-1084** intra-class micro-mosaic). Seeded by the probe `server/src/bin/aliveness_probe.rs`. Concrete thresholds are **TBD** — calibrated from T-1083's first baselines (a calibration Q-record may follow).
- **Cross-reference:** [D-239](#d-239) (binding laws — *necessary but not sufficient*; this is the sufficiency gate **above** them), [D-227](#d-227) (derive-don't-store — the tier the non-stationary variation lives in), [D-243](#d-243) (the scale ladder the multi-scale litmus spans: macro region / meso district / micro chunk), [D-210](#d-210) (SubBiomeVariant — amended in spirit: sub-biome must be a *spatially-varying distribution*, not a single tag, [T-948](../../.pql)), [D-166](scope.md#d-166) (generation-before-player — this defines "done" for the nature half). Tickets: T-1079 (epic), T-1080/T-1081/T-1082/T-1084 (findings), T-1083 (enforcer).
- **Dissent:** None
---
*102 decisions (D-001 through D-245, excluding gaps). Last updated: 2026-06-28 (D-245 — nature-layer believability acceptance gate: the cascade's nature layers are "done" only when the believability litmus passes at randomly-sampled locations across all habitable bodies/seeds — multi-scale, never-repeating, coherence + non-stationarity + intra-class variety + relief + climate-appropriateness, automated screen under a human sign-off, budgeted→strict; enforced by T-1083, DoD for epic T-1079).*
+15 -1
View File
@@ -471,4 +471,18 @@ Technical foundation questions: engine, protocols, data structures, performance,
---
*64 questions (13 resolved, 1 partially resolved, 50 open). Last updated: 2026-06-12.*
### Q-123: Believability gate threshold calibration
- **Status:** Open — filed 2026-06-28 alongside [D-245](../decisions/architecture.md#d-245-nature-layer-believability-acceptance-gate) (the gate names the criteria; this fixes their numbers)
- **Question:** D-245 makes "the nature layers read alive *anywhere*" the acceptance gate, screened by five automated necessary-conditions, but leaves the thresholds **TBD** pending baselines from the T-1083 enforcer. Calibrate, from T-1083's first runs across several habitable bodies × seeds:
1. **Sampling power** — probes per body, number of bodies, number of seeds that constitute "anywhere" (enough that one lucky/unlucky draw is not decisive).
2. **Non-stationarity** — the similarity metric for "two same-class km² differ" (histogram distance / feature-vector cosine) and the *minimum* dissimilarity that counts as non-repeating; plus a tile-period autocorrelation ceiling (the Netherlands "no two km² alike" rule, made numeric).
3. **Intra-class variety** — minimum distinct micro-features per sampled patch (K), per terrain class (T-1084).
4. **Relief floor** — minimum relief variance, *conditioned on the macro terrain's expectation* (a plain's floor ≠ a montane floor) (T-1081).
5. **Coherence** — the vegetation ↔ (moisture / water-distance / slope / aspect) correlation floor; the water-zone-renders-wet check (T-1082); the allowed "impossible combo" set (should be empty).
6. **Climate-appropriateness** — how "*structured-sparse* passes / *blank* fails" is measured on cold/arid bodies, so a frozen world is not failed for being legitimately sparse.
7. **Pass budget + ratchet** — the % of land probes that must pass to ship (budgeted), and the trigger to ratchet advisory → strict (hard push-gate block).
- **Cross-reference:** [D-245](../decisions/architecture.md#d-245-nature-layer-believability-acceptance-gate) (the gate this calibrates), [D-239](../decisions/architecture.md#d-239) §8/§10 (laws + budget), [D-227](../decisions/architecture.md#d-227), [D-243](../decisions/architecture.md#d-243); tickets T-1083 (enforcer — produces the baselines), T-1079 (epic), T-1080/T-1081/T-1082/T-1084.
---
*65 questions (13 resolved, 1 partially resolved, 51 open). Last updated: 2026-06-28 (Q-123 — believability gate threshold calibration, alongside D-245).*