Context
The current interop harness is already structured around process adapters and currently exercises the TypeScript/Rust matrix by default. PR #52 starts adding a Go client adapter, which is a good first step toward exposing cross-language gaps.
It would be useful to track the remaining adapter parity work explicitly so each language can be added in small, reviewable PRs without turning the harness into one large change.
Proposed scope
Suggested sequence:
- Land the current Go client adapter work.
- Add a Go server process adapter.
- Add a Python client process adapter.
- Add a Python server process adapter.
- Enable each new adapter in CI only after its local harness path is stable.
- Keep the default stable matrix clear in the interop README and CI env.
Adapter contract
Each adapter should follow the existing process-harness contract:
- server writes one ready JSON line with its bound port
- client writes one result JSON line with status, response body, response headers, and settlement evidence
- shared env vars provide RPC URL, network, mint, price, pay-to address, client key, fee payer key, and MPP secret
- stderr remains diagnostic-only so stdout stays machine-parseable
Why this matters
The useful signal is not just whether each SDK passes its own tests. The interop matrix should catch drift between implementations in:
WWW-Authenticate challenge parsing
- credential construction
- intent and method selection
- SPL transfer amount/decimal handling
- receipt and settlement header shape
- server-side verification assumptions
This issue is intentionally limited to adapter parity and CI sequencing. It does not require adding new protocol features.
Context
The current interop harness is already structured around process adapters and currently exercises the TypeScript/Rust matrix by default. PR #52 starts adding a Go client adapter, which is a good first step toward exposing cross-language gaps.
It would be useful to track the remaining adapter parity work explicitly so each language can be added in small, reviewable PRs without turning the harness into one large change.
Proposed scope
Suggested sequence:
Adapter contract
Each adapter should follow the existing process-harness contract:
Why this matters
The useful signal is not just whether each SDK passes its own tests. The interop matrix should catch drift between implementations in:
WWW-Authenticatechallenge parsingThis issue is intentionally limited to adapter parity and CI sequencing. It does not require adding new protocol features.