aldabra/crates/aldabra-dao/src
Sulkta aff39a668f feat(escrow_wip): EscrowDatum / EscrowRedeemer / EscrowValue codecs
⚠ WIP — UNAUDITED. Feature-gated behind `escrow_wip`; out of default builds.

Mirrors aiken validator at aiken-escrow/escrow/validators/escrow.ak (also
WIP). Spec at aiken-escrow/README.md.

Five-redeemer two-party agreement-with-veto escrow:
- Open → both sign Agree → Agreed{at} → Settle (after lock_period)
- Agreed → either party Veto → per-contributor refund
- Open → Refund (after open_deadline) → per-contributor refund

Datum: ProductIsData (Constr 0 [a, b, recipient, deadline, lock, state, deposits]).
EscrowState: enum Open | Agreed{at} encoded as Constr 0/1 (with payload).
EscrowDeposit: per-contributor (pkh, Value) entry, Constr 0.
EscrowValue: Plutus Map<PolicyId, Map<AssetName, Int>>; preserves on-chain
ordering for cbor-equality checks the validator does on continuing-output
deposits diff.

Tests: 10 codec roundtrips (Open/Agreed states, ada-only/multi-asset values,
deposit lookup by pkh, value-merge sum). All pass under
`cargo test -p aldabra-dao --features escrow_wip escrow::`.

Builders + MCP tools land in follow-up commits on this branch.
2026-05-09 11:32:26 -07:00
..
agora feat(escrow_wip): EscrowDatum / EscrowRedeemer / EscrowValue codecs 2026-05-09 11:32:26 -07:00
builder audit: cargo fmt + clippy --fix across workspace + retract_votes cooldown bug fix 2026-05-09 10:27:48 -07:00
config.rs audit: cargo fmt + clippy --fix across workspace + retract_votes cooldown bug fix 2026-05-09 10:27:48 -07:00
discovery.rs audit: cargo fmt + clippy --fix across workspace + retract_votes cooldown bug fix 2026-05-09 10:27:48 -07:00
error.rs feat(dao): scaffold aldabra-dao crate (Phase 1 reads) 2026-05-05 13:40:12 -07:00
lib.rs feat(dao): dao_discover_scripts MCP tool + Koios discovery client 2026-05-05 20:14:13 -07:00
reader.rs audit: cargo fmt + clippy --fix across workspace + retract_votes cooldown bug fix 2026-05-09 10:27:48 -07:00