> For the complete documentation index, see [llms.txt](https://ai-os-and-trend-finder.gitbook.io/ai-os-and-trend-finder-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ai-os-and-trend-finder.gitbook.io/ai-os-and-trend-finder-docs/docs/route-coverage.md).

# Route Coverage Inventory

Generated: 2026-05-26 (Group 4 documentation audit) Updated: 2026-06-08 (documentation accuracy pass: refreshed test counts and Claude Code browser coverage after Phase 24/25)

## Route Table

| #  | Path                               | Route File                            | Component / Purpose                | Data Deps                                              | Smoke Test                    |
| -- | ---------------------------------- | ------------------------------------- | ---------------------------------- | ------------------------------------------------------ | ----------------------------- |
| 1  | `/`                                | `index.tsx`                           | `Home`                             | useLiveData, useTimeSaved, UsagePanel, SetupModal      | home.test.tsx                 |
| 2  | `/activity`                        | `activity.tsx`                        | `ActivityPage`                     | useLiveData                                            | activity.test.tsx             |
| 3  | `/memory`                          | `memory.tsx`                          | `MemoryPage`                       | useLiveData, MemoryGraph3D (lazy), MemoryGraphLoader   | memory.test.tsx               |
| 4  | `/settings`                        | `settings.tsx`                        | `SettingsPage`                     | useLiveData, AggregateRefreshButton                    | settings-share-setup.test.tsx |
| 5  | `/setup`                           | `setup.tsx`                           | `SetupPage`                        | useLiveData, Home (from index)                         | settings-share-setup.test.tsx |
| 6  | `/share`                           | `share.tsx`                           | `SharePage`                        | useLiveData                                            | settings-share-setup.test.tsx |
| 7  | `/skills`                          | `skills.tsx`                          | `SkillsPage`                       | useLiveData, useTimeSaved, recharts                    | skills.test.tsx               |
| 8  | `/agents/hermes`                   | `agents.hermes.tsx`                   | `HermesPage`                       | Hermes bridge hooks, Hermes components                 | agents.test.tsx               |
| 9  | `/agents/claude-code`              | `agents.claude-code.tsx`              | `ClaudeCodeMissionPage`            | Hermes bridge hooks, Mission Control presentation      | agents.test.tsx               |
| 10 | `/agents/openclaw`                 | `agents.openclaw.tsx`                 | `OpenClawReadOnlyPage`             | OpenClaw bridge hooks, admin hook, OpenClaw components | agents.test.tsx               |
| 11 | `/workspaces/`                     | `workspaces.index.tsx`                | `WorkspacesPage`                   | useLiveData                                            | workspaces.test.tsx           |
| 12 | `/workspaces/$id`                  | `workspaces.$id.tsx`                  | `WorkspaceDetail`                  | useLiveData, Route.useParams                           | workspaces.test.tsx           |
| 13 | `/extensions/`                     | `extensions.index.tsx`                | Extension listing                  | Extension registry                                     | extensions-routes.test.tsx    |
| 14 | `/extensions/$extensionId`         | `extensions.$extensionId.tsx`         | Redirect to extension default view | Extension registry, Route.useParams                    | extensions-routes.test.tsx    |
| 15 | `/extensions/$extensionId/$viewId` | `extensions.$extensionId.$viewId.tsx` | Extension view host                | Extension registry, useExtensionData                   | extensions-routes.test.tsx    |
| 16 | `/extensions/trend-finder/engine`  | `extensions.trend-finder.engine.tsx`  | Engine Replay utility route        | useExtensionData, Trend Finder engine trace            | extensions-routes.test.tsx    |

Trend Finder creator-facing views are hosted through the extension route: `/extensions/trend-finder/trends`, `/extensions/trend-finder/workbench`, `/extensions/trend-finder/hidden-gems`, `/extensions/trend-finder/sources`, `/extensions/trend-finder/watchlist`, and `/extensions/trend-finder/brief`.

The Engine Replay utility is a dedicated file route at `/extensions/trend-finder/engine`. It is Trend Finder-scoped, but it is not a normal extension tab backed by the generic `/$viewId` route.

## Error Boundary Components

| Component           | Source       | Smoke Test           |
| ------------------- | ------------ | -------------------- |
| `NotFoundComponent` | `__root.tsx` | error-pages.test.tsx |
| `ErrorComponent`    | `__root.tsx` | error-pages.test.tsx |

## Route Tree Verification

`route-tree.test.ts` reads `src/routeTree.gen.ts` and verifies:

* All 16 expected route paths or nested path fragments exist.
* `FileRoutesByFullPath` has exactly 16 entries.
* `routeTree` is exported.
* Expected child route names exist in `rootRouteChildren`.

## Test Infrastructure

| File               | Purpose                                                                                |
| ------------------ | -------------------------------------------------------------------------------------- |
| `test-utils.tsx`   | Shared `renderRoute` helper with QueryClientProvider, afterEach cleanup, stubbed fetch |
| `vitest.config.ts` | Includes route, component, script, and extension test globs                            |

## Mocking Strategy

| Dependency                     | Mock Approach                                                 | Used By                                      |
| ------------------------------ | ------------------------------------------------------------- | -------------------------------------------- |
| `@tanstack/react-router`       | Stub `createFileRoute`, `Link`, `useRouter`, `useRouterState` | All route tests                              |
| `@/lib/use-live-data`          | Return `DEFAULT_LIVE_DATA` from `validate-live-data`          | All route tests                              |
| `@/extensions/registry`        | Stub enabled/disabled extension registries                    | extensions-routes.test.tsx                   |
| `recharts`                     | Stub `ResponsiveContainer`, `BarChart`, `Bar`, etc.           | skills.test.tsx                              |
| `@/components/memory-graph-3d` | Stub div component                                            | memory.test.tsx, home.test.tsx               |
| `@/components/usage-panel`     | Stub div component                                            | home.test.tsx, settings-share-setup.test.tsx |
| `@/components/app-sidebar`     | Stub nav element                                              | error-pages.test.tsx                         |
| `globalThis.fetch`             | Stub route-specific JSON responses                            | test-utils.tsx and focused route tests       |

## Coverage Summary

* **Generated routes verified**: 16/16 (100%)
* **Top-level route smoke coverage**: Present for every generated route family
* **Error components tested**: 2/2 (100%)
* **Route tree verified**: Yes
* **Total Vitest files**: 247 (127 under `src`, 120 under `scripts`)
* **Playwright E2E specs**: 11 under `tests/e2e/`
* **Playwright E2E coverage**: Present for home dashboard, memory graph, setup wizard, skills page, Hermes agent page, Claude Code agent page, OpenClaw agent page, Trend Finder extension flows, Engine Replay, static brief export, release hardening, and app-level smoke behavior.

### Agent Route Browser Coverage

| Route                 | E2E Spec                              | Browser Proof                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| --------------------- | ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `/agents/hermes`      | `tests/e2e/hermes-agent.spec.ts`      | Mocked Hermes bridge data, scoped layout, image loading, and mobile missing-state behavior without sensitive reads.                                                                                                                                                                                                                                                                                                                                                          |
| `/agents/claude-code` | `tests/e2e/claude-code-agent.spec.ts` | Mocked Mission Control bridge data through the shared Hermes contract, Mission Control assembly, focused goal and human-briefing drawer behavior, long-prompt wrapping, viewport-bounded layout, no horizontal overflow, and no Claude execution/shell/workspace calls. Also backed by focused route/unit proof in `src/routes/__tests__/agents.test.tsx`, `src/components/hermes/__tests__/hermes-mission-control.test.tsx`, and `src/routes/__tests__/route-tree.test.ts`. |
| `/agents/openclaw`    | `tests/e2e/openclaw-agent.spec.ts`    | Mocked OpenClaw read-only bridge data, mobile setup-required state without sensitive reads, demo mode, admin-gate unsupported preflight, route-scoped skin, image loading, no stale concept copy, no Trend Finder copy, and no horizontal overflow checks.                                                                                                                                                                                                                   |

### Trend Finder Utility Browser Coverage

| Route                             | E2E Spec                                       | Browser Proof                                                                                          |
| --------------------------------- | ---------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| `/extensions/trend-finder/engine` | `tests/e2e/trend-finder-engine-replay.spec.ts` | Engine Replay animation state, reference mode, reduced-motion behavior, and safe missing/stale states. |

## Known Gaps

| Gap                                                               | Reason                                                                                 | Future Session |
| ----------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------- |
| No visual regression screenshot baseline                          | Playwright E2E exists for agent pages and extension flows, but no visual diff baseline | Future session |
| Route tests are mostly smoke/contract oriented                    | Deep behavior is covered in focused component/lib tests                                | Future session |
| Extension route tests do not run every extension view interaction | Interaction coverage lives in Trend Finder focused tests and E2E                       | Future session |

Mobile/responsive layout assertions were addressed in earlier UI shell work and Trend Finder E2E. New route families should add route-tree coverage, a smoke test, and focused component or E2E coverage for non-trivial interaction.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ai-os-and-trend-finder.gitbook.io/ai-os-and-trend-finder-docs/docs/route-coverage.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
