Repository navigation
Conversation
- src/types/index.ts: add StreamMetadataURI, StreamInvoiceMetadata and IPFSInvoicePayload so metadata attachments conform to a standardized schema across integrators (conduit-protocol#969) - src/adapters/freighter.ts: wrap signTransaction in a configurable 60s timeout rejecting with WalletTimeoutError, so an ignored or closed Freighter popup can no longer hang the caller indefinitely (conduit-protocol#970) - src/adapters/albedo.ts: assert the decorated signature on a signed envelope returned by the Albedo iframe is a well-formed 64-byte Ed25519 signature before returning it, rejecting with AlbedoInvalidSignatureError otherwise (conduit-protocol#971) - src/adapters/walletconnect.ts: listen for pairing_expire during connect() and automatically re-pair (minting a fresh URI) instead of requiring a page reload for a new QR code (conduit-protocol#972)
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
src/types/index.ts: addStreamMetadataURI,StreamInvoiceMetadata, andIPFSInvoicePayloadso metadata attachments (e.g. invoices pinned to IPFS) conform to a standardized TypeScript schema across integrators.src/adapters/freighter.ts: wrapsignTransactionin a configurable timeout (default 60s) that rejects with a newWalletTimeoutErrorinstead of hanging forever when the user ignores or closes the Freighter popup.src/adapters/albedo.ts: assert the decorated signature on the envelope returned by the Albedo iframe is a well-formed 64-byte Ed25519 signature before returning it to the caller, rejecting early with a newAlbedoInvalidSignatureErrorinstead of letting a malformed signature fail later on-chain submission.src/adapters/walletconnect.ts: listen forpairing_expireduringconnect()and automatically re-pair (minting a fresh pairing URI, forwarded via the newonDisplayUrioption) instead of requiring the user to reload the page for a new QR code. Configurable viamaxPairingRetries(default 1) and observable viaonPairingExpire.Test plan
src/tests/stream-metadata-types.test.tscovering the new branded type guard/caster and interface shapes.src/tests/freighter-wallet-adapter.test.ts(hangs →WalletTimeoutError; responds in time → resolves normally).src/tests/albedo-wallet-adapter.test.tsassertingAlbedoInvalidSignatureErroris thrown.src/tests/walletconnect-pairing-expiry.test.tscovering auto-retry on expiry, retry exhaustion,maxPairingRetries: 0, non-expiry rejections passing through untouched,onDisplayUriforwarding across the refresh, and listener cleanup.Closes #969, Closes #970, Closes #971, Closes #972