# VEB Canonical-135 **Enriched** — Sales-Negotiation Corpus + Behavioral Layer

Everything in **veb-canonical-135**, plus a joined **enrichment layer** on every
graded trajectory: deterministic behavioral features *and* LLM-judged,
evidence-cited `aiFeatures`. This is the full, self-contained research /
post-training corpus — trajectory + judge grade + reward + enrichment in one
JSONL line per datapoint.

- **3,510 datapoints** — enrichment coverage **3,510 / 3,510 (100%)**
- **Grid:** 13 models × 9 scenarios × 15 seeds × 2 tracks (`oob`, `pack`) = **135 rollouts / model / track**
- **Enrichment layer:** 44 deterministic behavioral features + 17 LLM-judged
  `aiFeatures` (each with `value`, `confidence`, and turn-indexed `citations`)
- **Join key:** `(scenario_id, model, track, seed)` — verified exact, 0 misses

## Files

| File | Purpose |
|------|---------|
| `veb-canonical-135-enriched.jsonl` | The dataset (578M, 3,510 lines) |
| `veb-canonical-135-enriched.jsonl.gz` | Compressed copy (139M) |
| `*.sha256` | SHA-256 checksums |
| `manifest.json` | Provenance, schema, feature lists, per-model/track counts |

### Verify then unpack

```bash
shasum -a 256 -c veb-canonical-135-enriched.jsonl.gz.sha256   # expect: OK
gunzip -k veb-canonical-135-enriched.jsonl.gz
wc -l veb-canonical-135-enriched.jsonl                        # expect: 3,510
```

## Row schema

Identical to `veb-canonical-135` (see its README for `env`, `model`, `reward`,
`cost`, `episode`, `grade`, …), plus one top-level object:

```jsonc
"enrichment": {
  "schemaVersion": "enriched-1",
  "featureCount": 44,
  "sourceCounts": { "deterministic": 44, "ai": 17, "hybrid": 0 },
  "features":   { /* 44 deterministic behavioral features */ },
  "aiFeatures": { /* 17 LLM-judged features, each: { value, confidence, citations[] } */ }
}
```

### The `aiFeatures` layer

Scored by a **3-seat cross-family ensemble** (`gpt-5.6-sol` +
`gemini-3.5-flash` + `claude-sonnet-4-6`), calibrated against a frontier
reference panel on the 139 canonical rows: **Pearson r = 0.894**, MAD = 0.047,
categorical exact-match 89.9 / 90.6 / 98.6% (buyer posture / discovery-vs-pitch
/ value-defended). Every feature carries `value`, `confidence`, and turn-indexed
`citations` into the transcript — a **cite-or-zero** discipline (no evidence ⇒
no score).

Families: `psych__`, `emo__`, `rel__`, `content__`, `rhet__`, `ling__`,
`biz__`, `ethic__`, and `rl__` (RL-oriented: `counterfactual_lift`,
`pivotal_turn_index`, `public_private_divergence`, `hidden_negativity`).

## Quick start

```python
import json
with open("veb-canonical-135-enriched.jsonl") as f:
    for line in f:
        r = json.loads(line)
        sqs   = r["grade"]["saleQualityScore"]
        trust = r["enrichment"]["aiFeatures"]["psych__buyer_trust_read"]["value"]
        lift  = r["enrichment"]["aiFeatures"]["rl__counterfactual_lift"]["value"]
        # dense behavioral labels for reward-model training, probing, or SFT
```

## Provenance

- **Base:** `veb-canonical-135` (grid frozen 2026-08-20, 3,510/3,510).
- **Enrichment panel:** cheap 3-seat cross-family ensemble, calibrated r = 0.894.
- **Integrity:** checksums in `*.sha256`; enrichment join verified 3,510/3,510.

## License / usage

TBD by dataset owner. Contact the owner before redistribution.
