Skip to content

CI: smoke-tests don't cover adapters/** — broken adapter config shipped undetected (ref #23) #24

@EmperorMew

Description

@EmperorMew

What happened

PR #23 fixed the A2A, OpenAI-compat, and Vercel adapters, which were constructing new VoidlyPay({ baseUrl, signingSecretKey }) — option names the SDK ignores (it reads apiBase/apiUrl and secretBase64/secretKey). Result: the BYO signing key was dropped and paid/signed calls failed.

Why CI didn't catch it

  1. voidly-pay-smoke-tests.yml only runs on pull_request for paths agent-sdk/** — so changes under adapters/** never trigger CI.
  2. The .js adapters aren't type-checked, and the Vercel adapter used an as any cast that suppressed the type error.

Proposed fix

  • Add adapters/** to the smoke-tests pull_request path filter.
  • Add a typecheck/build step for the TS adapters (e.g. tsc --noEmit on adapters/vercel-ai) and a lint rule against stray as any in adapter SDK construction.
  • Add a tiny test asserting each adapter constructs VoidlyPay with config keys that exist on VoidlyPayConfig (guards against option-name drift).

This is the actual hole that let a broken-payments-path change ship silently. Low effort, high value.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions