docs: rewrite the corpus against the source - #2372
Merged
Merged
Conversation
…or the placeholder card
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
…inst the registry
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.
Rewrites the docs corpus against the source it describes, and adds the gates that keep it there.
The corpus grew by accretion: pages were extended one changelog entry at a time, so it read as a
list of features rather than as documentation, and 39 factual claims had drifted away from the
Swift that defines them.
docs/STYLE.mdis the contract this rewrite was measured against.What the rewrite corrected
Each of these was checked against the file that defines it, not against another doc page.
development/setupNSGlassEffectViewin the quick switcher"glassEffect(_:in:)behindif #availabledevelopment/plugin-developmentPluginCodeSignatureVerifier.evaluateaccepts any Developer ID leaf andPluginDeveloperTrustStoregates it. Third-party signing works and no page said sodevelopment/plugin-registrysqlite,clickhouse,redis,xlsx,mql,sqlimport) carry registry arms, so a fix can reach users already on a shipped appdevelopment/testing-plugins.xcodeprojthat the next generate discardsdevelopment/code-styleJsonEncodernotJSONEncoder"JSONEncoderand none useJsonEncoder; declared type names runSQL183 toSql20,MCP181 toMcp1development/architectureUndoManagerwindowWillReturnUndoManagerresolves it toworkspaces.selected, so the stack is per connection. Structure edits use a private manager insideStructureChangeManagerdevelopment/buildingAPPLE_ID; five jobs gate the releaseAPPLE_ID; it isNOTARY_PROFILE. The release job needs four, withbuilda matrix over both architecturesdevelopment/buildingwas 60% steps a contributor cannot run without a Developer ID, so release,notarization, DMG packaging and library publishing moved to
development/releasing.Prose
The rewrite was measured, not eyeballed. Openings were the worst of it: uniform in length and
shape across pages that have nothing else in common.
Body prose averages 11.8 words a sentence, so openings were 59% longer than the pages behind them.
They now sit close to the prose they introduce.
Adjacent pages that opened on the same furniture were re-led: three consecutive colon-and-list
openings in the SQL editor group,
data-gridnext toquery-results,cloudflare-tunnelnext tocloud-sql-proxy, and five of six Customization pages that putCmd+,in their first twosentences. The group index owns that shortcut now and no tab page repeats it.
Six repeated facts became snippets. All 17 registry-plugin pages share one sentence about
installation rather than 17 rewordings of it.
The new gate
docs/scripts/check-links.pyresolves every internal link, anchor, redirect and image against thefiles on disk, and answers what the Mintlify CLI does not: a page that exists in no navigation
group, so nothing links to it and the sidebar never shows it. That has happened twice here. It is
plain Python with no native dependencies, which matters because the Mintlify CLI stopped running
locally this week when npm began blocking install scripts.
Verified by reintroducing each failure class: a dead link, a dead anchor, and an orphaned page.
Also
CLAUDE.mdattributed-skipPackagePluginValidationto a SwiftLint plugin inCodeEditSourceEditor. No
Package.swiftunderLocalPackages/orPackages/declares any plugin.The flag is still required; the reason given for it was not true, so it is gone rather than
replaced with a second guess.
Checks
Source parity, writing style, and links and navigation coverage all pass.
mint validate,broken-linksanda11yrun in CI.The Databases group has a landing page
It had 26 leaves and no answer to the question the group is named after.
databases/indexnow ownsthe 27-row table; the home page keeps a pointer rather than a second copy of it.
A second gate keeps that table honest. It reads every
("TypeId", PluginMetadataSnapshot(…))tupleout of
PluginMetadataRegistry*.swiftand its extensions, which is the one place a new engine hasto be declared, and fails on a missing row, a wrong default port, or an engine the chooser does not
offer. Verified by reintroducing all three. The count last drifted to 26 against a real 27.