@semacode/cli 2.2.0 → 2.3.1

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 (252) hide show
  1. package/LICENSE +39 -39
  2. package/README.md +251 -141
  3. package/dist/agentContext.d.ts +1 -1
  4. package/dist/agentContextPack.js +6 -1
  5. package/dist/agentContextTipos.d.ts +4 -2
  6. package/dist/agentContextTipos.js +7 -0
  7. package/dist/agentEntryPoints.js +551 -499
  8. package/dist/angular-consumer-standalone.d.ts +3 -1
  9. package/dist/angular-consumer-standalone.js +12 -8
  10. package/dist/comandos.js +4 -0
  11. package/dist/discovery/catalog.d.ts +11 -0
  12. package/dist/discovery/catalog.js +521 -0
  13. package/dist/discovery/command.d.ts +11 -0
  14. package/dist/discovery/command.js +226 -0
  15. package/dist/discovery/index.d.ts +5 -0
  16. package/dist/discovery/index.js +8 -0
  17. package/dist/discovery/ranker.d.ts +3 -0
  18. package/dist/discovery/ranker.js +310 -0
  19. package/dist/discovery/redaction.d.ts +2 -0
  20. package/dist/discovery/redaction.js +21 -0
  21. package/dist/discovery/render.d.ts +2 -0
  22. package/dist/discovery/render.js +100 -0
  23. package/dist/discovery/types.d.ts +119 -0
  24. package/dist/discovery/types.js +13 -0
  25. package/dist/drift.part01.d.ts +32 -2
  26. package/dist/drift.part01.js +2 -0
  27. package/dist/drift.part04.d.ts +3 -2
  28. package/dist/drift.part04.js +6 -3
  29. package/dist/drift.part05.d.ts +2 -1
  30. package/dist/drift.part05.js +4 -3
  31. package/dist/drift.part06.d.ts +2 -1
  32. package/dist/drift.part06.js +9 -5
  33. package/dist/drift.part07.d.ts +11 -10
  34. package/dist/drift.part07.js +40 -30
  35. package/dist/drift.part08.d.ts +2 -1
  36. package/dist/drift.part08.js +4 -3
  37. package/dist/drift.part11.js +71 -6
  38. package/dist/drift.part12.js +14 -1
  39. package/dist/drift.part13.d.ts +42 -7
  40. package/dist/drift.part13.js +660 -36
  41. package/dist/driftCache.d.ts +49 -0
  42. package/dist/driftCache.js +311 -0
  43. package/dist/driftCacheIncremental.d.ts +98 -0
  44. package/dist/driftCacheIncremental.js +596 -0
  45. package/dist/driftCatalogo.d.ts +91 -0
  46. package/dist/driftCatalogo.js +657 -0
  47. package/dist/driftCatalogoPersistente.d.ts +8 -0
  48. package/dist/driftCatalogoPersistente.js +77 -0
  49. package/dist/driftEscopo.d.ts +23 -0
  50. package/dist/driftEscopo.js +563 -0
  51. package/dist/driftEscopoReferencias.d.ts +4 -0
  52. package/dist/driftEscopoReferencias.js +265 -0
  53. package/dist/driftOrcamento.d.ts +12 -0
  54. package/dist/driftOrcamento.js +19 -3
  55. package/dist/execucoesExternas.js +5 -19
  56. package/dist/exemplosOficiais.js +29 -8
  57. package/dist/iaPrompts.d.ts +1 -1
  58. package/dist/iaPrompts.js +310 -307
  59. package/dist/index.d.ts +2 -0
  60. package/dist/index.js +23 -5
  61. package/dist/index.part01.d.ts +17 -2
  62. package/dist/index.part01.js +119 -8
  63. package/dist/index.part02.js +21 -21
  64. package/dist/index.part03.d.ts +2 -2
  65. package/dist/index.part03.js +14 -3
  66. package/dist/index.part04.d.ts +2 -2
  67. package/dist/index.part04.js +113 -101
  68. package/dist/index.part05.d.ts +1 -1
  69. package/dist/index.part05.js +99 -22
  70. package/dist/index.part06.js +6 -2
  71. package/dist/index.part07.js +24 -24
  72. package/dist/index.part08.js +1 -1
  73. package/dist/init/templates.part01.js +393 -393
  74. package/dist/init/templates.part02.js +189 -189
  75. package/dist/initTemplatesBackend.js +73 -73
  76. package/dist/initTemplatesBase.js +81 -80
  77. package/dist/initTemplatesFlutter.js +137 -137
  78. package/dist/initTemplatesRuntime.js +350 -350
  79. package/dist/initTemplatesWeb.js +309 -309
  80. package/dist/pipelineConteudo/command.js +1 -36
  81. package/dist/profileArtefatoValidadores.d.ts +3 -2
  82. package/dist/profileArtefatoValidadores.js +81 -0
  83. package/dist/profileAuthorTipos.d.ts +4 -3
  84. package/dist/profileCatalogo.d.ts +5 -5
  85. package/dist/profileCatalogo.js +30 -0
  86. package/dist/profileCommand.d.ts +8 -2
  87. package/dist/profileCommand.js +15 -5
  88. package/dist/profileRegras.d.ts +5 -5
  89. package/dist/profileRegras.js +13 -1
  90. package/dist/profileRulePacks.js +68 -0
  91. package/dist/projeto.d.ts +1 -1
  92. package/dist/projetoCarregar.d.ts +2 -2
  93. package/dist/projetoCarregar.js +47 -24
  94. package/dist/projetoCatalogo.d.ts +7 -0
  95. package/dist/projetoCatalogo.js +125 -0
  96. package/dist/projetoTipos.d.ts +14 -5
  97. package/dist/sistemasInterativos/adapterProtocol.d.ts +3 -0
  98. package/dist/sistemasInterativos/adapterProtocol.js +240 -0
  99. package/dist/sistemasInterativos/advancedCatalog.d.ts +5 -0
  100. package/dist/sistemasInterativos/advancedCatalog.js +442 -0
  101. package/dist/sistemasInterativos/autonomy.d.ts +230 -0
  102. package/dist/sistemasInterativos/autonomy.js +753 -0
  103. package/dist/sistemasInterativos/canonical.d.ts +3 -0
  104. package/dist/sistemasInterativos/canonical.js +43 -0
  105. package/dist/sistemasInterativos/catalog.d.ts +116 -0
  106. package/dist/sistemasInterativos/catalog.js +543 -0
  107. package/dist/sistemasInterativos/command.d.ts +7 -0
  108. package/dist/sistemasInterativos/command.js +311 -0
  109. package/dist/sistemasInterativos/controlRun.d.ts +56 -0
  110. package/dist/sistemasInterativos/controlRun.js +391 -0
  111. package/dist/sistemasInterativos/evidence.d.ts +5 -0
  112. package/dist/sistemasInterativos/evidence.js +306 -0
  113. package/dist/sistemasInterativos/experienceIr.d.ts +12 -0
  114. package/dist/sistemasInterativos/experienceIr.js +895 -0
  115. package/dist/sistemasInterativos/experienceIrSemantics.d.ts +30 -0
  116. package/dist/sistemasInterativos/experienceIrSemantics.js +368 -0
  117. package/dist/sistemasInterativos/experienceIrTypes.d.ts +370 -0
  118. package/dist/sistemasInterativos/experienceIrTypes.js +5 -0
  119. package/dist/sistemasInterativos/extensionCommand.d.ts +391 -0
  120. package/dist/sistemasInterativos/extensionCommand.js +383 -0
  121. package/dist/sistemasInterativos/index.d.ts +19 -0
  122. package/dist/sistemasInterativos/index.js +22 -0
  123. package/dist/sistemasInterativos/operations.d.ts +40 -0
  124. package/dist/sistemasInterativos/operations.js +1167 -0
  125. package/dist/sistemasInterativos/operationsTypes.d.ts +297 -0
  126. package/dist/sistemasInterativos/operationsTypes.js +11 -0
  127. package/dist/sistemasInterativos/planner.d.ts +2 -0
  128. package/dist/sistemasInterativos/planner.js +159 -0
  129. package/dist/sistemasInterativos/portability.d.ts +164 -0
  130. package/dist/sistemasInterativos/portability.js +539 -0
  131. package/dist/sistemasInterativos/render.d.ts +3 -0
  132. package/dist/sistemasInterativos/render.js +179 -0
  133. package/dist/sistemasInterativos/temporal.d.ts +183 -0
  134. package/dist/sistemasInterativos/temporal.js +543 -0
  135. package/dist/sistemasInterativos/types.d.ts +215 -0
  136. package/dist/sistemasInterativos/types.js +4 -0
  137. package/dist/sistemasInterativos/validator.d.ts +2 -0
  138. package/dist/sistemasInterativos/validator.js +305 -0
  139. package/dist/sync/index.js +35 -35
  140. package/docs/README.md +34 -28
  141. package/docs/ai-onboarding.md +62 -62
  142. package/docs/ai-workflow.md +9 -4
  143. package/docs/auth.md +26 -26
  144. package/docs/cli.md +79 -79
  145. package/docs/commands.md +47 -2
  146. package/docs/database.md +15 -15
  147. package/docs/deploy.md +41 -41
  148. package/docs/descoberta-capacidades.md +106 -0
  149. package/docs/documentation.md +39 -39
  150. package/docs/env.md +16 -16
  151. package/docs/frontend.md +41 -41
  152. package/docs/getting-started.md +57 -57
  153. package/docs/i18n.md +15 -15
  154. package/docs/pipeline-conteudo.md +246 -246
  155. package/docs/profiles.md +54 -45
  156. package/docs/repositories.md +43 -43
  157. package/docs/rollback.md +31 -31
  158. package/docs/security.md +32 -32
  159. package/docs/sistemas-interativos.md +376 -0
  160. package/docs/support.md +8 -8
  161. package/docs/testing.md +51 -35
  162. package/docs/vocabulary.md +29 -29
  163. package/exemplos/agendamento.sema +1 -1
  164. package/exemplos/assinatura.sema +1 -1
  165. package/exemplos/auditoria.sema +1 -1
  166. package/exemplos/autenticacao.sema +1 -1
  167. package/exemplos/author_obra_comum.sema +1 -1
  168. package/exemplos/author_tema_sensivel.sema +1 -1
  169. package/exemplos/automacao.sema +1 -1
  170. package/exemplos/cadastro_usuario.sema +1 -1
  171. package/exemplos/calculadora.sema +1 -1
  172. package/exemplos/crud_simples.sema +1 -1
  173. package/exemplos/estoque.sema +1 -1
  174. package/exemplos/exportacao.sema +1 -1
  175. package/exemplos/fila.sema +1 -1
  176. package/exemplos/integracao_externa.sema +1 -1
  177. package/exemplos/multi_tenant.sema +1 -1
  178. package/exemplos/notificacao.sema +1 -1
  179. package/exemplos/operacao_estrategia.sema +132 -132
  180. package/exemplos/operacao_estrategia_discovery.sema +220 -220
  181. package/exemplos/operacao_estrategia_fluxo.sema +114 -114
  182. package/exemplos/operacao_estrategia_gates.sema +106 -106
  183. package/exemplos/operacao_estrategia_quarentena.sema +133 -133
  184. package/exemplos/operacao_estrategia_rollout.sema +124 -124
  185. package/exemplos/pagamento.sema +1 -1
  186. package/exemplos/pagamento_dominio.sema +1 -1
  187. package/exemplos/pedido.sema +1 -1
  188. package/exemplos/permissao.sema +1 -1
  189. package/exemplos/persistencia_vendor_first.sema +1 -1
  190. package/exemplos/pipeline-conteudo/README.md +44 -44
  191. package/exemplos/pipeline-conteudo/alvos.json +23 -23
  192. package/exemplos/pipeline-conteudo/definicao.json +136 -136
  193. package/exemplos/profile_conversas.sema +165 -165
  194. package/exemplos/profile_game.sema +1 -1
  195. package/exemplos/profile_legal.sema +1 -1
  196. package/exemplos/profile_ops.sema +1 -1
  197. package/exemplos/profile_research.sema +1 -1
  198. package/exemplos/profile_simulation.sema +211 -0
  199. package/exemplos/profile_software.sema +1 -1
  200. package/exemplos/profile_workflow_n8n.sema +1 -1
  201. package/exemplos/relatorio.sema +1 -1
  202. package/exemplos/replica_analitica_erp.sema +1 -1
  203. package/exemplos/sistemas-interativos/README.md +100 -0
  204. package/exemplos/sistemas-interativos/advanced/acceptance-context-evaluate-valid.json +5 -0
  205. package/exemplos/sistemas-interativos/advanced/acceptance-lock-valid.json +16 -0
  206. package/exemplos/sistemas-interativos/advanced/asset-provenance-valid.json +32 -0
  207. package/exemplos/sistemas-interativos/advanced/autonomy-repair-valid.json +93 -0
  208. package/exemplos/sistemas-interativos/advanced/control-run-definition-valid.json +78 -0
  209. package/exemplos/sistemas-interativos/advanced/control-run-valid.json +27 -0
  210. package/exemplos/sistemas-interativos/advanced/distributed-workers-valid.json +79 -0
  211. package/exemplos/sistemas-interativos/advanced/editor-state-valid.json +42 -0
  212. package/exemplos/sistemas-interativos/advanced/engine-snapshot-after-valid.json +32 -0
  213. package/exemplos/sistemas-interativos/advanced/engine-snapshot-before-valid.json +23 -0
  214. package/exemplos/sistemas-interativos/advanced/job-orchestration-valid.json +39 -0
  215. package/exemplos/sistemas-interativos/advanced/multimodal-evidence-valid.json +46 -0
  216. package/exemplos/sistemas-interativos/advanced/multiplayer-authority-valid.json +39 -0
  217. package/exemplos/sistemas-interativos/advanced/playtest-fuzz-valid.json +37 -0
  218. package/exemplos/sistemas-interativos/advanced/portability-valid.json +104 -0
  219. package/exemplos/sistemas-interativos/advanced/temporal-evidence-valid.json +27 -0
  220. package/exemplos/sistemas-interativos/advanced/temporal-valid.json +118 -0
  221. package/exemplos/sistemas-interativos/experience-ir-valid.json +459 -0
  222. package/exemplos/sistemas-interativos/game-2d.json +83 -0
  223. package/exemplos/sistemas-interativos/game-3d-human.json +81 -0
  224. package/exemplos/sistemas-interativos/game-pixel-16-bit.json +97 -0
  225. package/exemplos/sistemas-interativos/game-pixel-8-bit.json +94 -0
  226. package/exemplos/sistemas-interativos/game-xr-human.json +80 -0
  227. package/exemplos/sistemas-interativos/hybrid-2-5d.json +108 -0
  228. package/exemplos/sistemas-interativos/protocol-mutating-rollback-valid.json +75 -0
  229. package/exemplos/sistemas-interativos/protocol-read-only-valid.json +58 -0
  230. package/exemplos/sistemas-interativos/simulation-2d-controlled.json +97 -0
  231. package/exemplos/sistemas-interativos/simulation-3d-calibrated-autonomous.json +141 -0
  232. package/exemplos/sistemas-interativos/simulation-headless-autonomous-batch.json +112 -0
  233. package/exemplos/sistemas-interativos/simulation-pixel-16-bit.json +103 -0
  234. package/exemplos/sistemas-interativos/simulation-text-controlled.json +95 -0
  235. package/exemplos/testes_embutidos.sema +1 -1
  236. package/exemplos/tratamento_erro.sema +1 -1
  237. package/exemplos/upload_arquivo.sema +1 -1
  238. package/exemplos/webhook.sema +1 -1
  239. package/node_modules/@sema/gerador-cpp/dist/index.js +176 -176
  240. package/node_modules/@sema/gerador-cpp/package.json +1 -1
  241. package/node_modules/@sema/gerador-css/dist/index.part01.js +10 -10
  242. package/node_modules/@sema/gerador-css/dist/index.part02.js +460 -460
  243. package/node_modules/@sema/gerador-dotnet/dist/index.js +169 -169
  244. package/node_modules/@sema/gerador-dotnet/package.json +1 -1
  245. package/node_modules/@sema/gerador-html/dist/index.js +17 -17
  246. package/node_modules/@sema/gerador-lua/dist/index.js +76 -47
  247. package/node_modules/@sema/gerador-lua/dist/index.js.map +1 -1
  248. package/node_modules/@sema/gerador-php/dist/index.js +113 -113
  249. package/node_modules/@sema/gerador-python/dist/index.part02.js +3 -3
  250. package/node_modules/@sema/gerador-typescript/dist/index.part02.js +11 -11
  251. package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js +42 -42
  252. package/package.json +3 -3
