@semacode/cli 1.5.27 → 1.5.29
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/AGENTS.md +279 -265
- package/AGENT_CONTEXT_PACK.json +164 -0
- package/README.md +144 -144
- package/SEMA_BRIEF.curto.txt +7 -7
- package/SEMA_BRIEF.md +464 -65
- package/SEMA_BRIEF.micro.txt +6 -6
- package/SEMA_INDEX.json +6723 -667
- package/dist/bridge.d.ts +52 -0
- package/dist/bridge.js +318 -0
- package/dist/bridge.js.map +1 -0
- package/dist/comandos.d.ts +11 -0
- package/dist/comandos.js +110 -0
- package/dist/comandos.js.map +1 -0
- package/dist/contexto.d.ts +34 -0
- package/dist/contexto.js +197 -0
- package/dist/contexto.js.map +1 -0
- package/dist/drift.d.ts +1 -1
- package/dist/drift.js +32 -5
- package/dist/drift.js.map +1 -1
- package/dist/index.js +391 -64
- package/dist/index.js.map +1 -1
- package/dist/lua-symbols.d.ts +0 -6
- package/dist/lua-symbols.js +11 -78
- package/dist/lua-symbols.js.map +1 -1
- package/dist/projeto.js +6 -0
- package/dist/projeto.js.map +1 -1
- package/dist/tipos.d.ts +1 -1
- package/docs/AGENT_STARTER.md +109 -109
- package/docs/api.md +82 -0
- package/docs/cli.md +175 -175
- package/docs/como-ensinar-a-sema-para-ia.md +155 -155
- package/docs/deploy.md +93 -0
- package/docs/documentacao.md +88 -88
- package/docs/env.md +105 -105
- package/docs/extensao-vscode.md +53 -53
- package/docs/fluxo-pratico-ia-sema.md +187 -187
- package/docs/instalacao-e-primeiro-uso.md +134 -134
- package/docs/integracao-com-ia.md +110 -110
- package/docs/mcp.md +292 -292
- package/docs/pagamento-ponta-a-ponta.md +171 -171
- package/docs/persistencia-vendor-first.md +151 -151
- package/docs/prompt-base-ia-sema.md +111 -111
- package/docs/repositories.md +54 -54
- package/docs/rollback.md +49 -49
- package/docs/seguranca.md +126 -126
- package/docs/sintaxe.md +218 -218
- package/exemplos/author_obra_comum.sema +294 -294
- package/exemplos/author_tema_sensivel.sema +264 -264
- package/exemplos/profile_game.sema +114 -114
- package/exemplos/profile_legal.sema +105 -105
- package/exemplos/profile_ops.sema +110 -110
- package/exemplos/profile_research.sema +104 -104
- package/exemplos/profile_software.sema +123 -123
- package/exemplos/profile_workflow_n8n.sema +99 -99
- package/llms-full.txt +10 -9
- package/llms.txt +8 -7
- 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 +1 -1
- package/node_modules/@sema/nucleo/dist/index.d.ts +17 -0
- package/node_modules/@sema/nucleo/dist/index.js +28 -0
- package/node_modules/@sema/nucleo/dist/index.js.map +1 -1
- package/node_modules/@sema/nucleo/dist/ir/conversor.js +4 -0
- package/node_modules/@sema/nucleo/dist/ir/conversor.js.map +1 -1
- package/node_modules/@sema/nucleo/dist/ir/modelos.d.ts +3 -3
- package/node_modules/@sema/nucleo/dist/parser/parser.js +2 -0
- package/node_modules/@sema/nucleo/dist/parser/parser.js.map +1 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.d.ts +2 -2
- package/node_modules/@sema/nucleo/dist/semantico/analisador.js +3 -1
- package/node_modules/@sema/nucleo/dist/semantico/analisador.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 +11 -10
- package/dist/php-symbols.d.ts +0 -24
- package/dist/php-symbols.js +0 -375
- package/dist/php-symbols.js.map +0 -1
|
@@ -1,104 +1,104 @@
|
|
|
1
|
-
module exemplos.profile.research {
|
|
2
|
-
docs {
|
|
3
|
-
resumo: "Starter do Profile Research: contrato primeiro. Criar, editar ou remover contrato antes de qualquer acao; depois pergunta, hipotese, metodo, metodologia, fonte, citacao, referencia, evidencia, confianca, qualidade, incerteza, lacuna, limite, conclusao, protocolo, dataset, dados, reprodutibilidade e replicacao."
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
type PlanoPesquisa {
|
|
7
|
-
fields {
|
|
8
|
-
pergunta: Texto
|
|
9
|
-
metodologia: Texto
|
|
10
|
-
fontes: Lista
|
|
11
|
-
evidencias: Lista
|
|
12
|
-
limites: Lista
|
|
13
|
-
}
|
|
14
|
-
invariants {
|
|
15
|
-
pergunta existe
|
|
16
|
-
metodologia existe
|
|
17
|
-
fontes existe
|
|
18
|
-
evidencias existe
|
|
19
|
-
limites existe
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
task validar_plano_pesquisa {
|
|
24
|
-
input {
|
|
25
|
-
pergunta: Texto required
|
|
26
|
-
metodologia: Texto required
|
|
27
|
-
fonte: Texto required
|
|
28
|
-
evidencia: Texto required
|
|
29
|
-
hipotese: Texto
|
|
30
|
-
metodo: Texto
|
|
31
|
-
citacao: Texto
|
|
32
|
-
referencia: Texto
|
|
33
|
-
confianca: Texto
|
|
34
|
-
qualidade: Texto
|
|
35
|
-
incerteza: Texto
|
|
36
|
-
lacuna: Texto
|
|
37
|
-
limite: Texto
|
|
38
|
-
conclusao: Texto
|
|
39
|
-
protocolo: Texto
|
|
40
|
-
dataset: Texto
|
|
41
|
-
dados: Texto
|
|
42
|
-
reprodutibilidade: Texto
|
|
43
|
-
replicacao: Texto
|
|
44
|
-
}
|
|
45
|
-
output {
|
|
46
|
-
aprovado: Booleano
|
|
47
|
-
lacunas: Lista
|
|
48
|
-
}
|
|
49
|
-
rules {
|
|
50
|
-
pergunta deve_ser especifica
|
|
51
|
-
hipotese deve_ser declarada
|
|
52
|
-
metodo deve_ser reproduzivel
|
|
53
|
-
metodologia deve_ser explicita
|
|
54
|
-
fonte deve_ser citavel
|
|
55
|
-
citacao deve_ser verificavel
|
|
56
|
-
referencia deve_ser preservada
|
|
57
|
-
evidencia deve_ser qualificada
|
|
58
|
-
confianca deve_ser estimada
|
|
59
|
-
qualidade deve_ser avaliada
|
|
60
|
-
incerteza deve_ser declarada
|
|
61
|
-
lacuna deve_ser registrada
|
|
62
|
-
limite deve_ser declarado
|
|
63
|
-
conclusao deve_ser sustentada
|
|
64
|
-
protocolo deve_ser versionado
|
|
65
|
-
dataset deve_ser identificado
|
|
66
|
-
dados deve_ser preservados
|
|
67
|
-
reprodutibilidade deve_ser possivel
|
|
68
|
-
replicacao deve_ser planejada
|
|
69
|
-
}
|
|
70
|
-
effects {
|
|
71
|
-
auditoria research_plano criticidade = media
|
|
72
|
-
}
|
|
73
|
-
forbidden {
|
|
74
|
-
conclusao_sem_evidencia
|
|
75
|
-
citacao_inventada
|
|
76
|
-
incerteza_oculta
|
|
77
|
-
}
|
|
78
|
-
execucao {
|
|
79
|
-
idempotencia: verdadeiro
|
|
80
|
-
timeout: "15s"
|
|
81
|
-
retry: "nenhum"
|
|
82
|
-
criticidade_operacional: media
|
|
83
|
-
}
|
|
84
|
-
guarantees {
|
|
85
|
-
aprovado existe
|
|
86
|
-
lacunas existe
|
|
87
|
-
}
|
|
88
|
-
tests {
|
|
89
|
-
caso "pesquisa tem metodo e evidencia" {
|
|
90
|
-
given {
|
|
91
|
-
pergunta: "qual adapter reduz drift em workflow"
|
|
92
|
-
metodologia: "comparacao controlada"
|
|
93
|
-
fonte: "referencia primaria com citacao"
|
|
94
|
-
evidencia: "dataset com dados e confianca"
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
expect {
|
|
98
|
-
sucesso: verdadeiro
|
|
99
|
-
aprovado: verdadeiro
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
1
|
+
module exemplos.profile.research {
|
|
2
|
+
docs {
|
|
3
|
+
resumo: "Starter do Profile Research: contrato primeiro. Criar, editar ou remover contrato antes de qualquer acao; depois pergunta, hipotese, metodo, metodologia, fonte, citacao, referencia, evidencia, confianca, qualidade, incerteza, lacuna, limite, conclusao, protocolo, dataset, dados, reprodutibilidade e replicacao."
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
type PlanoPesquisa {
|
|
7
|
+
fields {
|
|
8
|
+
pergunta: Texto
|
|
9
|
+
metodologia: Texto
|
|
10
|
+
fontes: Lista
|
|
11
|
+
evidencias: Lista
|
|
12
|
+
limites: Lista
|
|
13
|
+
}
|
|
14
|
+
invariants {
|
|
15
|
+
pergunta existe
|
|
16
|
+
metodologia existe
|
|
17
|
+
fontes existe
|
|
18
|
+
evidencias existe
|
|
19
|
+
limites existe
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
task validar_plano_pesquisa {
|
|
24
|
+
input {
|
|
25
|
+
pergunta: Texto required
|
|
26
|
+
metodologia: Texto required
|
|
27
|
+
fonte: Texto required
|
|
28
|
+
evidencia: Texto required
|
|
29
|
+
hipotese: Texto
|
|
30
|
+
metodo: Texto
|
|
31
|
+
citacao: Texto
|
|
32
|
+
referencia: Texto
|
|
33
|
+
confianca: Texto
|
|
34
|
+
qualidade: Texto
|
|
35
|
+
incerteza: Texto
|
|
36
|
+
lacuna: Texto
|
|
37
|
+
limite: Texto
|
|
38
|
+
conclusao: Texto
|
|
39
|
+
protocolo: Texto
|
|
40
|
+
dataset: Texto
|
|
41
|
+
dados: Texto
|
|
42
|
+
reprodutibilidade: Texto
|
|
43
|
+
replicacao: Texto
|
|
44
|
+
}
|
|
45
|
+
output {
|
|
46
|
+
aprovado: Booleano
|
|
47
|
+
lacunas: Lista
|
|
48
|
+
}
|
|
49
|
+
rules {
|
|
50
|
+
pergunta deve_ser especifica
|
|
51
|
+
hipotese deve_ser declarada
|
|
52
|
+
metodo deve_ser reproduzivel
|
|
53
|
+
metodologia deve_ser explicita
|
|
54
|
+
fonte deve_ser citavel
|
|
55
|
+
citacao deve_ser verificavel
|
|
56
|
+
referencia deve_ser preservada
|
|
57
|
+
evidencia deve_ser qualificada
|
|
58
|
+
confianca deve_ser estimada
|
|
59
|
+
qualidade deve_ser avaliada
|
|
60
|
+
incerteza deve_ser declarada
|
|
61
|
+
lacuna deve_ser registrada
|
|
62
|
+
limite deve_ser declarado
|
|
63
|
+
conclusao deve_ser sustentada
|
|
64
|
+
protocolo deve_ser versionado
|
|
65
|
+
dataset deve_ser identificado
|
|
66
|
+
dados deve_ser preservados
|
|
67
|
+
reprodutibilidade deve_ser possivel
|
|
68
|
+
replicacao deve_ser planejada
|
|
69
|
+
}
|
|
70
|
+
effects {
|
|
71
|
+
auditoria research_plano criticidade = media
|
|
72
|
+
}
|
|
73
|
+
forbidden {
|
|
74
|
+
conclusao_sem_evidencia
|
|
75
|
+
citacao_inventada
|
|
76
|
+
incerteza_oculta
|
|
77
|
+
}
|
|
78
|
+
execucao {
|
|
79
|
+
idempotencia: verdadeiro
|
|
80
|
+
timeout: "15s"
|
|
81
|
+
retry: "nenhum"
|
|
82
|
+
criticidade_operacional: media
|
|
83
|
+
}
|
|
84
|
+
guarantees {
|
|
85
|
+
aprovado existe
|
|
86
|
+
lacunas existe
|
|
87
|
+
}
|
|
88
|
+
tests {
|
|
89
|
+
caso "pesquisa tem metodo e evidencia" {
|
|
90
|
+
given {
|
|
91
|
+
pergunta: "qual adapter reduz drift em workflow"
|
|
92
|
+
metodologia: "comparacao controlada"
|
|
93
|
+
fonte: "referencia primaria com citacao"
|
|
94
|
+
evidencia: "dataset com dados e confianca"
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
expect {
|
|
98
|
+
sucesso: verdadeiro
|
|
99
|
+
aprovado: verdadeiro
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
@@ -1,123 +1,123 @@
|
|
|
1
|
-
module exemplos.profile.software {
|
|
2
|
-
docs {
|
|
3
|
-
resumo: "Starter do Profile Software: contrato primeiro. Criar, editar ou remover contrato antes de qualquer acao; depois codigo vivo, drift, impacto, vinculos rastreaveis, arquivo, simbolo, validar, verificar, checks e testes."
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
type MudancaSoftware {
|
|
7
|
-
fields {
|
|
8
|
-
contrato: Texto
|
|
9
|
-
codigo_vivo: Texto
|
|
10
|
-
drift: Texto
|
|
11
|
-
impacto: Texto
|
|
12
|
-
checks: Lista
|
|
13
|
-
}
|
|
14
|
-
invariants {
|
|
15
|
-
contrato existe
|
|
16
|
-
codigo_vivo existe
|
|
17
|
-
drift existe
|
|
18
|
-
impacto existe
|
|
19
|
-
checks existe
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
task declarar_mudanca_contract_first {
|
|
24
|
-
input {
|
|
25
|
-
contrato: Texto required
|
|
26
|
-
codigo_vivo: Texto required
|
|
27
|
-
arquivo: Texto required
|
|
28
|
-
simbolo: Texto required
|
|
29
|
-
vinculos: Texto
|
|
30
|
-
impl: Texto
|
|
31
|
-
}
|
|
32
|
-
output {
|
|
33
|
-
mudanca: MudancaSoftware
|
|
34
|
-
pode_editar: Booleano
|
|
35
|
-
}
|
|
36
|
-
rules {
|
|
37
|
-
contrato deve_ser preenchido
|
|
38
|
-
codigo_vivo deve_ser declarado
|
|
39
|
-
arquivo deve_ser rastreavel
|
|
40
|
-
simbolo deve_ser rastreavel
|
|
41
|
-
vinculos deve_ser explicitos
|
|
42
|
-
impl deve_ser coerente
|
|
43
|
-
}
|
|
44
|
-
effects {
|
|
45
|
-
auditoria profile_software_mudanca criticidade = media
|
|
46
|
-
}
|
|
47
|
-
forbidden {
|
|
48
|
-
codigo_sem_contrato
|
|
49
|
-
editar_sem_drift
|
|
50
|
-
finalizar_sem_checks
|
|
51
|
-
}
|
|
52
|
-
execucao {
|
|
53
|
-
idempotencia: verdadeiro
|
|
54
|
-
timeout: "10s"
|
|
55
|
-
criticidade_operacional: media
|
|
56
|
-
}
|
|
57
|
-
guarantees {
|
|
58
|
-
mudanca existe
|
|
59
|
-
pode_editar == verdadeiro
|
|
60
|
-
}
|
|
61
|
-
tests {
|
|
62
|
-
caso "mudanca pronta para codigo" {
|
|
63
|
-
given {
|
|
64
|
-
contrato: "contrato validado"
|
|
65
|
-
codigo_vivo: "implementacao existente"
|
|
66
|
-
arquivo: "src/pedidos.ts"
|
|
67
|
-
simbolo: "criarPedido"
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
expect {
|
|
71
|
-
sucesso: verdadeiro
|
|
72
|
-
pode_editar: verdadeiro
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
task fechar_mudanca_com_verificacao {
|
|
79
|
-
input {
|
|
80
|
-
drift: Texto required
|
|
81
|
-
impacto: Texto required
|
|
82
|
-
validar: Texto required
|
|
83
|
-
verificar: Texto required
|
|
84
|
-
testes: Lista required
|
|
85
|
-
checks: Lista
|
|
86
|
-
}
|
|
87
|
-
output {
|
|
88
|
-
concluida: Booleano
|
|
89
|
-
bloqueios: Lista
|
|
90
|
-
}
|
|
91
|
-
rules {
|
|
92
|
-
drift deve_ser executado
|
|
93
|
-
impacto deve_ser mapeado
|
|
94
|
-
validar deve_ser executado
|
|
95
|
-
verificar deve_ser executado
|
|
96
|
-
testes deve_ser nao_vazio
|
|
97
|
-
checks deve_ser completos
|
|
98
|
-
}
|
|
99
|
-
effects {
|
|
100
|
-
auditoria profile_software_fechamento criticidade = media
|
|
101
|
-
}
|
|
102
|
-
guarantees {
|
|
103
|
-
concluida existe
|
|
104
|
-
bloqueios existe
|
|
105
|
-
}
|
|
106
|
-
tests {
|
|
107
|
-
caso "fecha com checks completos" {
|
|
108
|
-
given {
|
|
109
|
-
drift: "sem divergencia"
|
|
110
|
-
impacto: "mapa calculado"
|
|
111
|
-
validar: "sema validar"
|
|
112
|
-
verificar: "sema verificar"
|
|
113
|
-
testes: "npm test"
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
expect {
|
|
117
|
-
sucesso: verdadeiro
|
|
118
|
-
concluida: verdadeiro
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
}
|
|
1
|
+
module exemplos.profile.software {
|
|
2
|
+
docs {
|
|
3
|
+
resumo: "Starter do Profile Software: contrato primeiro. Criar, editar ou remover contrato antes de qualquer acao; depois codigo vivo, drift, impacto, vinculos rastreaveis, arquivo, simbolo, validar, verificar, checks e testes."
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
type MudancaSoftware {
|
|
7
|
+
fields {
|
|
8
|
+
contrato: Texto
|
|
9
|
+
codigo_vivo: Texto
|
|
10
|
+
drift: Texto
|
|
11
|
+
impacto: Texto
|
|
12
|
+
checks: Lista
|
|
13
|
+
}
|
|
14
|
+
invariants {
|
|
15
|
+
contrato existe
|
|
16
|
+
codigo_vivo existe
|
|
17
|
+
drift existe
|
|
18
|
+
impacto existe
|
|
19
|
+
checks existe
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
task declarar_mudanca_contract_first {
|
|
24
|
+
input {
|
|
25
|
+
contrato: Texto required
|
|
26
|
+
codigo_vivo: Texto required
|
|
27
|
+
arquivo: Texto required
|
|
28
|
+
simbolo: Texto required
|
|
29
|
+
vinculos: Texto
|
|
30
|
+
impl: Texto
|
|
31
|
+
}
|
|
32
|
+
output {
|
|
33
|
+
mudanca: MudancaSoftware
|
|
34
|
+
pode_editar: Booleano
|
|
35
|
+
}
|
|
36
|
+
rules {
|
|
37
|
+
contrato deve_ser preenchido
|
|
38
|
+
codigo_vivo deve_ser declarado
|
|
39
|
+
arquivo deve_ser rastreavel
|
|
40
|
+
simbolo deve_ser rastreavel
|
|
41
|
+
vinculos deve_ser explicitos
|
|
42
|
+
impl deve_ser coerente
|
|
43
|
+
}
|
|
44
|
+
effects {
|
|
45
|
+
auditoria profile_software_mudanca criticidade = media
|
|
46
|
+
}
|
|
47
|
+
forbidden {
|
|
48
|
+
codigo_sem_contrato
|
|
49
|
+
editar_sem_drift
|
|
50
|
+
finalizar_sem_checks
|
|
51
|
+
}
|
|
52
|
+
execucao {
|
|
53
|
+
idempotencia: verdadeiro
|
|
54
|
+
timeout: "10s"
|
|
55
|
+
criticidade_operacional: media
|
|
56
|
+
}
|
|
57
|
+
guarantees {
|
|
58
|
+
mudanca existe
|
|
59
|
+
pode_editar == verdadeiro
|
|
60
|
+
}
|
|
61
|
+
tests {
|
|
62
|
+
caso "mudanca pronta para codigo" {
|
|
63
|
+
given {
|
|
64
|
+
contrato: "contrato validado"
|
|
65
|
+
codigo_vivo: "implementacao existente"
|
|
66
|
+
arquivo: "src/pedidos.ts"
|
|
67
|
+
simbolo: "criarPedido"
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
expect {
|
|
71
|
+
sucesso: verdadeiro
|
|
72
|
+
pode_editar: verdadeiro
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
task fechar_mudanca_com_verificacao {
|
|
79
|
+
input {
|
|
80
|
+
drift: Texto required
|
|
81
|
+
impacto: Texto required
|
|
82
|
+
validar: Texto required
|
|
83
|
+
verificar: Texto required
|
|
84
|
+
testes: Lista required
|
|
85
|
+
checks: Lista
|
|
86
|
+
}
|
|
87
|
+
output {
|
|
88
|
+
concluida: Booleano
|
|
89
|
+
bloqueios: Lista
|
|
90
|
+
}
|
|
91
|
+
rules {
|
|
92
|
+
drift deve_ser executado
|
|
93
|
+
impacto deve_ser mapeado
|
|
94
|
+
validar deve_ser executado
|
|
95
|
+
verificar deve_ser executado
|
|
96
|
+
testes deve_ser nao_vazio
|
|
97
|
+
checks deve_ser completos
|
|
98
|
+
}
|
|
99
|
+
effects {
|
|
100
|
+
auditoria profile_software_fechamento criticidade = media
|
|
101
|
+
}
|
|
102
|
+
guarantees {
|
|
103
|
+
concluida existe
|
|
104
|
+
bloqueios existe
|
|
105
|
+
}
|
|
106
|
+
tests {
|
|
107
|
+
caso "fecha com checks completos" {
|
|
108
|
+
given {
|
|
109
|
+
drift: "sem divergencia"
|
|
110
|
+
impacto: "mapa calculado"
|
|
111
|
+
validar: "sema validar"
|
|
112
|
+
verificar: "sema verificar"
|
|
113
|
+
testes: "npm test"
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
expect {
|
|
117
|
+
sucesso: verdadeiro
|
|
118
|
+
concluida: verdadeiro
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
@@ -1,99 +1,99 @@
|
|
|
1
|
-
module exemplos.profile.workflow_n8n {
|
|
2
|
-
docs {
|
|
3
|
-
resumo: "Starter do Profile Workflow para n8n: contrato primeiro. Criar, editar ou remover contrato antes de qualquer acao; depois runtime workflow como alvo de compatibilidade, adapter adaptado, scorecard parcial, webhook, cron, HTTP, branching, transformacao, authz, audit, compensacao e guarantees."
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
type RuntimeN8n {
|
|
7
|
-
fields {
|
|
8
|
-
runtime: Texto
|
|
9
|
-
adapter: Texto
|
|
10
|
-
compatibilidade: Texto
|
|
11
|
-
scorecard: Texto
|
|
12
|
-
lacunas: Lista
|
|
13
|
-
}
|
|
14
|
-
invariants {
|
|
15
|
-
runtime existe
|
|
16
|
-
adapter existe
|
|
17
|
-
compatibilidade existe
|
|
18
|
-
scorecard existe
|
|
19
|
-
lacunas existe
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
task validar_workflow_n8n {
|
|
24
|
-
input {
|
|
25
|
-
runtime: Texto required
|
|
26
|
-
adapter: Texto required
|
|
27
|
-
scorecard: Texto required
|
|
28
|
-
compatibilidade: Texto
|
|
29
|
-
webhook: Texto
|
|
30
|
-
cron: Texto
|
|
31
|
-
http: Texto
|
|
32
|
-
branching: Texto
|
|
33
|
-
transformacao: Texto
|
|
34
|
-
authz: Texto
|
|
35
|
-
audit: Texto
|
|
36
|
-
compensacao: Texto
|
|
37
|
-
guarantees: Texto
|
|
38
|
-
}
|
|
39
|
-
output {
|
|
40
|
-
runtime_validado: RuntimeN8n
|
|
41
|
-
aprovado: Booleano
|
|
42
|
-
}
|
|
43
|
-
rules {
|
|
44
|
-
runtime deve_ser workflow
|
|
45
|
-
adapter deve_ser n8n
|
|
46
|
-
compatibilidade deve_ser parcial
|
|
47
|
-
scorecard deve_ser calculado
|
|
48
|
-
webhook deve_ser mapeado
|
|
49
|
-
cron deve_ser mapeado
|
|
50
|
-
http deve_ser mapeado
|
|
51
|
-
branching deve_ser mapeado
|
|
52
|
-
transformacao deve_ser mapeada
|
|
53
|
-
authz deve_ser declarado
|
|
54
|
-
audit deve_ser declarado
|
|
55
|
-
compensacao deve_ser declarada
|
|
56
|
-
guarantees deve_ser declaradas
|
|
57
|
-
}
|
|
58
|
-
effects {
|
|
59
|
-
auditoria workflow_n8n_scorecard criticidade = media
|
|
60
|
-
}
|
|
61
|
-
forbidden {
|
|
62
|
-
equivalencia_total_falsa
|
|
63
|
-
n8n_como_linguagem_canonica
|
|
64
|
-
node_sem_contrato
|
|
65
|
-
}
|
|
66
|
-
execucao {
|
|
67
|
-
idempotencia: verdadeiro
|
|
68
|
-
timeout: "10s"
|
|
69
|
-
compensacao: "bloquear_publicacao_do_workflow"
|
|
70
|
-
criticidade_operacional: media
|
|
71
|
-
}
|
|
72
|
-
guarantees {
|
|
73
|
-
runtime_validado existe
|
|
74
|
-
aprovado existe
|
|
75
|
-
}
|
|
76
|
-
tests {
|
|
77
|
-
caso "n8n e adapter honesto" {
|
|
78
|
-
given {
|
|
79
|
-
runtime: "workflow n8n"
|
|
80
|
-
adapter: "adapter adaptado"
|
|
81
|
-
scorecard: "webhook cron HTTP branching transformacao nativos; authz audit compensacao guarantees parciais"
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
expect {
|
|
85
|
-
sucesso: verdadeiro
|
|
86
|
-
aprovado: verdadeiro
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
flow onboarding_por_n8n {
|
|
93
|
-
lead_id: Id
|
|
94
|
-
email: Email
|
|
95
|
-
etapa receber usa validar_workflow_n8n com runtime = "workflow n8n", adapter = "n8n", scorecard = "webhook cron HTTP branching transformacao com lacunas authz audit compensacao guarantees" em_sucesso concluir em_erro bloquear
|
|
96
|
-
etapa concluir usa validar_workflow_n8n com runtime = "workflow n8n", adapter = "n8n", scorecard = "compatibilidade parcial" depende_de receber
|
|
97
|
-
etapa bloquear usa validar_workflow_n8n com runtime = "workflow n8n", adapter = "n8n", scorecard = "bloqueio por lacuna" depende_de receber
|
|
98
|
-
}
|
|
99
|
-
}
|
|
1
|
+
module exemplos.profile.workflow_n8n {
|
|
2
|
+
docs {
|
|
3
|
+
resumo: "Starter do Profile Workflow para n8n: contrato primeiro. Criar, editar ou remover contrato antes de qualquer acao; depois runtime workflow como alvo de compatibilidade, adapter adaptado, scorecard parcial, webhook, cron, HTTP, branching, transformacao, authz, audit, compensacao e guarantees."
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
type RuntimeN8n {
|
|
7
|
+
fields {
|
|
8
|
+
runtime: Texto
|
|
9
|
+
adapter: Texto
|
|
10
|
+
compatibilidade: Texto
|
|
11
|
+
scorecard: Texto
|
|
12
|
+
lacunas: Lista
|
|
13
|
+
}
|
|
14
|
+
invariants {
|
|
15
|
+
runtime existe
|
|
16
|
+
adapter existe
|
|
17
|
+
compatibilidade existe
|
|
18
|
+
scorecard existe
|
|
19
|
+
lacunas existe
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
task validar_workflow_n8n {
|
|
24
|
+
input {
|
|
25
|
+
runtime: Texto required
|
|
26
|
+
adapter: Texto required
|
|
27
|
+
scorecard: Texto required
|
|
28
|
+
compatibilidade: Texto
|
|
29
|
+
webhook: Texto
|
|
30
|
+
cron: Texto
|
|
31
|
+
http: Texto
|
|
32
|
+
branching: Texto
|
|
33
|
+
transformacao: Texto
|
|
34
|
+
authz: Texto
|
|
35
|
+
audit: Texto
|
|
36
|
+
compensacao: Texto
|
|
37
|
+
guarantees: Texto
|
|
38
|
+
}
|
|
39
|
+
output {
|
|
40
|
+
runtime_validado: RuntimeN8n
|
|
41
|
+
aprovado: Booleano
|
|
42
|
+
}
|
|
43
|
+
rules {
|
|
44
|
+
runtime deve_ser workflow
|
|
45
|
+
adapter deve_ser n8n
|
|
46
|
+
compatibilidade deve_ser parcial
|
|
47
|
+
scorecard deve_ser calculado
|
|
48
|
+
webhook deve_ser mapeado
|
|
49
|
+
cron deve_ser mapeado
|
|
50
|
+
http deve_ser mapeado
|
|
51
|
+
branching deve_ser mapeado
|
|
52
|
+
transformacao deve_ser mapeada
|
|
53
|
+
authz deve_ser declarado
|
|
54
|
+
audit deve_ser declarado
|
|
55
|
+
compensacao deve_ser declarada
|
|
56
|
+
guarantees deve_ser declaradas
|
|
57
|
+
}
|
|
58
|
+
effects {
|
|
59
|
+
auditoria workflow_n8n_scorecard criticidade = media
|
|
60
|
+
}
|
|
61
|
+
forbidden {
|
|
62
|
+
equivalencia_total_falsa
|
|
63
|
+
n8n_como_linguagem_canonica
|
|
64
|
+
node_sem_contrato
|
|
65
|
+
}
|
|
66
|
+
execucao {
|
|
67
|
+
idempotencia: verdadeiro
|
|
68
|
+
timeout: "10s"
|
|
69
|
+
compensacao: "bloquear_publicacao_do_workflow"
|
|
70
|
+
criticidade_operacional: media
|
|
71
|
+
}
|
|
72
|
+
guarantees {
|
|
73
|
+
runtime_validado existe
|
|
74
|
+
aprovado existe
|
|
75
|
+
}
|
|
76
|
+
tests {
|
|
77
|
+
caso "n8n e adapter honesto" {
|
|
78
|
+
given {
|
|
79
|
+
runtime: "workflow n8n"
|
|
80
|
+
adapter: "adapter adaptado"
|
|
81
|
+
scorecard: "webhook cron HTTP branching transformacao nativos; authz audit compensacao guarantees parciais"
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
expect {
|
|
85
|
+
sucesso: verdadeiro
|
|
86
|
+
aprovado: verdadeiro
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
flow onboarding_por_n8n {
|
|
93
|
+
lead_id: Id
|
|
94
|
+
email: Email
|
|
95
|
+
etapa receber usa validar_workflow_n8n com runtime = "workflow n8n", adapter = "n8n", scorecard = "webhook cron HTTP branching transformacao com lacunas authz audit compensacao guarantees" em_sucesso concluir em_erro bloquear
|
|
96
|
+
etapa concluir usa validar_workflow_n8n com runtime = "workflow n8n", adapter = "n8n", scorecard = "compatibilidade parcial" depende_de receber
|
|
97
|
+
etapa bloquear usa validar_workflow_n8n com runtime = "workflow n8n", adapter = "n8n", scorecard = "bloqueio por lacuna" depende_de receber
|
|
98
|
+
}
|
|
99
|
+
}
|
package/llms-full.txt
CHANGED
|
@@ -4,16 +4,17 @@ This repository is not optimized for human-first reading. It is optimized for AI
|
|
|
4
4
|
|
|
5
5
|
Canonical entrypoints in the repository root:
|
|
6
6
|
1. `llms.txt`
|
|
7
|
-
2. `
|
|
8
|
-
3. `
|
|
9
|
-
4. `
|
|
10
|
-
5. `
|
|
11
|
-
6. `
|
|
7
|
+
2. `AGENT_CONTEXT_PACK.json`
|
|
8
|
+
3. `SEMA_BRIEF.md`
|
|
9
|
+
4. `SEMA_INDEX.json`
|
|
10
|
+
5. `AGENTS.md`
|
|
11
|
+
6. `README.md`
|
|
12
|
+
7. `docs/AGENT_STARTER.md`
|
|
12
13
|
|
|
13
14
|
Capacity routing:
|
|
14
|
-
- small/free AI: `llms.txt` -> `SEMA_BRIEF.micro.txt` -> `SEMA_INDEX.json` -> `AGENTS.md`
|
|
15
|
-
- medium AI: `llms.txt` -> `SEMA_BRIEF.curto.txt` -> `SEMA_INDEX.json` -> `AGENTS.md` -> `README.md`
|
|
16
|
-
- large/tool-using AI: `llms-full.txt` -> `SEMA_BRIEF.md` -> `SEMA_INDEX.json` -> `AGENTS.md` -> `README.md`
|
|
15
|
+
- small/free AI: `llms.txt` -> `AGENT_CONTEXT_PACK.json` -> `SEMA_BRIEF.micro.txt` -> `SEMA_INDEX.json` -> `AGENTS.md`
|
|
16
|
+
- medium AI: `llms.txt` -> `AGENT_CONTEXT_PACK.json` -> `SEMA_BRIEF.curto.txt` -> `SEMA_INDEX.json` -> `AGENTS.md` -> `README.md`
|
|
17
|
+
- large/tool-using AI: `llms-full.txt` -> `AGENT_CONTEXT_PACK.json` -> `SEMA_BRIEF.md` -> `SEMA_INDEX.json` -> `AGENTS.md` -> `README.md`
|
|
17
18
|
|
|
18
19
|
Source-of-truth order:
|
|
19
20
|
1. root Sema artifacts
|
|
@@ -31,4 +32,4 @@ Useful commands:
|
|
|
31
32
|
- `sema verificar <arquivo-ou-pasta> --json`
|
|
32
33
|
|
|
33
34
|
Do not ask the model to infer semantics that are already available in Sema artifacts.
|
|
34
|
-
Do not start from raw source code if `SEMA_BRIEF`, `SEMA_INDEX`, `drift`, or `briefing` are available.
|
|
35
|
+
Do not start from raw source code if `AGENT_CONTEXT_PACK`, `SEMA_BRIEF`, `SEMA_INDEX`, `drift`, or `briefing` are available.
|