Skip to content

feat(backend): implement comprehensive trustline and path payment optimization #304

feat(backend): implement comprehensive trustline and path payment optimization

feat(backend): implement comprehensive trustline and path payment optimization #304

Triggered via pull request June 25, 2026 23:40
Status Failure
Total duration 52s
Artifacts

ci.yml

on: pull_request
Frontend — Lint & Build
14s
Frontend — Lint & Build
Backend — Lint & Test
46s
Backend — Lint & Test
Fit to window
Zoom out
Zoom in

Annotations

11 errors and 2 warnings
Frontend — Lint & Build
Process completed with exit code 1.
src/lib/transaction-signer-rate-limit.test.js > Transaction Signer Rate Limiting > createTransactionSignerRateLimit > uses custom store when provided: backend/src/lib/transaction-signer-rate-limit.js#L161
TypeError: An invalid store was passed. Please ensure that the store is a class that implements the `Store` interface. ❯ parseOptions node_modules/express-rate-limit/dist/index.mjs:793:11 ❯ rateLimit node_modules/express-rate-limit/dist/index.mjs:807:18 ❯ Module.createTransactionSignerRateLimit src/lib/transaction-signer-rate-limit.js:161:10 ❯ src/lib/transaction-signer-rate-limit.test.js:163:23
src/lib/transaction-signer-rate-limit.test.js > Transaction Signer Rate Limiting > createTransactionSignerRateLimit > creates rate limiter with custom configuration: backend/src/lib/transaction-signer-rate-limit.test.js#L157
AssertionError: expected undefined to be 30000 // Object.is equality - Expected: 30000 + Received: undefined ❯ src/lib/transaction-signer-rate-limit.test.js:157:32
src/lib/transaction-signer-rate-limit.test.js > Transaction Signer Rate Limiting > createTransactionSignerRateLimit > creates rate limiter with default configuration: backend/src/lib/transaction-signer-rate-limit.test.js#L146
AssertionError: expected undefined to be 60000 // Object.is equality - Expected: 60000 + Received: undefined ❯ src/lib/transaction-signer-rate-limit.test.js:146:32
src/lib/request-schemas.test.js > paymentZodSchema > does not apply the XLM minimum to non-native assets: backend/src/lib/request-schemas.js#L116
ReferenceError: isValidStellarPublicKey is not defined ❯ Object.applyPaymentValidationRules [as refinement] src/lib/request-schemas.js:116:5 ❯ executeRefinement node_modules/zod/v3/types.js:3229:39 ❯ ZodEffects._parse node_modules/zod/v3/types.js:3249:17 ❯ ZodEffects._parseSync node_modules/zod/v3/types.js:100:29 ❯ ZodEffects._parse node_modules/zod/v3/types.js:3266:47 ❯ ZodEffects._parseSync node_modules/zod/v3/types.js:100:29 ❯ ZodEffects.safeParse node_modules/zod/v3/types.js:129:29 ❯ ZodEffects.parse node_modules/zod/v3/types.js:111:29 ❯ src/lib/request-schemas.test.js:238:37
src/lib/request-schemas.test.js > paymentZodSchema > rejects invalid asset_issuer public keys: backend/src/lib/request-schemas.test.js#L71
AssertionError: expected [Function] to throw error including 'asset_issuer must be a valid Stellar …' but got 'isValidStellarPublicKey is not defined' Expected: "asset_issuer must be a valid Stellar public key" Received: "isValidStellarPublicKey is not defined" ❯ src/lib/request-schemas.test.js:71:7
src/lib/request-schemas.test.js > paymentZodSchema > recovers the default issuer for configured non-native assets: backend/src/lib/request-schemas.js#L116
ReferenceError: isValidStellarPublicKey is not defined ❯ Object.applyPaymentValidationRules [as refinement] src/lib/request-schemas.js:116:5 ❯ executeRefinement node_modules/zod/v3/types.js:3229:39 ❯ ZodEffects._parse node_modules/zod/v3/types.js:3249:17 ❯ ZodEffects._parseSync node_modules/zod/v3/types.js:100:29 ❯ ZodEffects._parse node_modules/zod/v3/types.js:3266:47 ❯ ZodEffects._parseSync node_modules/zod/v3/types.js:100:29 ❯ ZodEffects.safeParse node_modules/zod/v3/types.js:129:29 ❯ ZodEffects.parse node_modules/zod/v3/types.js:111:29 ❯ src/lib/request-schemas.test.js:44:37
src/lib/request-schemas.test.js > paymentZodSchema > parses and normalizes a valid create-payment request: backend/src/lib/request-schemas.js#L116
ReferenceError: isValidStellarPublicKey is not defined ❯ Object.applyPaymentValidationRules [as refinement] src/lib/request-schemas.js:116:5 ❯ executeRefinement node_modules/zod/v3/types.js:3229:39 ❯ ZodEffects._parse node_modules/zod/v3/types.js:3249:17 ❯ ZodEffects._parseSync node_modules/zod/v3/types.js:100:29 ❯ ZodEffects._parse node_modules/zod/v3/types.js:3266:47 ❯ ZodEffects._parseSync node_modules/zod/v3/types.js:100:29 ❯ ZodEffects.safeParse node_modules/zod/v3/types.js:129:29 ❯ ZodEffects.parse node_modules/zod/v3/types.js:111:29 ❯ src/lib/request-schemas.test.js:17:37
src/lib/db-pooler-optimized.test.js > Database Pooler - Signature Verification (Issue #759) > hashQueryResult > generates different hashes for different results: backend/src/lib/db-pooler-optimized.test.js#L212
AssertionError: expected 'be3af032c78b126cce1c1ba3e291b8e1d6ab8…' not to be 'be3af032c78b126cce1c1ba3e291b8e1d6ab8…' // Object.is equality ❯ src/lib/db-pooler-optimized.test.js:212:25
src/lib/db-enhanced.test.js: backend/src/lib/db-enhanced.js#L25
Error: [vitest] No "default" export is defined on the "pg" mock. Did you forget to return it from "vi.mock"? If you need to partially mock a module, you can use "importOriginal" helper inside: vi.mock(import("pg"), async (importOriginal) => { const actual = await importOriginal() return { ...actual, // your mocked methods } }) ❯ src/lib/db-enhanced.js:25:18 ❯ src/lib/db-enhanced.test.js:29:25
src/lib/auth.test.js > createApiKeyAuth > enforces signature verification when signature headers are present: backend/src/lib/auth.test.js#L138
AssertionError: expected "spy" to be called with arguments: [ { secret: 'signed-api-key', …(5) } ] Received: 1st spy call: Array [ Object { "body": Object { "amount": 1, }, + "clientIp": "1.2.3.4", "method": "POST", "path": "/api/payments", "secret": "signed-api-key", "signatureHeader": "sha256=abcd", "timestampHeader": "1713916800", }, ] Number of calls: 1 ❯ src/lib/auth.test.js:138:36
Frontend — Lint & Build
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4, actions/setup-node@v4, pnpm/action-setup@v3. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Backend — Lint & Test
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/