Split module definition schema reference across pages - #17
Open
devin-ai-integration[bot] wants to merge 4 commits into
Open
Split module definition schema reference across pages#17devin-ai-integration[bot] wants to merge 4 commits into
devin-ai-integration[bot] wants to merge 4 commits into
Conversation
Co-Authored-By: brandon <brandon@flightcontrol.dev>
Author
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
Contributor
|
Preview deployment for your docs. Learn more about Mintlify Previews.
|
Co-Authored-By: brandon <brandon@flightcontrol.dev>
Co-Authored-By: brandon <brandon@flightcontrol.dev>
Co-Authored-By: brandon <brandon@flightcontrol.dev>
Contributor
|
Preview deployment for your docs. Learn more about Mintlify Previews.
|
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.
Summary
/module-definitions/definition-schemarendered all 715<ResponseField>components on one page (~3 MB of HTML, ~11x any other page), which froze mobile Safari on tap and scroll — per Mintlify support.scripts/sync-schema-reference.mjsnow splits the generated module schema into pages of at most 210 fields instead of copying it into one snippet.Pages follow the schema's own structure: one per top-level section, with prose-only sections (Readme, Template expressions) riding along with the previous page. A section over budget is divided by what its types describe, configured in
sectionGroups(groups listed in page order; the group without amatchis the catch-all):Resulting sidebar (fields per page): Module (6), Inputs (203), Stack (63), Build (126), Deploy (82), ECS deployments (74), ECS task definitions (123), UI and template expressions (38). The sync fails loudly if a configured group exceeds the budget or an oversized section has no rules, so a growing schema can't silently regress to a giant page.
Anchors that used to be same-page are rewritten to the page that now owns them, e.g. in
deploy:Generated output (re-written on each sync, stale files removed):
snippets/schema-reference/module/<slug>.mdx— content parts, each prefixed with the Legend tablemodule-definitions/definition-schema/<slug>.mdx— pages importing the parts, keeping the existing agents/humans<Visibility>treatmentsnippets/schema-reference/module-index.mdx— link list rendered by the (hand-written)definition-schema.mdxoverview, which is now the group rootdocs.json— the nav entry becomes a"Definition schema"group with the split pagespipelineandproject-configstill sync as single snippets; enabling the split for pipeline (312 fields) is a config entry insplitDocs..vale.iniskips prose rules for the generated schema reference files — Vale only runs on files a PR touches, so re-emitting this machine-written content (templateable,awsvpc, and Vale mis-tokenizing type names) otherwise fails the spellcheck check.The one hand-written deep link into the old page (
changelog.mdx→#refinputproperty) now points atdefinition-schema/inputs.Companion PR: flightcontrolhq/flightcontrol#6742 updates the daily
docs-schema-syncworkflow, which currently only stagessnippets/schema-referenceand would otherwise drop the generated pages anddocs.jsonupdate.mint validateandmint broken-linkspass; the largest page is now ~35 KB of Markdown vs ~150 KB rendering to ~3 MB before.Link to Devin session: https://app.devin.ai/sessions/ef919cd3e7844c79a77f76cbfbba013a
Requested by: @flybayer