feat(docs): landing page refresh + /v2 alternative landing page - #26
feat(docs): landing page refresh + /v2 alternative landing page#26thecaphimself wants to merge 1 commit into
Conversation
… add /v2 landing page - Rewrite hero description and site meta description - Redesign use-cases as an editorial index list - Add 'How It Works' section to the landing page - Add /v2 alternative landing page (control-plane positioning) - Remove em dashes from marketing copy Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
| const slowLines = Array.from({ length: 100 }, () => ({ | ||
| marginTop: `${Math.random() * 160}px`, | ||
| width: `${20 + Math.random() * 40}px`, | ||
| })); | ||
|
|
||
| const fastLines = Array.from({ length: 100 }, () => ({ | ||
| marginTop: `${Math.random() * 160}px`, | ||
| width: `${20 + Math.random() * 60}px`, | ||
| })); |
There was a problem hiding this comment.
Nondeterministic hydration styles
The server and browser independently evaluate these module-level Math.random() calls when rendering /v2, producing different inline widths and margins for the rail elements. This violates deterministic hydration and results in hydration diagnostics, stale server-side styles, or a visible layout shift.
| id: "/v2", | ||
| path: "/v2", | ||
| getParentRoute: () => rootRouteImport, | ||
| } as any); |
There was a problem hiding this comment.
The new /v2 route configuration is asserted as any, bypassing compile-time validation and allowing incompatible route metadata to pass unchecked. This conflicts with the repository requirement to avoid placeholder any types and preserve strict checks.
Context Used: AGENTS.md (source)
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
Summary
Refreshes the official landing page and adds a new alternative landing page at /v2.
Official landing page (
/)base.ts)New landing page (
/v2)Alternative, narrower positioning around bounded autonomy / agent financial permissions (control-plane framing): hero, How It Works, control plane, session keys, Agent Permissions API, bounded autonomy, MCP, three concrete demos (x402 / trading / subscriptions), ecosystem, FAQ, CTA. Industries section intentionally dropped to keep the message narrow.
Notes
vite build)./layout/components reused;/v2lives insrc/sections/v2/so the two pages are independent./v2currently point to/docs/$as placeholders — real "View demo" / x402 destinations TBD.Deploy
Reviewable before going live; merging to
maintriggers the Vercel production deploy.🤖 Generated with Claude Code
Greptile Summary
The PR refreshes the primary marketing page and introduces an independently composed
/v2landing page focused on bounded agent permissions./v2route, generated route-tree registration, and a complete set of alternative landing-page sections.Confidence Score: 4/5
The PR appears safe to merge, with non-blocking cleanup recommended for hydration stability and strict route typing.
The new landing page is structurally registered and composed correctly, while its decorative rail generation can produce server/client rendering differences and its generated route entry bypasses strict type validation.
Files Needing Attention: apps/docs/src/sections/v2/bounded-autonomy.tsx; apps/docs/src/route-tree.gen.ts
Important Files Changed
/v2throughout the generated route types but adds an explicit any assertion contrary to repository guidance.Flowchart
%%{init: {'theme': 'neutral'}}%% flowchart TD V[Visitor opens /v2] --> H[Hero] H --> W[How It Works] W --> P[Control Plane] P --> S[Session Keys and Permissions] S --> B[Bounded Autonomy] B --> D[Demos and Integrations] D --> F[FAQ] F --> C[Final CTA]Reviews (1): Last reviewed commit: "feat(docs): refresh landing hero/meta co..." | Re-trigger Greptile
Context used: