An evidence-first ML release agent for OpenAI Build Week 2026 (Developer Tools), built with Codex and GPT-5.6. It reads a model's DataHub lineage, blocks incomplete releases, and produces a cryptographic SHA-256 digest over a canonical evidence snapshot plus the resulting gap IDs before writing decision provenance back to DataHub. The same public artifact was also prepared for the DataHub Agent Hackathon; this page makes the current OpenAI Build Week identity and evidence path explicit.
engine/release-audit.mjs is a deterministic release rule engine. scripts/datahub_roundtrip.py uses the official DataHub SDK to upsert a synthetic ML graph, read its lineage, compute the same SHA-256 digest over the canonical evidence snapshot plus decision gaps, and persist the decision as ML model custom properties. Missing or invalid freshness evidence fails closed as REPAIR; the committed fixture is covered by cross-engine consistency and digest-binding tests. No production credentials are stored in this repository.
The screenshot is the current public evidence console: four DataHub URNs lead to the intentional REPAIR / LR-DC2240 result, three named evidence gaps, and the matching SHA-256 receipt. It is a product readback, not a mock marketing graphic.
npm install
npm run dev
npm testThe browser UI runs with Node.js 20.19+ (or 22.12+); the round-trip adapter requires Python
3.11+ and the pinned SDK in requirements.txt. From a clean checkout:
python -m venv .venv
# macOS/Linux: source .venv/bin/activate
# Windows PowerShell: .venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -r requirements.txtStart a DataHub Quickstart instance, then initialize the CLI token outside this
repository (datahub init --username datahub --password datahub) and run:
python scripts/datahub_roundtrip.py --write-decisionThe command prints JSON containing the DataHub input/output URNs, model training run, deployment job, deterministic receipt, and the write-back property. The fixture is synthetic and contains no personal or production data.
The supported judge path is a local DataHub Quickstart on a modern desktop browser with Docker available. No account credentials are needed for the synthetic fixture; the CLI token is stored in the user's local DataHub config, never in this repository.
Licensed under Apache-2.0.
LineageReceipt is a developer tool built during the July 2026 OpenAI Build Week
submission period with Codex and GPT-5.6. Codex drove the
implementation loop, browser readback, and regression checks; GPT-5.6 was used
for product framing, rule design, and adversarial review of the evidence
boundary. The key design decision was to keep REPAIR visible when owner,
freshness, or rollback evidence is missing instead of manufacturing an
approval.
For judges, the fastest path is:
- Open the live demo at https://016lineage-receipt.vercel.app.
- Read the four URNs, the three explicit gaps, and the
REPAIR / LR-DC2240SHA-256 receipt. TheREPAIRstate is intentional: the tool refuses to approve missing owner, stale freshness, or absent rollback evidence. - Run
npm testandnpm run buildlocally. - Run
python scripts/datahub_roundtrip.py --write-decisionagainst a local DataHub Quickstart to reproduce the lineage read and decision write-back; the command fails if the persisted verdict, receipt ID, or SHA-256 digest does not match the computed receipt.
The Python safety/fixture tests can be run independently with
python scripts/test_datahub_roundtrip.py after the pinned SDK install.
The fixture is synthetic and non-sensitive. The public repository is licensed under Apache-2.0.
