Skip to content

Pass quote.inputSchema through to --dry-run --live-probe --json - #177

Merged
SELAT-DEV merged 1 commit into
mainfrom
feat/preflight-input-schema
Aug 29, 2026
Merged

Pass quote.inputSchema through to --dry-run --live-probe --json#177
SELAT-DEV merged 1 commit into
mainfrom
feat/preflight-input-schema

Conversation

@SELAT-DEV

Copy link
Copy Markdown
Contributor

Why

Companion to selat-pay feat/challenge-schema-capture: selat-pay's --probe-only JSON now carries quote.inputSchema — the request schema the upstream's own challenge published (x402 bazaar extension, MPP opaque input as observed live on mpp.orthogonal.com, probe-confirmed fields — merged). Without a passthrough, selat run consumers can't see it without reaching for the internal selat-pay CLI.

What

selat run --dry-run --live-probe --json now includes challengeInputSchema: the pre-flight param table for the endpoint, harvested free from the probe already being made, so an agent can fill --param values before any payment exists. Same seam, extraction pattern, and null-on-anything contract as the transactabilityTrace passthrough (#176): a new pure exported parser (challengeInputSchemaFromStdout), a third field on the probe result, one spread in the dry-run extra.

This is the fix surface for listings that carry no schema anywhere else — e.g. mpp.orthogonal.com's fundable/company, whose 402 documents id/domain/linkedin/crunchbase in its opaque parameter but whose catalog listing declares nothing (it settled $0.069 into a 401 during the 2026-08-29 sweep when paid bare).

Verification

532/532 tests (3 new pinning the stdout parsing seam with a fixture re-encoding the live fundable/company harvest).

🤖 Generated with Claude Code

…-json

Companion to selat-pay's challenge-schema harvest: the probe-only JSON now
carries quote.inputSchema (bazaar / MPP-opaque / probe-confirmed, merged),
and the dry run passes it through as challengeInputSchema so an agent gets
the endpoint's param table before any payment exists. Same seam and
null-on-anything contract as the transactabilityTrace passthrough (#176).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@SELAT-DEV
SELAT-DEV merged commit 341773e into main Aug 29, 2026
1 check passed
SELAT-DEV pushed a commit that referenced this pull request Aug 29, 2026
Ships the challengeInputSchema passthrough (#177): --dry-run --live-probe
--json now carries the endpoint's challenge-published param table so agents
fill --param values before any payment exists. Bumps dependency floors to
@selat-ai/selat-pay ^0.9.13 (challenge schema capture) and
@selat-ai/selat-discovery ^0.24.6 (Locus x402 source + learned-shape
overlay) — the propagation release that reaches existing runners.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants