ZoomProp

Product dashboard

Product dashboard

Last updated 5/3/2026

ZoomProp — Product Dashboard

Repository: zoomprop/zp-alpha · Generated: 2025-08-XX · Version: 0.1.0


Lifecycle Gate Status

GateStageStatusSignal
v0.1 SparkConcept validated✅ CompleteAuth, onboarding, and core property discovery shipped
v0.2 BlueprintArchitecture defined✅ Completecontext/ARCHITECTURE.md, LLM layer, Elasticsearch, API surface documented
v0.3 FoundationCore infra live✅ CompleteCI/CD via .github/workflows/, Clerk auth, Mapbox, OpenTelemetry wired
v0.4 AlphaFeature-complete alpha🟡 In Progress50 active API routes, 100 UI components; TypeScript/ESLint build errors suppressed (next.config.ts)
v0.5 BetaStabilisation🔴 Not StartedTest coverage incomplete; multiple open PRs with visual and functional regressions
v1.0 GrowthProduction launch🔴 Not StartedPending beta gate clearance

Current Gate: v0.4 Alpha — In Progress. The product has a functional AI-powered property intelligence platform with chat, discovery, portfolio analytics, and alerting. The primary blocker for Beta is stabilising test coverage and resolving the 8 open PRs carrying fix-category work.


Repository Statistics

MetricCountLocation / Notes
Total files500zoomprop/zp-alpha root
API routes (active)50src/app/api/**
API routes (archived)~65archive/legacy-api-backup/
UI components100src/app/(auth)/, src/app/(dashboard)/
Test files (TS/TSX)86src/, tests/
Test files (Python)~6api_tests/ (pytest suite)
Infrastructure files19.github/workflows/, zp-fetch-service/Dockerfile
Context / planning docs~55context/, chat-onboarding/
CI workflows4alert-testing.yml, pr-checks.yml, test-coverage.yml, test.yml
Onboarding wizard steps9src/app/(auth)/onboarding/_components/steps/

Squad / Agent Status

IDSquad / AgentScopeStatusCurrent WorkBlocker
SQUAD-01Platform CoreAuth, session, org management🟢 ActivePR #463 — staging CI baseline + orchestrator cost guardsNone
SQUAD-02AI & Chat/api/ai/* (14 routes), LangGraph, personas🟢 ActivePR #462 — chat-artifact action plans M1–M5PR #378, #358, #362 open fixes pending
SQUAD-03Discovery & MapsElasticsearch, Mapbox, region pages🟡 UnstablePR #459 — discover maps fix mergedPR #396 mobile fixes still open
SQUAD-04Portfolio & Analytics/api/analytics/*, cap-rate engine, watchlist🟡 In ProgressPR #218 — watchlist + dashboard fixes (commit 218b8ea)Dashboard/watchlist regression in recent commits
SQUAD-05Alerts & Notifications/api/alerts/* (8 routes), Knock integration🟢 ActiveAlert testing CI workflow active
SQUAD-06Automation & Pipelines/api/automation/*, board-config, pipelines🟡 Plannedcontext/PIPELINES_IMPLEMENTATION_ROADMAP.md in progressImplementation not yet started
SQUAD-07Design System & QATheme, Radix UI, accessibility tests🔴 BlockedPR #458 — theme persistence fix (open)use-theme wiring to ThemeProvider incomplete
SQUAD-08Infra & DevOpsDocker, Next.js config, CI guards🟢 ActivePR #464 — M1 contract foundations mergedTypeScript/ESLint build errors suppressed in next.config.ts

Active EPICs

EPIC IDTitleRoutes / ComponentsStatusGate TargetNotes
EPIC-01AI Property Intelligence/api/ai/property-analysis, /api/ai/commercial-analysis, /api/ai/offer-analysis, /api/ai/maintenance-analysis, /api/actions/analyze-property-investigation🟡 In Progressv0.4LangGraph + @langchain/langgraph multi-agent; 14 AI routes active
EPIC-02Conversational Chat Platform/api/ai/chat, /api/ai/conversations, /api/ai/conversations/:id, /api/ai/intent, /api/ai/generate-title, /api/ai/suggestions🟡 In Progressv0.4Context: context/CHAT_SYSTEM_OVERVIEW.md; PRs #362, #378, #358 still open
EPIC-03Property Discovery & Search/api/analytics/markets, Elasticsearch (@elastic/elasticsearch ^8.18.2), Mapbox Draw🟡 Unstablev0.4Maps fix merged (PR #459); mobile issues open (PR #396)
EPIC-04Portfolio & Investment Analytics/api/analytics/portfolio, /api/analytics/performance, /api/analytics/appreciation-distribution, cap-rate Zod schema🟡 In Progressv0.4Cap-rate engine with CapRateCalculationSchema; watchlist regression active
EPIC-05Alert & Notification System/api/alerts/* (8 routes), @knocklabs/react ^0.7.25, 9 alert UI components🟢 Stablev0.5CI alert-testing workflow live; API tests in tests/api/alerts/
EPIC-06Onboarding & Identity9-step wizard (geographic-focus, investment-interests, billing-setup, identity-verification, etc.), Clerk (@clerk/nextjs ^6.23.1)🟢 Stablev0.4Middesk business verification in legacy archive; free query grant added (commit 3a74c26)
EPIC-07Automation & Deal Pipelines/api/automation/analytics, /api/automation/board-config, @dnd-kit/sortable ^10.0.0🔴 Earlyv0.5Roadmap documented in context/PIPELINES_IMPLEMENTATION_ROADMAP.md
EPIC-08Design System & Accessibilitycomponents.json, Radix UI full suite, tests/accessibility/, theme audit runner at tools/scripts/theme-audit-runner.ts🔴 Blockedv0.5Theme persistence broken (PR #458); npm run theme:audit available
EPIC-09Analytics Dashboard/api/analytics-dashboard, /api/analytics/properties, /api/ai/performance-monitoring🟡 In Progressv0.5Chart theme-toggle bug fixed (commit 525ab5e); full wiring pending
EPIC-10Freemium & MonetisationFree monthly queries grant (/api — commit 3a74c26), billing-setup onboarding step🟡 In Progressv0.5Free tier context integration shipped; Stripe routes in legacy archive

KPIs

KPI IDMetricDescriptionCurrentTargetStatus
KPI-01API Surface CoverageActive routes as % of documented planned routes (50 active vs. ~115 legacy+active total)43%70%🔴 Below target
KPI-02Test File RatioTest files per 100 source files (86 / 500 × 100)17.230.0🔴 Below target
KPI-03AI Route DepthNumber of distinct AI capability routes under /api/ai/1418🟡 In progress
KPI-04Onboarding Completion StepsFully implemented onboarding wizard steps out of planned total9 / 99 / 9🟢 On target
KPI-05Open Regression PRsCount of open PRs with fix: or regression scope8≤ 2🔴 Needs attention
KPI-06CI Workflow CoverageActive GitHub Actions workflows covering product areas46🟡 In progress
KPI-07Cap-Rate Engine Validation CoverageZod-validated financial fields in CapRateCalculationSchema6 fields6 fields🟢 Complete
KPI-08Alert Route Test CoverageAPI test files covering /api/alerts/* routes3 / 8 routes8 / 8🔴 Below target
KPI-09Accessibility Test FilesDedicated a11y test files in tests/accessibility/25🟡 In progress
KPI-10Image Domain AllowlistExternal image domains configured in next.config.ts21 domains🟢 Stable
KPI-11Build HealthTypeScript and ESLint errors suppressed in production build (ignoreBuildErrors: true)⚠️ Suppressed0 suppressed🔴 Risk flag
KPI-12Free Tier Query GrantMonthly free AI query allotment shipped for unpaid usersShippedShipped🟢 Complete
KPI-13Persona / Search Template CoverageDistinct AI persona and search template endpoints live2 (/api/ai/personas, /api/ai-search-templates)5🟡 In progress
KPI-14Portfolio Analytics RoutesLive analytics endpoints under /api/analytics/57🟡 In progress
KPI-15Theme Audit AutomationTheme audit runner available via npm run theme:auditAvailablePassing🔴 Blocked (PR #458)

Health Indicators

🟢 Healthy

  • Alert system — 8 API routes active, Knock notification integration complete, CI workflow alert-testing.yml operational, 3 test files covering configure/trigger/route.
  • Authentication & onboarding — Clerk v6 integrated, 9-step wizard fully implemented, auth guard tests passing (src/components/core/auth/__tests__/auth-guard.test.tsx).
  • Cap-rate financial engineCapRateCalculationSchema (Zod) validates all 6 financial fields with defaults, type exports clean.
  • Developer tooling — Husky pre-commit, Prettier, Vitest + Playwright dual-layer test strategy, 4 CI workflows, structured PR templates under .github/PULL_REQUEST_TEMPLATE/.

🟡 Watch

  • AI chat regressions — 5 open PRs (#378, #358, #362, #396, #379) address chat display, icon, and mobile rendering issues. Merging cadence is slow relative to the rate of new features.
  • Discovery & maps — Mapbox Draw + Google Maps dual integration; maps fix merged (PR #459) but mobile rendering (PR #396) unresolved. Mock at tests/__mocks__/mapbox-gl.ts confirms test isolation, not live coverage.
  • Portfolio / watchlist — Recent commits (218b8ea) indicate active regression; WATCHLIST_ACTION_PLAN.md exists but implementation status is unclear.
  • Automation pipelines@dnd-kit/sortable dependency is live but /api/automation/board-config has no corresponding test file yet.

🔴 Risk

  • Build integritynext.config.ts sets ignoreBuildErrors: true and eslint.ignoreDuringBuilds: true. Production builds succeed despite type and lint errors. This masks real defects and must be resolved before v0.5 Beta gate.
  • Test coverage gap — 86 test files against 500 total files yields 17.2% test file ratio. tests/api/ covers only 10 route families out of 50 active routes (20%).
  • Theme system — PR #458 (fix theme persistence, wire use-theme to ThemeProvider) is open with no merge date. theme:audit script exists but cannot pass while persistence is broken. Blocks EPIC-08.
  • Legacy archive sprawl — ~65 routes in archive/legacy-api-backup/ including Plaid, HelloSign, Middesk, Stripe, and crowdfunding handlers. No documented deprecation or migration plan in active context/ docs, creating ambiguity about intended scope.
  • TypeScript path hygienetsconfig.json uses "paths": { "@/*": ["./src/*"] } with strict: true, but build error suppression means strict mode violations are not surfaced in CI.

Dashboard reflects repository state at commit 08ce25f. Refresh after each sprint close.

Product dashboard · ZoomProp | Midwest