IntentGuard

E02 — BANKING77 data contract

Planning / historicalumbrelladelivery

Historical

Planning material. It summarizes and links to the authoritative specification and the current measured state — it does not replace either, and it is not current engineering truth.

Migration identity#

  • Canonical identifier: E02 (GitHub issue type: epic).
  • Legacy identifier: U02 (retained as old_identifier).
  • Parent umbrella: W01.
  • Milestone: M1 — IntentGuard Weekend MVP.

Objective#

Load one pinned PolyAI/banking77 revision, preserve canonical train/test splits, derive a validation split from training data reproducibly, validate 77 labels, and record provenance.

Rationale#

Stable data identity and split integrity are prerequisites for comparable baseline, transformer, calibration, and test claims.

Parent identifier#

Umbrella issue W01 in milestone M1 — IntentGuard Weekend MVP.

Source task#

T-002.

Traceability#

Primary: T-002, FR-001, AC-001.

Prerequisites#

U01 complete; immutable dataset revision verified; network access or a verified compatible cache.

Likely files#

configs/default.toml, src/intentguard/data.py, scripts/prepare_data.py, tests/contract/test_data_contract.py, tests/unit/test_data.py, data/ provenance outputs.

Implementation boundary#

BANKING77 only; no augmentation, external OOD corpus, relabeling, or synthetic replacement in strict mode.

MUST scope#

S02.1 loader and revision pin; S02.2 canonical splits, validation split, labels, and provenance; S02.3 command integration and contract tests.

Explicit non-goals#

Model training, tokenizer fitting, extra datasets, text normalization beyond the declared contract, or unsupported benchmark claims.

Acceptance criteria#

make data validates source revision, schema, exact label cardinality, unique label mapping, canonical test isolation, deterministic validation membership, counts, and written provenance.

Validation commands#

make data && uv run pytest tests/contract/test_data_contract.py tests/unit/test_data.py -q.

Expected evidence#

Dataset/revision identifiers, split counts and fingerprints, label map, seed, validation construction metadata, license reference, and passing contract tests.

Fallback and status consequence#

A verified cache preserves implementation. A synthetic dataset is Mocked/Partial, removes BANKING77 and benchmark claims, and fails strict MVP.

Stop condition#

Stop for unresolved revision, changed upstream schema, non-77 taxonomy, split overlap, test-label leakage, or unverified cache provenance.

Definition of ready#

U01 passes; revision-selection method is agreed; storage path and provenance schema are reviewed.

Definition of done#

S02.1–S02.3 pass and all data claims are Measured from the pinned dataset contract.

Labels#

type:epic, priority:MUST, area:data

Estimate#

2.0 hours.

Related in repository

Open in full graph →
DOCUMENTED_BY — source: docs/backlog/umbrellas/U02-banking77-data-contract.md § E02 — BANKING77 data contractREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.mdREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.mdREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.mdREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.mdREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.mdREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.mdREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.mdREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.mdREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.mdPART_OF — source: docs/backlog/TRACEABILITY.md § Source tasksPART_OF — source: docs/backlog/TRACEABILITY.md § Functional requirementsPART_OF — source: docs/backlog/TRACEABILITY.md § Acceptance criteriaREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.md § TraceabilityREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.md § TraceabilityREFERENCES — source: docs/backlog/umbrellas/U02-banking77-data-contract.md § TraceabilityRELATED_TO — source: docs/backlog/umbrellas/U02-banking77-data-contract.md § Migration identitySATISFIES — source: docs/specification/docs/TRACEABILITY.md § Functional traceabilityPART_OF — source: docs/backlog/TRACEABILITY.md § Acceptance criteriaREFERENCES — source: docs/backlog/tasks/C02.1-pin-banking77-loader.md § TraceabilityREFERENCES — source: docs/backlog/tasks/C02.2-canonical-splits-provenance.md § TraceabilityREFERENCES — source: docs/backlog/tasks/C02.3-data-command-contract-tests.md § TraceabilityPART_OF — source: docs/backlog/TRACEABILITY.md § Functional requirementsREFERENCES — source: docs/backlog/tasks/C02.1-pin-banking77-loader.md § TraceabilityREFERENCES — source: docs/backlog/tasks/C02.2-canonical-splits-provenance.md § TraceabilityREFERENCES — source: docs/backlog/tasks/C02.3-data-command-contract-tests.md § TraceabilityPART_OF — source: docs/backlog/TRACEABILITY.md § Source tasksREFERENCES — source: docs/backlog/tasks/C02.1-pin-banking77-loader.md § TraceabilityCURRENTdocument: E02 — BANKING77 data contractE02epic: E02AC-001 — Data contractacceptance-criterion: AC-001 — Data contractFR-001 — Dataset prepara…requirement: FR-001 — Dataset preparationS02.1task: S02.1S02.2task: S02.2S02.3task: S02.3T-002 — Pinned dataset p…task: T-002 — Pinned dataset provenance and validated splitsU01 — Project foundation…capability: U01 — Project foundation and reproducibilityU02 — BANKING77 data con…capability: U02 — BANKING77 data contract
Hover an edge for its provenance · click a node to open it10 nodes · 28 edges