Repository navigation
Conversation
Every reference page is now rendered by Speculoos from IR built at build time (npm run build:speculoos-ir): one page per REST operation or WebSocket channel, written by scripts/generate-speculoos-pages.ts. - The Realtime spec is canonical AsyncAPI 3, with its authentication and handshake declared; the Agent STT spec is generated from it. - Batch renders from the OpenAPI 3.1 copy the code-sample tests read; Management from the public spec. - A panel beside each entry: a channel's session as a sequence diagram, or an operation's code samples and examples. Below lg a REST panel follows the entry and a session comes first, collapsed. - <Schema> puts the same field tables in guides, headed by the type's name and a link to where the reference uses it. - The site's Markdown component moves to src/components, on react-markdown 10. - The OpenAPI plugin and theme, the AsyncAPI loader, the old WebSocket pages and their generator go. Renamed and removed pages redirect; message anchors are now kebab-case (#start-recognition). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stack 4 of 4, splitting #331 for review. Based on #336.
When the stack is merged,
mainmatches #331's branch, minusSPECULOOS-PLAN.md(deleted here).What changes
Every API reference page is rendered by Speculoos (
0.1.0-alpha.1) from IR built at build time (npm run build:speculoos-ir, wired intostartandbuild).scripts/generate-speculoos-pages.tswrites one page per REST operation or WebSocket channel into gitignored directories, which the sidebar lists withautogenerated. A page's own prose, which the spec can't express (handshake responses, how a connection closes), lives in partials beside the pages.Specs
Rendering (
src/components/Speculoos/)site.tsx: how this site renders Speculoos. That's the Radix Themes map, with the site's Markdown, the sidebar's badge colours, and types expanded where they're used.SessionPanel.tsx: a channel's session as a compact sequence diagram beside the reference, with each message linking to its section and showing its example on hover. Belowlgit comes first, collapsed.OperationPanel.tsx: an operation's code samples, then its examples, each labelled by its status's description ("400 Bad request").Schema.tsx:<Schema>puts the same field tables in guides, headed by the type's name and a link to where the reference uses it.openopens one field among the rest. The Batch and Realtime guides use it in place of the oldSchemaNodeand AsyncAPI loader.src/components/Markdown, onreact-markdown10 withremark-gfm4 andrehype-raw7.Removed: the OpenAPI plugin and theme, its templates and the sidebar filter for Batch paths, the
Schema/SchemaItemtheme components, the AsyncAPI and OpenAPI schema loaders, and the old WebSocket pages with their generator.Worth reviewing
post-a-new-project(from Build the Management reference from the public spec #335) are all inredirects.json/vercel.json.#startrecognition→#start-recognition). In-repo links are updated, but external deep links to the old anchors will land at the top of the page; redirects can't cover fragments.src/generatedare produced by the build, not committed.npm run speculoos:localtries local packs of the Speculoos repo.Checked
npm run buildpasses, with no broken links.tscpasses once the build has generatedsrc/generated.npm run test:code-samples: all 24 samples pass.Closes #331 once the stack lands.
🤖 Generated with Claude Code