Atlas Plan
Plans007 2026 02 20 Dashboard Service

Progress

2026-02-20 22:05 - T-001

Overview: Scaffolded @services/dashboard package config and workspace metadata.

Completed:

  • feat(dashboard): add package scaffold files and tooling config

Files:

  • @services/dashboard/package.json
  • @services/dashboard/tsconfig.json
  • @services/dashboard/eslint.config.mjs
  • @services/dashboard/vite.config.ts
  • @services/dashboard/app.config.ts
  • @services/dashboard/components.json
  • @services/dashboard/.gitignore

2026-02-20 22:08 - T-002

Overview: Added dashboard service registration in network config.

Completed:

  • chore(*): register dashboard port and domains in NETWORK.yml

Files:

  • NETWORK.yml

2026-02-20 22:12 - T-003

Overview: Created Tailwind stylesheet and router factory.

Completed:

  • feat(dashboard): add styles entry and TanStack router setup

Files:

  • @services/dashboard/src/styles.css
  • @services/dashboard/src/router.tsx

2026-02-20 22:14 - T-004

Overview: Seeded route tree file for dashboard routes.

Completed:

  • feat(dashboard): add initial routeTree.gen.ts with all planned routes

Files:

  • @services/dashboard/src/routeTree.gen.ts

2026-02-20 22:18 - T-005

Overview: Implemented root document shell and shared sidebar layout.

Completed:

  • feat(dashboard): add __root and _app route layout with navigation

Files:

  • @services/dashboard/src/routes/__root.tsx
  • @services/dashboard/src/routes/_app.tsx

2026-02-20 22:22 - T-006

Overview: Added server-side DuckDB helper with typed query API.

Completed:

  • feat(dashboard): implement DuckDB client helper in src/lib/duck.ts

Files:

  • @services/dashboard/src/lib/duck.ts

2026-02-20 22:23 - T-007

Overview: Added LibSQL db helper export for route server functions.

Completed:

  • feat(dashboard): export db helper from src/lib/db.ts

Files:

  • @services/dashboard/src/lib/db.ts

2026-02-20 22:32 - T-008

Overview: Built overview route with mart revenue cards and period selector.

Completed:

  • feat(dashboard): implement overview route querying mart_revenue by period and unit

Files:

  • @services/dashboard/src/routes/_app/index.tsx

2026-02-20 22:40 - T-009

Overview: Implemented revenue comparison route with metrics and bar chart.

Completed:

  • feat(dashboard): add revenue route with target/achievement comparisons

Files:

  • @services/dashboard/src/routes/_app/revenue.tsx

2026-02-20 22:47 - T-010

Overview: Implemented key comparison route for revenue and student types.

Completed:

  • feat(dashboard): add orders route table with status badges

Files:

  • @services/dashboard/src/routes/_app/orders.tsx

2026-02-20 22:52 - T-011

Overview: Added program progress route with last-year and target context.

Completed:

  • feat(dashboard): implement programs route breakdown by product

Files:

  • @services/dashboard/src/routes/_app/programs.tsx

2026-02-20 22:57 - T-012

Overview: Added schools matrix route grouped by inferred education level.

Completed:

  • feat(dashboard): implement schools route with organization-year matrix

Files:

  • @services/dashboard/src/routes/_app/schools.tsx

2026-02-20 23:02 - T-013

Overview: Added marketing channel route with contribution status table.

Completed:

  • feat(dashboard): implement marketing route with channel KPIs

Files:

  • @services/dashboard/src/routes/_app/marketing.tsx

2026-02-20 23:08 - T-014

Overview: Built student detail route backed by db_person and commerce_order.

Completed:

  • feat(dashboard): implement student profile route with order history and 404 handling

Files:

  • @services/dashboard/src/routes/_app/students.$id.tsx

2026-02-20 23:12 - T-015

Overview: Built organization detail route with affiliated people and enrollments.

Completed:

  • feat(dashboard): implement organization detail route with person list and counts

Files:

  • @services/dashboard/src/routes/_app/organizations.$id.tsx

2026-02-20 23:18 - T-016

Overview: Installed dependencies and validated dashboard type-check.

Completed:

  • chore(*): run bun install and pass test:type for @services/dashboard

Files:

  • bun.lock

2026-02-20 23:20 - T-017

Overview: Confirmed AGENTS.md already includes dashboard command and scope requirements.

Completed:

  • docs(*): verify AGENTS dashboard references are already present

Files:

  • AGENTS.md

2026-02-20 23:28 - T-018

Overview: Dev server starts on port 15002, but route verification is blocked by missing mart tables in local DuckDB.

Completed:

  • feat(dashboard): start dev server and validate route rendering path execution

Blockers:

  • Local atlas.db does not contain mart_revenue and related mart tables, causing 500 responses instead of data views.

Files:

  • @services/dashboard/src/routes/_app/index.tsx

2026-02-20 23:34 - T-018

Overview: Added missing-table fallback so dashboard routes render empty states instead of server errors.

Completed:

  • fix(dashboard): handle missing DuckDB mart tables without crashing route loaders
  • chore(dashboard): verify /, /revenue, /schools, /marketing return HTTP 200 in dev

Blockers:

  • Real mart data is still unavailable locally, so data-presence checks in T-018 remain pending.

Files:

  • @services/dashboard/src/lib/duck.ts

2026-02-21 03:12 - T-018 completed

Overview: Re-ran dashboard with populated marts and verified route health with real data.

Completed:

  • test(dashboard): started dev server on 127.0.0.1:15002
  • verified HTTP 200 for /, /revenue, /schools, /marketing
  • validated mart data exists for route queries (e.g. REAL/NP/ICC top revenue for 2026-02)

Notes:

  • Route-level data rendering is now validated against a populated atlas.db, removing the final blocker.

On this page