Demo

Deterministic Replay Demo

A realistic replay of run_847 through the execution ledger.

Deterministic Replay Demo

This demo shows the operator experience for:

thymos replay run_847

The run has already completed. Replay does not call the provider and does not execute tools. It verifies ledger structure, replays policy-visible decisions, folds committed deltas, and reproduces the final world projection.

Scenario

Run run_847 inspected a repository, patched one file, ran tests, hit a policy approval boundary, resumed after approval, and committed the final state.

The ledger contains:

Command

$ thymos replay run_847 --verify --fold-world --policy-trace

Terminal Output

OpenThymos replay
run:              run_847
trajectory:       traj_b4e2f9187a6c0e11
ledger:           /var/lib/thymos/thymos-ledger.db
mode:             verify + fold-world + policy-trace

[00] load
     entries: 8
     first:   seq=0 kind=root id=8f42b0a1
     head:    seq=7 kind=commit id=6ad19c3e

[01] integrity
     hash chain:        ok
     parent chain:      ok
     sequence:          ok
     canonical payload: ok

[02] policy-visible entries
     seq=1 proposal=prop_5d1c tool=repo_map
       decision: committed proposal id recorded
     seq=2 proposal=prop_91aa tool=fs_read
       decision: committed proposal id recorded
     seq=3 proposal=prop_7b30 tool=fs_patch
       rules: writ.authority, tenant.isolation, threshold.approval
       decision: require_approval(channel=maintainer, reason="write_set = 14 exceeds threshold 8")
     seq=4 rejection intent=intent_c012
       reason: policy_denied("attempted external publish without writ scope")
     seq=6 proposal=prop_7b30 tool=fs_patch
       approval: granted(channel=maintainer)
       decision: permit_after_approval
     seq=7 proposal=prop_00f4 tool=test_run
       decision: committed proposal id recorded

[03] fold
     commit seq=1 tool=repo_map  delta_ops=1  world_hash=0e2b347d
     commit seq=2 tool=fs_read   delta_ops=1  world_hash=29ac7712
     commit seq=5 tool=fs_patch  delta_ops=3  world_hash=c99407aa
     commit seq=7 tool=test_run  delta_ops=1  world_hash=91fd22cb

[04] report
     entries seen:        8
     commits replayed:   4
     policy outcomes:      5
     approvals replayed:  1
     rejected proposals:  1
     head sequence:       7
     head commit:         commit_6ad19c3e
     compiler versions:   thymos-compiler/0.1.0
     final world hash:    91fd22cb4fd8332ef728c912c50e1f8e

result: replay verified

Replay Log

{
  "run_id": "run_847",
  "trajectory_id": "traj_b4e2f9187a6c0e11",
  "verification": {
    "hash_chain": "ok",
    "parent_chain": "ok",
    "sequence": "ok",
    "compiler_version": "ok"
  },
  "fold": [
    {
      "seq": 1,
      "tool": "repo_map",
      "commit": "commit_10a99f",
      "delta_ops": 1,
      "world_hash": "0e2b347d"
    },
    {
      "seq": 2,
      "tool": "fs_read",
      "commit": "commit_30df91",
      "delta_ops": 1,
      "world_hash": "29ac7712"
    },
    {
      "seq": 5,
      "tool": "fs_patch",
      "commit": "commit_893e0b",
      "delta_ops": 3,
      "world_hash": "c99407aa"
    },
    {
      "seq": 7,
      "tool": "test_run",
      "commit": "commit_6ad19c3e",
      "delta_ops": 1,
      "world_hash": "91fd22cb"
    }
  ],
  "report": {
    "entries_seen": 8,
    "commits_replayed": 4,
    "head_seq": 7,
    "head_commit": "commit_6ad19c3e",
    "final_world_hash": "91fd22cb4fd8332ef728c912c50e1f8e"
  }
}

Architecture Notes

Replay uses the same ledger semantics as runtime projection:

ledger entries -> integrity verifier -> commit filter -> delta fold -> world

The replay engine proves:

Failure Example

Compiler pinning can detect version drift:

$ thymos replay run_847 --verify --require-compiler thymos-compiler/9.9.9
[03] fold
     error: compiler version drift at commit commit_10a99f
     pinned: thymos-compiler/9.9.9
     found:  thymos-compiler/0.1.0

result: replay rejected

This is the expected behavior. A replay system should fail loudly when a historical trajectory cannot be verified under the requested runtime rules.