@semacode/cli 1.5.28 → 1.5.30

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.
Files changed (125) hide show
  1. package/README.md +144 -144
  2. package/dist/bridge.d.ts +52 -0
  3. package/dist/bridge.js +318 -0
  4. package/dist/bridge.js.map +1 -0
  5. package/dist/comandos.d.ts +11 -0
  6. package/dist/comandos.js +146 -0
  7. package/dist/comandos.js.map +1 -0
  8. package/dist/contexto.d.ts +34 -0
  9. package/dist/contexto.js +197 -0
  10. package/dist/contexto.js.map +1 -0
  11. package/dist/drift.d.ts +1 -1
  12. package/dist/drift.js +32 -5
  13. package/dist/drift.js.map +1 -1
  14. package/dist/guard.d.ts +35 -0
  15. package/dist/guard.js +164 -0
  16. package/dist/guard.js.map +1 -0
  17. package/dist/index.js +391 -64
  18. package/dist/index.js.map +1 -1
  19. package/dist/lua-symbols.d.ts +0 -6
  20. package/dist/lua-symbols.js +11 -78
  21. package/dist/lua-symbols.js.map +1 -1
  22. package/dist/projeto.js +6 -0
  23. package/dist/projeto.js.map +1 -1
  24. package/dist/tipos.d.ts +1 -1
  25. package/exemplos/.prepack-generated +1 -0
  26. package/exemplos/author_obra_comum.sema +294 -294
  27. package/exemplos/author_tema_sensivel.sema +264 -264
  28. package/exemplos/profile_game.sema +114 -114
  29. package/exemplos/profile_legal.sema +105 -105
  30. package/exemplos/profile_ops.sema +110 -110
  31. package/exemplos/profile_research.sema +104 -104
  32. package/exemplos/profile_software.sema +123 -123
  33. package/exemplos/profile_workflow_n8n.sema +99 -99
  34. package/node_modules/@sema/gerador-css/package.json +14 -7
  35. package/node_modules/@sema/gerador-css/src/index.ts +605 -0
  36. package/node_modules/@sema/gerador-css/tsconfig.json +13 -0
  37. package/node_modules/@sema/gerador-css/tsconfig.tsbuildinfo +1 -0
  38. package/node_modules/@sema/gerador-dart/package.json +14 -7
  39. package/node_modules/@sema/gerador-dart/src/index.ts +52 -0
  40. package/node_modules/@sema/gerador-dart/tsconfig.json +13 -0
  41. package/node_modules/@sema/gerador-dart/tsconfig.tsbuildinfo +1 -0
  42. package/node_modules/@sema/gerador-html/package.json +14 -7
  43. package/node_modules/@sema/gerador-html/src/index.ts +185 -0
  44. package/node_modules/@sema/gerador-html/tsconfig.json +13 -0
  45. package/node_modules/@sema/gerador-html/tsconfig.tsbuildinfo +1 -0
  46. package/node_modules/@sema/gerador-javascript/package.json +14 -7
  47. package/node_modules/@sema/gerador-javascript/src/index.ts +461 -0
  48. package/node_modules/@sema/gerador-javascript/tsconfig.json +13 -0
  49. package/node_modules/@sema/gerador-javascript/tsconfig.tsbuildinfo +1 -0
  50. package/node_modules/@sema/gerador-lua/package.json +14 -7
  51. package/node_modules/@sema/gerador-lua/src/index.ts +359 -0
  52. package/node_modules/@sema/gerador-lua/tsconfig.json +13 -0
  53. package/node_modules/@sema/gerador-lua/tsconfig.tsbuildinfo +1 -0
  54. package/node_modules/@sema/gerador-python/package.json +14 -7
  55. package/node_modules/@sema/gerador-python/src/index.ts +850 -0
  56. package/node_modules/@sema/gerador-python/tsconfig.json +13 -0
  57. package/node_modules/@sema/gerador-python/tsconfig.tsbuildinfo +1 -0
  58. package/node_modules/@sema/gerador-typescript/package.json +14 -7
  59. package/node_modules/@sema/gerador-typescript/src/index.ts +876 -0
  60. package/node_modules/@sema/gerador-typescript/tsconfig.json +13 -0
  61. package/node_modules/@sema/gerador-typescript/tsconfig.tsbuildinfo +1 -0
  62. package/node_modules/@sema/nucleo/dist/ast/tipos.d.ts +1 -1
  63. package/node_modules/@sema/nucleo/dist/index.d.ts +17 -0
  64. package/node_modules/@sema/nucleo/dist/index.js +28 -0
  65. package/node_modules/@sema/nucleo/dist/index.js.map +1 -1
  66. package/node_modules/@sema/nucleo/dist/ir/conversor.js +4 -0
  67. package/node_modules/@sema/nucleo/dist/ir/conversor.js.map +1 -1
  68. package/node_modules/@sema/nucleo/dist/ir/modelos.d.ts +3 -3
  69. package/node_modules/@sema/nucleo/dist/parser/parser.js +2 -0
  70. package/node_modules/@sema/nucleo/dist/parser/parser.js.map +1 -1
  71. package/node_modules/@sema/nucleo/dist/semantico/analisador.d.ts +2 -2
  72. package/node_modules/@sema/nucleo/dist/semantico/analisador.js +3 -1
  73. package/node_modules/@sema/nucleo/dist/semantico/analisador.js.map +1 -1
  74. package/node_modules/@sema/nucleo/package.json +10 -7
  75. package/node_modules/@sema/nucleo/src/ast/tipos.ts +207 -0
  76. package/node_modules/@sema/nucleo/src/diagnosticos/index.ts +43 -0
  77. package/node_modules/@sema/nucleo/src/formatador/index.ts +530 -0
  78. package/node_modules/@sema/nucleo/src/index.ts +183 -0
  79. package/node_modules/@sema/nucleo/src/ir/conversor.ts +1037 -0
  80. package/node_modules/@sema/nucleo/src/ir/modelos.ts +403 -0
  81. package/node_modules/@sema/nucleo/src/lexer/lexer.ts +166 -0
  82. package/node_modules/@sema/nucleo/src/lexer/tokens.ts +79 -0
  83. package/node_modules/@sema/nucleo/src/parser/gramatica.ebnf +41 -0
  84. package/node_modules/@sema/nucleo/src/parser/parser.ts +936 -0
  85. package/node_modules/@sema/nucleo/src/persistencia/contratos.ts +379 -0
  86. package/node_modules/@sema/nucleo/src/semantico/analisador.ts +3126 -0
  87. package/node_modules/@sema/nucleo/src/semantico/estruturas.ts +665 -0
  88. package/node_modules/@sema/nucleo/src/semantico/seguranca.ts +362 -0
  89. package/node_modules/@sema/nucleo/src/util/arquivos.ts +28 -0
  90. package/node_modules/@sema/nucleo/tsconfig.json +9 -0
  91. package/node_modules/@sema/nucleo/tsconfig.tsbuildinfo +1 -0
  92. package/node_modules/@sema/padroes/package.json +10 -7
  93. package/node_modules/@sema/padroes/src/index.ts +382 -0
  94. package/node_modules/@sema/padroes/tsconfig.json +9 -0
  95. package/node_modules/@sema/padroes/tsconfig.tsbuildinfo +1 -0
  96. package/package.json +74 -74
  97. package/AGENTS.md +0 -280
  98. package/LICENSE +0 -22
  99. package/SEMA_BRIEF.curto.txt +0 -11
  100. package/SEMA_BRIEF.md +0 -112
  101. package/SEMA_BRIEF.micro.txt +0 -9
  102. package/SEMA_INDEX.json +0 -1534
  103. package/dist/php-symbols.d.ts +0 -24
  104. package/dist/php-symbols.js +0 -375
  105. package/dist/php-symbols.js.map +0 -1
  106. package/docs/AGENT_STARTER.md +0 -109
  107. package/docs/cli.md +0 -175
  108. package/docs/como-ensinar-a-sema-para-ia.md +0 -155
  109. package/docs/deploy.md +0 -93
  110. package/docs/documentacao.md +0 -88
  111. package/docs/env.md +0 -105
  112. package/docs/extensao-vscode.md +0 -53
  113. package/docs/fluxo-pratico-ia-sema.md +0 -187
  114. package/docs/instalacao-e-primeiro-uso.md +0 -134
  115. package/docs/integracao-com-ia.md +0 -110
  116. package/docs/mcp.md +0 -292
  117. package/docs/pagamento-ponta-a-ponta.md +0 -171
  118. package/docs/persistencia-vendor-first.md +0 -151
  119. package/docs/prompt-base-ia-sema.md +0 -111
  120. package/docs/repositories.md +0 -54
  121. package/docs/rollback.md +0 -49
  122. package/docs/seguranca.md +0 -126
  123. package/docs/sintaxe.md +0 -218
  124. package/llms-full.txt +0 -34
  125. package/llms.txt +0 -17
@@ -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
+ }
@@ -1,7 +1,14 @@
1
- {
2
- "name": "@sema/gerador-css",
3
- "version": "1.5.28",
4
- "type": "module",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts"
7
- }
1
+ {
2
+ "name": "@sema/gerador-css",
3
+ "version": "1.5.29",
4
+ "type": "module",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "scripts": {
8
+ "build": "tsc -p tsconfig.json"
9
+ },
10
+ "dependencies": {
11
+ "@sema/nucleo": "file:../nucleo",
12
+ "@sema/padroes": "file:../padroes"
13
+ }
14
+ }