Fundamentados em código real: WPForms Lite 2.0.0.5 + Fluent Forms 6.2.12 (activos em ecommerce-demo.descomplicar.pt), e CARL+Mem0/Hindsight (sistemas de memória/governança já em produção neste ecossistema). Achado central doc13: Fluent Forms já embarca servidor MCP nativo próprio (AbilitiesRegistrar, 9 abilities, dry-run+confirm_token) - recomenda delegar em vez de reimplementar. INDEX.md actualizado com as 2 novas entradas e totais.
115 lines
9.5 KiB
Markdown
115 lines
9.5 KiB
Markdown
# Graph Report - emcp-tools-mapping (2026-08-19)
|
|
|
|
## Corpus Check
|
|
- 14 files · ~71,911 words
|
|
- Verdict: corpus is large enough that graph structure adds value.
|
|
|
|
## Summary
|
|
- 80 nodes · 78 edges · 12 communities
|
|
- Extraction: 100% EXTRACTED · 0% INFERRED · 0% AMBIGUOUS
|
|
- Token cost: 0 input · 0 output
|
|
|
|
## Graph Freshness
|
|
- Built from commit: `58acdd71`
|
|
- Run `git rev-parse HEAD` and compare to check if the graph is stale.
|
|
- Run `graphify update .` after code changes (no API cost).
|
|
|
|
## Community Hubs (Navigation)
|
|
- [[_COMMUNITY_EMCP Tools — Mapeamento completo e blueprint de réplica|EMCP Tools — Mapeamento completo e blueprint de réplica]]
|
|
- [[_COMMUNITY_5. Sequência de construção recomendada para uma réplica|5. Sequência de construção recomendada para uma réplica]]
|
|
- [[_COMMUNITY_11 — WooCommerce blueprint de abilities MCP (não é auditoria EMCP)|11 — WooCommerce: blueprint de abilities MCP (não é auditoria EMCP)]]
|
|
- [[_COMMUNITY_3. Encomendas|3. Encomendas]]
|
|
- [[_COMMUNITY_6. Relatórios Analytics (`wc-analytics`)|6. Relatórios / Analytics (`wc-analytics/*`)]]
|
|
- [[_COMMUNITY_7. Webhooks|7. Webhooks]]
|
|
- [[_COMMUNITY_2. Produtos|2. Produtos]]
|
|
- [[_COMMUNITY_4. Clientes|4. Clientes]]
|
|
- [[_COMMUNITY_5. Cupões Descontos|5. Cupões / Descontos]]
|
|
- [[_COMMUNITY_9. Blueprint para réplica|9. Blueprint para réplica]]
|
|
- [[_COMMUNITY_6. Sandbox e ciclo de vida — reaproveitar o modelo já confirmado em código real `REAL`|6. Sandbox e ciclo de vida — reaproveitar o modelo já confirmado em código real `[REAL]`]]
|
|
- [[_COMMUNITY_8. Blueprint para réplica|8. Blueprint para réplica]]
|
|
|
|
## God Nodes (most connected - your core abstractions)
|
|
1. `11 — WooCommerce: blueprint de abilities MCP (não é auditoria EMCP)` - 12 edges
|
|
2. `12 — Widget Builder: blueprint de abilities MCP (desenho próprio, não é auditoria EMCP Pro)` - 11 edges
|
|
3. `EMCP Tools — Mapeamento completo e blueprint de réplica` - 9 edges
|
|
4. `5. Sequência de construção recomendada para uma réplica` - 8 edges
|
|
5. `6. Sandbox e ciclo de vida — reaproveitar o modelo já confirmado em código real `[REAL]`` - 6 edges
|
|
6. `3. Encomendas` - 6 edges
|
|
7. `6. Relatórios / Analytics (`wc-analytics/*`)` - 5 edges
|
|
8. `7. Webhooks` - 5 edges
|
|
9. `5. O compilador spec→PHP — desenho próprio `[DESENHO PRÓPRIO]`` - 4 edges
|
|
10. `8. Blueprint para réplica` - 4 edges
|
|
|
|
## Surprising Connections (you probably didn't know these)
|
|
- None detected - all connections are within the same source files.
|
|
|
|
## Import Cycles
|
|
- None detected.
|
|
|
|
## Communities (12 total, 0 thin omitted)
|
|
|
|
### Community 0 - "EMCP Tools — Mapeamento completo e blueprint de réplica"
|
|
Cohesion: 0.20
|
|
Nodes (8): 1. Mapa dos documentos, 2. O achado mais importante de toda a série, 3. Os 5 subsistemas de maior valor para copiar quase verbatim, 4. Padrões arquitecturais que atravessam todo o plugin, 6. Tabela de risco consolidada, 7. Como usar esta documentação, EMCP Tools — Mapeamento completo e blueprint de réplica, Metodologia
|
|
|
|
### Community 1 - "5. Sequência de construção recomendada para uma réplica"
|
|
Cohesion: 0.25
|
|
Nodes (8): 5. Sequência de construção recomendada para uma réplica, Explicitamente fora de âmbito (doc 10 §2), Fase 0 — Fundação (sem isto, nada mais tem rollback nem é seguro), Fase 1 — Conteúdo WordPress puro (sem dependência de Elementor), Fase 2 — Elementor (o núcleo de "construir páginas"), Fase 3 — Camadas de produto sobre o conteúdo, Fase 4 — Superfície de risco elevado, opt-in, Fase 5 — Integrações e periferia (valor incremental, não bloqueante)
|
|
|
|
### Community 2 - "11 — WooCommerce: blueprint de abilities MCP (não é auditoria EMCP)"
|
|
Cohesion: 0.20
|
|
Nodes (9): 0. Porque este documento é diferente dos outros 10, 10. Fonte, 11 — WooCommerce: blueprint de abilities MCP (não é auditoria EMCP), 1. Panorama, 2.1 Schema real (campos confirmados por leitura de `get_item_schema()`), 2.2 Endpoints extra confirmados (além do CRUD standard), 2.3 Tabela de ability proposta — Produtos, 2. Produtos (+1 more)
|
|
|
|
### Community 3 - "3. Encomendas"
|
|
Cohesion: 0.33
|
|
Nodes (6): 3.1 Estados reais (não inventados — via `wc_get_order_statuses()`), 3.2 Itens da encomenda e ciclo de escrita, 3.3 Devoluções (refunds), 3.4 Notas da encomenda, 3.5 Tabela de ability proposta — Encomendas, 3. Encomendas
|
|
|
|
### Community 4 - "6. Relatórios / Analytics (`wc-analytics/*`)"
|
|
Cohesion: 0.40
|
|
Nodes (5): 6.1 Dois grupos de controllers, 6.2 Capability real para relatórios (não `manage_woocommerce`), 6.3 Data stores de agregação confirmados, 6.4 Tabela de ability proposta — Analytics, 6. Relatórios / Analytics (`wc-analytics/*`)
|
|
|
|
### Community 5 - "7. Webhooks"
|
|
Cohesion: 0.40
|
|
Nodes (5): 7.1 Modelo de dados real (confirmado por `$data` default em `WC_Webhook`), 7.2 Validação de topic — não é livre texto, 7.3 Entrega assíncrona por omissão, 7.4 Tabela de ability proposta — Webhooks, 7. Webhooks
|
|
|
|
### Community 6 - "2. Produtos"
|
|
Cohesion: 0.14
|
|
Nodes (14): 0. Panorama — porque este documento é diferente dos outros 11 e o que fundamenta cada peça, 12 — Widget Builder: blueprint de abilities MCP (desenho próprio, não é auditoria EMCP Pro), 1. A "spec" de um widget — estrutura de dados proposta `[DESENHO PRÓPRIO]`, 2. Como um widget é normalmente registado — contrato real do Elementor `[REAL]`, 3.1 Controlos de dados simples/compostos (`get_controls_names()`), 3.2 Group controls (`get_groups_names()`) — controlos compostos multi-campo, 3. `list-control-types` — catálogo real de tipos de controlo `[REAL]` + parâmetros `[misto]`, 4. `validate-widget-spec` — o que validar `[DESENHO PRÓPRIO, sobre APIs `[REAL]`]` (+6 more)
|
|
|
|
### Community 7 - "4. Clientes"
|
|
Cohesion: 0.50
|
|
Nodes (4): 4.1 Capabilities reais (não `manage_woocommerce` genérico), 4.2 Schema real (confirmado por `get_item_schema()`), 4.3 Tabela de ability proposta — Clientes, 4. Clientes
|
|
|
|
### Community 8 - "5. Cupões / Descontos"
|
|
Cohesion: 0.50
|
|
Nodes (4): 5.1 Tipos de desconto reais (via `wc_get_coupon_types()`), 5.2 Campos de restrição confirmados (schema/data props do coupon), 5.3 Tabela de ability proposta — Cupões, 5. Cupões / Descontos
|
|
|
|
### Community 9 - "9. Blueprint para réplica"
|
|
Cohesion: 0.50
|
|
Nodes (4): 9.1 Prioridade de construção (por valor/esforço, assumindo Fase 0 do doc00 já feita), 9.2 Reaproveitamento explícito dos padrões já documentados, 9.3 O que NÃO replicar sem decisão explícita, 9. Blueprint para réplica
|
|
|
|
### Community 10 - "6. Sandbox e ciclo de vida — reaproveitar o modelo já confirmado em código real `[REAL]`"
|
|
Cohesion: 0.33
|
|
Nodes (6): 6.1 Camada 1 — Manifest-only lookup `[REAL]`, 6.2 Camada 2 — Tamper guard sha256 `[REAL]`, 6.3 Camada 3 — Path containment guard `[REAL]`, 6.4 Camada 4 — `runtime_validate()` + shutdown fatal-recovery `[REAL]`, 6.5 Decisão de segurança: aprovação humana obrigatória antes de activar `[DESENHO PRÓPRIO, precedente REAL]`, 6. Sandbox e ciclo de vida — reaproveitar o modelo já confirmado em código real `[REAL]`
|
|
|
|
### Community 11 - "8. Blueprint para réplica"
|
|
Cohesion: 0.50
|
|
Nodes (4): 8. Blueprint para réplica, Construir de raiz (`[DESENHO PRÓPRIO]`, sequência recomendada por dependência), Copiar quase 1:1 (já é código real, `[REAL]`), Deixar de fora ou adiar explicitamente
|
|
|
|
## Knowledge Gaps
|
|
- **62 isolated node(s):** `0. Panorama — porque este documento é diferente dos outros 11 e o que fundamenta cada peça`, `1. A "spec" de um widget — estrutura de dados proposta `[DESENHO PRÓPRIO]``, `2. Como um widget é normalmente registado — contrato real do Elementor `[REAL]``, `3.1 Controlos de dados simples/compostos (`get_controls_names()`)`, `3.2 Group controls (`get_groups_names()`) — controlos compostos multi-campo` (+57 more)
|
|
These have ≤1 connection - possible missing edges or undocumented components.
|
|
|
|
## Suggested Questions
|
|
_Questions this graph is uniquely positioned to answer:_
|
|
|
|
- **Why does `12 — Widget Builder: blueprint de abilities MCP (desenho próprio, não é auditoria EMCP Pro)` connect `2. Produtos` to `EMCP Tools — Mapeamento completo e blueprint de réplica`, `6. Sandbox e ciclo de vida — reaproveitar o modelo já confirmado em código real `[REAL]``, `8. Blueprint para réplica`?**
|
|
_High betweenness centrality (0.207) - this node is a cross-community bridge._
|
|
- **Why does `11 — WooCommerce: blueprint de abilities MCP (não é auditoria EMCP)` connect `11 — WooCommerce: blueprint de abilities MCP (não é auditoria EMCP)` to `3. Encomendas`, `6. Relatórios / Analytics (`wc-analytics/*`)`, `7. Webhooks`, `4. Clientes`, `5. Cupões / Descontos`, `9. Blueprint para réplica`?**
|
|
_High betweenness centrality (0.197) - this node is a cross-community bridge._
|
|
- **Why does `EMCP Tools — Mapeamento completo e blueprint de réplica` connect `EMCP Tools — Mapeamento completo e blueprint de réplica` to `5. Sequência de construção recomendada para uma réplica`?**
|
|
_High betweenness centrality (0.152) - this node is a cross-community bridge._
|
|
- **What connects `0. Panorama — porque este documento é diferente dos outros 11 e o que fundamenta cada peça`, `1. A "spec" de um widget — estrutura de dados proposta `[DESENHO PRÓPRIO]``, `2. Como um widget é normalmente registado — contrato real do Elementor `[REAL]`` to the rest of the system?**
|
|
_62 weakly-connected nodes found - possible documentation gaps or missing edges._
|
|
- **Should `2. Produtos` be split into smaller, more focused modules?**
|
|
_Cohesion score 0.14285714285714285 - nodes in this community are weakly interconnected._ |