package/docs/testing.md CHANGED
@@ -1,35 +1,51 @@
1
- # Testing
2
-
3
- Public Sema tests should run locally.
4
-
5
- Recommended checks:
6
-
7
- ```bash
8
- npm run build
9
- npm run status:check
10
- npm run repo:verificar-publico
11
- npm run plugin:testar-codex
12
- node pacotes/cli/dist/index.js --help
13
- node pacotes/cli/dist/index.js --version
14
- node pacotes/cli/dist/index.js resumo exemplos/calculadora.sema --micro --json
15
- node pacotes/cli/dist/index.js validar exemplos/calculadora.sema --json
16
- node pacotes/cli/dist/index.js testar exemplos/calculadora.sema --alvo dotnet --saida .tmp/testing-dotnet
17
- node pacotes/cli/dist/index.js testar exemplos/calculadora.sema --alvo cpp --saida .tmp/testing-cpp
18
- npm run release:preparar-publica
19
- npm run release:verificar-drift
20
- ```
21
-
22
- Do not require private or sensitive operational material for public test
23
- evidence. The public-package smoke must also reject the removed authorization
24
- command, legacy gate markers, any stale billing artifact, secrets, and broken
25
- encoding in every published document. The plugin smoke must validate the repo
26
- marketplace, manifest version, installed skill copy, and absence of Sema MCP.
27
- After push and npm publication, `npm run release:verificar-distribuicao` must
28
- repeat that installation from the remote `gerlanss/Sema` marketplace and prove
29
- that GitHub HEAD, the installed skill, and npm 2.2.0 all describe the same
30
- release.
31
-
32
- Native generator evidence is mandatory when changing C#/.NET or C++ support.
33
- The `dotnet` smoke must compile and execute through the local .NET SDK. The
34
- `cpp` smoke must compile and execute through GCC, Clang, or MSVC; checking only
35
- for generated files is not sufficient.
1
+ # Testing
2
+
3
+ Public Sema tests should run locally.
4
+
5
+ Recommended checks:
6
+
7
+ ```bash
8
+ npm run build
9
+ npm run status:check
10
+ npm run repo:verificar-publico
11
+ npm run plugin:testar-codex
12
+ npm run cli:empacotar-publica
13
+ npm run cli:testar-pacote-publico
14
+ node pacotes/cli/dist/index.js --help
15
+ node pacotes/cli/dist/index.js --version
16
+ node pacotes/cli/dist/index.js resumo exemplos/calculadora.sema --micro --json
17
+ node pacotes/cli/dist/index.js validar exemplos/calculadora.sema --json
18
+ node pacotes/cli/dist/index.js testar exemplos/calculadora.sema --alvo dotnet --saida .tmp/testing-dotnet
19
+ node pacotes/cli/dist/index.js testar exemplos/calculadora.sema --alvo cpp --saida .tmp/testing-cpp
20
+ npm run release:preparar-publica
21
+ npm run release:verificar-drift
22
+ ```
23
+
24
+ Focused drift regressions live in:
25
+
26
+ - `testes/unidade/projeto-carregamento-escopo.test.ts`: a file target loads only itself plus the transitive `use` closure.
27
+ - `testes/integracao/drift-cli-modes.test.ts`: `inspecionar` and `resumo --micro` do not run fresh drift implicitly and do not publish code scores when drift is `none`.
28
+ - `testes/integracao/drift-escopo-io.test.ts`: focused drift never opens unrelated `firecrawl`, training, or SQL dump files; the warm cache performs no source read or AST creation; one changed unit leaves unrelated groups reusable; project scope shares one catalog walk and one physical read per file.
29
+ - `testes/unidade/drift-catalogo-cache.test.ts`: validated catalog snapshots, metadata/content hits, configuration identity invalidation, runtime payload validation, corruption recovery, and realpath containment remain explicit.
30
+
31
+ Do not require private or sensitive operational material for public test
32
+ evidence. The public-package smoke must also reject the removed authorization
33
+ command, legacy gate markers, any stale billing artifact, secrets, and broken
34
+ encoding in every published document. The plugin smoke must validate the repo
35
+ marketplace, manifest version, installed skill copy, and absence of Sema MCP.
36
+ After push and npm publication, `npm run release:verificar-distribuicao` must
37
+ repeat that installation from the remote `gerlanss/Sema` marketplace and prove
38
+ that GitHub HEAD, the installed skill, and the manifest-declared npm version
39
+ all describe the same release.
40
+
41
+ The local public-package smoke installs the generated tarball in an isolated
42
+ sandbox. It must import the root API without executing the CLI, materialize
43
+ nested interactive examples, and execute discovery, interactive schema,
44
+ definition validation, planning, and adapter-protocol validation through the
45
+ installed binary. Passing this smoke proves the local tarball only; it does not
46
+ mean that npm or a GitHub release was published.
47
+
48
+ Native generator evidence is mandatory when changing C#/.NET or C++ support.
49
+ The `dotnet` smoke must compile and execute through the local .NET SDK. The
50
+ `cpp` smoke must compile and execute through GCC, Clang, or MSVC; checking only
51
+ for generated files is not sufficient.
@@ -1,29 +1,29 @@
1
- # Sema Vocabulary
2
-
3
- Use consistent English prose in public docs while preserving technical
4
- identifiers.
5
-
6
- ## Canonical Concepts
7
-
8
- - semantic contract
9
- - drift
10
- - impact map
11
- - governed code
12
- - traceability
13
- - Codex-native
14
- - local runtime
15
- - finalization
16
- - evidence
17
- - local CLI
18
-
19
- ## Do Not Translate
20
-
21
- - commands: `sema validar`, `sema drift`, `sema impacto`
22
- - files: `AGENTS.md`, `SEMA_BOOT.md`, `SEMA_INDEX.json`
23
- - DSL keywords: `task`, `input`, `output`, `rules`, `effects`, `guarantees`
24
- - package names: `@semacode/cli`
25
- - code symbols and environment variable names
26
-
27
- ## Public Support
28
-
29
- Use suporte@otimitare.online for support references.
1
+ # Sema Vocabulary
2
+
3
+ Use consistent English prose in public docs while preserving technical
4
+ identifiers.
5
+
6
+ ## Canonical Concepts
7
+
8
+ - semantic contract
9
+ - drift
10
+ - impact map
11
+ - governed code
12
+ - traceability
13
+ - Codex-native
14
+ - local runtime
15
+ - finalization
16
+ - evidence
17
+ - local CLI
18
+
19
+ ## Do Not Translate
20
+
21
+ - commands: `sema validar`, `sema drift`, `sema impacto`
22
+ - files: `AGENTS.md`, `SEMA_BOOT.md`, `SEMA_INDEX.json`
23
+ - DSL keywords: `task`, `input`, `output`, `rules`, `effects`, `guarantees`
24
+ - package names: `@semacode/cli`
25
+ - code symbols and environment variable names
26
+
27
+ ## Public Support
28
+
29
+ Use suporte@otimitare.online for support references.
@@ -102,4 +102,4 @@ module exemplos.agendamento {
102
102
  }
