fix(openapi): export EvmTx and MultiChainMsg so SkipGoMessage $refs resolve#171
fix(openapi): export EvmTx and MultiChainMsg so SkipGoMessage $refs resolve#171
Conversation
Greptile SummaryThis PR is a focused OpenAPI hygiene pass: it removes 8 dead Key points:
Confidence Score: 5/5Safe to merge — both changes are net-neutral on hosted output and fix real spec defects. The No files require special attention; the two flagged routes are noted in the PR description as follow-up items, not blockers.
|
| Filename | Overview |
|---|---|
| packages/bitbadgesjs-sdk/openapitypes-helpers/routes.yaml | Removes 8 zero-property payload query param blocks from GET routes; the spread_explodes.ts pipeline already dropped them, so the hosted spec was already parameterless — this is pure dead-weight cleanup. |
| packages/bitbadgesjs-sdk/src/gamm/indexer.ts | Adds export to MultiChainMsg and EvmTx interfaces so typeconv declares them as named component schemas, fixing broken $refs in the hosted OpenAPI spec. |
Reviews (1): Last reviewed commit: "chore(openapi): drop zero-prop payload p..." | Re-trigger Greptile
…esolve Both types are transitively $ref'd by SkipGoMessage in the generated openapi spec, but they were defined without `export` so typeconv skipped them. The hosted spec shipped broken #/components/schemas/EvmTx and MultiChainMsg references that failed to resolve in Stoplight. One-word-each fix. Implements backlog #0292 (partial — the 5 dynamic-store + swap-activities types deferred until PR #168 merges the websiteOnlyCors route hiding). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
a270e88 to
5505602
Compare
Summary
Narrows PR #171 after the 8-route payload-deletion portion was rolled back. The zero-prop
payloadblocks inroutes.yamlare harmless in practice —spread_explodes.tsdrops them before the hosted spec ships, so 3p API consumers never see them. Keeping them inroutes.yamlas dead weight is preferable to risking an accidental drop of a route param someone actually wanted.What stays in this PR
Add
exporttoEvmTxandMultiChainMsginsrc/gamm/indexer.ts. Both types are referenced transitively bySkipGoMessagebut were defined withoutexport, sotypeconvskipped them and the hosted spec shipped broken#/components/schemas/EvmTx/MultiChainMsgrefs. One-word-each fix. Implements #0292 (partial — the 5 dynamic-store + swap-activities types deferred until PR #168 merges).What was rolled back
The 8 zero-prop
payloadparam deletions fromroutes.yaml(ticket #0293). Audit confirmed:iGetCreatorPluginsPayloadhascreatorAddress,bookmark,returnSensitiveData;spread_explodes.tsexpands into per-field query paramsSeven routes are genuinely empty (handler reads only
req.params.{id}); one had real props the first pass missed, reinforcing the call to leaveroutes.yamlalone.Test plan
$refs in the hosted spec after the pipeline regenerates (CI will verify)