Planning
Implementation briefs — one page per feature. Pick a page, implement in the listed package, update the roadmap.
Milestone 1 — Journal + module core
| Page | Package |
|---|---|
| Journal (SQLite) | internal/journal |
| Module runtime | internal/modules |
| HTTP ingest | modules/http-ingest (built-in) |
| Config loader | internal/config |
| Type catalog | internal/types |
Milestone 2 — MQTT + blob storage
| Page | Package |
|---|---|
| MQTT source | modules/mqtt-source |
| Blob store | internal/blob |
Milestone 3 — MCP query + gateway (complete)
| Page | Package |
|---|---|
| HTTP gateway | internal/gateway + modules |
| MCP query server | internal/query + modules/mcp-query |
| MCP tool registration | internal/modules |
| Network auth | internal/gateway + modules/http-gateway |
| Deferred capture (superseded) | — |
| Telegram source | modules/telegram-source |
| Processors and sinks | internal/modules + modules |
| CLI command registration | internal/modules + cmd/trove |
| Type introspection | modules/type-catalog |
Milestone 4 — Two-week live test (current)
Operational runbook — not a planning page:
Open decisions
| Page | Notes |
|---|---|
| Config loader | Default config file location (XDG vs /etc/trove) |
| MCP query server | Record-only MCP tools |
| Blob store | Backend priority after filesystem |
| Embeddings | Embedding model (local ONNX vs API) |
| Remote modules | Remote/edge RPC protocol shape |
Milestone 5a — Records layer
| Page | Package |
|---|---|
| Records layer | internal/records, internal/journal, internal/query |
| References and URIs | internal/journal, internal/records, internal/modules |
Later
| Page | Package |
|---|---|
| HA WebSocket source | external module |
| Remote modules | internal/modules |
| Embeddings / semantic search | internal/journal |
Template
Each planning page follows the same structure: goal, interfaces from spec, implementation notes, acceptance criteria, dependencies, open questions.