# STACKED_INTENT_DECOMPOSITION -- Verb-by-Verb Decomposition Rules

**Owner:** Claim-Typing Engine (S5). **Library:** Private RAM (S5 only).

Rules for decomposing stacked-intent questions into N separate claims -- one per distinct claim type. The core principle: **every intent verb terminates in exactly one claim; no verb is silently dropped; no two types are blended into one claim.**

---

## Procedure

### Step 1 -- Verb Inventory Completeness Check

Before decomposition, verify Phase 1's verb inventory lists every intent-bearing verb in the question. Intent verbs include:
- Descriptive: "what is", "describe", "how prevalent", "map", "characterize".
- Causal: "why does", "what causes", "what explains", "does X affect Y".
- Predictive: "will", "predict", "forecast", "project".
- Normative: "should", "ought", "is it ethical", "what policy".
- Interpretive: "what does it mean", "how do they understand", "how is it framed".

Auxiliary verbs (is, has, does) are NOT intent verbs unless paired with an anchor phrase (e.g., "is it ethical" = normative).

### Step 2 -- Per-Verb Type Assignment (from CLAIM_TYPE_TYPOLOGY)

Each verb gets exactly one type. Use typology anchor questions. Record citation.

### Step 3 -- Decomposition Decision Tree

```
Are all verbs mapped to the SAME type?
  -> YES: emit ONE claim of that type; preserve all verbs in claim_text.
  -> NO:  emit N claims, one per distinct type present in the verb inventory.

For each claim of type T:
  -> Include ONLY verbs mapped to T.
  -> Preserve the noun phrases that scope those verbs.
  -> Write claim_text_as_decomposed in natural language (not a bullet list).
  -> Record source_verbs (the list of originating verbs).
```

### Step 4 -- Verb-Account Audit (MANDATORY)

After decomposition, verify:
- Count of verbs across all `claims[].source_verbs` == count in `verb_inventory`.
- Every verb from `verb_inventory` appears in exactly one claim's `source_verbs`.
- No claim contains verbs mapped to two different types.

If any check fails, LOOP BACK to Step 2 and re-assign. Silent drops are the #1 keystone failure mode (Librarian reproduced this).

## Worked Decompositions

### Example A -- Stacked 2-verb question
Question: "Why do remote workers report higher engagement, and will this trend continue?"
Verb inventory: {"why do", "will"}.
Assignments: "why do" -> causal; "will" -> predictive.
Decomposition:
- claim-1 (causal): "What causes higher engagement among remote workers?"
- claim-2 (predictive): "Will the higher-engagement trend among remote workers continue?"

### Example B -- Stacked 3-verb question
Question: "What is the current state of adolescent mental health, what causes the decline, and what should schools do?"
Verb inventory: {"what is", "what causes", "what should"}.
Assignments: descriptive, causal, normative.
Decomposition: three claims, each carrying one verb and the scoping noun phrase "adolescent mental health" (+ "schools" for the normative claim).

### Example C -- Same-type fold
Question: "What is the prevalence of X, and how many cases are reported annually?"
Verb inventory: {"what is", "how many"}. Both -> descriptive.
Decomposition: ONE claim, descriptive, both verbs preserved in claim_text.

## Anti-Patterns (forbidden)

- **Majority-type default.** If 3 verbs are causal and 1 is normative, emit 2 claims (causal + normative), NOT 1 causal claim that "absorbs" the normative.
- **Blending into a fake type.** "Causal-predictive" is not a type. Decompose.
- **Silently dropping a verb** because it "doesn't matter". Every verb gets a claim.
- **Auto-pruning when count > 5.** If decomposition yields more than 5 claims, HALT and ask the user to scope. Do NOT prune.

## Ambiguous Verb Disambiguation

Some verbs straddle types:
- "explains" -> causal by default; interpretive if paired with "how participants explain" (meaning-making, not cause-finding).
- "shows" -> descriptive by default; interpretive if paired with "what X shows us about meaning".
- "determines" -> causal by default; UNTYPABLE if the object is a normative question ("what determines the right policy").

When ambiguous, default to the HARDER-to-satisfy type (conservative bias).
