From 9c97aed305c7f364ff36af6653f6f0d42cf0757b Mon Sep 17 00:00:00 2001 From: Taylan Pince Date: Thu, 15 Oct 2026 19:18:38 +0200 Subject: [PATCH 1/2] fix(sessions): fix arweave tests after gateway switched owner addresses arweave.net's GraphQL gateway now indexes Ethereum-signed (ANS-104) data items by the signer's checksummed Ethereum address rather than the base64url SHA-256 of its public key. Filtering by the old owner id returns nothing, so every ArweaveReader test failed. Use the Ethereum address of the same key instead. findItems now also throws a descriptive error on a non-2xx GraphQL response, rather than failing to parse an HTML error page as JSON. Co-Authored-By: Claude Opus 5.5 --- packages/sessions/src/trackers/arweave.ts | 4 ++++ packages/sessions/tests/arweave.spec.ts | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/sessions/src/trackers/arweave.ts b/packages/sessions/src/trackers/arweave.ts index d0919964cb..2f57ead2cc 100644 --- a/packages/sessions/src/trackers/arweave.ts +++ b/packages/sessions/src/trackers/arweave.ts @@ -578,6 +578,10 @@ async function findItems( await new Promise(resolve => setTimeout(resolve, rateLimitRetryDelayMs)) } + if (!response.ok) { + throw new Error(`${graphqlUrl} returned ${response.status} ${response.statusText}`) + } + const { data: { transactions } } = await response.json() diff --git a/packages/sessions/tests/arweave.spec.ts b/packages/sessions/tests/arweave.spec.ts index 44bc4692b0..a2ee62cbf7 100644 --- a/packages/sessions/tests/arweave.spec.ts +++ b/packages/sessions/tests/arweave.spec.ts @@ -15,7 +15,7 @@ class MockProvider extends ethers.AbstractProvider { } describe('Arweave config reader', () => { - const options = { namespace: 'xOovxYFkIwBpEwSi', owners: ['lJYCA4xBPJeZSgr9AF_4pHp4HVGvTOa4NYKJRoMBP5c'] } + const options = { namespace: 'xOovxYFkIwBpEwSi', owners: ['0xB5c3023dbEcE7a6Bb78014000CD1C8ce940B50a0'] } const arweave = new trackers.arweave.ArweaveReader(options) const sessions = new trackers.remote.RemoteConfigTracker('http://localhost:5555') const provider = new MockProvider() From 344a08a55395daf40091c6335ce736c236c708ab Mon Sep 17 00:00:00 2001 From: Taylan Pince Date: Thu, 15 Oct 2026 21:00:31 +0200 Subject: [PATCH 2/2] chore: add changeset for arweave graphql error handling Co-Authored-By: Claude Opus 5.5 --- .changeset/arweave-graphql-errors.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/arweave-graphql-errors.md diff --git a/.changeset/arweave-graphql-errors.md b/.changeset/arweave-graphql-errors.md new file mode 100644 index 0000000000..8bafee70e5 --- /dev/null +++ b/.changeset/arweave-graphql-errors.md @@ -0,0 +1,5 @@ +--- +'@0xsequence/sessions': patch +--- + +Throw a descriptive error when the Arweave GraphQL gateway returns a non-2xx response, instead of failing to parse an HTML error page as JSON