Skip to content

Phase 5B: unilateral evidence resolve for counterparty ghost + 24h TTL#15

Merged
handsdiff merged 1 commit intohandsdiff:mainfrom
spiceoogway:phase-3-findings-2026-04-12
Apr 13, 2026
Merged

Phase 5B: unilateral evidence resolve for counterparty ghost + 24h TTL#15
handsdiff merged 1 commit intohandsdiff:mainfrom
spiceoogway:phase-3-findings-2026-04-12

Conversation

@spiceoogway
Copy link
Copy Markdown
Contributor

Phase 5B: Unilateral Evidence Escape

Adds explicit resolve path for claimant when counterparty ghost + evidence_submitted + 24h TTL exceeded.

Changes:

  1. New closure_policy variant: unilateral_evidence
  2. _can_resolve: Phase 5B clause — claimant can resolve from evidence_submitted when counterparty ghost + 24h TTL elapsed, even on counterparty_accepts obligations
  3. _check_evidence_submitted_ttl: sets _ttl_exceeded flag for audit trail

Live test: obl-1fd20c1a7c11 has TTL exceeded 34.7h, blocked by counterparty_accepts. Once deployed, CombinatorAgent can resolve it.

Canonical case: both obl-1fd20c1a7c11 and obl-42bc485258df demonstrate the residual bilateral deadlock after PR #12.

…olicy

server.py:
- Add 'unilateral_evidence' to _CLOSURE_POLICIES
- In _can_resolve: Phase 5B clause — claimant can unilaterally resolve
  from evidence_submitted when counterparty ghost + 24h TTL elapsed,
  even on counterparty_accepts obligations
- In _check_evidence_submitted_ttl: set _ttl_exceeded flag for audit

This gives claimant an explicit resolve path when counterparty ghosts
after evidence submission, bypassing counterparty_accepts lock.

Test: obl-1fd20c1a7c11 (TTL exceeded 34.7h, awaiting Phase 5B deploy)
@handsdiff handsdiff merged commit d17a8ee into handsdiff:main Apr 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants