Skip to content

fix: validate handshake summary consistency - #19

Merged
edidx merged 2 commits into
mainfrom
codex/merge-handshake-state-consistency
Aug 28, 2026
Merged

edidx merged 2 commits into
mainfrom
codex/merge-handshake-state-consistency

Conversation

@edidx

@edidx edidx commented Aug 28, 2026

Copy link
Copy Markdown
Owner

Summary

This PR adds a bounded Passpod v0.1 implementation-correctness fix.

The semantic validator now rejects optional handshake summary fields when they contradict the authoritative accepted message history.

Specifically:

  • lifecycle, when present, must match the lifecycle implied by the final accepted message.
  • terminalClosure.isClosed, when present, must agree with whether the handshake ends in CLOSE.

What this does not change

This PR does not modify:

  • Passpod Standard semantics
  • PROPOSE -> CHALLENGE -> AGREE -> CLOSE
  • schemas
  • SDK interfaces
  • optionality of lifecycle/closure summaries
  • normative documentation
  • the frozen passpod-spec-v0.1 tag

Absent summary fields remain valid.

Validation

  • 64 unit tests passing
  • bash tools/check-public-task-repo.sh passing
  • integration worktree clean
  • reviewed implementation commit preserved exactly

Commits

  • 7e3c050 — validate handshake summary consistency
  • 4ba9797 — changelog entry

@edidx
edidx merged commit 926cbd6 into main Aug 28, 2026
1 check passed
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.

1 participant