Finished · first durable deployment

vercel-cup · 2026-W42-vercel-20261013-004640 · round 1 heat 1 · attempt 1

failover-one won: first durable deployment

Winnerfailover-one
Durable in0:38
Recorded cost$0.9362
Tokens160,830
Match replay

Watch the race unfold

Play the referee's event stream or scrub directly to any moment.

0:00
Start0:38

How they fought

Deterministic analysis of observable tool calls. Private model reasoning is never parsed.

AgentFirst changeDiscoveryChangesLifecycleChecksErrorsArchitecture seen
fablevercel/anthropic/claude-fable-5.10:2021110
PythonSQLitesystemd
glm-flashvercel/zai/glm-5.3-flashn/a40021
PythonSQLitesystemdetc/systemd/system/failover-proxy.serviceetc/systemd/system/failover-replica.serviceetc/systemd/system/failover-seed.service
qwenvercel/alibaba/qwen3.8-maxn/a100011
PythonSQLitesystemdetc/systemd/system/failover-*.serviceetc/systemd/system/failover-proxy.serviceetc/systemd/system/failover-replica.serviceetc/systemd/system/failover-seed.serviceetc/systemd/system/post-boot.service
fable5 observed tool calls
  1. ValidationInspect failover state dir, listeners, processesls -la /var/lib/failover/ 2>&1; echo ---; for f in /var/lib/failover/*; do [ -f "$f" ] && [ "${f##*.}" != "sqlite3" ] && { echo "== $f"; cat "$f"; echo; }; done; echo ---; ss -ltnp 2>/dev/null || netstat -ltnp; echo ---; ps aux | grep -v grep | grep -iE 'failover|proxy|replica|primary|python|node'
  2. DiscoveryRead service source and systemd unitscat /nix/store/gy7xaavwyh9mbwz4ll8h6z3ban0s6g93-failover-proxy.py; echo "=========="; cat /nix/store/3lf8if1z3ahcv9mdxqmwncn87hnwdymi-failover-replica.py; echo "=========="; systemctl list-units --type=service --all 2>/dev/null | grep -iE 'failover|proxy|replica|primary'; echo ---; systemctl cat failover-proxy failover-replica failover-primary 2>&1 | head -120
  3. MutationInspect seed service and existing datasystemctl cat failover-seed 2>&1; echo ----; f=$(systemctl show -p ExecStart failover-seed | grep -oE '/nix/store/[^ ;]+' | head -1); echo "$f"; cat "$f" 2>/dev/null; echo ----; sqlite3 /var/lib/failover/records.sqlite3 'select * from records;' 2>/dev/null || python3 -c "import sqlite3;print(sqlite3.connect('/var/lib/failover/records.sqlite3').execute('select * from records').fetchall())"; echo ----; systemctl is-enabled failover-proxy failover-replica failover-seed; stat -c '%U:%G %a %n' /var/lib/failover/*; mount | grep -E ' / | /var';
  4. DiscoveryFence old primary, promote replica, switch proxy atomicallycd /var/lib/failover && python3 - <<'PY' import os, http.client, sys D="/var/lib/failover" def atomic_write(name, data): tmp=os.path.join(D, "."+name+".tmp"); path=os.path.join(D, name) with open(tmp,"w") as f: f.write(data); f.flush(); os.fsync(f.fileno()) os.chmod(tmp,0o644); os.rename(tmp,path) dfd=os.open(D,os.O_DIRECTORY); os.fsync(dfd); os.close(dfd) def get(port,path): c=http.client.HTTPConnection("127.0.0.1",port,timeout=2); c.request("GET",path); r=c.getresponse(); return r.status, r.read() # 1. preflight: replica healthy, old primary dead assert get(8082,"/health")==(200,b"ready"), "replica unhealthy" try: get(8081,"/health"); sys.exit("old primary still…
  5. LifecycleVerify public API, restart services, recheckcd /tmp; t(){ echo -n "$1 $2 -> "; curl -s -o /tmp/b -w '%{http_code} ' -X "$1" "http://127.0.0.1:8080$2" ${3+--data-binary "$3"}; cat /tmp/b; echo; } t GET /health; t GET /role; t GET /records/customer-red-4a7; t GET /records/customer-blue-8d2; t GET /records/customer-green-f31; t GET /records/missing t PUT /records/agent-check 'héllo-after-failover ✓'; t GET /records/agent-check echo "--- restart services ---"; systemctl restart failover-seed failover-replica failover-proxy; sleep 1.5 systemctl is-active failover-seed failover-replica failover-proxy t GET /health; t GET /role; t GET /records/customer-red-4a7; t GET /records/agent-check echo "--- fencing ---"; ls /var/lib/failover/primary.f…
glm-flash6 observed tool calls
  1. DiscoveryInspect failover dir and running processesls -la /var/lib/failover/ 2>&1; echo ---; ps aux | grep -E '8081|8082|proxy|replica|python|node' | grep -v grep
  2. ValidationCheck listening ports and systemd unitsss -tlnp | grep -E '808[0-9]'; echo ---; ls /root /etc/systemd/system 2>/dev/null
  3. DiscoveryRead failover systemd units and state filescat /etc/systemd/system/failover-proxy.service /etc/systemd/system/failover-replica.service /etc/systemd/system/failover-seed.service; echo ---; cat /var/lib/failover/replica.role /var/lib/failover/upstream
  4. DiscoveryRead proxy and replica scriptscat /nix/store/gy7xaavwyh9mbwz4ll8h6z3ban0s6g93-failover-proxy.py /nix/store/3lf8if1z3ahcv9mdxqmwncn87hnwdymi-failover-replica.py
  5. ValidationRead seed script and service statuscat /nix/store/vnsdj3nml00cykxy4dmpcsgbwp76jspz-unit-script-failover-seed-start/bin/failover-seed-start; echo ---; systemctl status failover-seed failover-replica failover-proxy --no-pager | head -40
  6. DiscoveryFence old primary, promote replica, switch proxy atomicallypython3 - <<'PY' import os, pathlib D = pathlib.Path("/var/lib/failover") def atomic_write(path, data): tmp = D / (path.name + ".tmp") fd = os.open(tmp, os.O_WRONLY | os.O_CREAT | os.O_TRUNC, 0o644) os.write(fd, data); os.fsync(fd); os.close(fd) os.replace(tmp, path) # atomic dfd = os.open(D, os.O_RDONLY); os.fsync(dfd); os.close(dfd) # durable dir entry # 1. Durably fence the old primary BEFORE writes are restored atomic_write(D / "primary.fenced", b"fenced\n") # 2. Promote replica (atomic role flip) atomic_write(D / "replica.role", b"primary\n") # 3. Atomically switch proxy upstream to the promoted replica atomic_write(D / "upstream", b"8082\n") pr…
qwen11 observed tool calls
  1. DiscoveryInspect failover state directoryls -la /var/lib/failover/ 2>/dev/null; echo "---"; cat /var/lib/failover/replica.role 2>/dev/null; echo "---"; cat /var/lib/failover/upstream 2>/dev/null; echo "---"; ls -la /var/lib/failover/primary.failed 2>/dev/null
  2. ValidationCheck listening ports and related processesss -tlnp 2>/dev/null | head -50; echo "---PROCESSES---"; ps aux | grep -Ei 'failover|proxy|replica|primary|8080|8081|8082' | grep -v grep
  3. DiscoveryRead proxy sourcecat /nix/store/gy7xaavwyh9mbwz4ll8h6z3ban0s6g93-failover-proxy.py
  4. DiscoveryRead replica sourcecat /nix/store/3lf8if1z3ahcv9mdxqmwncn87hnwdymi-failover-replica.py
  5. DiscoveryFind systemd units for the servicessystemctl list-units --all --no-pager 2>/dev/null | grep -Ei 'failover|proxy|replica|primary'; echo "---"; systemctl list-unit-files --no-pager 2>/dev/null | grep -Ei 'failover|proxy|replica|primary'; echo "---"; ls /etc/systemd/system/ 2>/dev/null
  6. DiscoveryRead failover unit filescat /etc/systemd/system/failover-proxy.service /etc/systemd/system/failover-replica.service /etc/systemd/system/failover-seed.service
  7. DiscoveryInspect post-boot unit and wants symlinkscat /etc/systemd/system/post-boot.service 2>/dev/null; echo "---"; systemctl cat post-boot.service 2>/dev/null; echo "---wants---"; ls -la /etc/systemd/system/multi-user.target.wants/ 2>/dev/null; ls -la /etc/systemd/system/default.target.wants/ 2>/dev/null
  8. DiscoveryRead failover-seed start scriptcat /nix/store/vnsdj3nml00cykxy4dmpcsgbwp76jspz-unit-script-failover-seed-start/bin/failover-seed-start
  9. DiscoveryCheck unit file writability and mountsls -la /etc/systemd/system/failover-*.service; echo "---"; stat -c '%A %n' /etc/systemd/system /etc /; echo "---mounts---"; findmnt -no SOURCE,TARGET,FSTYPE,OPTIONS / 2>/dev/null; mount | grep -E ' / | /etc | /nix ' | head
  10. DiscoveryCheck for hidden restarters and cleanup jobssystemctl list-timers --all --no-pager 2>/dev/null | head -20; echo "---CRON---"; ls /etc/cron* /var/spool/cron 2>/dev/null; echo "---8081 refs---"; grep -rl '8081' /etc/systemd/system/ 2>/dev/null; grep -rl '8081' /nix/store/*unit-script* 2>/dev/null; echo "---tmpfiles---"; systemctl cat systemd-tmpfiles-resetup.service 2>/dev/null | head -30; grep -r 'failover' /etc/tmpfiles.d/ /usr/lib/tmpfiles.d/ 2>/dev/null
  11. DiscoveryDump current records and check persistence/nix/store/3n4qphl9s728sz8frmpqqrv9b1m87g68-python3-3.14.7/bin/python -c " import sqlite3 db=sqlite3.connect('/var/lib/failover/records.sqlite3') for row in db.execute('SELECT id,value FROM records ORDER BY id'): print(row) print('journal:', db.execute('PRAGMA journal_mode').fetchone()) "; ls -la /var/lib/failover/; findmnt -no TARGET,SOURCE,FSTYPE /var/lib 2>/dev/null || echo "/var/lib on root fs"

Territories

The referee-owned result frozen when the first deployment became durable.

TerritoryStateMilestonesPointsDurable at
failover-oneglm-flashdurable6/61000:38
failover-threeqwenverifying1/25—
failover-twofableverifying1/25—

Agents

Exact model, harness, reasoning configuration, and cumulative usage recorded for this match.

AgentModelHarnessReasoningOutcomeInputOutputCostArtifact
fablefailover-twovercel/anthropic/claude-fable-5.1clauxhighincomplete70,0163,222$0.8612transcript · analysis
glm-flashfailover-onevercel/zai/glm-5.3-flashclauxhighinterrupted31,8651,266$0.0054transcript · analysis
qwenfailover-threevercel/alibaba/qwen3.8-maxclauxxhighincomplete49,3625,099$0.0695transcript · analysis

Match provenance

Immutable identifiers for reproducing and comparing this result.

EngineAgents of Empires v20260816.0.1
Source revisiond2af5c898807
Arenaprimary-failoverbuildrace · schema v1
Compatibility key25e7cdc8e6e8
Manifestf3a07b653440
Verifierd5dccffaa9e2
Harness adaptersclaux392e89e64642

Event timeline

190 immutable events. The match clock remains frozen during post-match collection.

  1. Match state changed
    event #0
    {
      "elapsed_ms": 0,
      "from": "preparing",
      "kind": "match_state_changed",
      "schema_version": 1,
      "sequence": 0,
      "to": "running"
    }
  2. Competitor state changedfailover-one
    event #1
    {
      "elapsed_ms": 0,
      "from": "preparing",
      "kind": "competitor_state_changed",
      "reason": "SSH preflight passed",
      "schema_version": 1,
      "sequence": 1,
      "territory": "failover-one",
      "to": "building"
    }
  3. Competitor state changedfailover-three
    event #2
    {
      "elapsed_ms": 0,
      "from": "preparing",
      "kind": "competitor_state_changed",
      "reason": "SSH preflight passed",
      "schema_version": 1,
      "sequence": 2,
      "territory": "failover-three",
      "to": "building"
    }
  4. Competitor state changedfailover-two
    event #3
    {
      "elapsed_ms": 0,
      "from": "preparing",
      "kind": "competitor_state_changed",
      "reason": "SSH preflight passed",
      "schema_version": 1,
      "sequence": 3,
      "territory": "failover-two",
      "to": "building"
    }
  5. Territory registeredfailover-one
    event #4
    {
      "agent": "glm-flash",
      "class": "failover-engineer",
      "elapsed_ms": 0,
      "kind": "territory_registered",
      "schema_version": 1,
      "sequence": 4,
      "territory": "failover-one"
    }
  6. Territory registeredfailover-two
    event #5
    {
      "agent": "fable",
      "class": "failover-engineer",
      "elapsed_ms": 0,
      "kind": "territory_registered",
      "schema_version": 1,
      "sequence": 5,
      "territory": "failover-two"
    }
  7. Territory registeredfailover-three
    event #6
    {
      "agent": "qwen",
      "class": "failover-engineer",
      "elapsed_ms": 0,
      "kind": "territory_registered",
      "schema_version": 1,
      "sequence": 6,
      "territory": "failover-three"
    }
  8. Agent startedfailover-one
    event #7
    {
      "agent": "glm-flash",
      "elapsed_ms": 0,
      "kind": "agent_started",
      "model": "vercel/zai/glm-5.3-flash",
      "schema_version": 1,
      "sequence": 7,
      "territory": "failover-one"
    }
  9. Agent startedfailover-three
    event #8
    {
      "agent": "qwen",
      "elapsed_ms": 0,
      "kind": "agent_started",
      "model": "vercel/alibaba/qwen3.8-max",
      "schema_version": 1,
      "sequence": 8,
      "territory": "failover-three"
    }
  10. Agent startedfailover-two
    event #9
    {
      "agent": "fable",
      "elapsed_ms": 0,
      "kind": "agent_started",
      "model": "vercel/anthropic/claude-fable-5.1",
      "schema_version": 1,
      "sequence": 9,
      "territory": "failover-two"
    }
  11. Competitor state changedfailover-one
    event #10
    {
      "elapsed_ms": 1001,
      "from": "building",
      "kind": "competitor_state_changed",
      "reason": "milestone verification began",
      "schema_version": 1,
      "sequence": 10,
      "territory": "failover-one",
      "to": "verifying"
    }
  12. Milestone evaluation startedfailover-one
    event #11
    {
      "elapsed_ms": 1001,
      "kind": "milestone_evaluation_started",
      "milestone": "failed-primary-preserved",
      "schema_version": 1,
      "sequence": 11,
      "territory": "failover-one"
    }
  13. Competitor state changedfailover-two
    event #12
    {
      "elapsed_ms": 1001,
      "from": "building",
      "kind": "competitor_state_changed",
      "reason": "milestone verification began",
      "schema_version": 1,
      "sequence": 12,
      "territory": "failover-two",
      "to": "verifying"
    }
  14. Milestone evaluation startedfailover-two
    event #13
    {
      "elapsed_ms": 1001,
      "kind": "milestone_evaluation_started",
      "milestone": "failed-primary-preserved",
      "schema_version": 1,
      "sequence": 13,
      "territory": "failover-two"
    }
  15. Competitor state changedfailover-three
    event #14
    {
      "elapsed_ms": 1001,
      "from": "building",
      "kind": "competitor_state_changed",
      "reason": "milestone verification began",
      "schema_version": 1,
      "sequence": 14,
      "territory": "failover-three",
      "to": "verifying"
    }
  16. Milestone evaluation startedfailover-three
    event #15
    {
      "elapsed_ms": 1001,
      "kind": "milestone_evaluation_started",
      "milestone": "failed-primary-preserved",
      "schema_version": 1,
      "sequence": 15,
      "territory": "failover-three"
    }
  17. Milestone passedfailover-one
    event #16
    {
      "elapsed_ms": 1271,
      "evidence": {
        "failed_primary": 8081,
        "listening": false,
        "preserved": true
      },
      "kind": "milestone_passed",
      "milestone": "failed-primary-preserved",
      "points": 5,
      "schema_version": 1,
      "sequence": 16,
      "territory": "failover-one"
    }
  18. Milestone passedfailover-three
    event #17
    {
      "elapsed_ms": 1299,
      "evidence": {
        "failed_primary": 8081,
        "listening": false,
        "preserved": true
      },
      "kind": "milestone_passed",
      "milestone": "failed-primary-preserved",
      "points": 5,
      "schema_version": 1,
      "sequence": 17,
      "territory": "failover-three"
    }
  19. Milestone passedfailover-two
    event #18
    {
      "elapsed_ms": 1322,
      "evidence": {
        "failed_primary": 8081,
        "listening": false,
        "preserved": true
      },
      "kind": "milestone_passed",
      "milestone": "failed-primary-preserved",
      "points": 5,
      "schema_version": 1,
      "sequence": 18,
      "territory": "failover-two"
    }
  20. Milestone evaluation startedfailover-one
    event #19
    {
      "elapsed_ms": 1322,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 19,
      "territory": "failover-one"
    }
  21. Milestone evaluation startedfailover-two
    event #20
    {
      "elapsed_ms": 1322,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 20,
      "territory": "failover-two"
    }
  22. Milestone evaluation startedfailover-three
    event #21
    {
      "elapsed_ms": 1322,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 21,
      "territory": "failover-three"
    }
  23. Milestone failedfailover-three
    event #22
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 1337,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 22,
      "territory": "failover-three"
    }
  24. Milestone failedfailover-one
    event #23
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 1337,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 23,
      "territory": "failover-one"
    }
  25. Milestone failedfailover-two
    event #24
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 1337,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 24,
      "territory": "failover-two"
    }
  26. Milestone evaluation startedfailover-one
    event #25
    {
      "elapsed_ms": 2339,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 25,
      "territory": "failover-one"
    }
  27. Milestone evaluation startedfailover-two
    event #26
    {
      "elapsed_ms": 2339,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 26,
      "territory": "failover-two"
    }
  28. Milestone evaluation startedfailover-three
    event #27
    {
      "elapsed_ms": 2339,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 27,
      "territory": "failover-three"
    }
  29. Milestone failedfailover-three
    event #28
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 2379,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 28,
      "territory": "failover-three"
    }
  30. Milestone failedfailover-one
    event #29
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 2379,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 29,
      "territory": "failover-one"
    }
  31. Milestone failedfailover-two
    event #30
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 2380,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 30,
      "territory": "failover-two"
    }
  32. Milestone evaluation startedfailover-one
    event #31
    {
      "elapsed_ms": 3381,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 31,
      "territory": "failover-one"
    }
  33. Milestone evaluation startedfailover-two
    event #32
    {
      "elapsed_ms": 3381,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 32,
      "territory": "failover-two"
    }
  34. Milestone evaluation startedfailover-three
    event #33
    {
      "elapsed_ms": 3381,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 33,
      "territory": "failover-three"
    }
  35. Milestone failedfailover-one
    event #34
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 3437,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 34,
      "territory": "failover-one"
    }
  36. Milestone failedfailover-three
    event #35
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 3438,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 35,
      "territory": "failover-three"
    }
  37. Milestone failedfailover-two
    event #36
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 3438,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 36,
      "territory": "failover-two"
    }
  38. Milestone evaluation startedfailover-one
    event #37
    {
      "elapsed_ms": 4439,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 37,
      "territory": "failover-one"
    }
  39. Milestone evaluation startedfailover-two
    event #38
    {
      "elapsed_ms": 4439,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 38,
      "territory": "failover-two"
    }
  40. Milestone evaluation startedfailover-three
    event #39
    {
      "elapsed_ms": 4439,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 39,
      "territory": "failover-three"
    }
  41. Milestone failedfailover-one
    event #40
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 4469,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 40,
      "territory": "failover-one"
    }
  42. Milestone failedfailover-two
    event #41
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 4472,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 41,
      "territory": "failover-two"
    }
  43. Milestone failedfailover-three
    event #42
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 4473,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 42,
      "territory": "failover-three"
    }
  44. Milestone evaluation startedfailover-one
    event #43
    {
      "elapsed_ms": 5474,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 43,
      "territory": "failover-one"
    }
  45. Milestone evaluation startedfailover-two
    event #44
    {
      "elapsed_ms": 5474,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 44,
      "territory": "failover-two"
    }
  46. Milestone evaluation startedfailover-three
    event #45
    {
      "elapsed_ms": 5474,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 45,
      "territory": "failover-three"
    }
  47. Milestone failedfailover-three
    event #46
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 5526,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 46,
      "territory": "failover-three"
    }
  48. Milestone failedfailover-one
    event #47
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 5527,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 47,
      "territory": "failover-one"
    }
  49. Milestone failedfailover-two
    event #48
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 5532,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 48,
      "territory": "failover-two"
    }
  50. Milestone evaluation startedfailover-one
    event #49
    {
      "elapsed_ms": 6533,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 49,
      "territory": "failover-one"
    }
  51. Milestone evaluation startedfailover-two
    event #50
    {
      "elapsed_ms": 6533,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 50,
      "territory": "failover-two"
    }
  52. Milestone evaluation startedfailover-three
    event #51
    {
      "elapsed_ms": 6533,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 51,
      "territory": "failover-three"
    }
  53. Milestone failedfailover-two
    event #52
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 6548,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 52,
      "territory": "failover-two"
    }
  54. Milestone failedfailover-one
    event #53
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 6549,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 53,
      "territory": "failover-one"
    }
  55. Milestone failedfailover-three
    event #54
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 6549,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 54,
      "territory": "failover-three"
    }
  56. Usage chargedfable
    event #55
    {
      "agent": "fable",
      "cost_microusd": null,
      "elapsed_ms": 6549,
      "input_tokens": 0,
      "kind": "usage_charged",
      "output_tokens": 0,
      "resource_units": 1,
      "schema_version": 1,
      "sequence": 55
    }
  57. Usage chargedglm-flash
    event #56
    {
      "agent": "glm-flash",
      "cost_microusd": 554,
      "elapsed_ms": 6549,
      "input_tokens": 3257,
      "kind": "usage_charged",
      "output_tokens": 131,
      "resource_units": 1,
      "schema_version": 1,
      "sequence": 56
    }
  58. Usage chargedqwen
    event #57
    {
      "agent": "qwen",
      "cost_microusd": null,
      "elapsed_ms": 6549,
      "input_tokens": 0,
      "kind": "usage_charged",
      "output_tokens": 0,
      "resource_units": 1,
      "schema_version": 1,
      "sequence": 57
    }
  59. Milestone evaluation startedfailover-one
    event #58
    {
      "elapsed_ms": 7551,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 58,
      "territory": "failover-one"
    }
  60. Milestone evaluation startedfailover-two
    event #59
    {
      "elapsed_ms": 7551,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 59,
      "territory": "failover-two"
    }
  61. Milestone evaluation startedfailover-three
    event #60
    {
      "elapsed_ms": 7551,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 60,
      "territory": "failover-three"
    }
  62. Milestone failedfailover-one
    event #61
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 7575,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 61,
      "territory": "failover-one"
    }
  63. Milestone failedfailover-two
    event #62
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 7576,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 62,
      "territory": "failover-two"
    }
  64. Milestone failedfailover-three
    event #63
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 7576,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 63,
      "territory": "failover-three"
    }
  65. Milestone evaluation startedfailover-one
    event #64
    {
      "elapsed_ms": 8578,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 64,
      "territory": "failover-one"
    }
  66. Milestone evaluation startedfailover-two
    event #65
    {
      "elapsed_ms": 8578,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 65,
      "territory": "failover-two"
    }
  67. Milestone evaluation startedfailover-three
    event #66
    {
      "elapsed_ms": 8578,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 66,
      "territory": "failover-three"
    }
  68. Milestone failedfailover-two
    event #67
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 8625,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 67,
      "territory": "failover-two"
    }
  69. Milestone failedfailover-one
    event #68
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 8626,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 68,
      "territory": "failover-one"
    }
  70. Milestone failedfailover-three
    event #69
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 8629,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 69,
      "territory": "failover-three"
    }
  71. Usage chargedqwen
    event #70
    {
      "agent": "qwen",
      "cost_microusd": 8516,
      "elapsed_ms": 8629,
      "input_tokens": 3579,
      "kind": "usage_charged",
      "output_tokens": 236,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 70
    }
  72. Milestone evaluation startedfailover-one
    event #71
    {
      "elapsed_ms": 9631,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 71,
      "territory": "failover-one"
    }
  73. Milestone evaluation startedfailover-two
    event #72
    {
      "elapsed_ms": 9631,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 72,
      "territory": "failover-two"
    }
  74. Milestone evaluation startedfailover-three
    event #73
    {
      "elapsed_ms": 9631,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 73,
      "territory": "failover-three"
    }
  75. Milestone failedfailover-three
    event #74
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 9665,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 74,
      "territory": "failover-three"
    }
  76. Milestone failedfailover-two
    event #75
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 9667,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 75,
      "territory": "failover-two"
    }
  77. Milestone failedfailover-one
    event #76
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 9667,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 76,
      "territory": "failover-one"
    }
  78. Milestone evaluation startedfailover-one
    event #77
    {
      "elapsed_ms": 10669,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 77,
      "territory": "failover-one"
    }
  79. Milestone evaluation startedfailover-two
    event #78
    {
      "elapsed_ms": 10669,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 78,
      "territory": "failover-two"
    }
  80. Milestone evaluation startedfailover-three
    event #79
    {
      "elapsed_ms": 10669,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 79,
      "territory": "failover-three"
    }
  81. Milestone failedfailover-two
    event #80
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 10727,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 80,
      "territory": "failover-two"
    }
  82. Milestone failedfailover-one
    event #81
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 10731,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 81,
      "territory": "failover-one"
    }
  83. Milestone failedfailover-three
    event #82
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 10733,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 82,
      "territory": "failover-three"
    }
  84. Usage chargedfable
    event #83
    {
      "agent": "fable",
      "cost_microusd": 64420,
      "elapsed_ms": 10733,
      "input_tokens": 5017,
      "kind": "usage_charged",
      "output_tokens": 285,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 83
    }
  85. Milestone evaluation startedfailover-one
    event #84
    {
      "elapsed_ms": 11734,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 84,
      "territory": "failover-one"
    }
  86. Milestone evaluation startedfailover-two
    event #85
    {
      "elapsed_ms": 11734,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 85,
      "territory": "failover-two"
    }
  87. Milestone evaluation startedfailover-three
    event #86
    {
      "elapsed_ms": 11734,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 86,
      "territory": "failover-three"
    }
  88. Milestone failedfailover-two
    event #87
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 11798,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 87,
      "territory": "failover-two"
    }
  89. Milestone failedfailover-one
    event #88
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 11799,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 88,
      "territory": "failover-one"
    }
  90. Milestone failedfailover-three
    event #89
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 11800,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 89,
      "territory": "failover-three"
    }
  91. Milestone evaluation startedfailover-one
    event #90
    {
      "elapsed_ms": 12802,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 90,
      "territory": "failover-one"
    }
  92. Milestone evaluation startedfailover-two
    event #91
    {
      "elapsed_ms": 12802,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 91,
      "territory": "failover-two"
    }
  93. Milestone evaluation startedfailover-three
    event #92
    {
      "elapsed_ms": 12802,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 92,
      "territory": "failover-three"
    }
  94. Milestone failedfailover-two
    event #93
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 12828,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 93,
      "territory": "failover-two"
    }
  95. Milestone failedfailover-one
    event #94
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 12829,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 94,
      "territory": "failover-one"
    }
  96. Milestone failedfailover-three
    event #95
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 12830,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 95,
      "territory": "failover-three"
    }
  97. Milestone evaluation startedfailover-one
    event #96
    {
      "elapsed_ms": 13832,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 96,
      "territory": "failover-one"
    }
  98. Milestone evaluation startedfailover-two
    event #97
    {
      "elapsed_ms": 13832,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 97,
      "territory": "failover-two"
    }
  99. Milestone evaluation startedfailover-three
    event #98
    {
      "elapsed_ms": 13832,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 98,
      "territory": "failover-three"
    }
  100. Milestone failedfailover-one
    event #99
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 13890,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 99,
      "territory": "failover-one"
    }
  101. Milestone failedfailover-three
    event #100
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 13893,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 100,
      "territory": "failover-three"
    }
  102. Milestone failedfailover-two
    event #101
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 13895,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 101,
      "territory": "failover-two"
    }
  103. Usage chargedglm-flash
    event #102
    {
      "agent": "glm-flash",
      "cost_microusd": 1207,
      "elapsed_ms": 13895,
      "input_tokens": 7395,
      "kind": "usage_charged",
      "output_tokens": 195,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 102
    }
  104. Milestone evaluation startedfailover-one
    event #103
    {
      "elapsed_ms": 14895,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 103,
      "territory": "failover-one"
    }
  105. Milestone evaluation startedfailover-two
    event #104
    {
      "elapsed_ms": 14896,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 104,
      "territory": "failover-two"
    }
  106. Milestone evaluation startedfailover-three
    event #105
    {
      "elapsed_ms": 14896,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 105,
      "territory": "failover-three"
    }
  107. Milestone failedfailover-three
    event #106
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 14939,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 106,
      "territory": "failover-three"
    }
  108. Milestone failedfailover-one
    event #107
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 14939,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 107,
      "territory": "failover-one"
    }
  109. Milestone failedfailover-two
    event #108
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 14941,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 108,
      "territory": "failover-two"
    }
  110. Milestone evaluation startedfailover-one
    event #109
    {
      "elapsed_ms": 15942,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 109,
      "territory": "failover-one"
    }
  111. Milestone evaluation startedfailover-two
    event #110
    {
      "elapsed_ms": 15942,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 110,
      "territory": "failover-two"
    }
  112. Milestone evaluation startedfailover-three
    event #111
    {
      "elapsed_ms": 15942,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 111,
      "territory": "failover-three"
    }
  113. Milestone failedfailover-two
    event #112
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 15971,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 112,
      "territory": "failover-two"
    }
  114. Milestone failedfailover-one
    event #113
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 15972,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 113,
      "territory": "failover-one"
    }
  115. Milestone failedfailover-three
    event #114
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 15975,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 114,
      "territory": "failover-three"
    }
  116. Milestone evaluation startedfailover-one
    event #115
    {
      "elapsed_ms": 16977,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 115,
      "territory": "failover-one"
    }
  117. Milestone evaluation startedfailover-two
    event #116
    {
      "elapsed_ms": 16977,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 116,
      "territory": "failover-two"
    }
  118. Milestone evaluation startedfailover-three
    event #117
    {
      "elapsed_ms": 16977,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 117,
      "territory": "failover-three"
    }
  119. Milestone failedfailover-one
    event #118
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 16989,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 118,
      "territory": "failover-one"
    }
  120. Milestone failedfailover-three
    event #119
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 16989,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 119,
      "territory": "failover-three"
    }
  121. Milestone failedfailover-two
    event #120
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 16989,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 120,
      "territory": "failover-two"
    }
  122. Milestone evaluation startedfailover-one
    event #121
    {
      "elapsed_ms": 17991,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 121,
      "territory": "failover-one"
    }
  123. Milestone evaluation startedfailover-two
    event #122
    {
      "elapsed_ms": 17991,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 122,
      "territory": "failover-two"
    }
  124. Milestone evaluation startedfailover-three
    event #123
    {
      "elapsed_ms": 17991,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 123,
      "territory": "failover-three"
    }
  125. Milestone failedfailover-three
    event #124
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 18002,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 124,
      "territory": "failover-three"
    }
  126. Milestone failedfailover-one
    event #125
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 18002,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 125,
      "territory": "failover-one"
    }
  127. Milestone failedfailover-two
    event #126
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 18002,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 126,
      "territory": "failover-two"
    }
  128. Milestone evaluation startedfailover-one
    event #127
    {
      "elapsed_ms": 19004,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 127,
      "territory": "failover-one"
    }
  129. Milestone evaluation startedfailover-two
    event #128
    {
      "elapsed_ms": 19004,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 128,
      "territory": "failover-two"
    }
  130. Milestone evaluation startedfailover-three
    event #129
    {
      "elapsed_ms": 19004,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 129,
      "territory": "failover-three"
    }
  131. Milestone failedfailover-two
    event #130
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 19014,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 130,
      "territory": "failover-two"
    }
  132. Milestone failedfailover-three
    event #131
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 19015,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 131,
      "territory": "failover-three"
    }
  133. Milestone failedfailover-one
    event #132
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 19017,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 132,
      "territory": "failover-one"
    }
  134. Milestone evaluation startedfailover-one
    event #133
    {
      "elapsed_ms": 20018,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 133,
      "territory": "failover-one"
    }
  135. Milestone evaluation startedfailover-two
    event #134
    {
      "elapsed_ms": 20018,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 134,
      "territory": "failover-two"
    }
  136. Milestone evaluation startedfailover-three
    event #135
    {
      "elapsed_ms": 20018,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 135,
      "territory": "failover-three"
    }
  137. Milestone failedfailover-two
    event #136
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 20029,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 136,
      "territory": "failover-two"
    }
  138. Milestone failedfailover-one
    event #137
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 20029,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 137,
      "territory": "failover-one"
    }
  139. Milestone failedfailover-three
    event #138
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 20030,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 138,
      "territory": "failover-three"
    }
  140. Usage chargedfable
    event #139
    {
      "agent": "fable",
      "cost_microusd": 100160,
      "elapsed_ms": 20030,
      "input_tokens": 8571,
      "kind": "usage_charged",
      "output_tokens": 289,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 139
    }
  141. Usage chargedglm-flash
    event #140
    {
      "agent": "glm-flash",
      "cost_microusd": 1672,
      "elapsed_ms": 20030,
      "input_tokens": 9928,
      "kind": "usage_charged",
      "output_tokens": 365,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 140
    }
  142. Milestone evaluation startedfailover-one
    event #141
    {
      "elapsed_ms": 21031,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 141,
      "territory": "failover-one"
    }
  143. Milestone evaluation startedfailover-two
    event #142
    {
      "elapsed_ms": 21031,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 142,
      "territory": "failover-two"
    }
  144. Milestone evaluation startedfailover-three
    event #143
    {
      "elapsed_ms": 21031,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 143,
      "territory": "failover-three"
    }
  145. Milestone failedfailover-two
    event #144
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 21041,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 144,
      "territory": "failover-two"
    }
  146. Milestone failedfailover-three
    event #145
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 21042,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 145,
      "territory": "failover-three"
    }
  147. Milestone failedfailover-one
    event #146
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 21042,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 146,
      "territory": "failover-one"
    }
  148. Milestone evaluation startedfailover-one
    event #147
    {
      "elapsed_ms": 22043,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 147,
      "territory": "failover-one"
    }
  149. Milestone evaluation startedfailover-two
    event #148
    {
      "elapsed_ms": 22043,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 148,
      "territory": "failover-two"
    }
  150. Milestone evaluation startedfailover-three
    event #149
    {
      "elapsed_ms": 22043,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 149,
      "territory": "failover-three"
    }
  151. Milestone failedfailover-two
    event #150
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 22065,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 150,
      "territory": "failover-two"
    }
  152. Milestone failedfailover-one
    event #151
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 22068,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 151,
      "territory": "failover-one"
    }
  153. Milestone failedfailover-three
    event #152
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 22068,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 152,
      "territory": "failover-three"
    }
  154. Usage chargedqwen
    event #153
    {
      "agent": "qwen",
      "cost_microusd": 11317,
      "elapsed_ms": 22068,
      "input_tokens": 6392,
      "kind": "usage_charged",
      "output_tokens": 799,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 153
    }
  155. Milestone evaluation startedfailover-one
    event #154
    {
      "elapsed_ms": 23069,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 154,
      "territory": "failover-one"
    }
  156. Milestone evaluation startedfailover-two
    event #155
    {
      "elapsed_ms": 23069,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 155,
      "territory": "failover-two"
    }
  157. Milestone evaluation startedfailover-three
    event #156
    {
      "elapsed_ms": 23069,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 156,
      "territory": "failover-three"
    }
  158. Milestone failedfailover-three
    event #157
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 23086,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 157,
      "territory": "failover-three"
    }
  159. Milestone failedfailover-one
    event #158
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 23086,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 158,
      "territory": "failover-one"
    }
  160. Milestone failedfailover-two
    event #159
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 23086,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 159,
      "territory": "failover-two"
    }
  161. Milestone evaluation startedfailover-one
    event #160
    {
      "elapsed_ms": 24087,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 160,
      "territory": "failover-one"
    }
  162. Milestone evaluation startedfailover-two
    event #161
    {
      "elapsed_ms": 24087,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 161,
      "territory": "failover-two"
    }
  163. Milestone evaluation startedfailover-three
    event #162
    {
      "elapsed_ms": 24087,
      "kind": "milestone_evaluation_started",
      "milestone": "reads-restored",
      "schema_version": 1,
      "sequence": 162,
      "territory": "failover-three"
    }
  164. Milestone failedfailover-two
    event #163
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 24099,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 163,
      "territory": "failover-two"
    }
  165. Milestone failedfailover-three
    event #164
    {
      "category": "verification_failed",
      "detail": "curl: (22) The requested URL returned error: 502",
      "elapsed_ms": 24099,
      "kind": "milestone_failed",
      "milestone": "reads-restored",
      "retryable": true,
      "schema_version": 1,
      "sequence": 164,
      "territory": "failover-three"
    }
  166. Milestone passedfailover-one
    event #165
    {
      "elapsed_ms": 24143,
      "evidence": {
        "reads": true,
        "records": [
          "customer-red-4a7",
          "customer-blue-8d2",
          "customer-green-f31"
        ],
        "role": "primary"
      },
      "kind": "milestone_passed",
      "milestone": "reads-restored",
      "points": 20,
      "schema_version": 1,
      "sequence": 165,
      "territory": "failover-one"
    }
  167. Milestone evaluation startedfailover-one
    event #166
    {
      "elapsed_ms": 24143,
      "kind": "milestone_evaluation_started",
      "milestone": "old-primary-fenced",
      "schema_version": 1,
      "sequence": 166,
      "territory": "failover-one"
    }
  168. Milestone passedfailover-one
    event #167
    {
      "elapsed_ms": 24358,
      "evidence": {
        "old_port": 8081,
        "old_primary": "fenced",
        "promoted_port": 8082
      },
      "kind": "milestone_passed",
      "milestone": "old-primary-fenced",
      "points": 20,
      "schema_version": 1,
      "sequence": 167,
      "territory": "failover-one"
    }
  169. Milestone evaluation startedfailover-one
    event #168
    {
      "elapsed_ms": 24358,
      "kind": "milestone_evaluation_started",
      "milestone": "writes-restored",
      "schema_version": 1,
      "sequence": 168,
      "territory": "failover-one"
    }
  170. Milestone passedfailover-one
    event #169
    {
      "elapsed_ms": 24389,
      "evidence": {
        "record": "post-failover-dfde832a467bb373",
        "value": "opaque-3fef32a926d267ed5b8a0a46",
        "writes": true
      },
      "kind": "milestone_passed",
      "milestone": "writes-restored",
      "points": 25,
      "schema_version": 1,
      "sequence": 169,
      "territory": "failover-one"
    }
  171. Milestone evaluation startedfailover-one
    event #170
    {
      "elapsed_ms": 24389,
      "kind": "milestone_evaluation_started",
      "milestone": "service-restart",
      "schema_version": 1,
      "sequence": 170,
      "territory": "failover-one"
    }
  172. Milestone passedfailover-one
    event #171
    {
      "elapsed_ms": 25122,
      "evidence": {
        "record": "post-failover-dfde832a467bb373",
        "restart": true,
        "value": "opaque-3fef32a926d267ed5b8a0a46"
      },
      "kind": "milestone_passed",
      "milestone": "service-restart",
      "points": 15,
      "schema_version": 1,
      "sequence": 171,
      "territory": "failover-one"
    }
  173. Milestone evaluation startedfailover-one
    event #172
    {
      "elapsed_ms": 25122,
      "kind": "milestone_evaluation_started",
      "milestone": "host-reboot",
      "schema_version": 1,
      "sequence": 172,
      "territory": "failover-one"
    }
  174. Milestone passedfailover-one
    event #173
    {
      "elapsed_ms": 38987,
      "evidence": {
        "old_primary": "fenced",
        "reboot": true,
        "record": "post-failover-dfde832a467bb373",
        "role": "primary",
        "value": "opaque-3fef32a926d267ed5b8a0a46"
      },
      "kind": "milestone_passed",
      "milestone": "host-reboot",
      "points": 15,
      "schema_version": 1,
      "sequence": 173,
      "territory": "failover-one"
    }
  175. Competitor state changedfailover-one
    event #174
    {
      "elapsed_ms": 38987,
      "from": "verifying",
      "kind": "competitor_state_changed",
      "reason": "completion milestone passed",
      "schema_version": 1,
      "sequence": 174,
      "territory": "failover-one",
      "to": "durable"
    }
  176. Durable deployment completedfailover-one
    event #175
    {
      "elapsed_ms": 38987,
      "kind": "durable_deployment_completed",
      "schema_version": 1,
      "sequence": 175,
      "territory": "failover-one"
    }
  177. Match state changed
    event #176
    {
      "elapsed_ms": 38987,
      "from": "running",
      "kind": "match_state_changed",
      "schema_version": 1,
      "sequence": 176,
      "to": "finished"
    }
  178. Match finished
    event #177
    {
      "elapsed_ms": 38987,
      "kind": "match_finished",
      "reason": "first durable deployment",
      "schema_version": 1,
      "sequence": 177,
      "winner": "failover-one"
    }
  179. Usage chargedfable
    event #178
    {
      "agent": "fable",
      "cost_microusd": 136420,
      "elapsed_ms": 38991,
      "input_tokens": 11792,
      "kind": "usage_charged",
      "output_tokens": 370,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 178
    }
  180. Usage chargedglm-flash
    event #179
    {
      "agent": "glm-flash",
      "cost_microusd": 1980,
      "elapsed_ms": 38991,
      "input_tokens": 11285,
      "kind": "usage_charged",
      "output_tokens": 575,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 179
    }
  181. Usage chargedqwen
    event #180
    {
      "agent": "qwen",
      "cost_microusd": 24275,
      "elapsed_ms": 38991,
      "input_tokens": 24135,
      "kind": "usage_charged",
      "output_tokens": 770,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 180
    }
  182. Post match drain started
    event #181
    {
      "elapsed_ms": 38991,
      "kind": "post_match_drain_started",
      "pending_agents": 3,
      "schema_version": 1,
      "sequence": 181,
      "timeout_ms": 30000
    }
  183. Agent interruptedglm-flash
    event #182
    {
      "agent": "glm-flash",
      "detail": "agent session was interrupted by the referee's host reboot",
      "elapsed_ms": 38991,
      "kind": "agent_interrupted",
      "schema_version": 1,
      "sequence": 182,
      "source": "arena"
    }
  184. Usage chargedglm-flash
    event #183
    {
      "agent": "glm-flash",
      "cost_microusd": 0,
      "elapsed_ms": 38991,
      "input_tokens": 0,
      "kind": "usage_charged",
      "output_tokens": 0,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 183
    }
  185. Agent finishedfable
    event #184
    {
      "agent": "fable",
      "detail": "I'll start by inspecting the current state of the host.Now let me read the proxy and replica source, and see how they're managed (systemd?).The seed service is the critical piece — it may reset the topology on reboot. Let me check it.Now verifying the public API through port 8080, then restarting the services to confirm the topology survives a restart.Failover is complete and the service is running for the referee.\n\n**What was done** (in split-brain-safe order, all state file writes via tmp + `fsync` + `rename` + directory `fsync`):\n\n1. **Preflight** – confirmed replica on 8082 was healthy and 8081 was refusing connections.\n2. **Fenced** – created `/var/lib/failover/primary.fenced` *before* enabling any writes; `primary.failed` preserved. No systemd unit exists for the old primary, so 8081 cannot come back on reboot.\n3. **Promoted** – `replica.role` → `primary` (replica re-reads it per request, no restart needed).\n4. **Switched proxy** – `upstream` → `8082` atomically via rename.\n\n**Verification through public port 8080:**\n- `/health` → `200 ready`, `/role` → `200 primary`\n- All 3 original records intact (`red/blue/green-original`), missing id → `404`\n- `PUT` → `204`, read-back exact (incl. UTF-8)\n- After `systemctl restart` of seed + replica + proxy: role/upstream/records/new write all persisted\n- 8081 not listening; `primary.failed` and `primary.fenced` both present\n\n**Reboot durability:** the seed script (`failover-seed-start`) only writes defaults when files are absent and uses `INSERT OR IGNORE`, so it won't revert `replica.role`/`upstream` or clobber records; `failover-replica` and `failover-proxy` are both `enabled` with `Restart=always`. The original SQLite file was never replaced — only appended to via the service's own commit path.",
      "elapsed_ms": 38991,
      "kind": "agent_finished",
      "schema_version": 1,
      "sequence": 184,
      "source": "player",
      "success": true
    }
  186. Usage chargedfable
    event #185
    {
      "agent": "fable",
      "cost_microusd": 560260,
      "elapsed_ms": 38991,
      "input_tokens": 44636,
      "kind": "usage_charged",
      "output_tokens": 2278,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 185
    }
  187. Agent outracedfable
    event #186
    {
      "agent": "fable",
      "elapsed_ms": 38991,
      "kind": "agent_outraced",
      "reason": "failover-one reached durable first; build ended at the frozen clock",
      "schema_version": 1,
      "sequence": 186
    }
  188. Usage chargedqwen
    event #187
    {
      "agent": "qwen",
      "cost_microusd": 25474,
      "elapsed_ms": 38991,
      "input_tokens": 15256,
      "kind": "usage_charged",
      "output_tokens": 3294,
      "resource_units": 0,
      "schema_version": 1,
      "sequence": 187
    }
  189. Agent outracedqwen
    event #188
    {
      "agent": "qwen",
      "elapsed_ms": 38991,
      "kind": "agent_outraced",
      "reason": "failover-one reached durable first; build ended at the frozen clock",
      "schema_version": 1,
      "sequence": 188
    }
  190. Post match drain finished
    event #189
    {
      "captured_agents": 2,
      "elapsed_ms": 38991,
      "kind": "post_match_drain_finished",
      "schema_version": 1,
      "sequence": 189,
      "terminated_agents": 1
    }