@mcp-graph-workflow/mcp-graph 5.2.0 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/router.d.ts +0 -1
- package/dist/api/router.d.ts.map +1 -1
- package/dist/api/router.js +3 -4
- package/dist/api/router.js.map +1 -1
- package/dist/api/routes/benchmark.d.ts.map +1 -1
- package/dist/api/routes/benchmark.js +47 -2
- package/dist/api/routes/benchmark.js.map +1 -1
- package/dist/api/routes/code-graph.d.ts +12 -0
- package/dist/api/routes/code-graph.d.ts.map +1 -0
- package/dist/api/routes/code-graph.js +154 -0
- package/dist/api/routes/code-graph.js.map +1 -0
- package/dist/api/routes/folder.d.ts +1 -4
- package/dist/api/routes/folder.d.ts.map +1 -1
- package/dist/api/routes/folder.js +19 -17
- package/dist/api/routes/folder.js.map +1 -1
- package/dist/api/routes/integrations.d.ts.map +1 -1
- package/dist/api/routes/integrations.js +60 -16
- package/dist/api/routes/integrations.js.map +1 -1
- package/dist/api/routes/knowledge.js +1 -1
- package/dist/api/routes/knowledge.js.map +1 -1
- package/dist/api/routes/skills.d.ts.map +1 -1
- package/dist/api/routes/skills.js +57 -3
- package/dist/api/routes/skills.js.map +1 -1
- package/dist/cli/commands/index-cmd.js +5 -5
- package/dist/cli/commands/index-cmd.js.map +1 -1
- package/dist/core/code/code-indexer.d.ts +20 -0
- package/dist/core/code/code-indexer.d.ts.map +1 -0
- package/dist/core/code/code-indexer.js +161 -0
- package/dist/core/code/code-indexer.js.map +1 -0
- package/dist/core/code/code-search.d.ts +16 -0
- package/dist/core/code/code-search.d.ts.map +1 -0
- package/dist/core/code/code-search.js +77 -0
- package/dist/core/code/code-search.js.map +1 -0
- package/dist/core/code/code-store.d.ts +35 -0
- package/dist/core/code/code-store.d.ts.map +1 -0
- package/dist/core/code/code-store.js +228 -0
- package/dist/core/code/code-store.js.map +1 -0
- package/dist/core/code/code-types.d.ts +209 -0
- package/dist/core/code/code-types.d.ts.map +1 -0
- package/dist/core/code/code-types.js +94 -0
- package/dist/core/code/code-types.js.map +1 -0
- package/dist/core/code/graph-traversal.d.ts +27 -0
- package/dist/core/code/graph-traversal.d.ts.map +1 -0
- package/dist/core/code/graph-traversal.js +122 -0
- package/dist/core/code/graph-traversal.js.map +1 -0
- package/dist/core/code/process-detector.d.ts +11 -0
- package/dist/core/code/process-detector.d.ts.map +1 -0
- package/dist/core/code/process-detector.js +65 -0
- package/dist/core/code/process-detector.js.map +1 -0
- package/dist/core/code/ts-analyzer.d.ts +12 -0
- package/dist/core/code/ts-analyzer.d.ts.map +1 -0
- package/dist/core/code/ts-analyzer.js +331 -0
- package/dist/core/code/ts-analyzer.js.map +1 -0
- package/dist/core/config/ai-memory-generator.d.ts.map +1 -1
- package/dist/core/config/ai-memory-generator.js +149 -61
- package/dist/core/config/ai-memory-generator.js.map +1 -1
- package/dist/core/config/config-loader.d.ts.map +1 -1
- package/dist/core/config/config-loader.js +2 -10
- package/dist/core/config/config-loader.js.map +1 -1
- package/dist/core/config/config-schema.d.ts +1 -2
- package/dist/core/config/config-schema.d.ts.map +1 -1
- package/dist/core/config/config-schema.js +2 -3
- package/dist/core/config/config-schema.js.map +1 -1
- package/dist/core/context/compact-context.d.ts +51 -0
- package/dist/core/context/compact-context.d.ts.map +1 -1
- package/dist/core/context/compact-context.js +292 -0
- package/dist/core/context/compact-context.js.map +1 -1
- package/dist/core/context/context-assembler.d.ts +1 -1
- package/dist/core/context/context-assembler.js +1 -1
- package/dist/core/doctor/doctor-checks.d.ts +1 -1
- package/dist/core/doctor/doctor-checks.js +21 -21
- package/dist/core/doctor/doctor-checks.js.map +1 -1
- package/dist/core/insights/bottleneck-detector.js +1 -1
- package/dist/core/insights/bottleneck-detector.js.map +1 -1
- package/dist/core/integrations/enriched-context.d.ts +10 -6
- package/dist/core/integrations/enriched-context.d.ts.map +1 -1
- package/dist/core/integrations/enriched-context.js +35 -35
- package/dist/core/integrations/enriched-context.js.map +1 -1
- package/dist/core/integrations/integration-orchestrator.js +2 -2
- package/dist/core/integrations/integration-orchestrator.js.map +1 -1
- package/dist/core/integrations/mcp-deps-installer.d.ts +1 -1
- package/dist/core/integrations/mcp-deps-installer.d.ts.map +1 -1
- package/dist/core/integrations/mcp-deps-installer.js +1 -60
- package/dist/core/integrations/mcp-deps-installer.js.map +1 -1
- package/dist/core/integrations/mcp-servers-config.d.ts +1 -1
- package/dist/core/integrations/mcp-servers-config.d.ts.map +1 -1
- package/dist/core/integrations/mcp-servers-config.js +0 -17
- package/dist/core/integrations/mcp-servers-config.js.map +1 -1
- package/dist/core/integrations/tool-status.d.ts +8 -3
- package/dist/core/integrations/tool-status.d.ts.map +1 -1
- package/dist/core/integrations/tool-status.js +38 -48
- package/dist/core/integrations/tool-status.js.map +1 -1
- package/dist/core/memory/memory-migrator.d.ts +15 -0
- package/dist/core/memory/memory-migrator.d.ts.map +1 -0
- package/dist/core/memory/memory-migrator.js +64 -0
- package/dist/core/memory/memory-migrator.js.map +1 -0
- package/dist/core/memory/memory-reader.d.ts +30 -0
- package/dist/core/memory/memory-reader.d.ts.map +1 -0
- package/dist/core/memory/memory-reader.js +106 -0
- package/dist/core/memory/memory-reader.js.map +1 -0
- package/dist/core/planner/lifecycle-phase.d.ts +1 -0
- package/dist/core/planner/lifecycle-phase.d.ts.map +1 -1
- package/dist/core/planner/lifecycle-phase.js +11 -8
- package/dist/core/planner/lifecycle-phase.js.map +1 -1
- package/dist/core/rag/memory-indexer.d.ts +16 -0
- package/dist/core/rag/memory-indexer.d.ts.map +1 -0
- package/dist/core/rag/{serena-indexer.js → memory-indexer.js} +12 -12
- package/dist/core/rag/memory-indexer.js.map +1 -0
- package/dist/core/rag/{serena-rag-query.d.ts → memory-rag-query.d.ts} +11 -9
- package/dist/core/rag/memory-rag-query.d.ts.map +1 -0
- package/dist/core/rag/{serena-rag-query.js → memory-rag-query.js} +18 -15
- package/dist/core/rag/memory-rag-query.js.map +1 -0
- package/dist/core/rag/skill-indexer.d.ts +16 -0
- package/dist/core/rag/skill-indexer.d.ts.map +1 -0
- package/dist/core/rag/skill-indexer.js +98 -0
- package/dist/core/rag/skill-indexer.js.map +1 -0
- package/dist/core/skills/built-in-skills.d.ts +26 -0
- package/dist/core/skills/built-in-skills.d.ts.map +1 -0
- package/dist/core/skills/built-in-skills.js +203 -0
- package/dist/core/skills/built-in-skills.js.map +1 -0
- package/dist/core/store/knowledge-store.d.ts +1 -1
- package/dist/core/store/knowledge-store.js +1 -1
- package/dist/core/store/migrations.d.ts.map +1 -1
- package/dist/core/store/migrations.js +89 -0
- package/dist/core/store/migrations.js.map +1 -1
- package/dist/core/store/tool-token-store.d.ts +39 -0
- package/dist/core/store/tool-token-store.d.ts.map +1 -0
- package/dist/core/store/tool-token-store.js +79 -0
- package/dist/core/store/tool-token-store.js.map +1 -0
- package/dist/mcp/app-factory.d.ts +0 -1
- package/dist/mcp/app-factory.d.ts.map +1 -1
- package/dist/mcp/app-factory.js +2 -2
- package/dist/mcp/app-factory.js.map +1 -1
- package/dist/mcp/lifecycle-wrapper.d.ts +1 -0
- package/dist/mcp/lifecycle-wrapper.d.ts.map +1 -1
- package/dist/mcp/lifecycle-wrapper.js +21 -0
- package/dist/mcp/lifecycle-wrapper.js.map +1 -1
- package/dist/mcp/server.js +19 -14
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools/index.d.ts.map +1 -1
- package/dist/mcp/tools/index.js +4 -0
- package/dist/mcp/tools/index.js.map +1 -1
- package/dist/mcp/tools/list-skills.d.ts +7 -0
- package/dist/mcp/tools/list-skills.d.ts.map +1 -0
- package/dist/mcp/tools/list-skills.js +68 -0
- package/dist/mcp/tools/list-skills.js.map +1 -0
- package/dist/mcp/tools/memory.d.ts +8 -0
- package/dist/mcp/tools/memory.d.ts.map +1 -0
- package/dist/mcp/tools/memory.js +106 -0
- package/dist/mcp/tools/memory.js.map +1 -0
- package/dist/mcp/tools/reindex-knowledge.d.ts.map +1 -1
- package/dist/mcp/tools/reindex-knowledge.js +11 -7
- package/dist/mcp/tools/reindex-knowledge.js.map +1 -1
- package/dist/schemas/knowledge.schema.d.ts +4 -0
- package/dist/schemas/knowledge.schema.d.ts.map +1 -1
- package/dist/schemas/knowledge.schema.js +1 -1
- package/dist/schemas/knowledge.schema.js.map +1 -1
- package/dist/web/dashboard/dist/assets/benchmark-tab-B5Sr8Cah.js +1 -0
- package/dist/web/dashboard/dist/assets/constants-kpH_c6vY.js +1 -0
- package/dist/web/dashboard/dist/assets/gitnexus-tab-DqmbSdzV.js +430 -0
- package/dist/web/dashboard/dist/assets/graph-tab-BKns5HdW.js +1 -0
- package/dist/web/dashboard/dist/assets/graph-utils-BxUWNvsI.js +7 -0
- package/dist/web/dashboard/dist/assets/index-CZOiKbTP.js +53 -0
- package/dist/web/dashboard/dist/assets/index-Dd4vKyDX.js +17 -0
- package/dist/web/dashboard/dist/assets/index-xyMN-_UV.css +1 -0
- package/dist/web/dashboard/dist/assets/insights-tab-B1kPckBM.js +52 -0
- package/dist/web/dashboard/dist/assets/{logs-tab-Cxpcv_ni.js → logs-tab-BWfsrRlB.js} +1 -1
- package/dist/web/dashboard/dist/assets/memories-tab-D3zm-1Sq.js +1 -0
- package/dist/web/dashboard/dist/assets/prd-backlog-tab-DXP4dFP-.js +1 -0
- package/dist/web/dashboard/dist/assets/skills-tab-CAlVL80S.js +1 -0
- package/dist/web/dashboard/dist/index.html +2 -2
- package/package.json +2 -2
- package/dist/api/routes/gitnexus.d.ts +0 -12
- package/dist/api/routes/gitnexus.d.ts.map +0 -1
- package/dist/api/routes/gitnexus.js +0 -164
- package/dist/api/routes/gitnexus.js.map +0 -1
- package/dist/core/integrations/gitnexus-launcher.d.ts +0 -67
- package/dist/core/integrations/gitnexus-launcher.d.ts.map +0 -1
- package/dist/core/integrations/gitnexus-launcher.js +0 -268
- package/dist/core/integrations/gitnexus-launcher.js.map +0 -1
- package/dist/core/integrations/gitnexus-queries.d.ts +0 -55
- package/dist/core/integrations/gitnexus-queries.d.ts.map +0 -1
- package/dist/core/integrations/gitnexus-queries.js +0 -168
- package/dist/core/integrations/gitnexus-queries.js.map +0 -1
- package/dist/core/integrations/serena-reader.d.ts +0 -18
- package/dist/core/integrations/serena-reader.d.ts.map +0 -1
- package/dist/core/integrations/serena-reader.js +0 -68
- package/dist/core/integrations/serena-reader.js.map +0 -1
- package/dist/core/rag/serena-indexer.d.ts +0 -16
- package/dist/core/rag/serena-indexer.d.ts.map +0 -1
- package/dist/core/rag/serena-indexer.js.map +0 -1
- package/dist/core/rag/serena-rag-query.d.ts.map +0 -1
- package/dist/core/rag/serena-rag-query.js.map +0 -1
- package/dist/web/dashboard/dist/assets/benchmark-tab-DE6hAHVG.js +0 -1
- package/dist/web/dashboard/dist/assets/constants-BIEJOBya.js +0 -1
- package/dist/web/dashboard/dist/assets/gitnexus-tab-DsBjJHx8.js +0 -312
- package/dist/web/dashboard/dist/assets/graph-tab-C09DzeZ_.js +0 -1
- package/dist/web/dashboard/dist/assets/graph-utils-D4LFspTf.js +0 -23
- package/dist/web/dashboard/dist/assets/index-B2fTJ4AS.js +0 -53
- package/dist/web/dashboard/dist/assets/index-CkqEqKiH.css +0 -1
- package/dist/web/dashboard/dist/assets/insights-tab-Bm7CDckb.js +0 -1
- package/dist/web/dashboard/dist/assets/prd-backlog-tab-X84Rj-IB.js +0 -1
- package/dist/web/dashboard/dist/assets/serena-tab-BunULNvw.js +0 -1
|
@@ -4,100 +4,188 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export const MARKER_START = "<!-- mcp-graph:start -->";
|
|
6
6
|
export const MARKER_END = "<!-- mcp-graph:end -->";
|
|
7
|
-
const
|
|
7
|
+
const TOOL_TABLE_FULL = `#### Projeto & Grafo
|
|
8
|
+
|
|
9
|
+
| Tool | Quando usar |
|
|
10
|
+
|------|-------------|
|
|
11
|
+
| \`init\` | Inicializar grafo do projeto (cria DB, AI memory files, detecta MCPs) |
|
|
12
|
+
| \`list\` | Listar nodes do grafo (filtrar por tipo/status/parent) |
|
|
13
|
+
| \`show\` | Ver detalhes de um node específico (metadata, deps, knowledge) |
|
|
14
|
+
| \`search\` | Busca full-text no grafo (FTS5 + BM25 ranking) |
|
|
15
|
+
| \`export\` | Exportar grafo (JSON completo ou Mermaid diagram) |
|
|
16
|
+
| \`snapshot\` | Criar/restaurar snapshots do grafo (backup/rollback) |
|
|
17
|
+
| \`metrics\` | Estatísticas do grafo (\`stats\`) ou velocidade por sprint (\`velocity\`) |
|
|
18
|
+
|
|
19
|
+
#### Nodes & Edges
|
|
20
|
+
|
|
21
|
+
| Tool | Quando usar |
|
|
8
22
|
|------|-------------|
|
|
9
|
-
| \`
|
|
10
|
-
| \`
|
|
11
|
-
| \`
|
|
12
|
-
| \`show\` | Ver detalhes de um node específico |
|
|
13
|
-
| \`next\` | Próxima task recomendada (prioridade + dependências + knowledge coverage + TDD hints) |
|
|
14
|
-
| \`context\` | Contexto comprimido da task (token-efficient) |
|
|
15
|
-
| \`update_status\` | Mudar status de um node (backlog→ready→in_progress→done) |
|
|
16
|
-
| \`add_node\` | Criar node manualmente |
|
|
17
|
-
| \`update_node\` | Atualizar campos de um node |
|
|
18
|
-
| \`delete_node\` | Remover node do grafo |
|
|
19
|
-
| \`edge\` | Criar/remover relações entre nodes |
|
|
20
|
-
| \`analyze\` | Analisar grafo (qualidade, escopo, riscos, dependências, decomposição) |
|
|
21
|
-
| \`search\` | Busca full-text no grafo (FTS5 + BM25) |
|
|
22
|
-
| \`rag_context\` | Contexto RAG com knowledge base |
|
|
23
|
-
| \`plan_sprint\` | Gerar relatório de planejamento de sprint |
|
|
24
|
-
| \`metrics\` | Métricas do projeto (stats ou velocity) |
|
|
25
|
-
| \`export\` | Exportar grafo (JSON ou Mermaid) |
|
|
26
|
-
| \`snapshot\` | Criar/restaurar snapshots do grafo |
|
|
23
|
+
| \`add_node\` | Criar node manualmente (task, milestone, phase, epic) |
|
|
24
|
+
| \`update_node\` | Atualizar campos de um node (title, description, AC, tags) |
|
|
25
|
+
| \`delete_node\` | Remover node do grafo (cascata em filhos) |
|
|
27
26
|
| \`move_node\` | Mover node para outro parent |
|
|
28
|
-
| \`clone_node\` | Clonar node com filhos |
|
|
29
|
-
| \`
|
|
30
|
-
| \`
|
|
31
|
-
| \`
|
|
27
|
+
| \`clone_node\` | Clonar node com filhos (deep copy) |
|
|
28
|
+
| \`edge\` | Criar/remover relações entre nodes (depends_on, blocks, related_to) |
|
|
29
|
+
| \`update_status\` | Mudar status de um node (backlog\u2192ready\u2192in_progress\u2192done) |
|
|
30
|
+
| \`bulk_update_status\` | Atualizar status de m\u00FAltiplos nodes de uma vez |
|
|
31
|
+
|
|
32
|
+
#### PRD & Planejamento
|
|
33
|
+
|
|
34
|
+
| Tool | Quando usar |
|
|
35
|
+
|------|-------------|
|
|
36
|
+
| \`import_prd\` | Importar PRD \u2192 segmentar \u2192 classificar \u2192 extrair \u2192 inferir deps \u2192 criar grafo + indexar knowledge |
|
|
37
|
+
| \`plan_sprint\` | Gerar relat\u00F3rio de planejamento de sprint (capacity, velocity, recomenda\u00E7\u00F5es) |
|
|
38
|
+
| \`analyze\` | 24 modos de an\u00E1lise por fase do lifecycle (ver modos abaixo) |
|
|
39
|
+
| \`set_phase\` | For\u00E7ar/resetar fase do lifecycle (strict/advisory, gate checks) |
|
|
40
|
+
|
|
41
|
+
#### Contexto & RAG
|
|
42
|
+
|
|
43
|
+
| Tool | Quando usar |
|
|
44
|
+
|------|-------------|
|
|
45
|
+
| \`next\` | Pr\u00F3xima task recomendada (prioridade + deps + knowledge coverage 0-1 + TDD hints + velocity) |
|
|
46
|
+
| \`context\` | Contexto comprimido da task (token-efficient, ~73% redu\u00E7\u00E3o) |
|
|
47
|
+
| \`rag_context\` | Contexto RAG phase-aware (tiers: summary/standard/deep, budget 60/30/10) |
|
|
48
|
+
| \`reindex_knowledge\` | Rebuild completo do \u00EDndice de knowledge (BM25 + TF-IDF) |
|
|
49
|
+
| \`sync_stack_docs\` | Sincronizar docs das libs do projeto via Context7 |
|
|
50
|
+
|
|
51
|
+
#### Mem\u00F3rias do Projeto
|
|
52
|
+
|
|
53
|
+
| Tool | Quando usar |
|
|
54
|
+
|------|-------------|
|
|
55
|
+
| \`write_memory\` | Escrever mem\u00F3ria em workflow-graph/memories/{name}.md (auto-indexa no RAG) |
|
|
56
|
+
| \`read_memory\` | Ler conte\u00FAdo de uma mem\u00F3ria espec\u00EDfica |
|
|
57
|
+
| \`list_memories\` | Listar todas as mem\u00F3rias dispon\u00EDveis |
|
|
58
|
+
| \`delete_memory\` | Remover mem\u00F3ria do filesystem e do knowledge store |
|
|
59
|
+
|
|
60
|
+
#### Valida\u00E7\u00E3o
|
|
61
|
+
|
|
62
|
+
| Tool | Quando usar |
|
|
63
|
+
|------|-------------|
|
|
64
|
+
| \`validate_task\` | Validar com Playwright (A/B comparison, CSS selector scoping, auto-index knowledge) |
|
|
65
|
+
| \`validate_ac\` | Validar crit\u00E9rios de aceita\u00E7\u00E3o de uma task (checklist autom\u00E1tico) |`;
|
|
66
|
+
const ANALYZE_MODES_SECTION = `### Modos do analyze por fase
|
|
67
|
+
|
|
68
|
+
| Fase | Modo | O que verifica |
|
|
69
|
+
|------|------|----------------|
|
|
70
|
+
| ANALYZE | \`prd_quality\` | Qualidade do PRD (completude, user stories, AC) |
|
|
71
|
+
| ANALYZE | \`scope\` | Escopo do grafo (tipos, distribui\u00E7\u00E3o, cobertura) |
|
|
72
|
+
| ANALYZE | \`ready\` | Definition of Ready (bloqueios, depend\u00EAncias, AC) |
|
|
73
|
+
| ANALYZE | \`risk\` | Riscos (complexidade, deps, tamanho, AC faltantes) |
|
|
74
|
+
| ANALYZE | \`blockers\` | Bloqueios transitivos de um node |
|
|
75
|
+
| ANALYZE | \`cycles\` | Ciclos de depend\u00EAncia no grafo |
|
|
76
|
+
| ANALYZE | \`critical_path\` | Caminho cr\u00EDtico (sequ\u00EAncia mais longa de deps) |
|
|
77
|
+
| PLAN | \`decompose\` | Tasks grandes que precisam ser decompostas |
|
|
78
|
+
| DESIGN | \`adr\` | Valida\u00E7\u00E3o de ADRs (Architecture Decision Records) |
|
|
79
|
+
| DESIGN | \`traceability\` | Matriz de rastreabilidade (req \u2192 task \u2192 test) |
|
|
80
|
+
| DESIGN | \`coupling\` | Acoplamento entre m\u00F3dulos |
|
|
81
|
+
| DESIGN | \`interfaces\` | Verifica\u00E7\u00E3o de interfaces e contratos |
|
|
82
|
+
| DESIGN | \`tech_risk\` | Riscos t\u00E9cnicos (complexidade, stack, deps externas) |
|
|
83
|
+
| DESIGN | \`design_ready\` | Gate DESIGN\u2192PLAN (pr\u00E9-requisitos atendidos?) |
|
|
84
|
+
| IMPLEMENT | \`implement_done\` | Definition of Done (8 checks: 4 required + 4 recommended) |
|
|
85
|
+
| IMPLEMENT | \`tdd_check\` | Ader\u00EAncia TDD (specs sugeridos por AC) |
|
|
86
|
+
| IMPLEMENT | \`progress\` | Sprint burndown + velocity trend + blockers + ETA |
|
|
87
|
+
| VALIDATE | \`validate_ready\` | Gate IMPLEMENT\u2192VALIDATE |
|
|
88
|
+
| VALIDATE | \`done_integrity\` | Integridade dos nodes marcados done |
|
|
89
|
+
| VALIDATE | \`status_flow\` | Fluxo de status v\u00E1lido (sem pulos) |
|
|
90
|
+
| REVIEW | \`review_ready\` | Gate VALIDATE\u2192REVIEW |
|
|
91
|
+
| HANDOFF | \`handoff_ready\` | Gate REVIEW\u2192HANDOFF |
|
|
92
|
+
| HANDOFF | \`doc_completeness\` | Completude de documenta\u00E7\u00E3o |
|
|
93
|
+
| LISTENING | \`listening_ready\` | Gate HANDOFF\u2192LISTENING |
|
|
94
|
+
| LISTENING | \`backlog_health\` | Sa\u00FAde do backlog (distribui\u00E7\u00E3o, aging) |`;
|
|
95
|
+
const KNOWLEDGE_PIPELINE_SECTION = `### Pipeline de Conhecimento (Knowledge Store + RAG)
|
|
96
|
+
|
|
97
|
+
Fontes indexadas automaticamente:
|
|
98
|
+
- **Project memories** \u2014 ao escrever com \`write_memory\` (auto-indexa)
|
|
99
|
+
- **PRD imports** \u2014 ao importar com \`import_prd\`
|
|
100
|
+
- **Browser captures** \u2014 ao validar com \`validate_task\`
|
|
101
|
+
- **Stack docs** \u2014 ao sincronizar com \`sync_stack_docs\`
|
|
102
|
+
- **Sprint reports** \u2014 ao gerar com \`plan_sprint\`
|
|
103
|
+
|
|
104
|
+
Recupera\u00E7\u00E3o: \`rag_context\` monta contexto phase-aware com budget de tokens:
|
|
105
|
+
- 60% contexto do grafo (nodes, deps, status)
|
|
106
|
+
- 30% knowledge store (BM25 + TF-IDF)
|
|
107
|
+
- 10% metadata de fase
|
|
108
|
+
|
|
109
|
+
Manual: \`reindex_knowledge\` para rebuild completo do \u00EDndice.`;
|
|
32
110
|
const LIFECYCLE_SUMMARY = `### Lifecycle (8 fases)
|
|
33
111
|
|
|
34
|
-
1. **ANALYZE**
|
|
35
|
-
2. **DESIGN**
|
|
36
|
-
3. **PLAN**
|
|
37
|
-
4. **IMPLEMENT**
|
|
38
|
-
5. **VALIDATE**
|
|
39
|
-
6. **REVIEW**
|
|
40
|
-
7. **HANDOFF**
|
|
41
|
-
8. **LISTENING**
|
|
42
|
-
const XP_PRINCIPLES = `###
|
|
43
|
-
|
|
44
|
-
- **TDD
|
|
45
|
-
- **Anti-one-shot**
|
|
46
|
-
- **
|
|
47
|
-
- **Code detachment**
|
|
48
|
-
- **CLAUDE.md como spec evolutiva**
|
|
112
|
+
1. **ANALYZE** \u2014 Criar PRD, definir requisitos (\`import_prd\`, \`add_node\`)
|
|
113
|
+
2. **DESIGN** \u2014 Arquitetura, decis\u00F5es t\u00E9cnicas (\`add_node\`, \`edge\`, \`analyze\`)
|
|
114
|
+
3. **PLAN** \u2014 Sprint planning, decomposi\u00E7\u00E3o (\`plan_sprint\`, \`analyze\`, \`sync_stack_docs\`)
|
|
115
|
+
4. **IMPLEMENT** \u2014 TDD Red\u2192Green\u2192Refactor (\`next\`, \`context\`, \`update_status\`, \`analyze\` \u2014 modes: implement_done, tdd_check, progress)
|
|
116
|
+
5. **VALIDATE** \u2014 Testes E2E, crit\u00E9rios de aceita\u00E7\u00E3o (\`validate_task\`, \`metrics\`)
|
|
117
|
+
6. **REVIEW** \u2014 Code review, blast radius (\`export\`, \`metrics\`)
|
|
118
|
+
7. **HANDOFF** \u2014 PR, documenta\u00E7\u00E3o, entrega (\`export\`, \`snapshot\`)
|
|
119
|
+
8. **LISTENING** \u2014 Feedback, novo ciclo (\`add_node\`, \`import_prd\`)`;
|
|
120
|
+
const XP_PRINCIPLES = `### Princ\u00EDpios XP Anti-Vibe-Coding
|
|
121
|
+
|
|
122
|
+
- **TDD obrigat\u00F3rio** \u2014 Teste antes do c\u00F3digo. Sem teste = sem implementa\u00E7\u00E3o.
|
|
123
|
+
- **Anti-one-shot** \u2014 Nunca gere sistemas inteiros em um prompt. Decomponha em tasks at\u00F4micas.
|
|
124
|
+
- **Decomposi\u00E7\u00E3o at\u00F4mica** \u2014 Cada task deve ser complet\u00E1vel em \u22642h.
|
|
125
|
+
- **Code detachment** \u2014 Se a IA errou, explique o erro via prompt. Nunca edite manualmente.
|
|
126
|
+
- **CLAUDE.md como spec evolutiva** \u2014 Documente padr\u00F5es e decis\u00F5es aqui.`;
|
|
127
|
+
const CLI_COMMANDS = `### Comandos essenciais
|
|
128
|
+
|
|
129
|
+
\`\`\`bash
|
|
130
|
+
npx mcp-graph stats # Estat\u00EDsticas do grafo
|
|
131
|
+
npx mcp-graph list # Listar nodes
|
|
132
|
+
npx mcp-graph doctor # Validar ambiente de execu\u00E7\u00E3o
|
|
133
|
+
npx mcp-graph doctor --json # Diagn\u00F3stico em JSON estruturado
|
|
134
|
+
npx mcp-graph serve --port 3000 # Dashboard visual
|
|
135
|
+
\`\`\``;
|
|
49
136
|
export function generateClaudeMdSection(projectName) {
|
|
50
137
|
return `
|
|
51
138
|
${MARKER_START}
|
|
52
|
-
## mcp-graph
|
|
139
|
+
## mcp-graph \u2014 ${projectName}
|
|
53
140
|
|
|
54
|
-
Este projeto usa **mcp-graph** para
|
|
141
|
+
Este projeto usa **mcp-graph** para gest\u00E3o de execu\u00E7\u00E3o via grafo persistente (SQLite).
|
|
55
142
|
Dados armazenados em \`workflow-graph/graph.db\` (local, gitignored).
|
|
56
143
|
|
|
57
|
-
### Ferramentas MCP
|
|
144
|
+
### Ferramentas MCP dispon\u00EDveis (30 tools)
|
|
58
145
|
|
|
59
|
-
${
|
|
146
|
+
${TOOL_TABLE_FULL}
|
|
147
|
+
|
|
148
|
+
${ANALYZE_MODES_SECTION}
|
|
60
149
|
|
|
61
150
|
### Fluxo de trabalho recomendado
|
|
62
151
|
|
|
63
152
|
\`\`\`
|
|
64
|
-
next
|
|
153
|
+
next \u2192 context \u2192 [implementar com TDD] \u2192 update_status \u2192 next
|
|
65
154
|
\`\`\`
|
|
66
155
|
|
|
67
156
|
${LIFECYCLE_SUMMARY}
|
|
68
157
|
|
|
69
|
-
${
|
|
158
|
+
${KNOWLEDGE_PIPELINE_SECTION}
|
|
70
159
|
|
|
71
|
-
|
|
160
|
+
${XP_PRINCIPLES}
|
|
72
161
|
|
|
73
|
-
|
|
74
|
-
npx mcp-graph stats # Estatísticas do grafo
|
|
75
|
-
npx mcp-graph list # Listar nodes
|
|
76
|
-
npx mcp-graph serve --port 3000 # Dashboard visual
|
|
77
|
-
\`\`\`
|
|
162
|
+
${CLI_COMMANDS}
|
|
78
163
|
${MARKER_END}
|
|
79
164
|
`;
|
|
80
165
|
}
|
|
81
166
|
export function generateCopilotInstructions(projectName) {
|
|
82
167
|
return `${MARKER_START}
|
|
83
|
-
## mcp-graph
|
|
168
|
+
## mcp-graph \u2014 ${projectName}
|
|
84
169
|
|
|
85
|
-
Este projeto usa **mcp-graph** para
|
|
170
|
+
Este projeto usa **mcp-graph** para gest\u00E3o de execu\u00E7\u00E3o via grafo persistente.
|
|
86
171
|
Dados em \`workflow-graph/graph.db\`.
|
|
87
172
|
|
|
88
173
|
### Ferramentas MCP (principais)
|
|
89
174
|
|
|
90
175
|
| Tool | Uso |
|
|
91
176
|
|------|-----|
|
|
92
|
-
| \`next\` |
|
|
93
|
-
| \`context\` | Contexto comprimido (token-efficient) |
|
|
94
|
-
| \`update_status\` | Mudar status (backlog
|
|
95
|
-
| \`import_prd\` | Importar PRD
|
|
96
|
-
| \`plan_sprint\` | Planejamento de sprint |
|
|
97
|
-
| \`
|
|
98
|
-
| \`
|
|
99
|
-
|
|
100
|
-
|
|
177
|
+
| \`next\` | Pr\u00F3xima task recomendada (prioridade + deps + knowledge coverage + TDD hints) |
|
|
178
|
+
| \`context\` | Contexto comprimido (token-efficient, ~73% redu\u00E7\u00E3o) |
|
|
179
|
+
| \`update_status\` | Mudar status (backlog\u2192ready\u2192in_progress\u2192done) |
|
|
180
|
+
| \`import_prd\` | Importar PRD \u2192 segmentar \u2192 classificar \u2192 extrair \u2192 criar grafo |
|
|
181
|
+
| \`plan_sprint\` | Planejamento de sprint (capacity, velocity) |
|
|
182
|
+
| \`analyze\` | 24 modos de an\u00E1lise por fase do lifecycle |
|
|
183
|
+
| \`set_phase\` | For\u00E7ar/resetar fase do lifecycle (gate checks) |
|
|
184
|
+
| \`validate_task\` | Validar com Playwright (A/B, CSS scoping) |
|
|
185
|
+
| \`validate_ac\` | Validar crit\u00E9rios de aceita\u00E7\u00E3o (checklist autom\u00E1tico) |
|
|
186
|
+
| \`rag_context\` | Contexto RAG phase-aware (budget 60/30/10) |
|
|
187
|
+
|
|
188
|
+
### Fluxo: \`next \u2192 context \u2192 [TDD] \u2192 update_status \u2192 next\`
|
|
101
189
|
|
|
102
190
|
${LIFECYCLE_SUMMARY}
|
|
103
191
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-memory-generator.js","sourceRoot":"","sources":["../../../src/core/config/ai-memory-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,0BAA0B,CAAC;AACvD,MAAM,CAAC,MAAM,UAAU,GAAG,wBAAwB,CAAC;AAEnD,MAAM,
|
|
1
|
+
{"version":3,"file":"ai-memory-generator.js","sourceRoot":"","sources":["../../../src/core/config/ai-memory-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,0BAA0B,CAAC;AACvD,MAAM,CAAC,MAAM,UAAU,GAAG,wBAAwB,CAAC;AAEnD,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4GA0DoF,CAAC;AAE7G,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;2FA4B6D,CAAC;AAE5F,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;oEAciC,CAAC;AAErE,MAAM,iBAAiB,GAAG;;;;;;;;;4EASkD,CAAC;AAE7E,MAAM,aAAa,GAAG;;;;;;wFAMkE,CAAC;AAEzF,MAAM,YAAY,GAAG;;;;;;;;OAQd,CAAC;AAER,MAAM,UAAU,uBAAuB,CAAC,WAAmB;IACzD,OAAO;EACP,YAAY;sBACQ,WAAW;;;;;;;EAO/B,eAAe;;EAEf,qBAAqB;;;;;;;;EAQrB,iBAAiB;;EAEjB,0BAA0B;;EAE1B,aAAa;;EAEb,YAAY;EACZ,UAAU;CACX,CAAC;AACF,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,WAAmB;IAC7D,OAAO,GAAG,YAAY;sBACF,WAAW;;;;;;;;;;;;;;;;;;;;;;EAsB/B,iBAAiB;;EAEjB,aAAa;EACb,UAAU;CACX,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,eAAuB,EAAE,UAAkB;IACtE,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACnD,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC;IAEhD,IAAI,QAAQ,KAAK,CAAC,CAAC,IAAI,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;QAChE,MAAM,KAAK,GAAG,eAAe,CAAC,SAAS,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,CAAC;QAChF,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,OAAO,UAAU,GAAG,cAAc,GAAG,SAAS,CAAC;IACjD,CAAC;IAED,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,EAAE,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACpD,OAAO,MAAM,GAAG,cAAc,CAAC;AACjC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../../src/core/config/config-loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAKvE,wBAAgB,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../../src/core/config/config-loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAKvE,wBAAgB,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,cAAc,CAoC5D"}
|
|
@@ -29,17 +29,9 @@ export function loadConfig(basePath) {
|
|
|
29
29
|
fileConfig.port = envPort;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
if (process.env.
|
|
33
|
-
const envGitnexusPort = parseInt(process.env.GITNEXUS_PORT, 10);
|
|
34
|
-
if (!isNaN(envGitnexusPort)) {
|
|
35
|
-
const integrations = (fileConfig.integrations ?? {});
|
|
36
|
-
integrations.gitnexusPort = envGitnexusPort;
|
|
37
|
-
fileConfig.integrations = integrations;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
if (process.env.GITNEXUS_AUTO_START) {
|
|
32
|
+
if (process.env.CODE_GRAPH_AUTO_INDEX) {
|
|
41
33
|
const integrations = (fileConfig.integrations ?? {});
|
|
42
|
-
integrations.
|
|
34
|
+
integrations.codeGraphAutoIndex = process.env.CODE_GRAPH_AUTO_INDEX !== "false";
|
|
43
35
|
fileConfig.integrations = integrations;
|
|
44
36
|
}
|
|
45
37
|
const config = ConfigSchema.parse(fileConfig);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../src/core/config/config-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAuB,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,eAAe,GAAG,uBAAuB,CAAC;AAEhD,MAAM,UAAU,UAAU,CAAC,QAAiB;IAC1C,MAAM,YAAY,GAAG,QAAQ,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IAE5D,IAAI,UAAU,GAA4B,EAAE,CAAC;IAE7C,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC9C,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC;YACxD,MAAM,CAAC,IAAI,CAAC,sBAAsB,UAAU,EAAE,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,6BAA6B,UAAU,EAAE,EAAE;gBACtD,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IACtD,CAAC;IAED,oBAAoB;IACpB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACpB,UAAU,CAAC,IAAI,GAAG,OAAO,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../src/core/config/config-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAuB,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,eAAe,GAAG,uBAAuB,CAAC;AAEhD,MAAM,UAAU,UAAU,CAAC,QAAiB;IAC1C,MAAM,YAAY,GAAG,QAAQ,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IAE5D,IAAI,UAAU,GAA4B,EAAE,CAAC;IAE7C,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC9C,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC;YACxD,MAAM,CAAC,IAAI,CAAC,sBAAsB,UAAU,EAAE,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,6BAA6B,UAAU,EAAE,EAAE;gBACtD,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IACtD,CAAC;IAED,oBAAoB;IACpB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACpB,UAAU,CAAC,IAAI,GAAG,OAAO,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;QACtC,MAAM,YAAY,GAAG,CAAC,UAAU,CAAC,YAAY,IAAI,EAAE,CAA4B,CAAC;QAChF,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,OAAO,CAAC;QAChF,UAAU,CAAC,YAAY,GAAG,YAAY,CAAC;IACzC,CAAC;IAED,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9C,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -7,8 +7,7 @@ export declare const ConfigSchema: z.ZodObject<{
|
|
|
7
7
|
autoOpen: z.ZodDefault<z.ZodBoolean>;
|
|
8
8
|
}, z.core.$strip>>;
|
|
9
9
|
integrations: z.ZodDefault<z.ZodObject<{
|
|
10
|
-
|
|
11
|
-
gitnexusAutoStart: z.ZodDefault<z.ZodBoolean>;
|
|
10
|
+
codeGraphAutoIndex: z.ZodDefault<z.ZodBoolean>;
|
|
12
11
|
}, z.core.$strip>>;
|
|
13
12
|
}, z.core.$strip>;
|
|
14
13
|
export type McpGraphConfig = z.infer<typeof ConfigSchema>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-schema.d.ts","sourceRoot":"","sources":["../../../src/core/config/config-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,eAAO,MAAM,YAAY
|
|
1
|
+
{"version":3,"file":"config-schema.d.ts","sourceRoot":"","sources":["../../../src/core/config/config-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,eAAO,MAAM,YAAY;;;;;;;;;;iBAcvB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
|
|
@@ -10,9 +10,8 @@ export const ConfigSchema = z.object({
|
|
|
10
10
|
.default({ autoOpen: true }),
|
|
11
11
|
integrations: z
|
|
12
12
|
.object({
|
|
13
|
-
|
|
14
|
-
gitnexusAutoStart: z.boolean().default(true),
|
|
13
|
+
codeGraphAutoIndex: z.boolean().default(false),
|
|
15
14
|
})
|
|
16
|
-
.default({
|
|
15
|
+
.default({ codeGraphAutoIndex: false }),
|
|
17
16
|
});
|
|
18
17
|
//# sourceMappingURL=config-schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-schema.js","sourceRoot":"","sources":["../../../src/core/config/config-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACtD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC;IAC5C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,SAAS,EAAE,CAAC;SACT,MAAM,CAAC;QACN,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;KACpC,CAAC;SACD,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC9B,YAAY,EAAE,CAAC;SACZ,MAAM,CAAC;QACN,
|
|
1
|
+
{"version":3,"file":"config-schema.js","sourceRoot":"","sources":["../../../src/core/config/config-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACtD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC;IAC5C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,SAAS,EAAE,CAAC;SACT,MAAM,CAAC;QACN,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;KACpC,CAAC;SACD,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC9B,YAAY,EAAE,CAAC;SACZ,MAAM,CAAC;QACN,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;KAC/C,CAAC;SACD,OAAO,CAAC,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC;CAC1C,CAAC,CAAC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { SqliteStore } from "../store/sqlite-store.js";
|
|
2
|
+
import type { GraphNode } from "../graph/graph-types.js";
|
|
3
|
+
export declare const NEIGHBOR_DESC_LIMIT = 100;
|
|
2
4
|
export interface TaskContext {
|
|
3
5
|
task: TaskSummary;
|
|
4
6
|
parent: TaskSummary | null;
|
|
@@ -51,6 +53,55 @@ export interface ContextMetrics {
|
|
|
51
53
|
reductionPercent: number;
|
|
52
54
|
estimatedTokens: number;
|
|
53
55
|
}
|
|
56
|
+
export interface NaiveNeighborhood {
|
|
57
|
+
task: GraphNode;
|
|
58
|
+
parent: GraphNode | null;
|
|
59
|
+
children: GraphNode[];
|
|
60
|
+
blockers: GraphNode[];
|
|
61
|
+
dependsOn: GraphNode[];
|
|
62
|
+
estimatedTokens: number;
|
|
63
|
+
}
|
|
64
|
+
export interface LayeredTokenMetrics {
|
|
65
|
+
naiveNodeTokens: number;
|
|
66
|
+
naiveNeighborhoodTokens: number;
|
|
67
|
+
compactContextTokens: number;
|
|
68
|
+
neighborTruncatedTokens: number;
|
|
69
|
+
shortKeysTokens: number;
|
|
70
|
+
defaultOmittedTokens: number;
|
|
71
|
+
summaryTierTokens: number;
|
|
72
|
+
layer1Savings: number;
|
|
73
|
+
layer2Savings: number;
|
|
74
|
+
layer3Savings: number;
|
|
75
|
+
layer4Savings: number;
|
|
76
|
+
totalRealSavings: number;
|
|
77
|
+
totalRealSavingsPercent: number;
|
|
78
|
+
}
|
|
79
|
+
export interface CompressedContext {
|
|
80
|
+
payload: Record<string, unknown>;
|
|
81
|
+
layerMetrics: {
|
|
82
|
+
l1Tokens: number;
|
|
83
|
+
l2Tokens: number;
|
|
84
|
+
l3Tokens: number;
|
|
85
|
+
l4Tokens: number;
|
|
86
|
+
totalReductionPercent: number;
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Truncate a description to a character limit, preferring sentence boundaries.
|
|
91
|
+
*/
|
|
92
|
+
export declare function truncateDescription(desc: string | undefined, limit: number): string | undefined;
|
|
93
|
+
/**
|
|
94
|
+
* Recursively rename object keys using KEY_MAP.
|
|
95
|
+
*/
|
|
96
|
+
export declare function compressKeys(obj: unknown): unknown;
|
|
97
|
+
/**
|
|
98
|
+
* Recursively omit fields with default values.
|
|
99
|
+
* Defaults: priority=3, status="backlog", inferred=false, resolved=false
|
|
100
|
+
*/
|
|
101
|
+
export declare function omitDefaults(obj: unknown): unknown;
|
|
54
102
|
export declare function buildTaskContext(store: SqliteStore, nodeId: string): TaskContext | null;
|
|
103
|
+
export declare function buildNaiveNeighborhood(store: SqliteStore, nodeId: string): NaiveNeighborhood | null;
|
|
104
|
+
export declare function buildCompressedContext(store: SqliteStore, nodeId: string): CompressedContext | null;
|
|
105
|
+
export declare function computeLayeredMetrics(store: SqliteStore, nodeId: string): LayeredTokenMetrics | null;
|
|
55
106
|
export {};
|
|
56
107
|
//# sourceMappingURL=compact-context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compact-context.d.ts","sourceRoot":"","sources":["../../../src/core/context/compact-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"compact-context.d.ts","sourceRoot":"","sources":["../../../src/core/context/compact-context.ts"],"names":[],"mappings":"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"}
|