@semacode/cli 1.5.36 → 1.5.37

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 (481) hide show
  1. package/AGENT_CONTEXT_PACK.json +76 -8
  2. package/LICENSE +1 -2
  3. package/SEMA_BRIEF.curto.txt +8 -6
  4. package/SEMA_BRIEF.md +240 -204
  5. package/SEMA_BRIEF.micro.txt +9 -6
  6. package/SEMA_INDEX.json +2079 -1907
  7. package/dist/agentContext.d.ts +19 -0
  8. package/dist/agentContext.js +26 -0
  9. package/dist/agentContext.js.map +1 -0
  10. package/dist/agentContextPack.d.ts +3 -0
  11. package/dist/agentContextPack.js +403 -0
  12. package/dist/agentContextPack.js.map +1 -0
  13. package/dist/agentContextTipos.d.ts +96 -0
  14. package/dist/agentContextTipos.js +55 -0
  15. package/dist/agentContextTipos.js.map +1 -0
  16. package/dist/agentEntryPoints.d.ts +13 -0
  17. package/dist/agentEntryPoints.js +422 -0
  18. package/dist/agentEntryPoints.js.map +1 -0
  19. package/dist/authorAnalise.d.ts +15 -0
  20. package/dist/authorAnalise.js +210 -0
  21. package/dist/authorAnalise.js.map +1 -0
  22. package/dist/authorPoliticas.d.ts +37 -0
  23. package/dist/authorPoliticas.js +340 -0
  24. package/dist/authorPoliticas.js.map +1 -0
  25. package/dist/billing/index.d.ts +1 -1
  26. package/dist/billing/index.js +6 -2
  27. package/dist/billing/index.js.map +1 -1
  28. package/dist/bridge.js +2 -0
  29. package/dist/bridge.js.map +1 -1
  30. package/dist/carregarModulos.d.ts +2 -0
  31. package/dist/carregarModulos.js +9 -0
  32. package/dist/carregarModulos.js.map +1 -0
  33. package/dist/cliArgs.d.ts +6 -0
  34. package/dist/cliArgs.js +70 -0
  35. package/dist/cliArgs.js.map +1 -0
  36. package/dist/contexto.js +2 -0
  37. package/dist/contexto.js.map +1 -1
  38. package/dist/controleComercialSupabase.js.map +1 -1
  39. package/dist/controleComercialSupabaseAdmin.js.map +1 -1
  40. package/dist/controleComercialSupabaseCadastro.js.map +1 -1
  41. package/dist/controleComercialSupabaseConsumo.js.map +1 -1
  42. package/dist/controleComercialSupabaseConta.js.map +1 -1
  43. package/dist/controleComercialSupabaseProfiles.js.map +1 -1
  44. package/dist/dev/index.js +2 -0
  45. package/dist/dev/index.js.map +1 -1
  46. package/dist/dev/watcher.d.ts +1 -0
  47. package/dist/dev/watcher.js +4 -0
  48. package/dist/dev/watcher.js.map +1 -0
  49. package/dist/docs/resolver.d.ts +1 -0
  50. package/dist/docs/resolver.js +4 -0
  51. package/dist/docs/resolver.js.map +1 -0
  52. package/dist/docs.d.ts +2 -56
  53. package/dist/docs.js +5 -502
  54. package/dist/docs.js.map +1 -1
  55. package/dist/docs.part01.d.ts +78 -0
  56. package/dist/docs.part01.js +347 -0
  57. package/dist/docs.part01.js.map +1 -0
  58. package/dist/docs.part02.d.ts +20 -0
  59. package/dist/docs.part02.js +181 -0
  60. package/dist/docs.part02.js.map +1 -0
  61. package/dist/doctorCommand.d.ts +27 -0
  62. package/dist/doctorCommand.js +160 -0
  63. package/dist/doctorCommand.js.map +1 -0
  64. package/dist/drift.contrato.d.ts +23 -0
  65. package/dist/drift.contrato.js +33 -0
  66. package/dist/drift.contrato.js.map +1 -0
  67. package/dist/drift.d.ts +13 -227
  68. package/dist/drift.js +16 -3924
  69. package/dist/drift.js.map +1 -1
  70. package/dist/drift.part01.d.ts +252 -0
  71. package/dist/drift.part01.js +183 -0
  72. package/dist/drift.part01.js.map +1 -0
  73. package/dist/drift.part02.d.ts +30 -0
  74. package/dist/drift.part02.js +342 -0
  75. package/dist/drift.part02.js.map +1 -0
  76. package/dist/drift.part03.d.ts +26 -0
  77. package/dist/drift.part03.js +343 -0
  78. package/dist/drift.part03.js.map +1 -0
  79. package/dist/drift.part04.d.ts +46 -0
  80. package/dist/drift.part04.js +354 -0
  81. package/dist/drift.part04.js.map +1 -0
  82. package/dist/drift.part05.d.ts +47 -0
  83. package/dist/drift.part05.js +353 -0
  84. package/dist/drift.part05.js.map +1 -0
  85. package/dist/drift.part06.d.ts +17 -0
  86. package/dist/drift.part06.js +381 -0
  87. package/dist/drift.part06.js.map +1 -0
  88. package/dist/drift.part07.d.ts +48 -0
  89. package/dist/drift.part07.js +377 -0
  90. package/dist/drift.part07.js.map +1 -0
  91. package/dist/drift.part08.d.ts +26 -0
  92. package/dist/drift.part08.js +333 -0
  93. package/dist/drift.part08.js.map +1 -0
  94. package/dist/drift.part09.d.ts +22 -0
  95. package/dist/drift.part09.js +322 -0
  96. package/dist/drift.part09.js.map +1 -0
  97. package/dist/drift.part10.d.ts +11 -0
  98. package/dist/drift.part10.js +116 -0
  99. package/dist/drift.part10.js.map +1 -0
  100. package/dist/drift.part11.d.ts +3 -0
  101. package/dist/drift.part11.js +320 -0
  102. package/dist/drift.part11.js.map +1 -0
  103. package/dist/drift.part12.d.ts +17 -0
  104. package/dist/drift.part12.js +289 -0
  105. package/dist/drift.part12.js.map +1 -0
  106. package/dist/drift.part13.d.ts +17 -0
  107. package/dist/drift.part13.js +86 -0
  108. package/dist/drift.part13.js.map +1 -0
  109. package/dist/drift.part14.d.ts +44 -0
  110. package/dist/drift.part14.js +402 -0
  111. package/dist/drift.part14.js.map +1 -0
  112. package/dist/driftOrcamento.d.ts +69 -0
  113. package/dist/driftOrcamento.js +280 -0
  114. package/dist/driftOrcamento.js.map +1 -0
  115. package/dist/execucoesExternas.d.ts +10 -0
  116. package/dist/execucoesExternas.js +51 -0
  117. package/dist/execucoesExternas.js.map +1 -0
  118. package/dist/exemplosOficiais.d.ts +10 -0
  119. package/dist/exemplosOficiais.js +63 -0
  120. package/dist/exemplosOficiais.js.map +1 -0
  121. package/dist/fsGovernado.d.ts +10 -0
  122. package/dist/fsGovernado.js +50 -0
  123. package/dist/fsGovernado.js.map +1 -0
  124. package/dist/geracaoCore.d.ts +64 -0
  125. package/dist/geracaoCore.js +381 -0
  126. package/dist/geracaoCore.js.map +1 -0
  127. package/dist/iaPrompts.d.ts +6 -0
  128. package/dist/iaPrompts.js +318 -0
  129. package/dist/iaPrompts.js.map +1 -0
  130. package/dist/importador.d.ts +9 -31
  131. package/dist/importador.js +11 -2938
  132. package/dist/importador.js.map +1 -1
  133. package/dist/importador.part01.d.ts +150 -0
  134. package/dist/importador.part01.js +256 -0
  135. package/dist/importador.part01.js.map +1 -0
  136. package/dist/importador.part02.d.ts +25 -0
  137. package/dist/importador.part02.js +359 -0
  138. package/dist/importador.part02.js.map +1 -0
  139. package/dist/importador.part03.d.ts +53 -0
  140. package/dist/importador.part03.js +366 -0
  141. package/dist/importador.part03.js.map +1 -0
  142. package/dist/importador.part04.d.ts +26 -0
  143. package/dist/importador.part04.js +374 -0
  144. package/dist/importador.part04.js.map +1 -0
  145. package/dist/importador.part05.d.ts +28 -0
  146. package/dist/importador.part05.js +340 -0
  147. package/dist/importador.part05.js.map +1 -0
  148. package/dist/importador.part06.d.ts +8 -0
  149. package/dist/importador.part06.js +327 -0
  150. package/dist/importador.part06.js.map +1 -0
  151. package/dist/importador.part07.d.ts +23 -0
  152. package/dist/importador.part07.js +300 -0
  153. package/dist/importador.part07.js.map +1 -0
  154. package/dist/importador.part08.d.ts +12 -0
  155. package/dist/importador.part08.js +378 -0
  156. package/dist/importador.part08.js.map +1 -0
  157. package/dist/importador.part09.d.ts +16 -0
  158. package/dist/importador.part09.js +319 -0
  159. package/dist/importador.part09.js.map +1 -0
  160. package/dist/index.d.ts +12 -1
  161. package/dist/index.js +16 -7945
  162. package/dist/index.js.map +1 -1
  163. package/dist/index.part01.d.ts +148 -0
  164. package/dist/index.part01.js +252 -0
  165. package/dist/index.part01.js.map +1 -0
  166. package/dist/index.part02.d.ts +17 -0
  167. package/dist/index.part02.js +344 -0
  168. package/dist/index.part02.js.map +1 -0
  169. package/dist/index.part03.d.ts +59 -0
  170. package/dist/index.part03.js +352 -0
  171. package/dist/index.part03.js.map +1 -0
  172. package/dist/index.part04.d.ts +20 -0
  173. package/dist/index.part04.js +358 -0
  174. package/dist/index.part04.js.map +1 -0
  175. package/dist/index.part05.d.ts +10 -0
  176. package/dist/index.part05.js +370 -0
  177. package/dist/index.part05.js.map +1 -0
  178. package/dist/index.part06.d.ts +14 -0
  179. package/dist/index.part06.js +336 -0
  180. package/dist/index.part06.js.map +1 -0
  181. package/dist/index.part07.d.ts +9 -0
  182. package/dist/index.part07.js +287 -0
  183. package/dist/index.part07.js.map +1 -0
  184. package/dist/index.part08.d.ts +1 -0
  185. package/dist/index.part08.js +206 -0
  186. package/dist/index.part08.js.map +1 -0
  187. package/dist/init/index.js +2 -0
  188. package/dist/init/index.js.map +1 -1
  189. package/dist/init/templates.d.ts +2 -11
  190. package/dist/init/templates.js +4 -659
  191. package/dist/init/templates.js.map +1 -1
  192. package/dist/init/templates.part01.d.ts +11 -0
  193. package/dist/init/templates.part01.js +399 -0
  194. package/dist/init/templates.part01.js.map +1 -0
  195. package/dist/init/templates.part02.d.ts +8 -0
  196. package/dist/init/templates.part02.js +265 -0
  197. package/dist/init/templates.part02.js.map +1 -0
  198. package/dist/initCommand.d.ts +3 -0
  199. package/dist/initCommand.js +41 -0
  200. package/dist/initCommand.js.map +1 -0
  201. package/dist/initTemplatesBackend.d.ts +2 -0
  202. package/dist/initTemplatesBackend.js +127 -0
  203. package/dist/initTemplatesBackend.js.map +1 -0
  204. package/dist/initTemplatesBase.d.ts +9 -0
  205. package/dist/initTemplatesBase.js +79 -0
  206. package/dist/initTemplatesBase.js.map +1 -0
  207. package/dist/initTemplatesFlutter.d.ts +2 -0
  208. package/dist/initTemplatesFlutter.js +185 -0
  209. package/dist/initTemplatesFlutter.js.map +1 -0
  210. package/dist/initTemplatesRuntime.d.ts +2 -0
  211. package/dist/initTemplatesRuntime.js +494 -0
  212. package/dist/initTemplatesRuntime.js.map +1 -0
  213. package/dist/initTemplatesWeb.d.ts +2 -0
  214. package/dist/initTemplatesWeb.js +429 -0
  215. package/dist/initTemplatesWeb.js.map +1 -0
  216. package/dist/mcpInstalarChaveCommand.d.ts +1 -0
  217. package/dist/mcpInstalarChaveCommand.js +141 -0
  218. package/dist/mcpInstalarChaveCommand.js.map +1 -0
  219. package/dist/mcpRemoto.js.map +1 -1
  220. package/dist/mcp_chave.d.ts +1 -0
  221. package/dist/mcp_chave.js +4 -0
  222. package/dist/mcp_chave.js.map +1 -0
  223. package/dist/profileArtefatoBase.d.ts +30 -0
  224. package/dist/profileArtefatoBase.js +129 -0
  225. package/dist/profileArtefatoBase.js.map +1 -0
  226. package/dist/profileArtefatoValidadores.d.ts +9 -0
  227. package/dist/profileArtefatoValidadores.js +287 -0
  228. package/dist/profileArtefatoValidadores.js.map +1 -0
  229. package/dist/profileAuthorCommand.d.ts +6 -0
  230. package/dist/profileAuthorCommand.js +442 -0
  231. package/dist/profileAuthorCommand.js.map +1 -0
  232. package/dist/profileAuthorTipos.d.ts +225 -0
  233. package/dist/profileAuthorTipos.js +6 -0
  234. package/dist/profileAuthorTipos.js.map +1 -0
  235. package/dist/profileCatalogo.d.ts +8 -0
  236. package/dist/profileCatalogo.js +235 -0
  237. package/dist/profileCatalogo.js.map +1 -0
  238. package/dist/profileCommand.d.ts +33 -0
  239. package/dist/profileCommand.js +256 -0
  240. package/dist/profileCommand.js.map +1 -0
  241. package/dist/profileOrquestracao.d.ts +33 -0
  242. package/dist/profileOrquestracao.js +53 -0
  243. package/dist/profileOrquestracao.js.map +1 -0
  244. package/dist/profileRegras.d.ts +19 -0
  245. package/dist/profileRegras.js +219 -0
  246. package/dist/profileRegras.js.map +1 -0
  247. package/dist/profileRulePacks.d.ts +3 -0
  248. package/dist/profileRulePacks.js +334 -0
  249. package/dist/profileRulePacks.js.map +1 -0
  250. package/dist/profiles/validate.d.ts +1 -0
  251. package/dist/profiles/validate.js +4 -0
  252. package/dist/profiles/validate.js.map +1 -0
  253. package/dist/projeto.d.ts +4 -53
  254. package/dist/projeto.js +5 -649
  255. package/dist/projeto.js.map +1 -1
  256. package/dist/projetoBusca.d.ts +7 -0
  257. package/dist/projetoBusca.js +142 -0
  258. package/dist/projetoBusca.js.map +1 -0
  259. package/dist/projetoCarregar.d.ts +2 -0
  260. package/dist/projetoCarregar.js +50 -0
  261. package/dist/projetoCarregar.js.map +1 -0
  262. package/dist/projetoConfig.d.ts +10 -0
  263. package/dist/projetoConfig.js +89 -0
  264. package/dist/projetoConfig.js.map +1 -0
  265. package/dist/projetoLegado.d.ts +3 -0
  266. package/dist/projetoLegado.js +175 -0
  267. package/dist/projetoLegado.js.map +1 -0
  268. package/dist/projetoOrigens.d.ts +6 -0
  269. package/dist/projetoOrigens.js +185 -0
  270. package/dist/projetoOrigens.js.map +1 -0
  271. package/dist/projetoResolucao.d.ts +8 -0
  272. package/dist/projetoResolucao.js +43 -0
  273. package/dist/projetoResolucao.js.map +1 -0
  274. package/dist/projetoTipos.d.ts +43 -0
  275. package/dist/projetoTipos.js +4 -0
  276. package/dist/projetoTipos.js.map +1 -0
  277. package/dist/runnerValidacaoRemota.js.map +1 -1
  278. package/dist/runnerValidacaoRemotaBateria.js +2 -0
  279. package/dist/runnerValidacaoRemotaBateria.js.map +1 -1
  280. package/dist/runnerValidacaoRemotaExecucao.js +2 -0
  281. package/dist/runnerValidacaoRemotaExecucao.js.map +1 -1
  282. package/dist/runnerValidacaoRemotaRelatorio.js +2 -0
  283. package/dist/runnerValidacaoRemotaRelatorio.js.map +1 -1
  284. package/dist/runnerValidacaoRemotaSnapshot.js +2 -0
  285. package/dist/runnerValidacaoRemotaSnapshot.js.map +1 -1
  286. package/dist/runnerValidacaoRemotaWorkspace.js +2 -0
  287. package/dist/runnerValidacaoRemotaWorkspace.js.map +1 -1
  288. package/dist/sync/index.js +2 -0
  289. package/dist/sync/index.js.map +1 -1
  290. package/dist/textoListas.d.ts +4 -0
  291. package/dist/textoListas.js +22 -0
  292. package/dist/textoListas.js.map +1 -0
  293. package/dist/typescript-http-body.d.ts +12 -0
  294. package/dist/typescript-http-body.js +145 -0
  295. package/dist/typescript-http-body.js.map +1 -0
  296. package/dist/typescript-http-expressoes.d.ts +17 -0
  297. package/dist/typescript-http-expressoes.js +194 -0
  298. package/dist/typescript-http-expressoes.js.map +1 -0
  299. package/dist/typescript-http-modelos.d.ts +45 -0
  300. package/dist/typescript-http-modelos.js +82 -0
  301. package/dist/typescript-http-modelos.js.map +1 -0
  302. package/dist/typescript-http-rotas.d.ts +9 -0
  303. package/dist/typescript-http-rotas.js +129 -0
  304. package/dist/typescript-http-rotas.js.map +1 -0
  305. package/dist/typescript-http-semantica.d.ts +11 -0
  306. package/dist/typescript-http-semantica.js +329 -0
  307. package/dist/typescript-http-semantica.js.map +1 -0
  308. package/dist/typescript-http.d.ts +3 -35
  309. package/dist/typescript-http.js +4 -853
  310. package/dist/typescript-http.js.map +1 -1
  311. package/docs/AGENT_STARTER.md +1 -1
  312. package/docs/agentes-por-capacidade.md +46 -3
  313. package/docs/documentacao.md +1 -1
  314. package/docs/fluxo-pratico-ia-sema.md +1 -1
  315. package/docs/mcp.md +12 -0
  316. package/docs/pagamento-ponta-a-ponta.md +1 -1
  317. package/docs/persistencia-vendor-first.md +1 -1
  318. package/docs/prompt-base-ia-sema.md +1 -1
  319. package/docs/repositories.md +2 -2
  320. package/docs/seguranca.md +1 -1
  321. package/docs/sintaxe.md +1 -1
  322. package/exemplos/agendamento.sema +1 -1
  323. package/exemplos/assinatura.sema +1 -1
  324. package/exemplos/auditoria.sema +1 -1
  325. package/exemplos/autenticacao.sema +1 -1
  326. package/exemplos/author_obra_comum.sema +1 -1
  327. package/exemplos/author_tema_sensivel.sema +1 -1
  328. package/exemplos/automacao.sema +1 -1
  329. package/exemplos/cadastro_usuario.sema +1 -1
  330. package/exemplos/calculadora.sema +1 -1
  331. package/exemplos/crud_simples.sema +1 -1
  332. package/exemplos/estoque.sema +1 -1
  333. package/exemplos/exportacao.sema +1 -1
  334. package/exemplos/fila.sema +1 -1
  335. package/exemplos/integracao_externa.sema +1 -1
  336. package/exemplos/multi_tenant.sema +1 -1
  337. package/exemplos/notificacao.sema +1 -1
  338. package/exemplos/operacao_estrategia.sema +132 -633
  339. package/exemplos/operacao_estrategia_discovery.sema +220 -0
  340. package/exemplos/operacao_estrategia_fluxo.sema +114 -0
  341. package/exemplos/operacao_estrategia_gates.sema +106 -0
  342. package/exemplos/operacao_estrategia_quarentena.sema +133 -0
  343. package/exemplos/operacao_estrategia_rollout.sema +124 -0
  344. package/exemplos/pagamento.sema +1 -1
  345. package/exemplos/pagamento_dominio.sema +1 -1
  346. package/exemplos/pedido.sema +1 -1
  347. package/exemplos/permissao.sema +1 -1
  348. package/exemplos/persistencia_vendor_first.sema +1 -1
  349. package/exemplos/profile_game.sema +1 -1
  350. package/exemplos/profile_legal.sema +1 -1
  351. package/exemplos/profile_ops.sema +1 -1
  352. package/exemplos/profile_research.sema +1 -1
  353. package/exemplos/profile_software.sema +1 -1
  354. package/exemplos/profile_workflow_n8n.sema +1 -1
  355. package/exemplos/relatorio.sema +1 -1
  356. package/exemplos/replica_analitica_erp.sema +1 -1
  357. package/exemplos/testes_embutidos.sema +1 -1
  358. package/exemplos/tratamento_erro.sema +1 -1
  359. package/exemplos/upload_arquivo.sema +1 -1
  360. package/exemplos/webhook.sema +1 -1
  361. package/llms-full.txt +13 -8
  362. package/llms.txt +12 -7
  363. package/node_modules/@sema/gerador-css/dist/index.d.ts +2 -3
  364. package/node_modules/@sema/gerador-css/dist/index.js +4 -599
  365. package/node_modules/@sema/gerador-css/dist/index.js.map +1 -1
  366. package/node_modules/@sema/gerador-css/dist/index.part01.d.ts +6 -0
  367. package/node_modules/@sema/gerador-css/dist/index.part01.js +49 -0
  368. package/node_modules/@sema/gerador-css/dist/index.part01.js.map +1 -0
  369. package/node_modules/@sema/gerador-css/dist/index.part02.d.ts +3 -0
  370. package/node_modules/@sema/gerador-css/dist/index.part02.js +471 -0
  371. package/node_modules/@sema/gerador-css/dist/index.part02.js.map +1 -0
  372. package/node_modules/@sema/gerador-python/dist/index.d.ts +2 -6
  373. package/node_modules/@sema/gerador-python/dist/index.js +4 -771
  374. package/node_modules/@sema/gerador-python/dist/index.js.map +1 -1
  375. package/node_modules/@sema/gerador-python/dist/index.part01.d.ts +28 -0
  376. package/node_modules/@sema/gerador-python/dist/index.part01.js +383 -0
  377. package/node_modules/@sema/gerador-python/dist/index.part01.js.map +1 -0
  378. package/node_modules/@sema/gerador-python/dist/index.part02.d.ts +20 -0
  379. package/node_modules/@sema/gerador-python/dist/index.part02.js +396 -0
  380. package/node_modules/@sema/gerador-python/dist/index.part02.js.map +1 -0
  381. package/node_modules/@sema/gerador-typescript/dist/index.d.ts +3 -6
  382. package/node_modules/@sema/gerador-typescript/dist/index.js +5 -810
  383. package/node_modules/@sema/gerador-typescript/dist/index.js.map +1 -1
  384. package/node_modules/@sema/gerador-typescript/dist/index.part01.d.ts +25 -0
  385. package/node_modules/@sema/gerador-typescript/dist/index.part01.js +358 -0
  386. package/node_modules/@sema/gerador-typescript/dist/index.part01.js.map +1 -0
  387. package/node_modules/@sema/gerador-typescript/dist/index.part02.d.ts +14 -0
  388. package/node_modules/@sema/gerador-typescript/dist/index.part02.js +405 -0
  389. package/node_modules/@sema/gerador-typescript/dist/index.part02.js.map +1 -0
  390. package/node_modules/@sema/gerador-typescript/dist/index.part03.d.ts +5 -0
  391. package/node_modules/@sema/gerador-typescript/dist/index.part03.js +60 -0
  392. package/node_modules/@sema/gerador-typescript/dist/index.part03.js.map +1 -0
  393. package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js +2 -0
  394. package/node_modules/@sema/nucleo/dist/diagnosticos/melhorador.js.map +1 -1
  395. package/node_modules/@sema/nucleo/dist/diagnosticos/snippets.d.ts +6 -0
  396. package/node_modules/@sema/nucleo/dist/diagnosticos/snippets.js +40 -0
  397. package/node_modules/@sema/nucleo/dist/diagnosticos/snippets.js.map +1 -0
  398. package/node_modules/@sema/nucleo/dist/formatador/index.d.ts +2 -9
  399. package/node_modules/@sema/nucleo/dist/formatador/index.js +4 -467
  400. package/node_modules/@sema/nucleo/dist/formatador/index.js.map +1 -1
  401. package/node_modules/@sema/nucleo/dist/formatador/index.part01.d.ts +38 -0
  402. package/node_modules/@sema/nucleo/dist/formatador/index.part01.js +382 -0
  403. package/node_modules/@sema/nucleo/dist/formatador/index.part01.js.map +1 -0
  404. package/node_modules/@sema/nucleo/dist/formatador/index.part02.d.ts +4 -0
  405. package/node_modules/@sema/nucleo/dist/formatador/index.part02.js +92 -0
  406. package/node_modules/@sema/nucleo/dist/formatador/index.part02.js.map +1 -0
  407. package/node_modules/@sema/nucleo/dist/index.d.ts +2 -0
  408. package/node_modules/@sema/nucleo/dist/index.js +6 -0
  409. package/node_modules/@sema/nucleo/dist/index.js.map +1 -1
  410. package/node_modules/@sema/nucleo/dist/ir/conversor.d.ts +3 -5
  411. package/node_modules/@sema/nucleo/dist/ir/conversor.js +5 -880
  412. package/node_modules/@sema/nucleo/dist/ir/conversor.js.map +1 -1
  413. package/node_modules/@sema/nucleo/dist/ir/conversor.part01.d.ts +30 -0
  414. package/node_modules/@sema/nucleo/dist/ir/conversor.part01.js +398 -0
  415. package/node_modules/@sema/nucleo/dist/ir/conversor.part01.js.map +1 -0
  416. package/node_modules/@sema/nucleo/dist/ir/conversor.part02.d.ts +41 -0
  417. package/node_modules/@sema/nucleo/dist/ir/conversor.part02.js +184 -0
  418. package/node_modules/@sema/nucleo/dist/ir/conversor.part02.js.map +1 -0
  419. package/node_modules/@sema/nucleo/dist/ir/conversor.part03.d.ts +5 -0
  420. package/node_modules/@sema/nucleo/dist/ir/conversor.part03.js +310 -0
  421. package/node_modules/@sema/nucleo/dist/ir/conversor.part03.js.map +1 -0
  422. package/node_modules/@sema/nucleo/dist/parser/parser.d.ts +3 -9
  423. package/node_modules/@sema/nucleo/dist/parser/parser.declaracoes.d.ts +11 -0
  424. package/node_modules/@sema/nucleo/dist/parser/parser.declaracoes.js +150 -0
  425. package/node_modules/@sema/nucleo/dist/parser/parser.declaracoes.js.map +1 -0
  426. package/node_modules/@sema/nucleo/dist/parser/parser.js +5 -768
  427. package/node_modules/@sema/nucleo/dist/parser/parser.js.map +1 -1
  428. package/node_modules/@sema/nucleo/dist/parser/parser.modulo.d.ts +3 -0
  429. package/node_modules/@sema/nucleo/dist/parser/parser.modulo.js +222 -0
  430. package/node_modules/@sema/nucleo/dist/parser/parser.modulo.js.map +1 -0
  431. package/node_modules/@sema/nucleo/dist/parser/parser.part01.d.ts +9 -0
  432. package/node_modules/@sema/nucleo/dist/parser/parser.part01.js +61 -0
  433. package/node_modules/@sema/nucleo/dist/parser/parser.part01.js.map +1 -0
  434. package/node_modules/@sema/nucleo/dist/parser/parser.part02.d.ts +40 -0
  435. package/node_modules/@sema/nucleo/dist/parser/parser.part02.js +373 -0
  436. package/node_modules/@sema/nucleo/dist/parser/parser.part02.js.map +1 -0
  437. package/node_modules/@sema/nucleo/dist/parser/parser.part03.d.ts +4 -0
  438. package/node_modules/@sema/nucleo/dist/parser/parser.part03.js +9 -0
  439. package/node_modules/@sema/nucleo/dist/parser/parser.part03.js.map +1 -0
  440. package/node_modules/@sema/nucleo/dist/persistencia/contratos.js +2 -0
  441. package/node_modules/@sema/nucleo/dist/persistencia/contratos.js.map +1 -1
  442. package/node_modules/@sema/nucleo/dist/semantico/analisador.d.ts +3 -59
  443. package/node_modules/@sema/nucleo/dist/semantico/analisador.js +2 -1682
  444. package/node_modules/@sema/nucleo/dist/semantico/analisador.js.map +1 -1
  445. package/node_modules/@sema/nucleo/dist/semantico/analisador.part01.d.ts +89 -0
  446. package/node_modules/@sema/nucleo/dist/semantico/analisador.part01.js +292 -0
  447. package/node_modules/@sema/nucleo/dist/semantico/analisador.part01.js.map +1 -0
  448. package/node_modules/@sema/nucleo/dist/semantico/analisador.part02.d.ts +29 -0
  449. package/node_modules/@sema/nucleo/dist/semantico/analisador.part02.js +168 -0
  450. package/node_modules/@sema/nucleo/dist/semantico/analisador.part02.js.map +1 -0
  451. package/node_modules/@sema/nucleo/dist/semantico/analisador.part03.d.ts +11 -0
  452. package/node_modules/@sema/nucleo/dist/semantico/analisador.part03.js +185 -0
  453. package/node_modules/@sema/nucleo/dist/semantico/analisador.part03.js.map +1 -0
  454. package/node_modules/@sema/nucleo/dist/semantico/analisador.part04.d.ts +30 -0
  455. package/node_modules/@sema/nucleo/dist/semantico/analisador.part04.js +200 -0
  456. package/node_modules/@sema/nucleo/dist/semantico/analisador.part04.js.map +1 -0
  457. package/node_modules/@sema/nucleo/dist/semantico/analisador.part05.d.ts +6 -0
  458. package/node_modules/@sema/nucleo/dist/semantico/analisador.part05.js +193 -0
  459. package/node_modules/@sema/nucleo/dist/semantico/analisador.part05.js.map +1 -0
  460. package/node_modules/@sema/nucleo/dist/semantico/analisador.part06.d.ts +11 -0
  461. package/node_modules/@sema/nucleo/dist/semantico/analisador.part06.js +208 -0
  462. package/node_modules/@sema/nucleo/dist/semantico/analisador.part06.js.map +1 -0
  463. package/node_modules/@sema/nucleo/dist/semantico/analisador.part07.d.ts +11 -0
  464. package/node_modules/@sema/nucleo/dist/semantico/analisador.part07.js +247 -0
  465. package/node_modules/@sema/nucleo/dist/semantico/analisador.part07.js.map +1 -0
  466. package/node_modules/@sema/nucleo/dist/semantico/analisador.part08.d.ts +3 -0
  467. package/node_modules/@sema/nucleo/dist/semantico/analisador.part08.js +249 -0
  468. package/node_modules/@sema/nucleo/dist/semantico/analisador.part08.js.map +1 -0
  469. package/node_modules/@sema/nucleo/dist/semantico/estruturas.d.ts +2 -106
  470. package/node_modules/@sema/nucleo/dist/semantico/estruturas.js +4 -474
  471. package/node_modules/@sema/nucleo/dist/semantico/estruturas.js.map +1 -1
  472. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part01.d.ts +109 -0
  473. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part01.js +259 -0
  474. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part01.js.map +1 -0
  475. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part02.d.ts +9 -0
  476. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part02.js +223 -0
  477. package/node_modules/@sema/nucleo/dist/semantico/estruturas.part02.js.map +1 -0
  478. package/node_modules/@sema/nucleo/dist/semantico/orcamentoSemantico.d.ts +21 -0
  479. package/node_modules/@sema/nucleo/dist/semantico/orcamentoSemantico.js +40 -0
  480. package/node_modules/@sema/nucleo/dist/semantico/orcamentoSemantico.js.map +1 -0
  481. package/package.json +10 -10
package/dist/docs.js CHANGED
@@ -1,502 +1,5 @@
1
- import { mkdir, readFile, readdir, stat, writeFile } from "node:fs/promises";
2
- import path from "node:path";
3
- const LIMITE_CONTEUDO_DOC = 16_000;
4
- function normalizarTexto(valor) {
5
- return valor
6
- .normalize("NFD")
7
- .replace(/[\u0300-\u036f]/g, "")
8
- .toLowerCase();
9
- }
10
- function normalizarRelativo(valor) {
11
- return valor.replace(/\\/g, "/").replace(/^\.\//, "");
12
- }
13
- const TERMOS_RELACAO_CONTRATO_IGNORADOS = new Set([
14
- "acao",
15
- "acoes",
16
- "agente",
17
- "agentes",
18
- "alvo",
19
- "alvos",
20
- "arquivo",
21
- "arquivos",
22
- "codigo",
23
- "contrato",
24
- "contratos",
25
- "docs",
26
- "documentacao",
27
- "fluxo",
28
- "fluxos",
29
- "governanca",
30
- "mudanca",
31
- "pacote",
32
- "pacotes",
33
- "para",
34
- "pratica",
35
- "pratico",
36
- "projeto",
37
- "readme",
38
- "sema",
39
- "src",
40
- ]);
41
- function separarTermosBusca(valor) {
42
- return normalizarTexto(valor)
43
- .split(/[^a-z0-9_]+/g)
44
- .map((parte) => parte.trim())
45
- .filter(Boolean);
46
- }
47
- function termoContratoRelevante(termo) {
48
- return termo.length >= 4 && !TERMOS_RELACAO_CONTRATO_IGNORADOS.has(termo);
49
- }
50
- function nomeArquivoSemExtensao(relativo) {
51
- const nome = normalizarRelativo(relativo).split("/").pop() ?? relativo;
52
- return nome.replace(/\.[^.]+$/, "");
53
- }
54
- function termosArquivoAlvoParaContrato(relativo) {
55
- const nomeBase = normalizarTexto(nomeArquivoSemExtensao(relativo));
56
- const termos = new Set();
57
- if (termoContratoRelevante(nomeBase)) {
58
- termos.add(nomeBase);
59
- }
60
- for (const parte of separarTermosBusca(nomeBase.replace(/_/g, " "))) {
61
- if (termoContratoRelevante(parte)) {
62
- termos.add(parte);
63
- }
64
- }
65
- return [...termos];
66
- }
67
- function termosRelacionamentoContratos(intencao, arquivosAlvo) {
68
- const termos = new Set();
69
- for (const termo of separarTermosBusca(intencao)) {
70
- if (termoContratoRelevante(termo)) {
71
- termos.add(termo);
72
- }
73
- }
74
- for (const arquivo of arquivosAlvo) {
75
- for (const termo of termosArquivoAlvoParaContrato(arquivo)) {
76
- termos.add(termo);
77
- }
78
- }
79
- return [...termos];
80
- }
81
- function tituloDeRelativo(relativo) {
82
- const base = path.basename(relativo, path.extname(relativo));
83
- return base
84
- .split(/[-_\s]+/)
85
- .filter(Boolean)
86
- .map((parte) => `${parte.charAt(0).toUpperCase()}${parte.slice(1)}`)
87
- .join(" ");
88
- }
89
- async function caminhoExiste(caminho) {
90
- try {
91
- await stat(caminho);
92
- return true;
93
- }
94
- catch {
95
- return false;
96
- }
97
- }
98
- function caminhoEstaDentro(base, alvo) {
99
- const relativo = path.relative(base, alvo);
100
- return relativo === "" || (!relativo.startsWith("..") && !path.isAbsolute(relativo));
101
- }
102
- async function listarArquivosRecursivo(base, limite = 80) {
103
- const encontrados = [];
104
- async function visitar(pasta) {
105
- if (encontrados.length >= limite || !(await caminhoExiste(pasta))) {
106
- return;
107
- }
108
- const entradas = await readdir(pasta, { withFileTypes: true });
109
- for (const entrada of entradas.sort((a, b) => a.name.localeCompare(b.name, "pt-BR"))) {
110
- if (encontrados.length >= limite) {
111
- return;
112
- }
113
- const caminho = path.join(pasta, entrada.name);
114
- if (entrada.isDirectory()) {
115
- if (!["node_modules", ".git", ".tmp", "dist"].includes(entrada.name)) {
116
- await visitar(caminho);
117
- }
118
- continue;
119
- }
120
- encontrados.push(caminho);
121
- }
122
- }
123
- await visitar(base);
124
- return encontrados;
125
- }
126
- const REGRAS_DOCUMENTACAO = [
127
- {
128
- categoria: "deploy",
129
- padroes: [/deploy/, /publicar/, /producao/, /release/, /pipeline/, /\bci\b/, /\bcd\b/, /vercel/, /cloudflare/, /docker/],
130
- docs: [
131
- { relativo: "docs/deploy.md", tipo: "runbook", motivo: "runbook de deploy antes de publicar ou alterar pipeline", permitirCriacao: true },
132
- { relativo: "docs/env.md", tipo: "runbook", motivo: "variaveis, secrets e ambientes usados no deploy", permitirCriacao: true },
133
- { relativo: "docs/rollback.md", tipo: "runbook", motivo: "plano de rollback obrigatorio antes de deploy", permitirCriacao: true },
134
- ],
135
- },
136
- {
137
- categoria: "api",
138
- padroes: [/rota/, /endpoint/, /\bapi\b/, /controller/, /webhook/, /http/],
139
- docs: [
140
- { relativo: "docs/api.md", tipo: "documentacao", motivo: "contrato operacional de rotas e endpoints", permitirCriacao: true },
141
- ],
142
- },
143
- {
144
- categoria: "author",
145
- padroes: [/\bauthor\b/, /autoral/, /obra/, /cliche/, /estilo/, /personagem/, /narrativa/, /sensibility/, /sensitivity/],
146
- docs: [
147
- { relativo: "docs/profiles-author-agents-flow.md", tipo: "documentacao", motivo: "profile Author, agents, flow e guardrails autorais", permitirCriacao: false },
148
- ],
149
- },
150
- {
151
- categoria: "profile",
152
- padroes: [/\bprofiles\b/, /\bworkflow\b/, /\bn8n\b/, /\bops\b/, /\bgame\b/, /\blegal\b/, /\bresearch\b/, /pesquisa/, /juridic/, /orquestracao/, /automacao/],
153
- docs: [
154
- { relativo: "docs/profiles.md", tipo: "documentacao", motivo: "profiles oficiais, gates e fronteiras de adapter", permitirCriacao: false },
155
- { relativo: "docs/scorecard-compatibilidade.md", tipo: "documentacao", motivo: "scorecard de compatibilidade para runtimes e adapters", permitirCriacao: false },
156
- ],
157
- },
158
- {
159
- categoria: "auth",
160
- padroes: [/(^|[^a-z0-9])auth([^a-z0-9]|$)/, /autentic/, /login/, /permiss/, /autoriz/, /token/, /oauth/, /seguranca/],
161
- docs: [
162
- { relativo: "docs/auth.md", tipo: "documentacao", motivo: "regras de autenticacao, autorizacao e tokens", permitirCriacao: true },
163
- { relativo: "docs/seguranca.md", tipo: "documentacao", motivo: "politicas de seguranca afetadas pela mudanca", permitirCriacao: true },
164
- ],
165
- },
166
- {
167
- categoria: "persistencia",
168
- padroes: [/banco/, /database/, /persist/, /migration/, /migracao/, /prisma/, /postgres/, /redis/, /mongodb/],
169
- docs: [
170
- { relativo: "docs/persistencia-vendor-first.md", tipo: "documentacao", motivo: "regras de persistencia vendor-first", permitirCriacao: false },
171
- { relativo: "docs/database.md", tipo: "runbook", motivo: "operacao de banco, migracoes e validacao de dados", permitirCriacao: true },
172
- ],
173
- },
174
- {
175
- categoria: "mcp",
176
- padroes: [/\bmcp\b/, /tool/, /ferramenta/, /server/, /streamable/, /sse/],
177
- docs: [
178
- { relativo: "docs/integracao-com-ia.md", tipo: "documentacao", motivo: "integracao do Sema com agentes IA", permitirCriacao: false },
179
- { relativo: "docs/mcp.md", tipo: "documentacao", motivo: "runbook do MCP privado e ferramentas remotas", permitirCriacao: true },
180
- ],
181
- },
182
- {
183
- categoria: "cli",
184
- padroes: [/\bcli\b/, /comando/, /terminal/],
185
- docs: [
186
- { relativo: "pacotes/cli/README.md", tipo: "pacote", motivo: "documentacao publica da CLI", permitirCriacao: false },
187
- { relativo: "docs/cli.md", tipo: "documentacao", motivo: "guia operacional dos comandos da CLI", permitirCriacao: false },
188
- ],
189
- },
190
- {
191
- categoria: "extensao",
192
- padroes: [/vscode/, /extension/, /extensao/, /editor/, /\blsp\b/, /language server/],
193
- docs: [
194
- { relativo: "pacotes/editor-vscode/README.md", tipo: "pacote", motivo: "documentacao publica da extensao VS Code", permitirCriacao: false },
195
- { relativo: "docs/extensao-vscode.md", tipo: "documentacao", motivo: "runbook da extensao VS Code", permitirCriacao: true },
196
- ],
197
- },
198
- {
199
- categoria: "contrato",
200
- padroes: [/contrato/, /\.sema/, /semant/, /\bsema\b/, /drift/, /governanca/],
201
- docs: [
202
- { relativo: "docs/sintaxe.md", tipo: "documentacao", motivo: "sintaxe e blocos de contrato Sema", permitirCriacao: false },
203
- { relativo: "docs/fluxo-pratico-ia-sema.md", tipo: "documentacao", motivo: "fluxo IA-first antes de editar contratos", permitirCriacao: false },
204
- ],
205
- },
206
- {
207
- categoria: "frontend",
208
- padroes: [/frontend/, /\bui\b/, /react/, /vite/, /next/, /css/, /html/, /pagina/],
209
- docs: [
210
- { relativo: "docs/frontend.md", tipo: "documentacao", motivo: "decisoes e validacoes de interface", permitirCriacao: true },
211
- ],
212
- },
213
- {
214
- categoria: "testes",
215
- padroes: [/teste/, /testar/, /qa/, /validacao/, /regressao/],
216
- docs: [
217
- { relativo: "docs/testes.md", tipo: "runbook", motivo: "estrategia de testes e regressao", permitirCriacao: true },
218
- ],
219
- },
220
- {
221
- categoria: "documentacao",
222
- padroes: [/doc/, /readme/, /manual/, /runbook/, /onboarding/],
223
- docs: [
224
- { relativo: "docs/README.md", tipo: "documentacao", motivo: "indice de documentacao do projeto", permitirCriacao: false },
225
- { relativo: "docs/documentacao.md", tipo: "documentacao", motivo: "politica de atualizacao documental", permitirCriacao: true },
226
- ],
227
- },
228
- ];
229
- function inferirCategorias(intencao, arquivosAlvo) {
230
- const texto = normalizarTexto(`${intencao} ${arquivosAlvo.join(" ")}`);
231
- const categorias = REGRAS_DOCUMENTACAO
232
- .filter((regra) => regra.padroes.some((padrao) => padrao.test(texto)))
233
- .map((regra) => regra.categoria);
234
- return categorias.length > 0 ? [...new Set(categorias)] : ["mudanca"];
235
- }
236
- function criarTemplateDoc(doc, intencao, categorias, arquivosAlvo) {
237
- const titulo = tituloDeRelativo(doc.relativo);
238
- const linhas = [
239
- `# ${titulo}`,
240
- "",
241
- "## English",
242
- "",
243
- "This document was created by Sema because an AI declared an intention that requires operational reading before action.",
244
- "",
245
- "## Português",
246
- "",
247
- "Documento criado pela Sema porque uma IA declarou uma intenção que exige leitura operacional antes de agir.",
248
- "",
249
- "## Español",
250
- "",
251
- "Documento creado por Sema porque una IA declaró una intención que exige lectura operativa antes de actuar.",
252
- "",
253
- "## Intenção",
254
- "",
255
- intencao || "Descrever a intenção operacional antes de executar a mudança.",
256
- "",
257
- "## Escopo",
258
- "",
259
- arquivosAlvo.length > 0
260
- ? arquivosAlvo.map((arquivo) => `- ${arquivo}`).join("\n")
261
- : "- Declarar os arquivos, serviços ou contratos afetados.",
262
- "",
263
- "## Leitura obrigatória antes de agir",
264
- "",
265
- "- Ler este documento inteiro.",
266
- "- Ler contratos .sema relacionados antes de editar código.",
267
- "- Ler README, runbooks e docs de pacote envolvidos.",
268
- "",
269
- "## Procedimento",
270
- "",
271
- "- Descrever os comandos ou passos seguros.",
272
- "- Declarar pré-condições, variáveis e dependências.",
273
- "- Registrar como validar sucesso.",
274
- "",
275
- "## Validação",
276
- "",
277
- "- Listar comandos de build, teste, verificação ou smoke test.",
278
- "- Registrar evidências esperadas.",
279
- "",
280
- "## Rollback",
281
- "",
282
- "- Descrever como desfazer a mudança.",
283
- "- Declarar sinais que exigem rollback.",
284
- "",
285
- "## Atualização documental",
286
- "",
287
- "- Atualizar este arquivo quando o fluxo operacional mudar.",
288
- "- Atualizar docs e contratos relacionados na mesma mudança.",
289
- "",
290
- `Categorias inferidas: ${categorias.join(", ")}`,
291
- "",
292
- ];
293
- return `${linhas.join("\n")}\n`;
294
- }
295
- function resumoConteudo(conteudo) {
296
- if (conteudo.length <= LIMITE_CONTEUDO_DOC) {
297
- return { conteudo, truncado: false };
298
- }
299
- return {
300
- conteudo: `${conteudo.slice(0, LIMITE_CONTEUDO_DOC)}\n\n[TRUNCADO PELO SEMA: leia o arquivo completo antes de agir.]`,
301
- truncado: true,
302
- };
303
- }
304
- async function adicionarDocsRaizExistentes(baseProjeto, registrar) {
305
- const docsRaiz = [
306
- { relativo: "AGENTS.md", tipo: "raiz", motivo: "regras obrigatorias do agente no projeto" },
307
- { relativo: "SEMA_INDEX.json", tipo: "raiz", motivo: "indice IA-first do projeto" },
308
- { relativo: "README.md", tipo: "raiz", motivo: "visao geral publica do projeto" },
309
- { relativo: "docs/README.md", tipo: "documentacao", motivo: "indice de documentacao" },
310
- ];
311
- for (const doc of docsRaiz) {
312
- if (await caminhoExiste(path.join(baseProjeto, doc.relativo))) {
313
- registrar({ ...doc, permitirCriacao: false });
314
- }
315
- }
316
- }
317
- async function adicionarReadmesDeArquivos(baseProjeto, arquivosAlvo, registrar) {
318
- for (const arquivo of arquivosAlvo) {
319
- const absoluto = path.resolve(baseProjeto, arquivo);
320
- if (!caminhoEstaDentro(baseProjeto, absoluto)) {
321
- continue;
322
- }
323
- let pasta = (await caminhoExiste(absoluto)) && (await stat(absoluto)).isDirectory()
324
- ? absoluto
325
- : path.dirname(absoluto);
326
- while (caminhoEstaDentro(baseProjeto, pasta)) {
327
- const readme = path.join(pasta, "README.md");
328
- if (await caminhoExiste(readme)) {
329
- registrar({
330
- relativo: normalizarRelativo(path.relative(baseProjeto, readme)),
331
- tipo: "pacote",
332
- motivo: `README mais proximo de ${normalizarRelativo(arquivo)}`,
333
- permitirCriacao: false,
334
- });
335
- break;
336
- }
337
- const proxima = path.dirname(pasta);
338
- if (proxima === pasta) {
339
- break;
340
- }
341
- pasta = proxima;
342
- }
343
- }
344
- }
345
- async function adicionarContratosRelacionados(baseProjeto, intencao, arquivosAlvo, registrar) {
346
- const pastaContratos = path.join(baseProjeto, "contratos");
347
- if (!(await caminhoExiste(pastaContratos))) {
348
- return;
349
- }
350
- const termos = termosRelacionamentoContratos(intencao, arquivosAlvo);
351
- const arquivos = (await listarArquivosRecursivo(pastaContratos)).filter((arquivo) => arquivo.endsWith(".sema"));
352
- for (const arquivo of arquivos) {
353
- const relativo = normalizarRelativo(path.relative(baseProjeto, arquivo));
354
- const nome = normalizarTexto(relativo);
355
- const relacionado = termos.some((parte) => nome.includes(parte));
356
- if (relacionado) {
357
- registrar({
358
- relativo,
359
- tipo: "contrato",
360
- motivo: "contrato Sema relacionado a intencao declarada",
361
- permitirCriacao: false,
362
- });
363
- }
364
- }
365
- }
366
- function criarRegistrador(baseProjeto) {
367
- const docs = [];
368
- const vistos = new Set();
369
- return {
370
- docs,
371
- registrar(doc) {
372
- const relativo = normalizarRelativo(doc.relativo);
373
- const absoluto = path.resolve(baseProjeto, relativo);
374
- if (!caminhoEstaDentro(baseProjeto, absoluto) || vistos.has(relativo)) {
375
- return;
376
- }
377
- vistos.add(relativo);
378
- docs.push({ ...doc, relativo });
379
- },
380
- };
381
- }
382
- export async function resolverDocumentacaoObrigatoria(opcoes) {
383
- const baseProjeto = path.resolve(opcoes.baseProjeto ?? process.cwd());
384
- const intencao = opcoes.intencao.trim();
385
- const arquivosAlvo = [...new Set((opcoes.arquivosAlvo ?? []).map(normalizarRelativo).filter(Boolean))];
386
- const categorias = inferirCategorias(intencao, arquivosAlvo);
387
- const { docs, registrar } = criarRegistrador(baseProjeto);
388
- await adicionarDocsRaizExistentes(baseProjeto, registrar);
389
- for (const regra of REGRAS_DOCUMENTACAO.filter((item) => categorias.includes(item.categoria))) {
390
- for (const doc of regra.docs) {
391
- registrar(doc);
392
- }
393
- }
394
- await adicionarReadmesDeArquivos(baseProjeto, arquivosAlvo, registrar);
395
- await adicionarContratosRelacionados(baseProjeto, intencao, arquivosAlvo, registrar);
396
- const leituraObrigatoria = [];
397
- for (const doc of docs) {
398
- const caminho = path.resolve(baseProjeto, doc.relativo);
399
- let existe = await caminhoExiste(caminho);
400
- let criado = false;
401
- const template = criarTemplateDoc(doc, intencao, categorias, arquivosAlvo);
402
- if (!existe && opcoes.criarAusentes && doc.permitirCriacao) {
403
- await mkdir(path.dirname(caminho), { recursive: true });
404
- await writeFile(caminho, template, "utf8");
405
- existe = true;
406
- criado = true;
407
- }
408
- const item = {
409
- caminho,
410
- relativo: doc.relativo,
411
- tipo: doc.tipo,
412
- motivo: doc.motivo,
413
- existe,
414
- criado,
415
- obrigatorio: true,
416
- template: existe ? undefined : template,
417
- };
418
- if (existe) {
419
- const conteudo = resumoConteudo(await readFile(caminho, "utf8"));
420
- item.conteudo = conteudo.conteudo;
421
- item.truncado = conteudo.truncado;
422
- }
423
- leituraObrigatoria.push(item);
424
- }
425
- const docsAusentes = leituraObrigatoria.filter((doc) => !doc.existe);
426
- const docsCriadas = leituraObrigatoria.filter((doc) => doc.criado);
427
- const bloqueios = docsAusentes.map((doc) => ({
428
- tipo: "documentacao_ausente",
429
- severidade: 4,
430
- caminho: doc.relativo,
431
- mensagem: `Documento obrigatorio ausente: ${doc.relativo}. Crie ou rode com --criar-ausentes antes de agir.`,
432
- }));
433
- return {
434
- sucesso: bloqueios.length === 0,
435
- baseProjeto,
436
- intencao,
437
- categorias,
438
- arquivosAlvo,
439
- leituraObrigatoria,
440
- docsAusentes,
441
- docsCriadas,
442
- bloqueios,
443
- instrucoes: [
444
- "A IA deve ler todos os itens de leituraObrigatoria antes de executar a mudanca.",
445
- "Se docsAusentes nao estiver vazio, crie ou preencha os documentos antes de editar codigo, contrato, deploy ou configuracao.",
446
- "Antes de concluir, rode sema finalizar-mudanca informando as docs lidas.",
447
- ],
448
- };
449
- }
450
- function normalizarDocLida(baseProjeto, valor) {
451
- const semEspaco = valor.trim();
452
- if (!semEspaco) {
453
- return "";
454
- }
455
- const absoluto = path.isAbsolute(semEspaco) ? semEspaco : path.resolve(baseProjeto, semEspaco);
456
- return normalizarRelativo(path.relative(baseProjeto, absoluto));
457
- }
458
- function compactarDocumentoObrigatorio(doc) {
459
- const { conteudo, template, ...compacto } = doc;
460
- return compacto;
461
- }
462
- export async function verificarDocumentacaoMudanca(opcoes) {
463
- const baseProjeto = path.resolve(opcoes.baseProjeto ?? process.cwd());
464
- const impacto = await resolverDocumentacaoObrigatoria({
465
- baseProjeto,
466
- intencao: opcoes.intencao,
467
- arquivosAlvo: opcoes.arquivosAlvo,
468
- criarAusentes: false,
469
- });
470
- const docsLidas = [...new Set((opcoes.docsLidas ?? []).map((doc) => normalizarDocLida(baseProjeto, doc)).filter(Boolean))];
471
- const setDocsLidas = new Set(docsLidas);
472
- const docsNaoLidas = impacto.leituraObrigatoria.filter((doc) => doc.existe && !setDocsLidas.has(doc.relativo));
473
- const diagnosticos = [
474
- ...impacto.docsAusentes.map((doc) => ({
475
- tipo: "documentacao_ausente",
476
- severidade: 4,
477
- caminho: doc.relativo,
478
- mensagem: `Documento obrigatorio ausente: ${doc.relativo}.`,
479
- })),
480
- ...docsNaoLidas.map((doc) => ({
481
- tipo: "leitura_obrigatoria_nao_comprovada",
482
- severidade: 4,
483
- caminho: doc.relativo,
484
- mensagem: `Leitura obrigatoria nao comprovada: ${doc.relativo}.`,
485
- })),
486
- ];
487
- return {
488
- sucesso: diagnosticos.length === 0,
489
- baseProjeto,
490
- intencao: opcoes.intencao,
491
- categorias: impacto.categorias,
492
- docsLidas,
493
- leituraObrigatoria: impacto.leituraObrigatoria.map(compactarDocumentoObrigatorio),
494
- docsNaoLidas: docsNaoLidas.map(compactarDocumentoObrigatorio),
495
- docsAusentes: impacto.docsAusentes.map(compactarDocumentoObrigatorio),
496
- diagnosticos,
497
- instrucoes: diagnosticos.length === 0
498
- ? ["Leitura documental comprovada. Continue com validar, drift e testes conforme a mudanca."]
499
- : ["Nao conclua a mudanca enquanto houver diagnosticos de severidade 4+."],
500
- };
501
- }
502
- //# sourceMappingURL=docs.js.map
1
+ // SEMA-GOVERNED: sema.governanca_ia_contexto
2
+ // Descricao: CLI particionada; consulte contratos/sema/governanca_ia_contexto.sema antes de editar.
3
+ export * from "./docs.part01.js";
4
+ export * from "./docs.part02.js";
5
+ //# sourceMappingURL=docs.js.map
package/dist/docs.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"docs.js","sourceRoot":"","sources":["../src/docs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docs.js","sourceRoot":"","sources":["../src/docs.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,oGAAoG;AACpG,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,78 @@
1
+ export declare const LIMITE_CONTEUDO_DOC = 16000;
2
+ export type TipoDocumentoMudanca = "raiz" | "documentacao" | "runbook" | "pacote" | "contrato";
3
+ export interface DocumentoPlanejado {
4
+ relativo: string;
5
+ tipo: TipoDocumentoMudanca;
6
+ motivo: string;
7
+ permitirCriacao: boolean;
8
+ }
9
+ export interface DocumentoObrigatorioMudanca {
10
+ caminho: string;
11
+ relativo: string;
12
+ tipo: TipoDocumentoMudanca;
13
+ motivo: string;
14
+ existe: boolean;
15
+ criado: boolean;
16
+ obrigatorio: boolean;
17
+ conteudo?: string;
18
+ truncado?: boolean;
19
+ template?: string;
20
+ }
21
+ export interface BloqueioDocumentacaoMudanca {
22
+ tipo: "documentacao_ausente" | "leitura_obrigatoria_nao_comprovada" | "arquivo_monolitico" | "codigo_governado_sem_cabecalho";
23
+ severidade: 4 | 5;
24
+ caminho: string;
25
+ mensagem: string;
26
+ linhas?: number;
27
+ limite_bloqueio_linhas?: number;
28
+ }
29
+ export interface ResultadoDocumentacaoObrigatoria {
30
+ sucesso: boolean;
31
+ baseProjeto: string;
32
+ intencao: string;
33
+ categorias: string[];
34
+ arquivosAlvo: string[];
35
+ leituraObrigatoria: DocumentoObrigatorioMudanca[];
36
+ docsAusentes: DocumentoObrigatorioMudanca[];
37
+ docsCriadas: DocumentoObrigatorioMudanca[];
38
+ bloqueios: BloqueioDocumentacaoMudanca[];
39
+ instrucoes: string[];
40
+ }
41
+ export interface ResultadoVerificacaoDocumentacaoMudanca {
42
+ sucesso: boolean;
43
+ baseProjeto: string;
44
+ intencao: string;
45
+ categorias: string[];
46
+ docsLidas: string[];
47
+ leituraObrigatoria: DocumentoObrigatorioMudanca[];
48
+ docsNaoLidas: DocumentoObrigatorioMudanca[];
49
+ docsAusentes: DocumentoObrigatorioMudanca[];
50
+ diagnosticos: BloqueioDocumentacaoMudanca[];
51
+ instrucoes: string[];
52
+ }
53
+ export interface RegraDocumentacao {
54
+ categoria: string;
55
+ padroes: RegExp[];
56
+ docs: DocumentoPlanejado[];
57
+ }
58
+ export declare function normalizarTexto(valor: string): string;
59
+ export declare function normalizarRelativo(valor: string): string;
60
+ export declare const TERMOS_RELACAO_CONTRATO_IGNORADOS: Set<string>;
61
+ export declare function separarTermosBusca(valor: string): string[];
62
+ export declare function termoContratoRelevante(termo: string): boolean;
63
+ export declare function nomeArquivoSemExtensao(relativo: string): string;
64
+ export declare function termosArquivoAlvoParaContrato(relativo: string): string[];
65
+ export declare function termosRelacionamentoContratos(intencao: string, arquivosAlvo: string[]): string[];
66
+ export declare function tituloDeRelativo(relativo: string): string;
67
+ export declare function caminhoExiste(caminho: string): Promise<boolean>;
68
+ export declare function caminhoEstaDentro(base: string, alvo: string): boolean;
69
+ export declare function listarArquivosRecursivo(base: string, limite?: number): Promise<string[]>;
70
+ export declare const REGRAS_DOCUMENTACAO: RegraDocumentacao[];
71
+ export declare function inferirCategorias(intencao: string, arquivosAlvo: string[]): string[];
72
+ export declare function criarTemplateDoc(doc: DocumentoPlanejado, intencao: string, categorias: string[], arquivosAlvo: string[]): string;
73
+ export declare function resumoConteudo(conteudo: string): {
74
+ conteudo: string;
75
+ truncado: boolean;
76
+ };
77
+ export declare function adicionarDocsRaizExistentes(baseProjeto: string, registrar: (doc: DocumentoPlanejado) => void): Promise<void>;
78
+ export declare function adicionarReadmesDeArquivos(baseProjeto: string, arquivosAlvo: string[], registrar: (doc: DocumentoPlanejado) => void): Promise<void>;