# Execution contract User approved implementation and default decisions on 2026-09-25. Standalone prototype here; no git initialization or existing SDK integration. Public/synthetic data only. Local runs estimated <=24h are authorized, including overnight; ask before longer runs or additional spend. Colab fallback uses the primary Google account already signed into Chrome and existing credits only. Deliver trained weights, native Rust inference, calibrated experimental scores, held-out evaluation and reproducible commands, or concrete unresolved blockers. No quality target or production threshold. Corrective-round fuse: three. ## Shared implementation schema Label order: first_name, last_name, email, phone_number, street_address, customer_id, account_number. BIO IDs: O=0, then B/I pairs in that order (1..14). Dataset JSONL: {id: string, text: string, spans: [{label,start,end}], ...}. Dataset spans are half-open Python Unicode character offsets. Output findings use half-open UTF-8 byte offsets: {label,start,end,raw_score,confidence}. Confidence may be null until calibration. Result: {findings,contains_pii,redacted}. Tokenizer offsets come from original input. Tokenize the complete input without truncation, then manually slice content windows with global offsets and CLS/SEP; model max length is verified from pinned config. Overlap must be derived from measured entity token lengths before finalizing. No truncation. Raw span score = minimum predicted-class softmax probability over its tokens. Malformed I starts a new span when preceding label differs or is absent. Special/padding tokens are ignored. Windows are decoded independently; duplicate same-label/same-boundary findings keep maximum raw score. Before greedy overlap resolution, suppress an artificial-window-edge candidate only if another same-label candidate strictly contains it. This preserves observed complete spans against higher-scoring clipped fragments. Other overlaps resolve greedily by descending raw score, then start, end, label; results sort by offset. Redaction replaces each accepted span with [REDACTED]; adjacent spans remain separate. contains_pii is bool(findings). Inference errors propagate. Calibration: pooled monotonic map targeting exact typed-span correctness, fit only on calibration-fit; experimental threshold maximizes exact-span F1 on calibration-select, ties favor recall. No production default implied. Ownership: lead owns training/export/shared Python inference and final handoff; data agent owns preparation/splits; evaluation agent owns evaluation/calibration; Rust agent owns native runtime/tokenization/decoder. Coordinate interface changes. Existing DataFog regex comparison requires authoritative existing implementation; do not invent a regex baseline and label it existing DataFog behavior.