Skip to content

Fix browser signer discovery - #3

Merged
kalepail merged 1 commit into
mainfrom
agent/fix-browser-signer-discovery
Aug 13, 2026
Merged

Fix browser signer discovery#3
kalepail merged 1 commit into
mainfrom
agent/fix-browser-signer-discovery

Conversation

@kalepail

Copy link
Copy Markdown
Contributor

What changed

  • Use the portable base64url helper for Mercury passkey credential IDs.
  • Add a regression test with the installed browser Buffer polyfill.
  • Prepare passkey-kit 0.16.2 and update the release notes.

Why

Browsers use buffer 6.0.3. It does not support Buffer.toString with the base64url encoding. Signer discovery therefore failed with Unknown encoding: base64url.

Impact

Browser applications can discover passkey signers again. No contract, binding, indexer, or relayer change is required.

Closes #2.

Checks

  • pnpm test --run: 216 tests passed
  • pnpm run verify:bindings: passed
  • pnpm run build: passed
  • pnpm run build:demo: passed
  • Claude Fable independent review: approved

@kalepail
kalepail marked this pull request as ready for review August 13, 2026 04:18
Copilot AI balanced review requested due to automatic review settings August 13, 2026 04:18
@kalepail
kalepail merged commit 9a8c9ff into main Aug 13, 2026
7 checks passed
@kalepail
kalepail deleted the agent/fix-browser-signer-discovery branch August 13, 2026 04:18

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Fixes browser signer discovery by using portable base64url encoding and prepares release 0.16.2.

Changes:

  • Replaces unsupported browser Buffer encoding.
  • Adds browser-polyfill regression coverage.
  • Updates package version and release documentation.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/indexer/mercury.ts Uses the portable base64url helper.
src/indexer/mercury.test.ts Tests discovery with browser Buffer.
src/version.ts Updates generated version.
package.json Bumps package to 0.16.2.
docs/releasing.md Updates checked-in release versions.
CHANGELOG.md Documents the browser fix.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

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.

MercuryIndexer.getSigners() throws in browsers: Unknown encoding: base64url

2 participants