# Theta_q Calibration Defaults

**Owner:** frame-divergence-gate (E8). **Scope:** per-question-type theta_q lookup, conservative-default table, post-deployment calibration TODO. Divergence math in `DIVERGENCE_INDEX_CALCULUS.md`. Zero overlap.

## Load-bearing rule

**Theta_q is fixed per question type before the gate runs.** Supplied as input. If missing, the gate REFUSES (`refusal_reason = MISSING_THETA`). Never picked at runtime. Never lowered mid-decision to make a pair pass. Anti-sycophancy NEVER rule.

## Calibration status (first deployment)

**UNCALIBRATED.** No prior audit-outcome data for per-question-type theta_q. First deployment uses Table B conservative defaults, logs D values and gate outcomes, and feeds the calibration loop below.

**Ambiguity Register A1 -- TODO post-deployment calibration.**

## Table A -- Per-question-type calibrated theta_q (to be populated)

| `question_type` | `theta_q` | `threshold_source` | Calibration record |
|---|---|---|---|
| *(empty -- no calibrated records yet)* | *(none)* | *(none)* | *(none)* |

**Rule:** until a question type has a calibrated entry in Table A, look up Table B for its class of question.

## Table B -- Conservative defaults by question class

These defaults are intentionally **high** (conservative) to bias toward gate FAIL rather than false-PASS during the uncalibrated phase. Being too strict blocks an audit for a correction; being too loose admits ceremonial audits that defeat the whole plugin.

| Question class | Default `theta_q` | Rationale |
|---|---|---|
| Descriptive claims | 0.60 | Broad shared-concept surface typical; raise bar to catch near-collapse |
| Causal claims | 0.70 | Inference-rule divergence must be substantive |
| Predictive claims | 0.70 | Prior-distribution separation must be substantive |
| Normative claims | 0.75 | Ontological / value commitments most prone to silent alignment; highest bar |
| Interpretive claims | 0.65 | Semantic partition must be demonstrably different |
| Mixed / unclassified | 0.75 | Refuse to default low; force classification OR use highest conservative value |

All defaults are on the `D in [0, 1]` scale from `DIVERGENCE_INDEX_CALCULUS.md` (Jaccard or Jensen-Shannon-normalized KL).

## `threshold_source` recording

Every gate decision records `stage2_threshold_source` as:

- `calibrated_record_ref` with the Table A row id, OR
- `default_conservative` with the Table B row used.

This lets Phase 9 calibration distinguish gate outcomes driven by data-backed thresholds vs conservative defaults.

## Post-deployment calibration loop (TODO A1)

1. Collect `{question_id, question_type, D_value, theta_q_used, gate_outcome, downstream_catch_signal}` across the first deployment batch.
2. Per type, compute gate-pass-rate vs downstream catch-rate from E9 and Phase 9 adversarial outcomes.
3. If downstream catch-rate < 50%, raise theta_q toward the next conservative anchor.
4. If gate FAIL rate is inconsistent with expected pair distribution, examine shared-concept surface extraction before lowering theta_q.
5. Never adjust on a single data point. Require n >= 20 per type.
6. Promote calibrated values into Table A; subsequent decisions cite `calibrated_record_ref`.

## Anti-patterns

- Never pick theta_q at runtime. Refuse and escalate.
- Never lower theta_q for a single pair to make it pass.
- Never default below Table B. Below-default requires a Table A calibrated record.
- Never mix scales (Jaccard D with KL theta_q). Scale is `D in [0, 1]` throughout.