103
103
  }
104
104
  }
105
- }
105
+ }
@@ -130,4 +130,4 @@ module exemplos.assinatura {
130
130
  }
131
131
  }
132
132
  }
133
- }
133
+ }
@@ -86,4 +86,4 @@ module exemplos.auditoria {
86
86
  }
87
87
  }
88
88
  }
89
- }
89
+ }
@@ -122,4 +122,4 @@ module exemplos.autenticacao {
122
122
  }
123
123
  }
124
124
  }
125
- }
125
+ }
@@ -291,4 +291,4 @@ module exemplos.author.obra_comum {
291
291
  auditoria author_flow criticidade = media
292
292
  }
293
293
  }
294
- }
294
+ }
@@ -261,4 +261,4 @@ module exemplos.author.tema_sensivel {
261
261
  auditoria author_flow_sensivel criticidade = alta
262
262
  }
263
263
  }
264
- }
264
+ }
@@ -104,4 +104,4 @@ module exemplos.automacao {
104
104
  etapa auditar usa registrar_auditoria com protocolo = receber.protocolo depende_de receber
105
105
  etapa registrar_falha usa registrar_falha_onboarding com lead_id = lead_id depende_de receber
106
106
  }
107
- }
107
+ }
@@ -51,4 +51,4 @@ module exemplos.cadastro.usuario {
51
51
  }
