@semacode/cli 1.5.17 → 1.5.18
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/README.md +104 -112
- package/SEMA_BRIEF.curto.txt +6 -6
- package/SEMA_BRIEF.md +17 -24
- package/SEMA_BRIEF.micro.txt +5 -5
- package/SEMA_INDEX.json +86 -224
- package/dist/drift.d.ts +3 -3
- package/dist/drift.js +5 -111
- package/dist/drift.js.map +1 -1
- package/dist/importador.d.ts +1 -1
- package/dist/importador.js +1 -200
- package/dist/importador.js.map +1 -1
- package/dist/index.js +59 -479
- package/dist/index.js.map +1 -1
- package/dist/projeto.js +0 -20
- package/dist/projeto.js.map +1 -1
- package/dist/tipos.d.ts +1 -1
- package/docs/AGENT_STARTER.md +9 -8
- package/docs/cli.md +106 -119
- package/docs/como-ensinar-a-sema-para-ia.md +4 -4
- package/docs/env.md +56 -56
- package/docs/fluxo-pratico-ia-sema.md +171 -167
- package/docs/integracao-com-ia.md +98 -96
- package/docs/mcp.md +51 -53
- package/docs/pagamento-ponta-a-ponta.md +11 -1
- package/docs/persistencia-vendor-first.md +1 -1
- package/docs/prompt-base-ia-sema.md +6 -5
- package/docs/rollback.md +1 -1
- package/docs/sintaxe.md +196 -394
- package/exemplos/agendamento.sema +0 -1
- package/exemplos/assinatura.sema +0 -3
- package/exemplos/auditoria.sema +2 -1
- package/exemplos/estoque.sema +2 -1
- package/exemplos/fila.sema +2 -3
- package/exemplos/multi_tenant.sema +2 -2
- package/exemplos/notificacao.sema +53 -2
- package/exemplos/operacao_estrategia.sema +231 -0
- package/exemplos/pagamento.sema +214 -2
- package/exemplos/pedido.sema +156 -20
- package/exemplos/replica_analitica_erp.sema +160 -0
- package/exemplos/webhook.sema +2 -4
- package/node_modules/@sema/gerador-css/package.json +1 -1
- package/node_modules/@sema/gerador-dart/package.json +1 -1
- package/node_modules/@sema/gerador-html/package.json +1 -1
- package/node_modules/@sema/gerador-javascript/package.json +1 -1
- package/node_modules/@sema/gerador-lua/package.json +1 -1
- package/node_modules/@sema/gerador-python/package.json +1 -1
- package/node_modules/@sema/gerador-typescript/package.json +1 -1
- package/node_modules/@sema/nucleo/dist/ast/tipos.d.ts +2 -4
- package/node_modules/@sema/nucleo/dist/formatador/index.js +14 -42
- package/node_modules/@sema/nucleo/dist/formatador/index.js.map +1 -1
- package/node_modules/@sema/nucleo/dist/ir/conversor.js +9 -204
- package/node_modules/@sema/nucleo/dist/ir/conversor.js.map +1 -1
- package/node_modules/@sema/nucleo/dist/ir/modelos.d.ts +3 -35
- package/node_modules/@sema/nucleo/dist/lexer/tokens.js +0 -21
- package/node_modules/@sema/nucleo/dist/lexer/tokens.js.map +1 -1
- package/node_modules/@sema/nucleo/dist/parser/parser.js +0 -40
- package/node_modules/@sema/nucleo/dist/parser/parser.js.map +1 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.d.ts +6 -5
- package/node_modules/@sema/nucleo/dist/semantico/analisador.js +76 -307
- package/node_modules/@sema/nucleo/dist/semantico/analisador.js.map +1 -1
- package/node_modules/@sema/nucleo/dist/semantico/estruturas.d.ts +2 -0
- package/node_modules/@sema/nucleo/dist/semantico/estruturas.js +32 -2
- package/node_modules/@sema/nucleo/dist/semantico/estruturas.js.map +1 -1
- package/node_modules/@sema/nucleo/package.json +1 -1
- package/node_modules/@sema/padroes/package.json +1 -1
- package/package.json +14 -14
package/README.md
CHANGED
|
@@ -1,112 +1,104 @@
|
|
|
1
|
-
# Sema CLI
|
|
2
|
-
|
|
3
|
-
`@semacode/cli` e a interface publica principal da Sema.
|
|
4
|
-
|
|
5
|
-
Ela valida contratos `.sema`, mede `drift` entre contrato e codigo vivo, importa legado, gera codigo derivado, produz contexto IA-first e agora governa persistencia vendor-first para `postgres`, `mysql`, `sqlite`, `mongodb` e `redis`.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
sema
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
sema
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
- `
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
-
|
|
92
|
-
- pasta `
|
|
93
|
-
- `
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
- `sema
|
|
98
|
-
- `sema
|
|
99
|
-
- `sema
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
-
|
|
104
|
-
-
|
|
105
|
-
- `sema finalizar-mudanca --intencao <acao> [--doc-lida <caminho>] --json`
|
|
106
|
-
- `sema compilar <arquivo-ou-pasta> --alvo <typescript|python|dart|lua> --saida <diretorio>`
|
|
107
|
-
- `sema verificar <arquivo-ou-pasta> --saida <diretorio>`
|
|
108
|
-
|
|
109
|
-
## Links
|
|
110
|
-
|
|
111
|
-
- repositorio: <https://github.com/gerlanss/Sema>
|
|
112
|
-
- docs: <https://github.com/gerlanss/Sema/tree/main/docs>
|
|
1
|
+
# Sema CLI
|
|
2
|
+
|
|
3
|
+
`@semacode/cli` e a interface publica principal da Sema.
|
|
4
|
+
|
|
5
|
+
Ela valida contratos `.sema`, mede `drift` entre contrato e codigo vivo, importa legado, gera codigo derivado, produz contexto IA-first e agora governa persistencia vendor-first para `postgres`, `mysql`, `sqlite`, `mongodb` e `redis`.
|
|
6
|
+
|
|
7
|
+
Tambem resolve documentacao obrigatoria por intencao para impedir IA de agir sem ler ou criar docs relacionadas.
|
|
8
|
+
|
|
9
|
+
## Instalar
|
|
10
|
+
|
|
11
|
+
Global:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npm install -g @semacode/cli
|
|
15
|
+
sema --help
|
|
16
|
+
sema doctor
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Local ao projeto:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npm install @semacode/cli
|
|
23
|
+
npx sema --help
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Tarball da release:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
npm install -g https://github.com/gerlanss/Sema/releases/latest/download/sema-cli-latest.tgz
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Fluxos principais
|
|
33
|
+
|
|
34
|
+
Projeto novo:
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
sema iniciar
|
|
38
|
+
sema validar contratos/pedidos.sema --json
|
|
39
|
+
sema compilar contratos --alvo typescript --saida ./generated/typescript
|
|
40
|
+
sema verificar contratos --json
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Projeto que ja usa Sema:
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
sema inspecionar . --json
|
|
47
|
+
sema resumo contratos/pedidos.sema --micro --para mudanca
|
|
48
|
+
sema drift contratos/pedidos.sema --json
|
|
49
|
+
sema docs-impacto --intencao "alterar pedidos" --arquivo contratos/pedidos.sema --json
|
|
50
|
+
sema contexto-ia contratos/pedidos.sema --saida ./.tmp/contexto --json
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Adocao incremental em legado:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
sema importar nextjs ./app --saida ./contratos-importados --json
|
|
57
|
+
sema formatar ./contratos-importados
|
|
58
|
+
sema validar ./contratos-importados --json
|
|
59
|
+
sema drift ./contratos-importados --json
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## Persistencia vendor-first
|
|
63
|
+
|
|
64
|
+
A CLI 1.5.18 entende blocos `database` e recursos de persistencia na IR, no formatador, no semantico, na importacao, no drift, no impact map, na renomeacao semantica assistida e no `verificar`. O objetivo nao e esconder diferencas entre bancos, e sim capturar essas diferencas no contrato.
|
|
65
|
+
|
|
66
|
+
Nesta linha, o `drift` tambem passa a resolver melhor metodos JS/TS browser-side definidos via `Object.assign(...prototype...)` e a entrada padrao da CLI para de tropeçar em `exemplos/` quando o projeto real ja tem `contratos/`, `sema/` ou arquivos `.sema` na raiz.
|
|
67
|
+
|
|
68
|
+
Nesta linha, o `drift` tambem passa a enxergar `Preferences`, `localStorage` e `sessionStorage` como persistencia local real, distinguir `ancoragemVinculo` herdada do modulo e cobrir `angular-consumer` standalone mesmo quando o app nao tem `.routes`.
|
|
69
|
+
|
|
70
|
+
Nesta linha, o pacote publico da CLI tambem deixa `tsx` fora das dependencias de runtime para evitar ruído de instalacao global no Windows.
|
|
71
|
+
|
|
72
|
+
Cobertura publica:
|
|
73
|
+
|
|
74
|
+
- `postgres`: tabela, relacao, query SQL, schema e capacidades relacionais
|
|
75
|
+
- `mysql`: tabela, indice e diferencas operacionais do engine
|
|
76
|
+
- `sqlite`: armazenamento local, retencao curta e modos de transacao simples
|
|
77
|
+
- `mongodb`: `collection`, `document`, pipeline e indices documentais
|
|
78
|
+
- `redis`: `keyspace`, `stream`, TTL e superficies de estado/cache
|
|
79
|
+
|
|
80
|
+
## Pacote publico
|
|
81
|
+
|
|
82
|
+
O tarball publico da CLI inclui:
|
|
83
|
+
|
|
84
|
+
- `dist/`
|
|
85
|
+
- docs IA-first e docs de operacao
|
|
86
|
+
- pasta `exemplos/`
|
|
87
|
+
- `AGENTS.md`, `llms.txt`, `SEMA_BRIEF.*` e `SEMA_INDEX.json`
|
|
88
|
+
|
|
89
|
+
## Comandos uteis
|
|
90
|
+
|
|
91
|
+
- `sema validar <arquivo-ou-pasta> --json`
|
|
92
|
+
- `sema drift <arquivo-ou-pasta> --json`
|
|
93
|
+
- `sema resumo <arquivo-ou-pasta> --micro --para onboarding`
|
|
94
|
+
- `sema prompt-curto <arquivo-ou-pasta> --curto --para mudanca`
|
|
95
|
+
- `sema contexto-ia <arquivo.sema> --saida <diretorio> --json`
|
|
96
|
+
- `sema docs-impacto --intencao <acao> [--arquivo <caminho>] [--criar-ausentes] --json`
|
|
97
|
+
- `sema finalizar-mudanca --intencao <acao> [--doc-lida <caminho>] --json`
|
|
98
|
+
- `sema compilar <arquivo-ou-pasta> --alvo <typescript|python|dart|lua> --saida <diretorio>`
|
|
99
|
+
- `sema verificar <arquivo-ou-pasta> --saida <diretorio>`
|
|
100
|
+
|
|
101
|
+
## Links
|
|
102
|
+
|
|
103
|
+
- repositorio: <https://github.com/gerlanss/Sema>
|
|
104
|
+
- docs: <https://github.com/gerlanss/Sema/tree/main/docs>
|
package/SEMA_BRIEF.curto.txt
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
PROJETO: Sema
|
|
2
2
|
BASE: C:\GitHub\Sema
|
|
3
|
-
MODULOS:
|
|
3
|
+
MODULOS: 6
|
|
4
4
|
ENTRADA_IA: llms.txt -> SEMA_BRIEF.curto.txt -> SEMA_INDEX.json -> AGENTS.md -> README.md
|
|
5
|
-
TOP_MODULOS: app.pedidos, sema.produto.ergonomia_e_dominio, sema.produto.geradores_web, sema.produto.governanca_ia, sema.produto.linguagem_composta, sema.produto.persistencia_vendor_first
|
|
6
|
-
TOP_RISCOS:
|
|
7
|
-
TOP_LACUNAS:
|
|
8
|
-
TOP_ARQUIVOS: C:\GitHub\Sema\pacotes\cli\src\docs.ts, C:\GitHub\Sema\pacotes\cli\src\drift.ts, C:\GitHub\Sema\pacotes\cli\src\importador.ts, C:\GitHub\Sema\pacotes\cli\src\index.ts, C:\GitHub\Sema\pacotes\cli\src\
|
|
9
|
-
GERADO_EM: 2026-05-
|
|
5
|
+
TOP_MODULOS: app.pedidos, sema.produto.ergonomia_e_dominio, sema.produto.geradores_web, sema.produto.governanca_ia, sema.produto.linguagem_composta, sema.produto.persistencia_vendor_first
|
|
6
|
+
TOP_RISCOS: assistir_renomeacao_semantica:alto, carregar_configuracao_de_persistencia:medio, consultar_scorecard_compatibilidade:medio, converter_bloco_composto_para_ir:alto, converter_persistencia_para_ir_canonico:alto, criar_pedido:alto (+22)
|
|
7
|
+
TOP_LACUNAS: sem_impl, vinculo_quebrado
|
|
8
|
+
TOP_ARQUIVOS: C:\GitHub\Sema\pacotes\cli\src\docs.ts, C:\GitHub\Sema\pacotes\cli\src\drift.ts, C:\GitHub\Sema\pacotes\cli\src\importador.ts, C:\GitHub\Sema\pacotes\cli\src\index.ts, C:\GitHub\Sema\pacotes\cli\src\projeto.ts, C:\GitHub\Sema\pacotes\editor-vscode\extension.js (+11)
|
|
9
|
+
GERADO_EM: 2026-05-15T21:54:48.396Z
|
package/SEMA_BRIEF.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# SEMA_BRIEF
|
|
2
2
|
|
|
3
|
-
Sema e IA-first. Este arquivo existe para IA achar o ponto de entrada do projeto sem
|
|
3
|
+
Sema e IA-first. Este arquivo existe para IA achar o ponto de entrada do projeto sem varrer o repo inteiro no escuro.
|
|
4
4
|
|
|
5
|
-
- Gerado em: `2026-05-
|
|
6
|
-
- Modulos: `
|
|
5
|
+
- Gerado em: `2026-05-15T21:54:48.396Z`
|
|
6
|
+
- Modulos: `6`
|
|
7
7
|
|
|
8
8
|
## Entrada canonica para IA
|
|
9
9
|
|
|
@@ -23,48 +23,41 @@ Sema e IA-first. Este arquivo existe para IA achar o ponto de entrada do projeto
|
|
|
23
23
|
### app.pedidos
|
|
24
24
|
- Faz: governa 1 rota(s), 1 task(s) com foco em criar pedido publico
|
|
25
25
|
- Publico: POST /pedidos
|
|
26
|
-
- Tocar: C:\GitHub\Sema\
|
|
27
|
-
- Score:
|
|
28
|
-
- Lacunas:
|
|
26
|
+
- Tocar: C:\GitHub\Sema\testes\integracao\drift-legado.test.ts
|
|
27
|
+
- Score: 50 | Confianca: media | Risco: alto
|
|
28
|
+
- Lacunas: sem_impl, vinculo_quebrado
|
|
29
29
|
|
|
30
30
|
### sema.produto.ergonomia_e_dominio
|
|
31
|
-
- Faz: governa 2 superficie(s),
|
|
31
|
+
- Faz: governa 2 superficie(s), 5 task(s) com foco em scorecard atualizado
|
|
32
32
|
- Publico: evento:scorecard_atualizado, policy:compatibilidade_publica
|
|
33
|
-
- Tocar: C:\GitHub\Sema\pacotes\cli\src\
|
|
34
|
-
- Score:
|
|
35
|
-
- Lacunas:
|
|
33
|
+
- Tocar: C:\GitHub\Sema\pacotes\cli\src\projeto.ts, C:\GitHub\Sema\pacotes\nucleo\src\formatador\index.ts, C:\GitHub\Sema\pacotes\nucleo\src\ir\conversor.ts, C:\GitHub\Sema\pacotes\nucleo\src\semantico\analisador.ts
|
|
34
|
+
- Score: 90 | Confianca: alta | Risco: alto
|
|
35
|
+
- Lacunas: sem_impl, vinculo_quebrado
|
|
36
36
|
|
|
37
37
|
### sema.produto.geradores_web
|
|
38
38
|
- Faz: governa 3 task(s) com foco em gerar contrato javascript
|
|
39
39
|
- Publico: nenhum
|
|
40
40
|
- Tocar: C:\GitHub\Sema\pacotes\gerador-css\src\index.ts, C:\GitHub\Sema\pacotes\gerador-html\src\index.ts, C:\GitHub\Sema\pacotes\gerador-javascript\src\index.ts
|
|
41
41
|
- Score: 90 | Confianca: alta | Risco: medio
|
|
42
|
-
- Lacunas:
|
|
42
|
+
- Lacunas: sem_impl, vinculo_quebrado
|
|
43
43
|
|
|
44
44
|
### sema.produto.governanca_ia
|
|
45
|
-
- Faz: governa 2 superficie(s),
|
|
45
|
+
- Faz: governa 2 superficie(s), 13 task(s) com foco em preparar briefing contextual
|
|
46
46
|
- Publico: webhook:confirmar_contexto_publico, worker:preparar_briefing_contextual
|
|
47
|
-
- Tocar: C:\GitHub\Sema\pacotes\cli\src\docs.ts, C:\GitHub\Sema\pacotes\cli\src\drift.ts, C:\GitHub\Sema\pacotes\cli\src\index.ts, C:\GitHub\Sema\pacotes\cli\src\
|
|
48
|
-
- Score:
|
|
49
|
-
- Lacunas:
|
|
47
|
+
- Tocar: C:\GitHub\Sema\pacotes\cli\src\docs.ts, C:\GitHub\Sema\pacotes\cli\src\drift.ts, C:\GitHub\Sema\pacotes\cli\src\index.ts, C:\GitHub\Sema\pacotes\cli\src\projeto.ts (+4)
|
|
48
|
+
- Score: 92 | Confianca: alta | Risco: alto
|
|
49
|
+
- Lacunas: sem_impl, vinculo_quebrado
|
|
50
50
|
|
|
51
51
|
### sema.produto.linguagem_composta
|
|
52
52
|
- Faz: governa 1 superficie(s), 5 task(s) com foco em regressao composta
|
|
53
53
|
- Publico: storage:regressao_composta
|
|
54
54
|
- Tocar: C:\GitHub\Sema\pacotes\gerador-python\src\index.ts, C:\GitHub\Sema\pacotes\gerador-typescript\src\index.ts, C:\GitHub\Sema\pacotes\nucleo\src\formatador\index.ts, C:\GitHub\Sema\pacotes\nucleo\src\ir\conversor.ts (+1)
|
|
55
55
|
- Score: 90 | Confianca: alta | Risco: alto
|
|
56
|
-
- Lacunas:
|
|
56
|
+
- Lacunas: sem_impl, vinculo_quebrado
|
|
57
57
|
|
|
58
58
|
### sema.produto.persistencia_vendor_first
|
|
59
59
|
- Faz: governa 6 task(s) com foco em validar compatibilidade vendor first
|
|
60
60
|
- Publico: nenhum
|
|
61
61
|
- Tocar: C:\GitHub\Sema\pacotes\cli\src\drift.ts, C:\GitHub\Sema\pacotes\cli\src\importador.ts, C:\GitHub\Sema\pacotes\cli\src\projeto.ts, C:\GitHub\Sema\pacotes\nucleo\src\formatador\index.ts (+2)
|
|
62
62
|
- Score: 90 | Confianca: alta | Risco: alto
|
|
63
|
-
- Lacunas:
|
|
64
|
-
|
|
65
|
-
### sema.produto.profiles_author_agents_flow
|
|
66
|
-
- Faz: governa 6 task(s) com foco em interpretar blocos author e agents
|
|
67
|
-
- Publico: nenhum
|
|
68
|
-
- Tocar: C:\GitHub\Sema\pacotes\cli\src\index.ts, C:\GitHub\Sema\pacotes\nucleo\src\ast\tipos.ts, C:\GitHub\Sema\pacotes\nucleo\src\ir\conversor.ts, C:\GitHub\Sema\pacotes\nucleo\src\ir\modelos.ts (+3)
|
|
69
|
-
- Score: 91 | Confianca: alta | Risco: alto
|
|
70
|
-
- Lacunas: execucao_implicita
|
|
63
|
+
- Lacunas: sem_impl, vinculo_quebrado
|
package/SEMA_BRIEF.micro.txt
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PROJETO: Sema
|
|
2
|
-
MODULOS:
|
|
2
|
+
MODULOS: 6
|
|
3
3
|
ENTRADA_IA: llms.txt -> SEMA_BRIEF.micro.txt -> SEMA_INDEX.json -> AGENTS.md
|
|
4
|
-
TOP_MODULOS: app.pedidos, sema.produto.ergonomia_e_dominio, sema.produto.geradores_web (+
|
|
5
|
-
TOP_RISCOS:
|
|
6
|
-
TOP_LACUNAS:
|
|
7
|
-
GERADO_EM: 2026-05-
|
|
4
|
+
TOP_MODULOS: app.pedidos, sema.produto.ergonomia_e_dominio, sema.produto.geradores_web (+3)
|
|
5
|
+
TOP_RISCOS: assistir_renomeacao_semantica:alto, carregar_configuracao_de_persistencia:medio, consultar_scorecard_compatibilidade:medio (+25)
|
|
6
|
+
TOP_LACUNAS: sem_impl, vinculo_quebrado
|
|
7
|
+
GERADO_EM: 2026-05-15T21:54:48.396Z
|