Skip to content

Tracking: FAO input-integrity epic — execution checklist #58

Description

@Polichinel

Epic: #51 · branch: sprint/fao-input-integrity

Execution checklist for the FAO input-integrity sprint, corrected to the post-/falsify design (representation-agnostic invariants in delivery/, pandas isolated to unfao/extraction.py, guards called-not-inherited). Cross off in order.

Order of execution

Dependency graph

#61 S0 ──► #53 S1 ──► #55 S4
       ├─► #52 S2  (also blocked on pipeline-core companion)
       ├─► #54 S3
       └─► #56 S5
{#53,#52,#54,#55,#56} ──► #57 S6

Design contract (enforced)

tests/test_input_integrity_design_contract.py (xfail-strict) encodes the three tightenings: ① two homes (delivery/ vs unfao/extraction.py), ② primitives-not-Protocol, ③ called-not-inherited (manager LSP/SDP/SAP deferred to C-40). Each stub flips RED when its piece is built correctly, forcing the marker off.

Cross-repo dependencies

  • pipeline-core companion (from S2 — surface last_valid_month_id).
  • views-models#127 (REGION → land_gaul) + views-datafactory land_gaul region (register D-10) — gate S4's live run.

Related / superseded / deferred

Done when

Epic #51's acceptance criteria hold: invariants in a pandas-free delivery/, pandas isolated to unfao/extraction.py, guards called-not-inherited, all five checks enforced, package hygiene done, design-contract stubs real, suite green — the pipeline is ready for the land_gaul global switch with no silent-bad-data paths.

Activity

  1. Polichinel commented on Jun 26, 2026

    @Polichinel
    CollaboratorAuthor

    Delivered and merged to development via #64 (input-integrity sprint S0–S6). ruff clean, 126 passed / 44 xfailed. Closing — the auto-close keyword did not fire because #64 merged into development, not the default branch. Live-run validation of the residual contracts (C-25 identity name/loa, C-43 enrichment equivalence) is tracked in the risk register and exercised by the go-global run (views-models#127).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions