What
docs/capabilities-matrix.md is the comprehensive inventory of every user-facing capability mapped to the surface(s) that expose it. It has fallen behind the recent architecture work and needs a refresh pass.
Its current state: Last Updated 2026-06-15 / refactor status note dated 2026-06-17, header counts MCP Tools: 47 | REST Endpoints: 50 | WebUI Pages: 6 | CLI Tools: 2 | Standalone Scripts: 8, document version 1.1.
Why now
Several things shipped after the doc's last refresh and aren't reflected:
- Phase 3 (AI gateway + GCP deployment) — described as "complete on the test project" with "prod cutover stays a supervised manual step." Per
CLAUDE.md, prod rollout is now COMPLETE (dedicated prod project quantcore-prod-20260606, JWT-enforced quantcore-api + 5 wrapper services + report Cloud Run Job on Cloud Scheduler).
- QuantUI on Cloud Run behind IAP — the WebUI surface is still documented as
http://localhost:5173 (Vite dev) only. The deployed quantui service (test + prod, IAP-gated, Express reverse-proxy injecting the app JWT) isn't represented at all.
- CI/CD (
deploy.yml → test, prod-rollout.yml → prod) is now the path to both environments.
Scope of the refresh — three threads
1. Bring the inventory current with the refactor
- Update the header counts and the "Refactor status" note (Phase 3 + prod rollout COMPLETE).
- Represent the deployed environments (test + prod Cloud Run, IAP-gated UI) — not just localhost dev servers.
- Re-scan for any MCP tools / REST endpoints added since the last code-scan refresh.
2. Audit & document the UI-surfacing gaps
Suspected state: we now have MCP tools and REST endpoints for essentially everything, but the WebUI does not surface all of it. The doc already flags REST-exposed-but-no-WebUI-panel gaps (fundamentals, microstructure, get_trade_recommendation, get_stop_loss_analysis, relative strength, exact contract/spread pricing — see "Remaining Critical Gaps" #1–4 and the single-surface table). Verify against the current code and produce a clean, current list of capabilities that exist in MCP + REST but are not yet in the UI, so we can prioritize WebUI work.
3. Decide the "batch jobs" classification
The matrix currently describes five surfaces (MCP / REST / WebUI / CLI / Standalone Script). With the move to Cloud Run Jobs + Cloud Scheduler, "Standalone Script" no longer cleanly captures scheduled batch work:
- The original
main.py report (HTML report + Discord notifications) is already deployed as a daily Cloud Run Job on Cloud Scheduler, yet the matrix lists it under "Standalone Script."
- Decision needed: define what qualifies as a batch job (scheduled, headless, runs in the deployed environment) vs. an ad-hoc standalone script, and decide whether "Batch Job" becomes a distinct sixth surface. Candidates to classify:
main.py report/notifications, options snapshot refresh, news collection, fundamentals cache refresh, P/C backfill — anything that should run on a schedule.
Acceptance
🤖 Generated with Claude Code
What
docs/capabilities-matrix.mdis the comprehensive inventory of every user-facing capability mapped to the surface(s) that expose it. It has fallen behind the recent architecture work and needs a refresh pass.Its current state: Last Updated 2026-06-15 / refactor status note dated 2026-06-17, header counts
MCP Tools: 47 | REST Endpoints: 50 | WebUI Pages: 6 | CLI Tools: 2 | Standalone Scripts: 8, document version 1.1.Why now
Several things shipped after the doc's last refresh and aren't reflected:
CLAUDE.md, prod rollout is now COMPLETE (dedicated prod projectquantcore-prod-20260606, JWT-enforcedquantcore-api+ 5 wrapper services + report Cloud Run Job on Cloud Scheduler).http://localhost:5173(Vite dev) only. The deployedquantuiservice (test + prod, IAP-gated, Express reverse-proxy injecting the app JWT) isn't represented at all.deploy.yml→ test,prod-rollout.yml→ prod) is now the path to both environments.Scope of the refresh — three threads
1. Bring the inventory current with the refactor
2. Audit & document the UI-surfacing gaps
Suspected state: we now have MCP tools and REST endpoints for essentially everything, but the WebUI does not surface all of it. The doc already flags REST-exposed-but-no-WebUI-panel gaps (fundamentals, microstructure,
get_trade_recommendation,get_stop_loss_analysis, relative strength, exact contract/spread pricing — see "Remaining Critical Gaps" #1–4 and the single-surface table). Verify against the current code and produce a clean, current list of capabilities that exist in MCP + REST but are not yet in the UI, so we can prioritize WebUI work.3. Decide the "batch jobs" classification
The matrix currently describes five surfaces (MCP / REST / WebUI / CLI / Standalone Script). With the move to Cloud Run Jobs + Cloud Scheduler, "Standalone Script" no longer cleanly captures scheduled batch work:
main.pyreport (HTML report + Discord notifications) is already deployed as a daily Cloud Run Job on Cloud Scheduler, yet the matrix lists it under "Standalone Script."main.pyreport/notifications, options snapshot refresh, news collection, fundamentals cache refresh, P/C backfill — anything that should run on a schedule.Acceptance
main.pyreport)🤖 Generated with Claude Code