What problem does it solve? Data pipelines silently produce NULL fields, phantom wiring, and degenerate rows that no one detects until a lucky debugging session. This Skill turns "does it work?" into a mechanical answer by enforcing per-cycle data contracts that fail loudly with the exact broken link. ## Core Features & Use Cases - Per-cycle data contracts: Five contract types (ingest, model, signal enrichment, guard-to-order, shadow ledger) verify each pipeline stage populated what it promised, with explicit NULL-vs-zero semantics per field. - Fail-high guard script: scripts/invariant_guard.py runs contract checks against a SQLite database and exits 0 (all green), 1 (business RED), or 2 (schema/data error), never swallowing exceptions. - Contract template: templates/data-contracts.md guides writing acceptance queries before code, including boundary-twin tests and fresh-connection DB reads. - Use Case: A trading bot accumulates edge_elo values that are always NULL because the enrichment code was never written. Declare a not_null_ratio contract, run the guard each cycle via cron, and get a RED status naming the exact stage and field until the model populates it. ## Quick Start Ask the agent to audit your pipeline by declaring a JSON data contract for each stage and running the invariant guard script against your production database to report any RED links.