# Stage 90: Scenario Oracle & Twin Gate (aq90_verify_scenario_oracle_and_benign_twin / DB-UNIT-12)

Evaluates candidate solutions against ScenarioSpec v2.0 invariants and paired benign twins in 0 model calls, checking SWHID preservation, zero local host paths, clean reopen exit codes, and zero false-positive escalation.

- Atomic micro-queue: `aq90_verify_scenario_oracle_and_benign_twin` (visibility: `public_commons`)
- Backing database unit: `DB-UNIT-12` (`Context Interrogation, Persona Matrix & Problem-Situation Core`)
- Database cell: `entities-db.teleon.dev` (`teleon_core.acquired_observations`, `teleon_core.interrogation_personas_and_rubrics`, `teleon_core.problem_situations`)
- Claim row hydration: `single_self_contained_flat_task_row` (100% context inline, normalized writeback)
- Track 2 Sister queue (`SISTER-12`): `sq12-improve-interrogation-queue.teleon.dev` (Add sharper interrogation questions, expand domain personas, and prioritize high-leverage problem scenarios.)
- Lanes: 0-Call Oracle Predicates, False-Positive Twin Check, Clean-Container Reopen

## Execution engines & AI Agent freedom contract

- **Deterministic (0 model calls)**: `interrogation_template_and_gap_compiler_v1` (0-call invariant predicate checker, local-path scanner & benign-twin specificity verifier)
- **Hybrid (<=1 model call)**: `persona_scenario_problemizer_hybrid_v1`
- **AI Agent & Bot Fleet (1..6 calls)**: `bot_fleet_persona_interrogator_v1` (Counterexample shrinker & clean-environment portability diagnostician)
  - Contract: **Instructions + Resources + Freedom to search for new resources and new ways not bound by instructions**

## Database invariants

- Partial problem situations remain valid when opportunity, context, and parent observation digests are recorded.
- Every bot-generated interrogation row records exact bot_harness, bot_version, and llm_model metadata.

## External & internal bot fleet actions

- Verify untouched SWHID preservation, clean container exit code 0, and zero renderer frame model calls on creative projects
- Confirm defensive and security triggers stay silent on paired benign counterfactual twins
- Feed failing oracle invariants into aq48 jagged-frontier repair and aq06 1-up challenges

## Sister self-tuning areas

- Add domain personas and who/what/where/when/why question sets (DIM-02, DIM-04)
- Tune urgency weights across humanitarian SDG, competition ML, math, and science labels (DIM-01)
- Compile recurring structured-observation anomaly checks into deterministic code_blocks (DIM-03, DIM-06)