52
52
  }
53
53
  }
54
- }
54
+ }
@@ -75,4 +75,4 @@ module exemplos.calculadora {
75
75
  }
76
76
  }
77
77
  }
78
- }
78
+ }
@@ -86,4 +86,4 @@ module exemplos.crud.simples {
86
86
  produto: Produto
87
87
  }
88
88
  }
89
- }
89
+ }
@@ -124,4 +124,4 @@ module exemplos.estoque {
124
124
  }
125
125
  }
126
126
  }
127
- }
127
+ }
@@ -91,4 +91,4 @@ module exemplos.exportacao {
91
91
  }
92
92
  }
93
93
  }
94
- }
94
+ }
@@ -127,4 +127,4 @@ module exemplos.fila {
127
127
  }
128
128
  }
129
129
  }
130
- }
130
+ }
@@ -91,4 +91,4 @@ module exemplos.integracao.externa {
91
91
  }
92
92
  }
93
93
  }
94
- }
94
+ }
@@ -137,4 +137,4 @@ module exemplos.multi.tenant {
137
137
  }
138
138
  }
139
139
  }
140
- }
140
+ }
@@ -146,4 +146,4 @@ module exemplos.notificacao {
146
146
  etapa registrar_falha_push usa registrar_falha_notificacao com canal = canal_push depende_de push
147
147
  etapa concluir usa confirmar_notificacao com destinatario_id = destinatario_id depende_de email
148
148
  }
149
- }
149
+ }
@@ -1,132 +1,132 @@
1
- module exemplos.operacao_estrategia {
2
- docs {
3
- resumo: "Referencia oficial de governanca operacional para strategy,slice,gate,discovery semanal e rollout. Este indice fino mantem modelos compartilhados e flow; as tasks ficam em arquivos filhos por responsabilidade."
4
- }
5
-
6
- type JanelaDiscovery {
7
- fields {
8
- semana_referencia: Data
9
- strategy_id: Id
10
- versao_modelo_candidata: Texto
11
- status_discovery: StatusDiscovery
12
- }
13
- invariants {
14
- semana_referencia existe
15
- strategy_id existe
16
- versao_modelo_candidata existe
17
- status_discovery em [ABERTA, EM_AVALIACAO, APROVADA, REJEITADA]
18
- }
19
- }
20
-
21
- type ContextoQuarentena {
22
- fields {
23
- motivo: Texto
24
- origem: Texto
25
- desde: Data
26
- }
27
- invariants {
28
- motivo existe
29
- origem existe
30
- desde existe
31
- }
32
- }
33
-
34
- entity Strategy {
35
- fields {
36
- id: Id
37
- versao_modelo_ativa: Texto
38
- versao_modelo_candidata: Texto
39
- status: StatusStrategy
40
- gate_global: StatusGate
41
- discovery_atual: JanelaDiscovery
42
- ultima_quarentena: ContextoQuarentena
43
- }
44
- invariants {
45
- id existe
46
- versao_modelo_ativa existe
47
- versao_modelo_candidata existe
48
- status em [RASCUNHO, ATIVA, QUARENTENA, DESATIVADA]
49
- gate_global em [ABERTO, FECHADO]
50
- discovery_atual existe
51
- ultima_quarentena existe
52
- }
53
- }
54
-
55
- entity Slice {
56
- fields {
57
- id: Id
58
- strategy_id: Id
59
- status: StatusSlice
60
- gate: StatusGate
61
- versao_modelo_ativa: Texto
62
- versao_modelo_candidata: Texto
63
- motivo_quarentena: Texto
64
- precision_observada: Decimal
65
- }
66
- invariants {
67
- id existe
68
- strategy_id existe
69
- status em [ATIVO, QUARENTENA, DESLIGADO]
70
- gate em [ABERTO, FECHADO]
71
- versao_modelo_ativa existe
72
- versao_modelo_candidata existe
73
- motivo_quarentena existe
74
- precision_observada existe
75
- }
76
- }
77
-
78
- enum StatusStrategy {
79
- RASCUNHO,
80
- ATIVA,
81
- QUARENTENA,
82
- DESATIVADA
83
- }
84
-
85
- enum StatusSlice {
86
- ATIVO,
87
- QUARENTENA,
88
- DESLIGADO
89
- }
90
-
91
- enum StatusGate {
92
- ABERTO,
93
- FECHADO
94
- }
95
-
96
- enum StatusDiscovery {
97
- ABERTA,
98
- EM_AVALIACAO,
99
- APROVADA,
100
- REJEITADA
101
- }
102
-
103
- state governanca_estrategia {
104
- fields {
105
- status: StatusStrategy
106
- slice_status: StatusSlice
107
- gate_global: StatusGate
108
- gate_slice: StatusGate
109
- discovery_status: StatusDiscovery
110
- versao_modelo_ativa: Texto
111
- versao_modelo_candidata: Texto
112
- motivo_operacional: Texto
113
- }
114
- invariants {
115
- status em [RASCUNHO, ATIVA, QUARENTENA, DESATIVADA]
116
- slice_status em [ATIVO, QUARENTENA, DESLIGADO]
117
- gate_global em [ABERTO, FECHADO]
118
- gate_slice em [ABERTO, FECHADO]
119
- discovery_status em [ABERTA, EM_AVALIACAO, APROVADA, REJEITADA]
120
- versao_modelo_ativa existe
121
- versao_modelo_candidata existe
122
- motivo_operacional existe
123
- }
124
- transitions {
125
- RASCUNHO -> ATIVA
126
- ATIVA -> QUARENTENA
127
- QUARENTENA -> ATIVA
128
- ATIVA -> DESATIVADA
129
- }
130
- }
131
-
132
- }
1
+ module exemplos.operacao_estrategia {
2
+ docs {
3
+ resumo: "Referencia oficial de governanca operacional para strategy,slice,gate,discovery semanal e rollout. Este indice fino mantem modelos compartilhados e flow; as tasks ficam em arquivos filhos por responsabilidade."
4
+ }
5
+
6
+ type JanelaDiscovery {
7
+ fields {
8
+ semana_referencia: Data
9
+ strategy_id: Id
10
+ versao_modelo_candidata: Texto
11
+ status_discovery: StatusDiscovery
12
+ }
13
+ invariants {
14
+ semana_referencia existe
15
+ strategy_id existe
16
+ versao_modelo_candidata existe
17
+ status_discovery em [ABERTA, EM_AVALIACAO, APROVADA, REJEITADA]
18
+ }
19
+ }
20
+
21
+ type ContextoQuarentena {
22
+ fields {
23
+ motivo: Texto
24
+ origem: Texto
25
+ desde: Data
26
+ }
27
+ invariants {
28
+ motivo existe
29
+ origem existe
30
+ desde existe
31
+ }
32
+ }
33
+
34
+ entity Strategy {
35
+ fields {
36
+ id: Id
37
+ versao_modelo_ativa: Texto
38
+ versao_modelo_candidata: Texto
39
+ status: StatusStrategy
40
+ gate_global: StatusGate
41
+ discovery_atual: JanelaDiscovery
42
+ ultima_quarentena: ContextoQuarentena
43
+ }
44
+ invariants {
45
+ id existe
46
+ versao_modelo_ativa existe
47
+ versao_modelo_candidata existe
48
+ status em [RASCUNHO, ATIVA, QUARENTENA, DESATIVADA]
49
+ gate_global em [ABERTO, FECHADO]
50
+ discovery_atual existe
51
+ ultima_quarentena existe
52
+ }
53
+ }
54
+
55
+ entity Slice {
56
+ fields {
57
+ id: Id
58
+ strategy_id: Id
59
+ status: StatusSlice
60
+ gate: StatusGate
61
+ versao_modelo_ativa: Texto
62
+ versao_modelo_candidata: Texto
63
+ motivo_quarentena: Texto
64
+ precision_observada: Decimal
65
+ }
66
+ invariants {
67
+ id existe
68
+ strategy_id existe
69
+ status em [ATIVO, QUARENTENA, DESLIGADO]
70
+ gate em [ABERTO, FECHADO]
71
+ versao_modelo_ativa existe
72
+ versao_modelo_candidata existe
73
+ motivo_quarentena existe
74
+ precision_observada existe
75
+ }
76
+ }
77
+
78
+ enum StatusStrategy {
79
+ RASCUNHO,
80
+ ATIVA,
81
+ QUARENTENA,
82
+ DESATIVADA
83
+ }
84
+
85
+ enum StatusSlice {
86
+ ATIVO,
87
+ QUARENTENA,
88
+ DESLIGADO
89
+ }
90
+
91
+ enum StatusGate {
92
+ ABERTO,
93
+ FECHADO
94
+ }
95
+
96
+ enum StatusDiscovery {
97
+ ABERTA,
98
+ EM_AVALIACAO,
99
+ APROVADA,
100
+ REJEITADA
101
+ }
102
+
103
+ state governanca_estrategia {
104
+ fields {
105
+ status: StatusStrategy
106
+ slice_status: StatusSlice
107
+ gate_global: StatusGate
108
+ gate_slice: StatusGate
109
+ discovery_status: StatusDiscovery
110
+ versao_modelo_ativa: Texto
111
+ versao_modelo_candidata: Texto
112
+ motivo_operacional: Texto
113
+ }
114
+ invariants {
115
+ status em [RASCUNHO, ATIVA, QUARENTENA, DESATIVADA]
116
+ slice_status em [ATIVO, QUARENTENA, DESLIGADO]
117
+ gate_global em [ABERTO, FECHADO]
118
+ gate_slice em [ABERTO, FECHADO]
119
+ discovery_status em [ABERTA, EM_AVALIACAO, APROVADA, REJEITADA]
120
+ versao_modelo_ativa existe
121
+ versao_modelo_candidata existe
122
+ motivo_operacional existe
123
+ }
124
+ transitions {
125
+ RASCUNHO -> ATIVA
126
+ ATIVA -> QUARENTENA
127
+ QUARENTENA -> ATIVA
128
+ ATIVA -> DESATIVADA
129
+ }
130
+ }
131
+
132
+ }