Skip to content

docs(gittensory-ui): fix stale website docs and add a CI docs-drift check - #3059

Merged
loopover-orb[bot] merged 2 commits into
mainfrom
docs/website-sync-and-drift-lint
Jul 4, 2026
Merged

docs(gittensory-ui): fix stale website docs and add a CI docs-drift check#3059
loopover-orb[bot] merged 2 commits into
mainfrom
docs/website-sync-and-drift-lint

Conversation

@JSONbored

Copy link
Copy Markdown
Owner

Summary

  • A full audit of the 30 website docs pages (apps/gittensory-ui/src/routes/docs.*.tsx) found stale/wrong content: dead-config claims documented as live (firstTimeContributorGrace), a stale "confirmed-contributor-gated" blocking claim duplicated across 3 pages, 4 missing GITTENSORY_REVIEW_* flags, 5 missing gate-mode dimensions (including moderationGateMode, shipped by feat(selfhost): add a modular moderation-rules engine with a cross-repo violation ledger #2746), an entire undocumented 9-command maintainer-only queue-digest family, schema-drifted JSON examples on docs.branch-analysis.tsx/docs.scoreability.tsx, and fabricated claims on docs.ai-summaries.tsx/docs.mcp-clients.tsx (a nonexistent model picker/CLI flag, a wrong generated MCP client command). All fixed.
  • Adds scripts/check-docs-drift.mjs, wired into test:ci as docs:drift-check, so a new GITTENSORY_REVIEW_* flag, @gittensory command, or gate-mode field shipped without a docs update fails CI instead of silently drifting — this is exactly the mechanism that let most of the above go unnoticed.
  • Fixes feat(ci): add a docs-drift check for GITTENSORY_REVIEW_* flags, @gittensory commands, and gate-mode dimensions #3047.

Scope

  • The PR title follows type(scope): short summary Conventional Commit format.
  • This PR is focused: it's a docs-content fix plus the one CI check whose own regression-guard test requires the docs to already be correct — I judged bundling these two as one coherent unit better than an artificial split that would leave the check's baseline test failing until a second PR merges.
  • Follows CONTRIBUTING.md; no site//CNAME/VitePress/Pages changes.
  • Linked issue: Fixes feat(ci): add a docs-drift check for GITTENSORY_REVIEW_* flags, @gittensory commands, and gate-mode dimensions #3047 (the CI check). The docs content fixes themselves aren't tied to a filed issue — they were found and fixed as part of this same audit.

Validation

  • git diff --check
  • npm run actionlint (via npm run test:ci)
  • npm run typecheck
  • npm run test:coverage locally — full unsharded run, 8442 passed / 7 skipped across 418 files (via npm run test:ci)
  • npm run test:workers
  • npm run build:mcp
  • npm run test:mcp-pack
  • npm run ui:openapi:check
  • npm run ui:lint
  • npm run ui:typecheck
  • npm run ui:build
  • npm audit --audit-level=moderate — 0 vulnerabilities
  • New/changed behavior has tests: 16 new tests in test/unit/check-docs-drift-script.test.ts covering all three extractors, the manifest-coverage self-check, per-surface docs-gap detection, a real-repo regression guard, and a subprocess CLI smoke test. scripts/** is Codecov-ignored per this repo's config, so these aren't patch-coverage-gated, but they're real regression coverage.

Safety

  • No secrets, wallets, hotkeys, trust scores, or private maintainer evidence.
  • Public docs text stays accurate and makes no compensation-guarantee claims.
  • N/A — no auth/cookie/CORS/session changes.
  • N/A — no OpenAPI/MCP behavior changes (docs + a dev-tooling script only).
  • N/A — no UI component/state changes, text-content and one new backend-tooling script only.

UI Evidence

Not applicable — every change in this PR is either docs text content (no layout/visual/component changes to any page) or a new Node CI script. I spot-checked the most heavily-edited pages (docs.tuning, docs.scoreability, docs.mcp-clients, docs.maintainer-self-hosting) live in a browser during the audit and confirmed they render correctly, but there's no visual delta to screenshot.

Notes

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 4, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
gittensory-ui 56ba276 Commit Preview URL

Branch Preview URL
Jul 04 2026, 11:32 AM

@superagent-security

Copy link
Copy Markdown
Contributor

Superagent didn't find any vulnerabilities or security issues in this PR.

@codecov

codecov Bot commented Jul 4, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 96.11%. Comparing base (01ab5ea) to head (56ba276).
⚠️ Report is 2 commits behind head on main.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #3059   +/-   ##
=======================================
  Coverage   96.11%   96.11%           
=======================================
  Files         263      263           
  Lines       28964    28964           
  Branches    10539    10539           
=======================================
  Hits        27838    27838           
  Misses        492      492           
  Partials      634      634           
🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@loopover-orb loopover-orb Bot added the gittensor:bug Gittensor-scored bug fix — scores a 0.05x multiplier. label Jul 4, 2026
@loopover-orb

loopover-orb Bot commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Warning

🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨

⏸️ Gittensory review result - manual review recommended

Review updated: 2026-07-04 11:35:27 UTC

22 files · 1 AI reviewer · no blockers · readiness 82/100 · CI pending · blocked

⏸️ Suggested Action - Manual Review

Review summary
This PR refreshes a broad set of stale website docs and adds a focused docs-drift check for feature flags, command catalogs, and gate-mode fields. The new script is pure enough to unit test, wired into `test:ci`, and the tests exercise both synthetic drift cases and the real repo state. I do not see a reachable correctness defect in the changed code, but the drift checker has a couple of maintainability edges worth tightening before it becomes harder to evolve.

Nits — 6 non-blocking
  • nit: `scripts/check-docs-drift.mjs:28` relies on a regex slice ending at the first `] as const;`, so future catalog formatting that embeds that token in generated text or nested literals would silently truncate extraction; consider parsing with the TypeScript compiler or at least failing loudly when the catalog slice is suspicious.
  • nit: `scripts/check-docs-drift.mjs:102` treats any docs page importing `@​/lib/command-reference` as fully documenting every command, which is only safe because `command-reference:check` runs elsewhere; add a short comment naming that dependency so the check order does not become accidental.
  • nit: `scripts/check-docs-drift.mjs:117` extracts `*GateMode` fields from all of `src/types.ts` even though the comment says the source of truth is `RepositorySettings`; if another type grows an unrelated `*GateMode` field, this check will force an unrelated docs manifest entry.
  • In `scripts/check-docs-drift.mjs`, scope `extractGateModeFields` to the `RepositorySettings` declaration or rename the check to make the broader contract explicit.
  • In `test/unit/check-docs-drift-script.test.ts`, add one regression fixture for an unrelated non-`RepositorySettings` `fooGateMode` field if you intentionally keep the current broader extraction behavior.
  • PR author also opened the linked issue — Link an issue that was opened by a different contributor, or provide a rationale for why this self-authored issue represents genuine discovery work.
Signal Result Evidence
Code review ✅ No blockers 1 reviewer
Linked issue ✅ Linked #3047
Related work ⚠️ 1 scoped overlap Top overlaps are listed below; lower-confidence bulk is hidden.
Change scope ❌ 8/20 High review scope from cached public metadata (1 linked issue).
Validation posture ✅ 25/25 PR body includes validation/test evidence.
Contributor workload ✅ 10/10 Author activity: 59 registered-repo PR(s), 50 merged, 454 issue(s).
Contributor context ✅ Confirmed Gittensor contributor JSONbored; Gittensor profile; 59 PR(s), 454 issue(s).
Gate result ✅ Passing No configured blocker found.
Review context
  • Author: JSONbored
  • Role context: owner (maintainer lane)
  • Public audience mode: oss maintainer
  • Lane context: Repository registration is not available in the local Gittensory cache.
  • Public profile languages: Python, TypeScript, JavaScript, Ruby, Go, Kotlin, MDX, Shell
  • Official Gittensor activity: 59 PR(s), 454 issue(s).
  • Related work: Titles/paths share 9 meaningful terms. (issue #2054, issue #2055)
Contributor next steps
  • Treat this as maintainer-lane context rather than normal contributor-lane activity.
  • Review top overlaps.
  • Add a concise scope and risk note.
  • No action.
  • Check active issues and PRs before submitting.
Signal definitions
  • Related work = same linked issue, overlapping active PRs, or title/path similarity.
  • Change scope = cached public metadata such as size labels, draft state, and review-burden hints.
  • Validation posture = whether the PR provides enough public validation/test evidence for maintainer review.
  • Contributor workload = public contributor activity and cleanup pressure, not a repo-wide quality failure.
  • Contributor context = public GitHub/Gittensor identity context; non-Gittensor status is not a blocker.

🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed


💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →.

Checked by Gittensory, a quiet PR intelligence layer for OSS maintainers.

  • Re-run Gittensory review

JSONbored added 2 commits July 4, 2026 04:27
…heck

A full audit of the 30 docs.*.tsx pages found dead-flag claims, missing
GITTENSORY_REVIEW_* flags, missing gate-mode dimensions, an undocumented
9-command maintainer queue-digest family, and schema-drifted API examples.
Fixes all of it, plus adds scripts/check-docs-drift.mjs (wired into
test:ci) so a new flag/command/gate-mode field shipped without a docs
update fails CI instead of silently drifting.

Fixes #3047
check-docs-drift.mjs's per-command substring check false-flagged
docs.maintainer-workflow.tsx/docs.maintainer-install-trust.tsx once
they switched to importing PUBLIC_COMMAND_LIST/MAINTAINER_COMMAND_LIST
from the generated apps/gittensory-ui/src/lib/command-reference.ts
(#3046) instead of hand-listing @gittensory commands inline. A page
that imports the generated constants is already covered by
command-reference:check, so skip its per-id checks.

@loopover-orb loopover-orb Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Gittensory approves — the gate is satisfied and CI is green.

@loopover-orb
loopover-orb Bot merged commit 8674297 into main Jul 4, 2026
12 checks passed
@loopover-orb
loopover-orb Bot deleted the docs/website-sync-and-drift-lint branch July 4, 2026 11:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gittensor:bug Gittensor-scored bug fix — scores a 0.05x multiplier.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(ci): add a docs-drift check for GITTENSORY_REVIEW_* flags, @gittensory commands, and gate-mode dimensions

1 participant