Skip to content

feat(commitment-lock): support full payment hash settlement - #30

Merged
quake merged 5 commits into
mainfrom
fix/commitment-lock-full-payment-hash
Sep 29, 2026
Merged

quake merged 5 commits into
mainfrom
fix/commitment-lock-full-payment-hash

Conversation

@quake

@quake quake commented Sep 11, 2026 •

Copy link
Copy Markdown
Member

Summary: add a feature-flagged v1 commitment-lock layout with a full 32-byte payment hash; preserve the legacy 57-byte args and 85-byte HTLC layout; propagate the feature flag through derived settlement cells; add prefix-only preimage rejection, cross-layout, and UDT regression tests. Verification: make build MODE=release; make test (12/12 passed); cargo fmt check; cargo clippy with warnings denied.

…ent cells

- v1 partial settlements previously produced 57-byte derived cells
  (legacy form), bricking the remaining v1 pending HTLCs; the output
  lock args now append args[57] when the input is a 58-byte v1 cell
- restore the original combined OutputLockError check for the output
  lock script so legacy failure codes stay identical
- add v1_derived_cell_resettlement_succeeds covering the two-step
  settlement flow; drop debug printlns; revert test capacity rewrite
@quake
quake marked this pull request as ready for review September 14, 2026 01:39
@quake
quake merged commit 7d112d9 into main Sep 29, 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.

2 participants