| --- |
| title: TimelineDiff Differential Reproducibility |
| emoji: 🐠 |
| colorFrom: indigo |
| colorTo: pink |
| sdk: gradio |
| sdk_version: 6.2.0 |
| app_file: app.py |
| pinned: false |
| license: other |
| short_description: Diff agent timelines. Find first divergence. Export forensic |
| thumbnail: >- |
| https://cdn-uploads.huggingface.co/production/uploads/685edcb04796127b024b4805/cc2glLOtiZJWxbbDoELfT.jpeg |
| --- |
| TimelineDiff — Differential Reproducibility Protocol (DRP) |
|
|
| Production agents diverge: sampling variance, flaky tools, drifting data, timing/race effects. |
| Benchmarks tell you *whether* you failed. Logs tell you *what happened once*. |
| TimelineDiff tells you **why two runs diverged**. |
|
|
| ## What this Space does |
| - Upload **two DRP trace bundles (.zip)** |
| - Computes: |
| - **Timeline alignment** (same / diff / missing) |
| - **First divergence index** |
| - Divergence class (sampling / tool / memory / control-flow / governance / state) |
| - Per-event structured diffs (JSON) |
| - Exports: |
| - `report.md` (human-readable) |
| - `report.pdf` (stakeholder-ready) |
| - `diff.json` (machine-readable) |
| - `drp-diff-report.zip` (all of the above) |
|
|
| ## DRP bundle format (v0) |
| A bundle is a `.zip` containing: |
| - `manifest.json` |
| - `events.jsonl` |
|
|
| Each event is hash-chained: |
| - `prev` is the previous event hash |
| - `hash` is SHA-256 of canonical event JSON |
| This makes the timeline tamper-evident. |
|
|
| ## Optional ReplayProof deep-linking |
| If you include either of the following in `manifest.json`, TimelineDiff will generate per-event links: |
|
|
| ### Option A (recommended) |
| ```json |
| "replay": { |
| "base_url": "https://your-space-or-site", |
| "pattern": "/?run_id={run_id}&i={i}" |
| } |
| |
| ### Option B |
| "run_url": "https://your-viewer/run/demo-123" |
| Links will appear in the report and in the diff JSON. |
| |
| Suggested event kinds |
| • llm_sample |
| • tool_call |
| • tool_result |
| • memory_write |
| • plan_step |
| • guardrail |
| • state_snapshot |
| |
| Optional reward delta |
| |
| If your state_snapshot.payload includes: |
| • reward_total, or |
| • metrics.reward_total |
| |
| …TimelineDiff will compute final_reward_delta. |
| --- |
| |
| ## `drp/__init__.py` |
| |
| ```python |
| __all__ = [ |
| "canon", |
| "sha256_hex", |
| "now_utc_iso", |
| "load_bundle", |
| "verify_bundle", |
| "write_bundle_zip", |
| "diff_bundles", |
| "render_report_markdown", |
| "write_pdf_report", |
| "make_demo_bundle_zip", |
| "fork_patch_bundle", |
| ] |
| |
| Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference |