Real-estate "governed turn" · Kestra v1.3.16 (Hetzner 5.78.182.38) · execution 5FSkz6un0LFz9vFsa1hmFH · 2026-06-24
This is the BREAKER compiler's output executing on a live Kestra engine — the 24-node real-estate pipeline, the four human-in-the-loop Pause gates, and a cryptographically signed Leash receipt after every stage. You can watch it pause, you resume it, and the signed chain it produces verifies independently.
REAL Kestra orchestration · the 4 Pause gates · the 10 ECDSA-P256 signed Leash receipts KNOWN GAP the 2 Omnigent stage-calls (live, but 401 — the identity-bridge gap)

gate_listing_agreement and waits. list_agents / create_session carry a ⚠ (the live 401); every leash_* task is green.

app.fogbreak.io and return
401 "Authentication required" — that is the real, un-faked identity-bridge gap (no service token / online runner yet).
The Leash task right below loads the real append.py / verify.py from namespace files and succeeds.


10 receipts, hash-linked (each this_hash = SHA-256 of the receipt + the previous this_hash), each signed ECDSA-P256.
Every receipt carries the real kestra_execution_id and an honest omnigent_conversation_id = null (no real Omnigent session — the gap).
| seq | event | stage | this_hash (12) |
|---|---|---|---|
| 0 | flow_start | — | 7861261004cf |
| 1 | flow_stage_advance | leads | 80832ce949cb |
| 2 | flow_stage_advance | listing_agreement gate | cf8b4578cc1c |
| 3 | flow_stage_advance | market_analysis | d5b216e6c234 |
| 4 | flow_stage_advance | staging_photography | 86a481887abf |
| 5 | flow_stage_advance | showings | f442c048e8e6 |
| 6 | flow_stage_advance | offers gate | c1fe19bca539 |
| 7 | flow_stage_advance | escrow gate | 5d4afb83442f |
| 8 | flow_stage_advance | close gate | a067aa21d167 |
| 9 | flow_end | — | eaf16621585f |
Verified two ways — in-flow at flow_end, and independently after downloading the artifact, both with the repo's committed verify.py + the pinned public key:
LEASH CHAIN OK: 10 signed receipts, head=eaf16621585f9983... verify_chain(...) → {"ok": true, "verified_count": 10, "head_hash": "eaf16621585f9983490751e1dab87b949cff3e84d4148b40839f2c6aec2f9c46"} # tamper test — edit one receipt's payload, re-verify: verify_chain(tampered) → {"ok": false, "reason": "hash_mismatch", "break_seq": 4} # → real crypto, not a rubber stamp.
| Piece | Status | Evidence |
|---|---|---|
| Kestra engine, in the cloud | REAL | Kestra v1.3.16 container on Hetzner; flow deployed via API, executed, UI above |
| 24-node BREAKER topology | REAL | compiled shape: 2 http + 8 stage logs + 4 Pause gates + 10 Leash tasks |
| 4 human-in-the-loop Pause gates | REAL | core.flow.Pause — held PAUSED, resumed by hand, screenshots 1–3 |
| Per-stage signed Leash receipts | REAL | real append.py/verify.py, ECDSA-P256, 10-receipt chain, verified + tamper-tested |
| Omnigent stage-calls | GAP | hit live app.fogbreak.io → 401 (no service token / online runner = the identity-bridge gap). allowFailure keeps them visible as WARNING; nothing faked. |
The overall execution ends WARNING — and that yellow flag is the gap: the two 401s. Close the identity bridge (service token + online runner) and those two nodes go green; everything else already is.
WIRED ≠ PROVEN. What's proven here by a real run: Kestra orchestration, the Pause gates, the signed Leash chain. What's still a gap: a live, authenticated Omnigent stage-call. Demo Kestra is a disposable container (breaker-demo-kestra) on the box, separate from the production Kestra.