Skip to content

fix(host-papp): derive V2 session key from ECDH shared secret#206

Merged
justraman merged 1 commit into
mainfrom
fix/v2-shared-secret-session-key
Jun 5, 2026
Merged

fix(host-papp): derive V2 session key from ECDH shared secret#206
justraman merged 1 commit into
mainfrom
fix/v2-shared-secret-session-key

Conversation

@justraman

@justraman justraman commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

If host-papp is the public SDK for hosts, it has to ship the V2 contract by default. Hiding part of it behind polkadot desktop turns host-papp into a trap for others, desktop is not the only host.

Please don't ship spec migrations this way: bump the adapter alongside the spec. And if keeping the existing path working mattered, exporting createV2Session would have been the move.

This one cost hours to debug.

@justraman justraman force-pushed the fix/v2-shared-secret-session-key branch from 9e06be9 to b1bc805 Compare June 4, 2026 22:23
@duewarn duewarn requested a review from johnthecat June 5, 2026 08:38
@justraman justraman merged commit 978a3b6 into main Jun 5, 2026
5 checks passed
@johnthecat johnthecat deleted the fix/v2-shared-secret-session-key branch June 11, 2026 09:09
johnthecat added a commit that referenced this pull request Jun 12, 2026
Main (0.8.7) had independently absorbed nearly all of this branch's work
via PRs #178/#202/#205/#206/#212/#215/#216, with newer/cleaner versions.

Conflict resolution (38 files):
- package.json (x14), package-lock.json, CHANGELOG.md, migration doc:
  took main (newer versions, canonical release history). Dropped the
  unused `verifiablejs` dep.
- All SSO V2, statement-store, handoff-service, and host-chat *impl*
  files: took main — strictly newer (ECDH session-key derivation #206,
  RFC-7 entropy #205, statement-store fix #215). The branch's parallel
  May implementations are superseded.
- watchIdentity series: already identical in main (no real conflict).
- Kept BRANCH version for two files where it is genuinely ahead:
  * identity/rpcAdapter.ts — defensive snake_case/camelCase Resources
    decode (fixes "Unknown user" regression on V2 runtime); a clean
    superset of main's version.
  * host-chat/codec/attachment.spec.ts — extra blurhash-thumbnail and
    NodeEndpoint round-trip tests against a byte-identical codec impl.

Verified: build, typecheck, lint (0 errors), 679/679 tests pass.
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