Browse documents

Development Status

Last updated: 2026-06-28 · Environment: Local dev against MongoDB Atlas · Build: Next.js 15 (App Router) + React 19

This page tracks the as-built state of the platform. Each phase below links to its plan document; the per-phase Status: line now reflects reality rather than the original schedule.

What "Shipped ✅" means here: the slice is built and live-verified in the dev environment against MongoDB Atlas (every feature was exercised end-to-end with seeded Kajima Technical Center data). It does not yet mean it has passed the formal Phase 9 production gate (external pentest, prod deployment, DR drill, training).

Phase status

PhaseTitleStatusNotes
0Foundation & SetupShipped ✅pnpm monorepo, Next.js 15 / React 19 / TS strict, Tailwind design system, Storybook
1Requirements & ArchitectureShipped ✅Zod schemas (@atlas/schemas), OpenAPI, multi-tenant model
2Core PlatformShipped ✅Tenant-scoped repositories, RBAC, API key + session auth, audit log, generic CRUD
3Data PlatformShipped ✅Sites→Buildings→Locations→Assets→Systems→Data Points, tags/ontology, connectors, telemetry, imports
4SFMS Core ModulesShipped ✅Work orders (lifecycle + checklist), maintenance plans, documents, search
5Dashboard SystemShipped ✅Drag-and-drop dashboards, widget library, templates, TV/War-room mode
6AI Second BrainShipped ✅Provider-agnostic LLM router, database-grounded chat, RAG, NL→Mongo query, agent loop, governance
7Workflow Creator StudioShipped ✅React Flow designer, in-process engine, approvals/inbox, cron/telemetry/webhook triggers
8Mobile + PWAShipped ✅Installable PWA, offline queue + sync, mobile inspection flows, push (VAPID-gated)
9QA, Security, Deployment & HandoverIn progress 🚧Continuous live verification per slice; formal pentest / prod deploy / DR drill / training pending

Module coverage (UI)

All primary entities have list + detail surfaces with pagination on every table and full CRUD where applicable (create / edit / delete), each permission-gated and audit-logged. Audit logs are intentionally read-only.

  • Operate — Work Orders, Maintenance, Documents, Approvals
  • Assets & Space — Sites, Buildings, Locations, Assets, Systems, Tags & Ontology
  • Data — Telemetry, Data Points, Imports, Connectors (+ Connections)
  • Intelligence — Dashboards, AI Chat, Workflows, Report Studio
  • Admin — Users, Roles, API Keys, Audit Log, Settings

Enhancements beyond the original plan

Delivered after the initial P0–P8 build, all live-verified:

  • Systems module — facility systems grouping 4,701 assets (HVAC, electrical, vertical transport, …) with asset/work-order roll-ups; System → Assets → Work Orders chain.
  • Asset ↔ Work Order linking — KTC work orders linked to assets by equipment keyword so the AI can retrieve and suggest; category re-derived from titles.
  • Full CRUD pass — edit forms + delete for systems, locations, tags, roles, dashboards, workflows; new CRUD pages for the previously page-less Sites, Buildings, Data Points, Connections; tenant Settings editor.
  • Pagination — a reusable server-rendered pager on every table listing.
  • Search — fixed result links to detail pages, added Systems, count + submit affordances.
  • AI Chat — database-grounded answers (work orders, assets, systems counts), scrollable history, and delete conversation (cascade).
  • Report Studio — 8 templates with filters + live preview, export to CSV and PDF (dependency-free PDF generator).
  • Maintenance builder — drag-and-drop, reorderable procedure steps that flow into each generated work order's checklist.
  • Internationalisation — tenant language switch with English / 日本語 / 简体中文; nav, top bar, and Dashboard / Work Orders / Assets translated; tr() falls back to English for untranslated strings.
  • Login lands on /dashboard; PWA service worker disabled in dev (was causing stale-bundle hydration errors).

Environment & constraints

  • Dev-only: runs in pnpm dev; no Docker / Redis / BullMQ — the workflow & maintenance engines run in-process.
  • MongoDB Atlas is the live datastore; seeded with real Kajima Technical Center data (8,319 assets, 2,649 work orders, 952 data points, 306 locations).
  • AI: provider-agnostic (OpenAI / Anthropic / Ollama / offline stub); keys in apps/web/.env.local.
  • Git commits are made manually by the project owner.

API reference

The HTTP API is documented from the Zod schemas: OpenAPI JSON at /api/openapi.json, Swagger UI at /api/docs, Scalar at /api/docs/scalar. Every data entity (sites, buildings, locations, systems, assets, data points, gateways, connections, tags, work orders, maintenance plans, dashboards, documents, users, roles, API keys, audit) is registered; feature endpoints (AI, Workflow Studio, Reports, Approvals) are described in their phase docs.

Phase 9 — QA & hardening status

Completed in this pass (details in the Production Readiness runbook):

  • Production build green (next build — lint + type-check + bundle); workspace type-check clean.
  • API audit — no cross-tenant leaks; auth + permission on every route. Fixed the one missing gate (dashboard-templates) and added an upfront gate on sync/replay.
  • Error handling hardened — Mongoose CastError / ValidationError / duplicate-key now map to 400 / 422 / 409 instead of 500.
  • Accessibility — focus-visible rings + aria-labels on the shared shell controls and the dialog close button.
  • Live smoke suite — 30/30 API checks (entity lists, auth enforcement, RBAC denials, validation, not-found).

Remaining for Phase 9 (production gate)

These are infrastructure & process deliverables outside the codebase — tracked in the Production Readiness runbook:

  • External penetration test; SAST/DAST/dependency scan + SBOM in CI.
  • Performance / soak testing against NFR targets.
  • Backup + restore + DR drill (documented RPO/RTO).
  • Production deployment pipeline (blue-green / canary) and observability/alerting.
  • Documentation completion, training, and hypercare.