Logbook August 2026 - lambdasistemi/amaru-treasury-tx GitHub Wiki
Logbook — August 2026
Week of Aug 3rd — A production hang gets root-caused and fixed.
/v1/treasury-inspectwas blocking forever whenever the live provider's LocalStateQuery call never returned, sonowTipnow bounds that call with a 10-second timeout and surfaces a 503 instead of hanging; the fix merges Friday behind a fresh independent audit and lines up for the next patch release. The week also opens two side tracks that stay in draft: an archive PR for a submitted 40,000 USDM SundaeSwap swap, and a frozen, read-only research mandate scoping a cross-venue USDM execution survey.
Wednesday 5th
Treasury-inspect hang fix + swap archive (PV)
- Opened fix: bound treasury-inspect against a hung node query (#481) #482 — bound
nowTip'sposixMsToSlotcall with a 10s timeout and a typedNowTipTimeout, so/v1/treasury-inspectreturns 503 instead of hanging (closes #481) - Opened archive(network_compliance): submitted 40k USDM swap 57faba5b #483 — post-submission archive of a network_compliance→SundaeSwap 40,000 USDM swap, co-signed by network_compliance and ops_and_use_cases
Friday 7th
Treasury-inspect fix merged + USDM survey opened (PV)
- Merged fix: bound treasury-inspect against a hung node query (#481) #482 — production 10s timeout guard for the stuck LocalStateQuery hang, independently audited (closes #481)
- Opened research: survey cross-venue USDM execution #493 — frozen, read-only mandate scoping whether any ADA→USDM route covers a 209,424 ADA → 40,000 USDM target, restricted to
survey/usdm-venues/**(closes #492)
Week of Aug 17th — A recurrence of the same failure class, this time on
/v1/tip: the 10snowTiptimeout added the previous week now fires in production because two competing tip paths exist —/v1/tipand the inspector call the live provider directly, while/v1/healthalready reads a ready, zero-lag embedded indexer snapshot. Tuesday opens the fix to make indexer readiness the explicit tip source for both endpoints, keeping the existing lag guard as the freshness authority; it stays in draft pending a live smoke after deploy.
Tuesday 18th
/v1/tip readiness fix (PV)
- Opened fix(api): source tip from indexer readiness #495 — make the embedded readiness snapshot the tip source for
/v1/tipand inspector reports instead of the live-provider LocalStateQuery call that was recurring #481's hang; mapNowTipTimeoutto the same 503 diagnostic (closes #494)
Week of Aug 24th — Routine treasury upkeep gives way to new feature work, then the week closes by clearing the backlog. Thursday archives the August Cyber Castellum disbursement, and Friday opens the first slice of an atomic OTC swap disburse action: one treasury spend that pays ADA out and receives a stablecoin in under a single
Disburseredeemer. Saturday lands the indexer-backed tip fix that had waited since mid-month, corrects the dead mainnet socket path in the docs, and repairs the CI redness onmainthat had been holding both PRs back.
Thursday 27th
Cyber Castellum August archive (PV)
- Merged chore(transactions): archive Cyber Castellum August submission #498 — archives the expired unsigned invoice #3528 build and the signed mainnet submission tx
4f64f292d2b8d74f9bade3bdcafb92302b79b6589208147c995e55057b7696b4(block 13,863,215, slot 196,272,442), with all 11 parent transactions verified
Friday 28th
Atomic OTC swap, slice A (PV)
- Opened feat(disburse): atomic OTC swap — stablecoin in, ADA out #500 — new
otc-swapdisburse action authorized by aDisburseredeemer with a positive lovelace leg and a negative asset leg; slice A (redeemer, property-verified, pinned to a mainnet SundaeSwap-built swap) landed, slice B (payload + golden byte-for-byte rebuild) in progress (closes #499)
Saturday 29th
Tip fix lands, CI repaired, docs corrected (PV)
The tip endpoints now read indexer readiness instead of calling the live node provider directly, so the 10s timeout that kept firing in production no longer applies; #495 merged after the CI on main was repaired. That redness had two causes: a deterministic devnet coordinator swap failure and a flaky linux artifact smoke test, the latter fixed by avoiding permission-restoration failures during store copy and RPM extraction (#503). The mainnet socket path in the docs was corrected to point at the live container mount rather than a dead file (#501), and the disburse docs gained the --event, --label and --treasury-txin options. The OTC swap PR (#500) stays open.