chore(rig): Task 22 verified — verify-delmia-notifier step H passes on the rig (Flow Debugger live run + replay)
Rig recreated from the branch-built image through the main checkout's compose file
(deploy.sh refuses a worktree, register row 68). Fresh key delmia-flowdbg-0906 scoped to
DelmiaRecipeDownload. Full drill: A/B/E/F YES, C/G NO, takeover 29 s, rejoin 3 s, then
H live+replay -> YES
live: 11 events (InboundRequest, RouteCall, ScriptRun, 7x AttributeWrite, AttributeWait)
replay: 17 events on the first attempt — the six extra rows are the simulator's two
cascaded ValueChange runs (2x ScriptRun + 4x AttributeWrite): inline TraceEvents
carry the routed run's own steps, replay walks the whole execution tree.
Recorded as row H in Delmia-Recipe-Download-API.md §8; ledger marks Task 22 completed
(all 24 tasks done). Note: the rig still runs main's appsettings, so the ScriptTrace
30-day retention override lands only after merge + a deploy from main.
Claude-Session: https://claude.ai/code/session_01GSLkkHKz9JrAtmJjmQK3cP
This commit is contained in:
@@ -231,7 +231,7 @@ Galaxy. Seeded by CLI only, no DB edits:
|
||||
Whole-path latency through Traefik: a `curl` call returns in under 100 ms (simulator fires on the same
|
||||
node, no device round-trip).
|
||||
|
||||
### Verified outcomes (second run, 2026-09-02 16:51 UTC)
|
||||
### Verified outcomes (second run, 2026-09-02 16:51 UTC; row H from the third run, 2026-09-06 04:48 UTC — A–G re-passed, takeover 29 s, rejoin 3 s)
|
||||
|
||||
| Case | Setup | Result | Audit row (`ApiInbound`) |
|
||||
|------|-------|--------|--------------------------|
|
||||
@@ -242,6 +242,7 @@ node, no device round-trip).
|
||||
| E | survivor `/health/active` = 200 — takeover measured **27 s** after the kill | `YES` (`:9001` refused → `:9002` 200) | `InboundRequest` on `central-b` |
|
||||
| F | victim restarted, `memberCount=2`, victim `/health/active` = 503 (rejoined as standby) | `YES` (victim relays) | `InboundRequest` on `central-b` |
|
||||
| G | `DownloadPath` = `C:\recipes\x.bad` | `NO` + `Simulated reject: bad path or missing work order` | `InboundRequest` on `central-b`, `Result=false` |
|
||||
| H | Flow Debugger (2026-09-06 third run, branch `feat/flow-debugger`): `flow-debug run-method` on `DelmiaRecipeDownload`, then `flow-debug replay` on the returned root id | `YES` — live run `completed`, **11** events inline (`InboundRequest`, `RouteCall`, `ScriptRun`, 7 × `AttributeWrite`, `AttributeWait`); replay rebuilt the same root with **17** events on the first attempt (no telemetry lag hit) | `ApiInbound`/`InboundRequest` (actor = operator) + `ScriptTrace` rows; the six extra replay rows are the simulator's two cascaded `ValueChange` runs (rising + clearing edge of `RecipeDownloadFlag`, 2 × `ScriptRun` + 4 × `AttributeWrite`) — inline `TraceEvents` carry only the routed run's own steps, replay walks the whole execution tree |
|
||||
|
||||
The notifier's first-line contract, exit codes (`0` / `-1`), and the reason line on `NO` behaved as the
|
||||
README states throughout.
|
||||
|
||||
Reference in New Issue
Block a user