Skip to content

Rebuild Guide API reference around canonical OpenAPI shape#301

Open
PunchTheDev wants to merge 1 commit into
mainfrom
punch/guide-api-reference-canonical
Open

Rebuild Guide API reference around canonical OpenAPI shape#301
PunchTheDev wants to merge 1 commit into
mainfrom
punch/guide-api-reference-canonical

Conversation

@PunchTheDev
Copy link
Copy Markdown
Owner

Summary

Restructures QuickstartGuide API reference section to match the canonical OpenAPI schema served by ${API_BASE_URL}/openapi.json. Adds 7 missing endpoints, switches path params from generic {id} to canonical {round_id} / {spec_id} / {contributor} / {submission_id}, and groups by intent instead of dumping a flat 14-row table.

Motivation

A first-timer scanning the table previously saw {id} everywhere — Swagger uses {round_id} / {spec_id} / {submission_id}, so copy-pasted curls wouldn't drop into the try-it-out console without rewriting. The table was also missing several pedagogically important endpoints (POST /eval/preview for scoring without recording, GET /submissions/{id}/step for fetching the STEP file, all /rounds variants), and intent was implicit. Live OpenAPI audit confirmed 21 canonical paths; the Guide previously documented 14.

Changes

  • QuickstartGuide.tsx L744–826: API reference rebuilt with 7 intent groups (Rounds / Specs / SOTA / Leaderboards / Submissions / Eval / Health). Path params canonicalized. Swagger /docs link promoted from buried footer-line into a top-of-section callout card with hover tooltip.
  • Endpoint count 14 → 21:
    • GET /rounds — all rounds (past + active)
    • GET /rounds/{round_id} — single round metadata
    • GET /submissions/{submission_id} — single submission detail
    • GET /submissions/{submission_id}/step — STEP file (3D viewer source)
    • POST /eval/preview — score an agent against one spec without recording (body: {agent_code, spec_id})
    • GET /health + GET /health/deep
  • Descriptions rewritten to canonical OpenAPI vocabulary: "breadth-normalized percentile rank", "progressive history — one entry per moment the record improved", "STEP file", "Score an agent against one spec without recording".
  • Step 2 (#explore) gains a ↓ full endpoint table cross-link before the curl block — closes the loop between the inline curl tutorial and the complete reference (step 281 cross-link pattern).
  • BACKLOG L113 flipped ○ ○ ○● ● ● with rationale.

Verification

Puppeteer at 1440×900 on /guide#api:

  • 7 group headers render in order: Rounds, Specs (problems), SOTA, Leaderboards, Submissions, Eval, Health
  • 21 endpoint rows
  • No {id} generic path params remain
  • All 7 newly-added canonical endpoints present
  • Swagger callout box rendered with link to ${API_BASE_URL}/docs + 129-char tooltip
  • Canonical-vocabulary strings present: "breadth-normalized", "Progressive history", "STEP file", eval-preview description

Puppeteer at 1440×900 on /guide#explore:

  • 1 anchor link to #api with text "full endpoint table ↓"

0 new console errors (1 pre-existing 404 on a tile resource — unchanged baseline).

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.

1 participant