Repository navigation
Rework docs prose, onboarding, team guidance, and QA - #64
Open
alexanderaidun-a8c wants to merge 20 commits into
Open
alexanderaidun-a8c wants to merge 20 commits into
alexanderaidun-a8c wants to merge 20 commits into
Conversation
Every page opened with a template sentence cramming 3-4 unrelated outcomes into one long run-on (often 30+ words, Spacefast.SentenceLength's existing suggestion-level threshold). Rewrites each opener to one short sentence naming the single most important outcome, dropping secondary ones already covered by the page's own headings. Keeps the existing 2nd-person voice; no facts changed, only trimmed and verified against each page's body. Follows WooCommerce's (Automattic-owned) developer docs style guide: be concise, lead with importance. Adds the rule to AGENTS.md so it doesn't drift back. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Extends the opener-sentence fix to the rest of each page: wherever body prose chained 3+ unrelated clauses into a run-on, split or trimmed it, leading with the most important fact. 124 sentences touched across 62 files. Left tables, code blocks, headings, and frontmatter (other than description) untouched; verified by diffing every file's fenced code blocks before/after (zero mismatches). Sentence-length suggestion hits (Spacefast.SentenceLength) drop from 63 to 42 repo-wide; 18 of the remaining 42 are in content/(reference)/changelog/**, which AGENTS.md exempts from style rules other than public-safety and brand-casing. No facts, commands, or flags were added or changed — only cut, reordered, or split existing text. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Consolidates the voice rules, the concision principle (adapted from WooCommerce's Automattic-owned docs style guide, keeping Spacefast's own 2nd-person voice rather than WooCommerce's 3rd-person), and every banned-word/wordiness/vocabulary rule from the 20 styles/Spacefast/*.yml Vale files into one document a contributor can actually read. AGENTS.md now points to it from both the Content and Prose style sections instead of carrying the rules inline. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Resurfaces the existing no-code Drop publishing path (dashboard drag-and-drop, no CLI, no account) which was documented but buried two clicks past a CLI-only Quickstart. Adds a homepage pointer and card, a Quickstart pointer, and extends the existing CLI/Dashboard Tabs convention to the domain-setup steps that already mixed both in prose. Also adds a cross-link from the anonymous-claim agent credential section to the Agents permissions page. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Every page's opening sentence used the same learning-objectives frame
('After this page you can/know X' / 'By the end of this page you have
Y') verbatim, including the 11 pages where it was buried mid-paragraph
rather than as the literal first words. That's a recognizable
AI-writing tell: generic scaffolding repeated identically 64 times
regardless of what's actually on the page, which no Vale rule catches
since it's a structural pattern, not a banned word.
Replaces each opener with a direct statement of the page's key fact,
deliberately varied in construction (you-voiced, mechanism-as-fact,
gerund openers, etc.) so the 64 sentences stop reading as one
template. Fixed two Vale regressions this pass introduced: added
'subcommand' to spelling-exceptions.txt (the plural was already
accepted) and reworded a 'just as easily' that tripped Condescension.
Documents the pattern in STYLE_GUIDE.md so it doesn't drift back.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Found while reviewing the full branch: - content/api/authentication.mdx and content/cli/api-keys.mdx: the opener de-templating pass had reintroduced a 3-clause run-on in the first and a vestigial "here's what this page covers" clause in the second. Both tightened. - STYLE_GUIDE.md: its own "be concise" worked examples still showed the old "After this page you know..." phrasing as the *good* example, directly contradicting the "don't template the opener" section two headings later. Updated both to the actual final wording. Also corrected four word counts that were eyeballed instead of machine-counted (31/33 words before, 27/18 after). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Caught during review: several of the rewritten openers paraphrased the page's own frontmatter description so closely that the subtitle and the first sentence of the body read as the same content twice — e.g. frameworks.mdx's description and opener both opened "Publish your [framework's/own build] output directly, or hand Spacefast the source and let it..." Checked every page's description against its opener with a word-overlap script; found 9 with real duplication (vs. generic shared technical nouns, which are fine and expected). Replaced each with a genuinely distinct hook already stated later on the same page — the internal vocabulary quirk in git.mdx, the no-connection-string-equivalent "no public/private flag" fact in access.mdx, the delegation-token security detail in mcp-server.mdx, and similar for the rest — rather than a reworded restatement of the description. One page (platforms/index.mdx) has pre-existing overlap that predates this branch; left alone as out of scope. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Commit 8 fixed 9 pages where the opener paraphrased the frontmatter description. For several of them the replacement hook was a fact pulled from later in the same page, and in 9 cases (some overlapping with commit 8's list, some not: functions.mdx, mcp-server.mdx, other-clients.mdx, access.mdx, anonymous-and-claim.mdx, frameworks.mdx, git.mdx, wordpress-data-sources.mdx, urls.mdx) I used a sentence already present there almost verbatim, moving the duplication instead of removing it — e.g. frameworks.mdx's new opener was nearly identical to an existing sentence in its own "Two paths" section. Wrote a script comparing every opener against every later paragraph on the same page (not just the description) across all 85 pages. Found these 9 with real duplication (two more — database.mdx, api/idempotency.mdx — share a short technical phrase but serve different purposes: a forward reference and a bolded error-code signpost, both legitimate patterns used elsewhere in the corpus; left alone). Fixed each by trimming the now-redundant later sentence to keep only what it adds beyond the opener, rather than rewriting the opener a third time. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…liff
A subagent read the whole site in character as a non-technical,
eager-but-impatient new user and reported back critically. Checked
every one of its "duplicative" claims against the actual content and
house policy (brief, contextual, cross-linked restatement is this
repo's own documented convention, not a defect) — none held up, so no
changes there. Four other findings did hold up:
- New content/(reference)/glossary.mdx: Ability, Build, Capsule,
Claim, Drop, Functions, Grant, Live, Space, Team, Version, Zero —
every term that piles up starting on the homepage, defined once,
cross-linked to its canonical deep page. Linked from the homepage
(card + inline pointer) and added to the Reference nav.
- content/troubleshooting.mdx: added a plain-language "Not sure where
to start?" note pointing at the dashboard's Overview page, before
the error-code reference begins — it was the first page flagged as
"not written for someone like me," on only the third page of the
site.
- content/agents/mcp-server.mdx: added a note flagging that the page
is technical reference, with a pointer back to the one-click
Claude Desktop/Claude Code setup — the agent hit this as an
unmarked jump from no-code to developer-only one click deep into
the Agents tab.
- content/quickstart.mdx: enriched the one-line Drop pointer (what you
can drag, no account needed) rather than creating a new page, which
AGENTS.md's route policy ("one page per task, not one page per
toggle") argues against — Drop is the dashboard interface to the
same publish task Quickstart covers for the CLI, not a separate
task.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
You asked directly: is the style guide actually being adhered to on all pages? Checked rather than asserted. Vale (the mechanically enforced half: banned words, brand casing, wordiness, link text) passes repo-wide including everything added this session — confirmed by rerunning verify:prose. The non-mechanical half (concision, SentenceLength as a suggestion) hadn't been checked against the content added in the last two commits. Found 3 real hits: two glossary entries (Build, Zero) that chained clauses past the point of earning them, tightened to match the pattern used everywhere else. One was a genuine Vale tokenizer artifact, not a writing problem: an em-dash immediately before bold markup in the new troubleshooting.mdx note caused two short sentences to be scored as one long one; rewrote the punctuation to avoid it (confirmed by testing against pre-existing :::note[] blocks elsewhere that don't trip the same false positive). Two remaining hits are legitimate, stated exceptions: the Grant glossary entry's audience-type enumeration needs the full list to be a complete definition, and one opener sits at 31 words using the explicitly sanctioned em-dash two-clause construction. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…tests
No test suite existed for the docs beyond evals.yaml (AI-assistant
factual retrieval). Added DOCS_TEST_SUITE.md with two independent
20-question suites:
- User click-path: can a real user find the answer, stated clearly,
in 3 clicks or less from the homepage? Run live against the
rendered site, not source files. 18/20 passed. Two failures:
(1) the Database page assumes Zero is already running and never
says how to turn it on — fixed with a note cross-linking to Zero
setup; (2) there is no discoverable support/contact channel
anywhere in the site ("contact support" appears 3 times, never with
an actual email, form, or link) — flagged, not fixed, since
inventing a plausible-looking contact method would be worse than
the honest gap.
- Agent/command-accuracy: is the exact command or code shown actually
correct, cross-checked against the frozen generated CLI/API
reference? 18/20 passed. Found two real, pre-existing bugs neither
of the prior five review passes caught (those were about prose
quality, not command accuracy): the generated CLI reference's own
`sf api-keys create` example uses `--preset full_access`, which
isn't a valid preset per its own documented enum; and the
hand-authored api-keys page omits a real preset (`partner_admin`)
and states two contradictory defaults. The first is in frozen,
producer-owned content and needs a monorepo-side fix, not a
hand-edit here. The second is authored and editable, but needs a
judgment call this suite can't make on its own — flagged for a
deliberate follow-up.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Contributor
|
All clear! No issues remaining. 🎉 10 issues already resolved
All required CI checks passed on
Select any unchecked box below to run or rerun that agent. Passed (1)
|
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This branch had an error being 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.
What changed
The current docs lead new readers through the CLI, bury team and browser paths, and repeat the same page-promise opening across much of the authored corpus. This change makes those paths visible and states key facts earlier.
.zip, orindex.htmlto publish without an install or account. The homepage also links directly to the glossary and Teams. Quickstart points collaborators to invitations and team access defaults. The domain setup steps separate CLI and dashboard instructions into tabs instead of mixing them in one paragraph.STYLE_GUIDE.mdexplains the existing Vale rules, Spacefast voice, concision, and worked before/after examples.AGENTS.mdnow points contributors to it and lists the docs test gate.test:docsruns these with the 14 existing corpus, LLM-index, and audit tests through Node's test runner; CI now runs that suite after the build. Four ambiguous or stale agent-eval questions were corrected.Review notes
This PR changes authored docs, contributor guidance, tests, and CI, but no product implementation or generated-reference snapshot in this repository. Please review the entry paths, the new team and glossary explanations, and whether the revised leads preserve the detail readers need below them. Some leads move a key fact from a later paragraph to the top: anonymous key loss, default hostname permanence, MCP delegation, and Functions runtime detection are examples. Two pre-existing gaps remain for separate fixes: no verified support contact path, and inconsistent API-key preset guidance between the authored page and producer-owned CLI example.
Verification
With Bun 1.3.11 and Node 24, generated-snapshot and command-example verification, type check, strict link validation, production build, 26 docs tests, composed-site audit, route verification, public-safety, Vale, and
git diff --checkpass. The built site contains 1,531 pages; no generated snapshot was edited. The Website dependency declarations are unchanged.Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.