AINA data engine room · handoff · 2026-06-11

Title Expansion Plus Runtime Semantic Replay

A checkpoint that harvests the landed `aina-core` title universe, resolver hardening, and affordance evidence into this repo, then adds semantic replay and labeled evidence fan-out for broader local serving.

The Single Idea

This checkpoint reconciled the paused `aina-core` closeout before continuing. The already-landed `title_expansion_v1`, resolver hardening, and `evidence_enrichment_v1` slices are now ported into `/srv/aina/aina-data-engine-room`, so this repo reaches the same 110,184 local servable-title universe and can attach promoted affordance-pack evidence to served packets. This continuation adds labeled evidence fan-out without treating broader matches as exact.

01 · What Changed

Harvested, Not Rebuilt

I checked `/srv/repos/aina-core` read-only and confirmed the title expansion work existed as code, tests, source prep reports, candidates, and a local checkpoint. This repo did not have that module or source directory, so the right move was to port the tested slice rather than create a second expansion mechanism.

From aina-core

Observed branch `ali/title-expansion-v1-2026-06-11`, checkpoint `08b66dd`, title expansion commit `472157a`, and evidence enrichment commit `8f031a1`.

Now in this repo

`title_expansion.py`, `test_title_expansion.py`, prepared source directories, and the `aina-data-engine title-expansion` command.

02 · Coverage Metrics

110,184 Local Servable Titles

The port produced the same expansion result locally in `aina-data-engine-room`. The warehouse at `artifacts/aina_data_engine.duckdb` moved from the pre-expansion baseline to the expanded title universe.

MetricValue
Candidates loaded55,528
New titles ingested35,959
WRTMJ new titles35,939
Gold-IP new titles20
Occupations before74,225
Occupations after110,184
Suitability rows after110,184
Wedge occupations after47,837
03 · Semantic Replay

Sidecar Decisions, No Runtime Mutation

The new semantic path reads the existing adjudication batch, creates three deterministic local reviewer votes per row, and emits consensus plus replay actions. It does not mutate source rows, runtime rows, external systems, or real-user data.

1. AdjudicationRead `runtime_semantic_adjudication_v1_batch_001.jsonl`.
2. VotesCreate three local reviewer votes per row.
3. ConsensusChoose an allowed decision and target function hint.
4. ReplaySplit rows into safe apply, source rerun, and hold lanes.
Replay laneCount
approve_existing_runtime_function48
revise_runtime_function5
attach_source_refs_and_rerun20
hold_for_context_or_source_mining27
safe sidecar applies total53
Semantic spot check: broad titles stay held; hospitality and retail roles keep their domain; source-mining rows now retain target-function hints such as legal/compliance for litigation and AML, technology for DBA, and healthcare for mental-health referral work.
04 · Evidence Packs

Promoted Affordances Reach Packets

The `evidence_enrichment_v1` slice is now wired locally. `RoleIntelligencePacket` has an optional `evidence_pack`, and `get_role_packet(...)` attaches high-confidence affordance evidence when a title or SOC match exists.

ProbeResult
`account executive`evidence pack present, 5 assist opportunities
`Xyzzy Unknown Nonexistent Role 99``no_bucket_evidence_pack` flag present
05 · Evidence Fan-out

More Titles Get Caveated Evidence

Evidence enrichment now keeps exact title matches as highest trust, preserves source-provided SOC matches as soc_fallback, and adds labeled soc_title_derived_fallback plus guarded soc_family_fallback paths. Packet quality flags expose non-title evidence fallbacks.

MetricCount
Total occupations110,184
Eligible non-excluded occupations95,251
Excluded occupations intentionally skipped14,933
Evidence-covered before fan-out4,075
Evidence-covered eligible after fan-out14,114
Eligible coverage rate14.82%
Exact title matches368
Source-provided SOC fallback3,008
Pack-title-derived SOC fallback10,345
SOC-family fallback393

Semantic spot-checks: seasonal sales associate now gets sales-associate evidence; customer support specialist gets customer-service evidence; support associate, warehouse manager, and software engineer stay un-enriched rather than receiving misleading packs.

06 · Serving Probe

Reality Check After Expansion

The `aina-core` resolver hardening and serving probe are now local. I ran a compact proof with bounded sample flags because the default sample is intentionally heavy over the expanded warehouse.

Probe laneResult
In-distribution exact/SOC agreement20/20
Perturbed variants40/40
Out-of-distribution cases34/34
Packet path5/5
Title-expansion exact round-trip20/20
Title-expansion perturbed10/10

Semantic spot-check: the compact probe initially passed while answering `I manage our warehouse and shipping` with the awkward grade-fragment title `warehouse i`. I tightened the resolver ranking so management descriptions now prefer role-shaped titles anchored to the first occupational domain; the same probe now answers `warehouse manager`, and a regression test protects that behavior.

07 · Validation

Checks Passed

Ruff passed across the touched source, tests, and scripts. The final full pytest suite passed with `218 passed in 110.03s`; focused evidence-enrichment tests now have 10 cases. The evidence fan-out probe passed with 14,114/95,251 eligible occupations covered and 14,933 excluded occupations skipped.

Codex · Resume and verify · rerun the local-only checkpoint
cd /srv/aina/aina-data-engine-room
.venv/bin/python -m pytest -q
.venv/bin/aina-data-engine --root /srv/aina/aina-data-engine-room title-expansion
.venv/bin/aina-data-engine --root /srv/aina/aina-data-engine-room runtime-semantic-batch-decisions --batch-id runtime-semantic-001
.venv/bin/aina-data-engine --root /srv/aina/aina-data-engine-room runtime-semantic-decision-replay
.venv/bin/python scripts/serving_probe.py --sample 20 --packet-sample 5 --expansion-sample 20 --expansion-perturb-sample 5
.venv/bin/python scripts/evidence_fanout_probe.py
Watch-out: do not rerun this as a new architecture. It is a replayable local checkpoint.
08 · Not Done

Boundaries That Still Matter

I did not lift or use `responsibility_registry_v2`; the `aina-core` handoff says it is still under a `DO_NOT_USE` quarantine marker. I did not promote the remaining unpromoted affordance packs yet, did not claim production readiness, and did not push or merge anything.

Where To Continue

The strongest next move is a multi-LLM promotion/mining pass for non-promoted packs, followed by larger serving and evidence fan-out probes. The quarantine decision for `responsibility_registry_v2` should stay explicit and founder-controlled.

Where to start

Start from title expansion, semantic replay, and evidence fan-out; then expand the promoted evidence corpus without touching quarantined responsibility data.