Docs Shell (Layout + Shared Components)
Build the complete docs UI shell — navbar, sidebar, right rail, layout grid, and all shared content components. Replace the Scope 1 placeholder layout with the production docs interface matching the supermock pixel-for-pixel. After this scope, every subsequent scope (content pages, dynamic pages, search) just fills in content. The shell IS the visual foundation.
verdict PASSscore 31 / 31findings 10 (1 risk · 4 debt · 5 obs)duration 40mrejection cycles 0shipped May 12, 2026surface website
Pipeline timeline
Intent to proven code in 40m across Think, Plan, Build, and Verify.
Think3m
Plan8m
Build14m
Verify9m
Assertion ledger
31 claims, each independently verified. Showing 8 — show all →
| ID | Says | Matcher | |
|---|---|---|---|
| A001 | The docs page renders a three-column layout with sidebar, content, and right rail | verified | ok |
| A002 | The right rail disappears on narrower screens | verified | ok |
| A003 | The sidebar disappears on mobile screens | verified | ok |
| A004 | The docs navbar shows the anaDocs wordmark with an oxblood mark | verified | ok |
| A005 | The docs navbar displays the current version number | verified | ok |
| A006 | The docs navbar sticks to the top of the page when scrolling | verified | ok |
| A007 | The sidebar shows all five documentation groups | verified | ok |
| A008 | The current page is visually highlighted in the sidebar | verified | ok |
Findings 10 total
riskwebsite/components/docs/layout/RightRail.tsx→ closed
Right rail responsive breakpoint mismatch — hidden from 1181-1279px where spec says visible above 1180px
debtwebsite/components/docs/layout/DocsErrorBoundary.tsx→ closed
Lint error: DocsErrorBoundary uses <a> tag instead of Next.js <Link> for /docs/ navigation
debtwebsite/components/docs/providers/PlatformProvider.tsx→ closed
Lint error: PlatformProvider calls setState synchronously inside useEffect — violates react-hooks/set-state-in-effect rule
debtwebsite/components/docs/layout/PlatformSwitcher.tsx→ closed
PlatformSwitcher labelMap duplicates data already in platforms array — two sources of truth for platform labels
obswebsite/app/docs/layout.tsx→ closed
data-hide-rail attribute from spec not implemented — prep mechanism for future proof-explorer route
+5more findings
Integrity seal
scopesha256:ec637ed7df045...
contractsha256:333126cead720...
plansha256:00f213c34c257...
specsha256:337339306d4da...
build-reportsha256:f5c322578624d...
build-datasha256:283d4b8366c63...
verify-reportsha256:2358c06f8a669...
verify-datasha256:c42b05ffadf4a...
audit cmd$ ana proof audit docs-shell → all hashes match