Skip to content

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

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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions