Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ Core (shared computation)
| result builders used by MCP, CLI, and operation descriptors
|\
| \-> Operation Registry
| typed descriptors, input schemas, CLI/MCP names, result wrappers
| typed descriptors, input schemas, MCP adapter, result wrappers
v
MCP (stdio) CLI (terminal/CI)
| 17 tools, 2 prompts, | 18 commands with text + JSON
Expand Down Expand Up @@ -81,7 +81,7 @@ runOperation(operation, codebaseGraph, input, context)
## Key Design Decisions

- **Dual interface**: MCP stdio for LLM agents, CLI subcommands for humans/CI. Both consume `src/core/`.
- **Operation registry foundation**: Analysis operations now have typed descriptors in `src/operations/` with operation names, CLI command names, MCP tool names, input schemas, and discriminated run results. CLI/MCP handlers still call `src/core/` directly until the adapter migration lands.
- **Operation registry foundation**: Analysis operations now have typed descriptors in `src/operations/` with operation names, CLI command names, MCP tool names, input schemas, and discriminated run results. MCP tool registration consumes those descriptors; CLI commands still call `src/core/` directly until the CLI adapter migration lands.
- **graphology**: In-memory graph with O(1) neighbor lookup. PageRank and betweenness computed via graphology-metrics.
- **Batch git churn**: Single `git log --all --name-only` call, parsed for all files. Avoids O(n) subprocess spawning.
- **Monorepo import resolution**: Root `tsconfig.json` path aliases and local `package.json` package names resolve to source files before graph construction.
Expand Down
4 changes: 2 additions & 2 deletions llms-full.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Core (shared computation)
| result builders used by MCP, CLI, and operation descriptors
|\
| \-> Operation Registry
| typed descriptors, input schemas, CLI/MCP names, result wrappers
| typed descriptors, input schemas, MCP adapter, result wrappers
v
MCP (stdio) + CLI
| MCP: 17 tools, 2 prompts, 3 resources for LLM agents
Expand Down Expand Up @@ -81,7 +81,7 @@ runOperation(operation, codebaseGraph, input, context)
## Key Design Decisions

- **graphology**: In-memory graph with O(1) neighbor lookup. PageRank and betweenness computed via graphology-metrics.
- **Operation registry foundation**: Analysis operations have typed descriptors in `src/operations/` with operation names, CLI command names, MCP tool names, input schemas, and discriminated run results. CLI/MCP handlers still call `src/core/` directly until the adapter migration lands.
- **Operation registry foundation**: Analysis operations have typed descriptors in `src/operations/` with operation names, CLI command names, MCP tool names, input schemas, and discriminated run results. MCP tool registration consumes those descriptors; CLI commands still call `src/core/` directly until the CLI adapter migration lands.
- **Batch git churn**: Single `git log --all --name-only` call, parsed for all files. Avoids O(n) subprocess spawning.
- **Dead export detection**: Cross-references parsed exports against edge symbol lists. May miss `import *` or re-exports.
- **Graceful degradation**: Non-git dirs get churn=0, no-test codebases get coverage=false. Never crashes.
Expand Down
9 changes: 6 additions & 3 deletions roadmap.md
Original file line number Diff line number Diff line change
Expand Up @@ -267,14 +267,17 @@ Collapse CLI + MCP operation duplication into one descriptor registry before add
- Add `runOperation(...)` discriminated result/error wrapper for descriptor-level tests.
- Type MCP next-step hint keys against the operation-name union.
- Add CH-P1-01 coverage for registry -> CLI JSON -> MCP JSON overview parity.
- Reuse registry descriptors and input shapes in MCP tool registration.
- Route MCP operation success/error envelopes through `runOperation(...)` while preserving existing `nextSteps` and `isError` contracts.
- Add MCP registry parity coverage for representative operation descriptor runs.

**Remaining:**

- Reuse registry schemas in CLI coercion and MCP tool registration.
- Move shared CLI/MCP failures over descriptor-level validation errors.
- Reuse registry schemas in CLI coercion.
- Move CLI failures over descriptor-level validation errors.
- Use one graph-load pipeline with progress callbacks.
- Move text/SARIF/markdown formatting over result objects into formatters.
- Expand CH-P1-01 from overview to every operation.
- Expand CH-P1-01 from overview/representative MCP operations to every operation.
- Add CH-P1-02 coverage for success, invalid input, parse failure, and cache reuse through registry adapters.

### Type/Shape Layer
Expand Down
Loading
Loading