From 7a8310a70202beac1b699c22e698fa00b32d6e94 Mon Sep 17 00:00:00 2001 From: codex-server Date: Sat, 2 May 2026 05:20:04 -0300 Subject: [PATCH] auto-sync: tudo-para-ia-mais-humana 2026-05-02 05:20:04 --- controle-semantico.sqlite | Bin 3596288 -> 3723264 bytes dados/central-materialization-report.json | 56 ++++++++- ecossistema/CENTRAL-MATERIALIZATION-REPORT.md | 35 +++++- ...ar-rotas-administrativas-mcp-no-gateway.md | 80 ++++++++++++ ...acl-index-lock-e-commitar-artefatos-mcp.md | 80 ++++++++++++ ...em-runner-homologado-e-registrar-deploy.md | 79 ++++++++++++ ...ral-e-sql-semantico-sem-permissionerror.md | 81 ++++++++++++ ...VA__resolver-test-tmp-bloqueado-por-acl.md | 80 ++++++++++++ ...-aceitacao-admin-routes-no-mcps-gateway.md | 79 ++++++++++++ ...tea-e-sincronizar-espelhos-sem-reversao.md | 79 ++++++++++++ ...ual-cloudflare-e-smoke-live-mais-humana.md | 79 ++++++++++++ ...e-escrita-automatizada-da-plataforma-15.md | 81 ++++++++++++ ...tmp-com-owner-autorizado-ou-excecao-acl.md | 79 ++++++++++++ ...ion-routes-como-politica-de-ecossistema.md | 79 ++++++++++++ ...a-de-sync-automatico-e-credencial-gitea.md | 79 ++++++++++++ ...runner-oficial-wrangler-sem-spawn-eperm.md | 79 ++++++++++++ ...canonico-mais-humana-platform-e-aliases.md | 79 ++++++++++++ ...y-ou-response-ready-como-excecao-global.md | 79 ++++++++++++ ...alogo-admin-routes-como-gate-de-release.md | 79 ++++++++++++ ...ico-com-precedencia-da-alteracao-valida.md | 79 ++++++++++++ ...deploy-manual-e-runner-wrangler-oficial.md | 79 ++++++++++++ ...onico-platform-sem-duplicar-repositorio.md | 79 ++++++++++++ ...cs-response-ready-ou-catalogonly-formal.md | 79 ++++++++++++ src/mais_humana/central_materialization.py | 115 +++++++++++++++++- tests/test_central_materialization.py | 25 ++++ 25 files changed, 1812 insertions(+), 6 deletions(-) create mode 100644 os-orientadoras/central-materialization-fallback/executivas/0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway.md create mode 100644 os-orientadoras/central-materialization-fallback/executivas/0038_EXECUTIVA__corrigir-acl-index-lock-e-commitar-artefatos-mcp.md create mode 100644 os-orientadoras/central-materialization-fallback/executivas/0039_EXECUTIVA__reexecutar-wrangler-em-runner-homologado-e-registrar-deploy.md create mode 100644 os-orientadoras/central-materialization-fallback/executivas/0040_EXECUTIVA__materializar-escrita-central-e-sql-semantico-sem-permissionerror.md create mode 100644 os-orientadoras/central-materialization-fallback/executivas/0041_EXECUTIVA__resolver-test-tmp-bloqueado-por-acl.md create mode 100644 os-orientadoras/central-materialization-fallback/executivas/0042_EXECUTIVA__publicar-catalogo-aceitacao-admin-routes-no-mcps-gateway.md create mode 100644 os-orientadoras/central-materialization-fallback/executivas/0043_EXECUTIVA__corrigir-credencial-gitea-e-sincronizar-espelhos-sem-reversao.md create mode 100644 os-orientadoras/central-materialization-fallback/executivas/0044_EXECUTIVA__registrar-deploy-manual-cloudflare-e-smoke-live-mais-humana.md create mode 100644 os-orientadoras/central-materialization-fallback/executivas/0045_EXECUTIVA__destravar-sql-central-e-escrita-automatizada-da-plataforma-15.md create mode 100644 os-orientadoras/central-materialization-fallback/executivas/0046_EXECUTIVA__remover-test-tmp-com-owner-autorizado-ou-excecao-acl.md create mode 100644 os-orientadoras/central-materialization-fallback/gerenciais/0049_GERENCIAL__homologar-mcp-only-administration-routes-como-politica-de-ecossistema.md create mode 100644 os-orientadoras/central-materialization-fallback/gerenciais/0050_GERENCIAL__decidir-politica-de-sync-automatico-e-credencial-gitea.md create mode 100644 os-orientadoras/central-materialization-fallback/gerenciais/0051_GERENCIAL__aprovar-runner-oficial-wrangler-sem-spawn-eperm.md create mode 100644 os-orientadoras/central-materialization-fallback/gerenciais/0052_GERENCIAL__formalizar-nome-canonico-mais-humana-platform-e-aliases.md create mode 100644 os-orientadoras/central-materialization-fallback/gerenciais/0053_GERENCIAL__pactuar-docs-catalogonly-ou-response-ready-como-excecao-global.md create mode 100644 os-orientadoras/central-materialization-fallback/gerenciais/0054_GERENCIAL__institucionalizar-catalogo-admin-routes-como-gate-de-release.md create mode 100644 os-orientadoras/central-materialization-fallback/gerenciais/0055_GERENCIAL__governar-sync-automatico-com-precedencia-da-alteracao-valida.md create mode 100644 os-orientadoras/central-materialization-fallback/gerenciais/0056_GERENCIAL__separar-deploy-manual-e-runner-wrangler-oficial.md create mode 100644 os-orientadoras/central-materialization-fallback/gerenciais/0057_GERENCIAL__decidir-nome-canonico-platform-sem-duplicar-repositorio.md create mode 100644 os-orientadoras/central-materialization-fallback/gerenciais/0058_GERENCIAL__fechar-decisao-docs-response-ready-ou-catalogonly-formal.md diff --git a/controle-semantico.sqlite b/controle-semantico.sqlite index 64c09916723ce70561fddb07b6a998de2ffcf397..e029202836b69d5569a15598e1d766d2a3f4bd9a 100644 GIT binary patch delta 86221 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 delta 502 zcmWO1%}Z2a6oB#fy&vgyuJ?5&y;Dv#lkYXHZ0ysklwF}sB%-^*Al(=U;!I8jO)$BIPX2 z<#UDk`?;k@Gmc{><=y#(xx#QtnwMquoARGFqvy>?GJ~1SVm3R#T39P{SR0Emm$fsG zDb~T_EWr-4PS(YImSl(6Vb;x3>gvxPPB2I5nDpu zai?ROV$1wcPn7kucFMmFY|0nIQM)o?J$XQ1{tT_sq#MTQWid?K_N-O8M)y{9mU5-A zi*`z3w{_d9j8GhOKh3<*F8x~37G3EJ($b`f$Kfp+ErmA$HDCbP3wQ#s53nEbB;YB) e(|`kjX8^N+gMeoN&jFqXya0F+@X|UCP5lSc3cINQ diff --git a/dados/central-materialization-report.json b/dados/central-materialization-report.json index f5ab9f3..ba87ffe 100644 --- a/dados/central-materialization-report.json +++ b/dados/central-materialization-report.json @@ -442,11 +442,61 @@ "central_artifact:G:\\_codex-git\\nucleo-gestao-operacional\\central-de-ordem-de-servico\\projects\\15_repo_tudo-para-ia-mais-humana-platform\\dados\\central-materialization-report.json:PermissionError: [WinError 5] Acesso negado: 'G:\\\\_codex-git\\\\nucleo-gestao-operacional\\\\central-de-ordem-de-servico\\\\projects\\\\15_repo_tudo-para-ia-mais-humana-platform\\\\dados'" ], "central_platform_folder": "G:\\_codex-git\\nucleo-gestao-operacional\\central-de-ordem-de-servico\\projects\\15_repo_tudo-para-ia-mais-humana-platform", - "generated_at": "2026-05-02T08:13:07+00:00", + "fallback_order_files": [ + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0038_EXECUTIVA__corrigir-acl-index-lock-e-commitar-artefatos-mcp.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0039_EXECUTIVA__reexecutar-wrangler-em-runner-homologado-e-registrar-deploy.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0040_EXECUTIVA__materializar-escrita-central-e-sql-semantico-sem-permissionerror.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0041_EXECUTIVA__resolver-test-tmp-bloqueado-por-acl.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0049_GERENCIAL__homologar-mcp-only-administration-routes-como-politica-de-ecossistema.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0050_GERENCIAL__decidir-politica-de-sync-automatico-e-credencial-gitea.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0051_GERENCIAL__aprovar-runner-oficial-wrangler-sem-spawn-eperm.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0052_GERENCIAL__formalizar-nome-canonico-mais-humana-platform-e-aliases.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0053_GERENCIAL__pactuar-docs-catalogonly-ou-response-ready-como-excecao-global.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0042_EXECUTIVA__publicar-catalogo-aceitacao-admin-routes-no-mcps-gateway.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0043_EXECUTIVA__corrigir-credencial-gitea-e-sincronizar-espelhos-sem-reversao.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0044_EXECUTIVA__registrar-deploy-manual-cloudflare-e-smoke-live-mais-humana.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0045_EXECUTIVA__destravar-sql-central-e-escrita-automatizada-da-plataforma-15.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0046_EXECUTIVA__remover-test-tmp-com-owner-autorizado-ou-excecao-acl.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0054_GERENCIAL__institucionalizar-catalogo-admin-routes-como-gate-de-release.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0055_GERENCIAL__governar-sync-automatico-com-precedencia-da-alteracao-valida.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0056_GERENCIAL__separar-deploy-manual-e-runner-wrangler-oficial.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0057_GERENCIAL__decidir-nome-canonico-platform-sem-duplicar-repositorio.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0058_GERENCIAL__fechar-decisao-docs-response-ready-ou-catalogonly-formal.md" + ], + "generated_at": "2026-05-02T08:18:47+00:00", "generated_files": [ "G:\\_codex-git\\tudo-para-ia-mais-humana\\dados\\central-materialization-report.json", - "G:\\_codex-git\\tudo-para-ia-mais-humana\\ecossistema\\CENTRAL-MATERIALIZATION-REPORT.md" + "G:\\_codex-git\\tudo-para-ia-mais-humana\\ecossistema\\CENTRAL-MATERIALIZATION-REPORT.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0038_EXECUTIVA__corrigir-acl-index-lock-e-commitar-artefatos-mcp.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0039_EXECUTIVA__reexecutar-wrangler-em-runner-homologado-e-registrar-deploy.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0040_EXECUTIVA__materializar-escrita-central-e-sql-semantico-sem-permissionerror.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0041_EXECUTIVA__resolver-test-tmp-bloqueado-por-acl.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0049_GERENCIAL__homologar-mcp-only-administration-routes-como-politica-de-ecossistema.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0050_GERENCIAL__decidir-politica-de-sync-automatico-e-credencial-gitea.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0051_GERENCIAL__aprovar-runner-oficial-wrangler-sem-spawn-eperm.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0052_GERENCIAL__formalizar-nome-canonico-mais-humana-platform-e-aliases.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0053_GERENCIAL__pactuar-docs-catalogonly-ou-response-ready-como-excecao-global.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0042_EXECUTIVA__publicar-catalogo-aceitacao-admin-routes-no-mcps-gateway.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0043_EXECUTIVA__corrigir-credencial-gitea-e-sincronizar-espelhos-sem-reversao.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0044_EXECUTIVA__registrar-deploy-manual-cloudflare-e-smoke-live-mais-humana.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0045_EXECUTIVA__destravar-sql-central-e-escrita-automatizada-da-plataforma-15.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\executivas\\0046_EXECUTIVA__remover-test-tmp-com-owner-autorizado-ou-excecao-acl.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0054_GERENCIAL__institucionalizar-catalogo-admin-routes-como-gate-de-release.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0055_GERENCIAL__governar-sync-automatico-com-precedencia-da-alteracao-valida.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0056_GERENCIAL__separar-deploy-manual-e-runner-wrangler-oficial.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0057_GERENCIAL__decidir-nome-canonico-platform-sem-duplicar-repositorio.md", + "G:\\_codex-git\\tudo-para-ia-mais-humana\\os-orientadoras\\central-materialization-fallback\\gerenciais\\0058_GERENCIAL__fechar-decisao-docs-response-ready-ou-catalogonly-formal.md" ], + "local_semantic_write": { + "attempted": true, + "error": "", + "files_count": 50, + "ok": true, + "orders_count": 20, + "sqlite_path": "G:\\_codex-git\\tudo-para-ia-mais-humana\\controle-semantico.sqlite" + }, "next_output_orders": [ { "affected_paths": [ @@ -713,7 +763,7 @@ ], "project_id": "tudo-para-ia-mais-humana-platform", "project_root": "G:\\_codex-git\\tudo-para-ia-mais-humana", - "report_id": "central-materialization-225817616447", + "report_id": "central-materialization-235396227029", "semantic_write": { "attempted": true, "error": "OperationalError: unable to open database file", diff --git a/ecossistema/CENTRAL-MATERIALIZATION-REPORT.md b/ecossistema/CENTRAL-MATERIALIZATION-REPORT.md index 6766f55..a30d803 100644 --- a/ecossistema/CENTRAL-MATERIALIZATION-REPORT.md +++ b/ecossistema/CENTRAL-MATERIALIZATION-REPORT.md @@ -1,7 +1,7 @@ # EXECUTADO - Central Materialization -- report_id: `central-materialization-225817616447` -- generated_at: `2026-05-02T08:13:07+00:00` +- report_id: `central-materialization-235396227029` +- generated_at: `2026-05-02T08:18:47+00:00` - status: `failed` - project_id: `tudo-para-ia-mais-humana-platform` - project_root: `G:\_codex-git\tudo-para-ia-mais-humana` @@ -93,6 +93,37 @@ - orders_count: `20` - error: `OperationalError: unable to open database file` +## SQLite Semantico Local + +- attempted: `True` +- ok: `True` +- sqlite_path: `G:\_codex-git\tudo-para-ia-mais-humana\controle-semantico.sqlite` +- files_count: `50` +- orders_count: `20` + +## Ordens Espelhadas no Projeto Real + +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\executivas\0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\executivas\0038_EXECUTIVA__corrigir-acl-index-lock-e-commitar-artefatos-mcp.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\executivas\0039_EXECUTIVA__reexecutar-wrangler-em-runner-homologado-e-registrar-deploy.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\executivas\0040_EXECUTIVA__materializar-escrita-central-e-sql-semantico-sem-permissionerror.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\executivas\0041_EXECUTIVA__resolver-test-tmp-bloqueado-por-acl.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\gerenciais\0049_GERENCIAL__homologar-mcp-only-administration-routes-como-politica-de-ecossistema.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\gerenciais\0050_GERENCIAL__decidir-politica-de-sync-automatico-e-credencial-gitea.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\gerenciais\0051_GERENCIAL__aprovar-runner-oficial-wrangler-sem-spawn-eperm.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\gerenciais\0052_GERENCIAL__formalizar-nome-canonico-mais-humana-platform-e-aliases.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\gerenciais\0053_GERENCIAL__pactuar-docs-catalogonly-ou-response-ready-como-excecao-global.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\executivas\0042_EXECUTIVA__publicar-catalogo-aceitacao-admin-routes-no-mcps-gateway.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\executivas\0043_EXECUTIVA__corrigir-credencial-gitea-e-sincronizar-espelhos-sem-reversao.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\executivas\0044_EXECUTIVA__registrar-deploy-manual-cloudflare-e-smoke-live-mais-humana.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\executivas\0045_EXECUTIVA__destravar-sql-central-e-escrita-automatizada-da-plataforma-15.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\executivas\0046_EXECUTIVA__remover-test-tmp-com-owner-autorizado-ou-excecao-acl.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\gerenciais\0054_GERENCIAL__institucionalizar-catalogo-admin-routes-como-gate-de-release.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\gerenciais\0055_GERENCIAL__governar-sync-automatico-com-precedencia-da-alteracao-valida.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\gerenciais\0056_GERENCIAL__separar-deploy-manual-e-runner-wrangler-oficial.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\gerenciais\0057_GERENCIAL__decidir-nome-canonico-platform-sem-duplicar-repositorio.md` +- `G:\_codex-git\tudo-para-ia-mais-humana\os-orientadoras\central-materialization-fallback\gerenciais\0058_GERENCIAL__fechar-decisao-docs-response-ready-ou-catalogonly-formal.md` + ## Blockers - `0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway:PermissionError: [Errno 13] Permission denied: 'G:\\_codex-git\\nucleo-gestao-operacional\\central-de-ordem-de-servico\\projects\\15_repo_tudo-para-ia-mais-humana-platform\\orders\\executivas\\0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway.md'` diff --git a/os-orientadoras/central-materialization-fallback/executivas/0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway.md b/os-orientadoras/central-materialization-fallback/executivas/0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway.md new file mode 100644 index 0000000..d52d6c2 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/executivas/0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway.md @@ -0,0 +1,80 @@ +# ORDEM DE SERVICO: 0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Validar que consulta, diagnostico, acao, auditoria e explicacao interplataforma estejam descritas e auditaveis pelo MCP. + +## Objeto da ordem de servico + +Projeto real Mais Humana, MCPs Internos, pasta central da plataforma 15 e artefatos de evidencia MCP. + +## Motivo da criacao da ordem de servico + +A fila ativa citou a homologacao das rotas administrativas, mas os arquivos de ordem nao estavam materializados. + +## Resultado esperado da execucao + +Catalogo de aceitacao MCP-only gerado, indexado e registrado com source hashes, traceId/auditId e evidencias. + +## Tipo da ordem + +`EXECUTIVA` + +## Identificacao + +- order_id: `0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway` +- tipo: `executiva` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `parcial` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `src/mais_humana/mcp_admin_route_acceptance.py` +- `src/mais_humana/generated_mcp_admin_route_acceptance.py` +- `dados/mcp-admin-route-acceptance.json` + +## Validacoes + +- python tools/generate_mcp_admin_route_acceptance.py +- python -m mais_humana.cli mcp-admin-route-acceptance +- python -m unittest tests.test_mcp_admin_route_acceptance + +## Criterio de pronto + +- rotas administrativas materializadas em catalogo Python +- artefatos JSON/CSV/Markdown gerados +- relacao MCP-only documentada na central + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/executivas/0038_EXECUTIVA__corrigir-acl-index-lock-e-commitar-artefatos-mcp.md b/os-orientadoras/central-materialization-fallback/executivas/0038_EXECUTIVA__corrigir-acl-index-lock-e-commitar-artefatos-mcp.md new file mode 100644 index 0000000..86cd49e --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/executivas/0038_EXECUTIVA__corrigir-acl-index-lock-e-commitar-artefatos-mcp.md @@ -0,0 +1,80 @@ +# ORDEM DE SERVICO: 0038_EXECUTIVA__corrigir-acl-index-lock-e-commitar-artefatos-mcp + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Permitir commit e push dos artefatos MCP sem reset, restore ou sobrescrita de alteracao valida. + +## Objeto da ordem de servico + +Projeto real Mais Humana, MCPs Internos, pasta central da plataforma 15 e artefatos de evidencia MCP. + +## Motivo da criacao da ordem de servico + +Fetch/push continuam bloqueados por Schannel e locks/ACL de Git em espelhos Windows. + +## Resultado esperado da execucao + +Credenciais e ACL corrigidas por operador autorizado; commit e push escopados executados depois de status limpo. + +## Tipo da ordem + +`EXECUTIVA` + +## Identificacao + +- order_id: `0038_EXECUTIVA__corrigir-acl-index-lock-e-commitar-artefatos-mcp` +- tipo: `executiva` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `bloqueada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `.git/index.lock` +- `.git/FETCH_HEAD` +- `dados/targeted-sync-audit.json` + +## Validacoes + +- git status --short --branch +- git fetch --all --prune +- git push origin main + +## Criterio de pronto + +- credencial Git valida +- locks removidos por owner autorizado +- push confirmado por hash remoto + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/executivas/0039_EXECUTIVA__reexecutar-wrangler-em-runner-homologado-e-registrar-deploy.md b/os-orientadoras/central-materialization-fallback/executivas/0039_EXECUTIVA__reexecutar-wrangler-em-runner-homologado-e-registrar-deploy.md new file mode 100644 index 0000000..2d3eba5 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/executivas/0039_EXECUTIVA__reexecutar-wrangler-em-runner-homologado-e-registrar-deploy.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0039_EXECUTIVA__reexecutar-wrangler-em-runner-homologado-e-registrar-deploy + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Separar deploy Cloudflare real do plugin e confirmar publicacao por evidencia operacional. + +## Objeto da ordem de servico + +Projeto real Mais Humana, MCPs Internos, pasta central da plataforma 15 e artefatos de evidencia MCP. + +## Motivo da criacao da ordem de servico + +A ordem roteadora informa que deploy esta sendo feito manualmente pelo usuario; este executor deve apenas conferir live. + +## Resultado esperado da execucao + +Runner oficial ou deploy manual registrado com deployment id, smoke live e rollback conhecido. + +## Tipo da ordem + +`EXECUTIVA` + +## Identificacao + +- order_id: `0039_EXECUTIVA__reexecutar-wrangler-em-runner-homologado-e-registrar-deploy` +- tipo: `executiva` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `parcial` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `dados/mcp-publication-gate-mais-humana.json` +- `ecossistema/MCP-PUBLICATION-GATE-MAIS-HUMANA.md` + +## Validacoes + +- validar endpoint /v1/execute +- registrar deployment observado +- nao usar plugin como diagnostico operacional + +## Criterio de pronto + +- deploy confirmado por wrangler ou evidencia manual +- smoke live ok +- rollback documentado + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/executivas/0040_EXECUTIVA__materializar-escrita-central-e-sql-semantico-sem-permissionerror.md b/os-orientadoras/central-materialization-fallback/executivas/0040_EXECUTIVA__materializar-escrita-central-e-sql-semantico-sem-permissionerror.md new file mode 100644 index 0000000..b493a82 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/executivas/0040_EXECUTIVA__materializar-escrita-central-e-sql-semantico-sem-permissionerror.md @@ -0,0 +1,81 @@ +# ORDEM DE SERVICO: 0040_EXECUTIVA__materializar-escrita-central-e-sql-semantico-sem-permissionerror + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Garantir que a central receba ordens, indices, reports e funcao semantica dos arquivos quando houver permissao. + +## Objeto da ordem de servico + +Projeto real Mais Humana, MCPs Internos, pasta central da plataforma 15 e artefatos de evidencia MCP. + +## Motivo da criacao da ordem de servico + +Ordens ativas estavam citadas nos indices, mas nao existiam como arquivos fisicos. + +## Resultado esperado da execucao + +Ordens ativas e de saida materializadas; SQLite central atualizado ou falha objetiva registrada. + +## Tipo da ordem + +`EXECUTIVA` + +## Identificacao + +- order_id: `0040_EXECUTIVA__materializar-escrita-central-e-sql-semantico-sem-permissionerror` +- tipo: `executiva` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `parcial` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `orders/executivas` +- `orders/gerenciais` +- `controle-semantico.sqlite` +- `reports/EXECUTADO__rodada-015-central-materialization-2026-05-02.md` + +## Validacoes + +- verificar existencia dos arquivos de ordem +- consultar sql-counts +- git status final + +## Criterio de pronto + +- ordens fisicas existem +- SQL semantico atualizado ou pendencia real registrada +- indices/current/status reconciliados + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/executivas/0041_EXECUTIVA__resolver-test-tmp-bloqueado-por-acl.md b/os-orientadoras/central-materialization-fallback/executivas/0041_EXECUTIVA__resolver-test-tmp-bloqueado-por-acl.md new file mode 100644 index 0000000..92ddc6b --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/executivas/0041_EXECUTIVA__resolver-test-tmp-bloqueado-por-acl.md @@ -0,0 +1,80 @@ +# ORDEM DE SERVICO: 0041_EXECUTIVA__resolver-test-tmp-bloqueado-por-acl + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Remover ou formalizar diretorios temporarios que o executor comum nao consegue apagar. + +## Objeto da ordem de servico + +Projeto real Mais Humana, MCPs Internos, pasta central da plataforma 15 e artefatos de evidencia MCP. + +## Motivo da criacao da ordem de servico + +A higiene anterior reduziu .test-tmp, mas dois diretorios continuaram retidos por WinError 5. + +## Resultado esperado da execucao + +Artefato temporario removido por owner autorizado ou registrado como bloqueio ACL externo com evidencia. + +## Tipo da ordem + +`EXECUTIVA` + +## Identificacao + +- order_id: `0041_EXECUTIVA__resolver-test-tmp-bloqueado-por-acl` +- tipo: `executiva` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `parcial` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `.test-tmp` +- `dados/workspace-hygiene-report.json` +- `ecossistema/WORKSPACE-HYGIENE-REPORT.md` + +## Validacoes + +- python -m mais_humana.cli workspace-hygiene --apply +- verificar ausencia de node_modules +- git status + +## Criterio de pronto + +- node_modules ausente +- .test-tmp ausente ou blocker ACL explicito +- relatorio de higiene atualizado + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/executivas/0042_EXECUTIVA__publicar-catalogo-aceitacao-admin-routes-no-mcps-gateway.md b/os-orientadoras/central-materialization-fallback/executivas/0042_EXECUTIVA__publicar-catalogo-aceitacao-admin-routes-no-mcps-gateway.md new file mode 100644 index 0000000..9c9ea08 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/executivas/0042_EXECUTIVA__publicar-catalogo-aceitacao-admin-routes-no-mcps-gateway.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0042_EXECUTIVA__publicar-catalogo-aceitacao-admin-routes-no-mcps-gateway + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Expor o catalogo gerado de rotas administrativas como capacidade descoberta pelo MCPs Internos. + +## Objeto da ordem de servico + +Projeto real Mais Humana, MCPs Internos, pasta central da plataforma 15 e artefatos de evidencia MCP. + +## Motivo da criacao da ordem de servico + +A homologacao local existe; a publicacao live depende de alteracao/deploy no MCPs Gateway. + +## Resultado esperado da execucao + +Gateway retorna o resumo de aceitacao das rotas via /v1/execute com evidenceId e hashes. + +## Tipo da ordem + +`EXECUTIVA` + +## Identificacao + +- order_id: `0042_EXECUTIVA__publicar-catalogo-aceitacao-admin-routes-no-mcps-gateway` +- tipo: `executiva` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `planejada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `tudo-para-ia-mcps-internos-plataform/deploy/mcps-gateway` +- `dados/mcp-admin-route-acceptance-compacto.json` + +## Validacoes + +- testar /v1/execute +- confirmar ok=true +- validar sem segredo bruto + +## Criterio de pronto + +- tool live responde +- MCP descobre catalogo +- evidencia registrada + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/executivas/0043_EXECUTIVA__corrigir-credencial-gitea-e-sincronizar-espelhos-sem-reversao.md b/os-orientadoras/central-materialization-fallback/executivas/0043_EXECUTIVA__corrigir-credencial-gitea-e-sincronizar-espelhos-sem-reversao.md new file mode 100644 index 0000000..8039314 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/executivas/0043_EXECUTIVA__corrigir-credencial-gitea-e-sincronizar-espelhos-sem-reversao.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0043_EXECUTIVA__corrigir-credencial-gitea-e-sincronizar-espelhos-sem-reversao + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Desbloquear fetch/push e comparar hashes dos espelhos com politica anti-reversao. + +## Objeto da ordem de servico + +Projeto real Mais Humana, MCPs Internos, pasta central da plataforma 15 e artefatos de evidencia MCP. + +## Motivo da criacao da ordem de servico + +Schannel/credencial e FETCH_HEAD bloqueiam sincronizacao segura. + +## Resultado esperado da execucao + +Repositorios principais sincronizados ou excecoes por divergencia preservadas com prova. + +## Tipo da ordem + +`EXECUTIVA` + +## Identificacao + +- order_id: `0043_EXECUTIVA__corrigir-credencial-gitea-e-sincronizar-espelhos-sem-reversao` +- tipo: `executiva` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `planejada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `dados/repository-mesh-inventory.json` +- `dados/targeted-sync-audit.json` + +## Validacoes + +- git fetch --all --prune +- git status --short --branch +- git ls-remote + +## Criterio de pronto + +- credencial funcional +- hashes comparados +- nenhum reset destrutivo + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/executivas/0044_EXECUTIVA__registrar-deploy-manual-cloudflare-e-smoke-live-mais-humana.md b/os-orientadoras/central-materialization-fallback/executivas/0044_EXECUTIVA__registrar-deploy-manual-cloudflare-e-smoke-live-mais-humana.md new file mode 100644 index 0000000..2b93c9f --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/executivas/0044_EXECUTIVA__registrar-deploy-manual-cloudflare-e-smoke-live-mais-humana.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0044_EXECUTIVA__registrar-deploy-manual-cloudflare-e-smoke-live-mais-humana + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Conciliar a orientacao de deploy manual do usuario com evidencia live repetivel. + +## Objeto da ordem de servico + +Projeto real Mais Humana, MCPs Internos, pasta central da plataforma 15 e artefatos de evidencia MCP. + +## Motivo da criacao da ordem de servico + +O executor nao deve usar plugin como caminho operacional e o roteador informa deploy manual. + +## Resultado esperado da execucao + +Deployment manual registrado por hash/versao e smoke /v1/execute atualizado. + +## Tipo da ordem + +`EXECUTIVA` + +## Identificacao + +- order_id: `0044_EXECUTIVA__registrar-deploy-manual-cloudflare-e-smoke-live-mais-humana` +- tipo: `executiva` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `planejada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `dados/mcp-publication-gate-mais-humana.json` +- `dados/mcp-execute-probe-mais-humana.json` + +## Validacoes + +- executar smoke HTTP +- redigir bearer +- registrar deployment observado + +## Criterio de pronto + +- liveReady true +- deployment id registrado +- sem segredo bruto + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/executivas/0045_EXECUTIVA__destravar-sql-central-e-escrita-automatizada-da-plataforma-15.md b/os-orientadoras/central-materialization-fallback/executivas/0045_EXECUTIVA__destravar-sql-central-e-escrita-automatizada-da-plataforma-15.md new file mode 100644 index 0000000..a6b5d00 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/executivas/0045_EXECUTIVA__destravar-sql-central-e-escrita-automatizada-da-plataforma-15.md @@ -0,0 +1,81 @@ +# ORDEM DE SERVICO: 0045_EXECUTIVA__destravar-sql-central-e-escrita-automatizada-da-plataforma-15 + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Garantir que scripts da Mais Humana consigam atualizar o dossie central sem fallback manual. + +## Objeto da ordem de servico + +Projeto real Mais Humana, MCPs Internos, pasta central da plataforma 15 e artefatos de evidencia MCP. + +## Motivo da criacao da ordem de servico + +A central historicamente falha com PermissionError ou OperationalError em SQLite. + +## Resultado esperado da execucao + +Escrita central e controle-semantico.sqlite atualizados pelo runtime sem erro. + +## Tipo da ordem + +`EXECUTIVA` + +## Identificacao + +- order_id: `0045_EXECUTIVA__destravar-sql-central-e-escrita-automatizada-da-plataforma-15` +- tipo: `executiva` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `planejada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `controle-semantico.sqlite` +- `reports` +- `indexes` +- `current` +- `status` + +## Validacoes + +- python -m mais_humana.cli central-materialization +- python -m mais_humana.cli sql-counts + +## Criterio de pronto + +- SQL central abre para escrita +- arquivos centrais gravados +- status final limpo + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/executivas/0046_EXECUTIVA__remover-test-tmp-com-owner-autorizado-ou-excecao-acl.md b/os-orientadoras/central-materialization-fallback/executivas/0046_EXECUTIVA__remover-test-tmp-com-owner-autorizado-ou-excecao-acl.md new file mode 100644 index 0000000..a2a77a8 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/executivas/0046_EXECUTIVA__remover-test-tmp-com-owner-autorizado-ou-excecao-acl.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0046_EXECUTIVA__remover-test-tmp-com-owner-autorizado-ou-excecao-acl + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Fechar a higiene operacional que depende de permissao acima da sandbox. + +## Objeto da ordem de servico + +Projeto real Mais Humana, MCPs Internos, pasta central da plataforma 15 e artefatos de evidencia MCP. + +## Motivo da criacao da ordem de servico + +Dois diretorios vazios de .test-tmp continuam inacessiveis por WinError 5. + +## Resultado esperado da execucao + +.test-tmp removido pelo owner do filesystem ou excecao ACL documentada como pendencia externa. + +## Tipo da ordem + +`EXECUTIVA` + +## Identificacao + +- order_id: `0046_EXECUTIVA__remover-test-tmp-com-owner-autorizado-ou-excecao-acl` +- tipo: `executiva` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `planejada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `.test-tmp` +- `dados/workspace-hygiene-report.json` + +## Validacoes + +- python -m mais_humana.cli workspace-hygiene --apply +- verificar path +- registrar WinError 5 se persistir + +## Criterio de pronto + +- sem node_modules +- .test-tmp ausente ou excecao formal +- report atualizado + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/gerenciais/0049_GERENCIAL__homologar-mcp-only-administration-routes-como-politica-de-ecossistema.md b/os-orientadoras/central-materialization-fallback/gerenciais/0049_GERENCIAL__homologar-mcp-only-administration-routes-como-politica-de-ecossistema.md new file mode 100644 index 0000000..2073082 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/gerenciais/0049_GERENCIAL__homologar-mcp-only-administration-routes-como-politica-de-ecossistema.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0049_GERENCIAL__homologar-mcp-only-administration-routes-como-politica-de-ecossistema + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Transformar a regra MCP-only em politica de governanca para todas as plataformas. + +## Objeto da ordem de servico + +Dossie gerencial da plataforma 15, politicas MCP-only, sincronizacao, nome canonico, Docs e runner operacional. + +## Motivo da criacao da ordem de servico + +O roteador determinou que toda comunicacao e administracao interplataforma passe pelos MCPs Internos. + +## Resultado esperado da execucao + +Politica MCP-only formalizada com rastreabilidade, gates e criterios de excecao. + +## Tipo da ordem + +`GERENCIAL` + +## Identificacao + +- order_id: `0049_GERENCIAL__homologar-mcp-only-administration-routes-como-politica-de-ecossistema` +- tipo: `gerencial` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `parcial` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `ecossistema/MCP-ADMIN-ROUTE-ACCEPTANCE.md` +- `indexes/orders-index.md` + +## Validacoes + +- avaliar contratos MCP-only +- confirmar traceId/auditId +- registrar excecoes + +## Criterio de pronto + +- politica formal registrada +- rotas e operacoes mapeadas +- bloqueios externos separados + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/gerenciais/0050_GERENCIAL__decidir-politica-de-sync-automatico-e-credencial-gitea.md b/os-orientadoras/central-materialization-fallback/gerenciais/0050_GERENCIAL__decidir-politica-de-sync-automatico-e-credencial-gitea.md new file mode 100644 index 0000000..9d799d0 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/gerenciais/0050_GERENCIAL__decidir-politica-de-sync-automatico-e-credencial-gitea.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0050_GERENCIAL__decidir-politica-de-sync-automatico-e-credencial-gitea + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Definir quem corrige credenciais/ACL e como a sincronizacao automatica preserva alteracao valida mais recente. + +## Objeto da ordem de servico + +Dossie gerencial da plataforma 15, politicas MCP-only, sincronizacao, nome canonico, Docs e runner operacional. + +## Motivo da criacao da ordem de servico + +A sincronizacao permanente falhou por SEC_E_NO_CREDENTIALS e Permission denied em FETCH_HEAD. + +## Resultado esperado da execucao + +Decisao institucional sobre credencial, servico automatico, bloqueio destrutivo e evidencias de sync. + +## Tipo da ordem + +`GERENCIAL` + +## Identificacao + +- order_id: `0050_GERENCIAL__decidir-politica-de-sync-automatico-e-credencial-gitea` +- tipo: `gerencial` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `bloqueada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `dados/repository-mesh-readiness.json` +- `dados/targeted-sync-audit.json` + +## Validacoes + +- comparar hashes +- registrar ahead/behind +- bloquear reset/rebase automatico + +## Criterio de pronto + +- credencial operacional definida +- politica anti-reversao aprovada +- logs de sync verificaveis + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/gerenciais/0051_GERENCIAL__aprovar-runner-oficial-wrangler-sem-spawn-eperm.md b/os-orientadoras/central-materialization-fallback/gerenciais/0051_GERENCIAL__aprovar-runner-oficial-wrangler-sem-spawn-eperm.md new file mode 100644 index 0000000..e438c31 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/gerenciais/0051_GERENCIAL__aprovar-runner-oficial-wrangler-sem-spawn-eperm.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0051_GERENCIAL__aprovar-runner-oficial-wrangler-sem-spawn-eperm + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Separar runner de deploy homologado da sandbox de edicao local. + +## Objeto da ordem de servico + +Dossie gerencial da plataforma 15, politicas MCP-only, sincronizacao, nome canonico, Docs e runner operacional. + +## Motivo da criacao da ordem de servico + +O runner local historicamente bloqueia node/esbuild/workerd com spawn EPERM. + +## Resultado esperado da execucao + +Runner oficial aprovado com responsabilidade, credencial, dry-run e registro de deploy. + +## Tipo da ordem + +`GERENCIAL` + +## Identificacao + +- order_id: `0051_GERENCIAL__aprovar-runner-oficial-wrangler-sem-spawn-eperm` +- tipo: `gerencial` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `bloqueada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `dados/mcp-publication-gate-mais-humana.json` +- `ecossistema/MCP-PUBLICATION-GATE-MAIS-HUMANA.md` + +## Validacoes + +- wrangler whoami +- wrangler deploy --dry-run +- wrangler deployments list + +## Criterio de pronto + +- runner homologado +- deploy dry-run ok +- evidencia de versionamento Cloudflare + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/gerenciais/0052_GERENCIAL__formalizar-nome-canonico-mais-humana-platform-e-aliases.md b/os-orientadoras/central-materialization-fallback/gerenciais/0052_GERENCIAL__formalizar-nome-canonico-mais-humana-platform-e-aliases.md new file mode 100644 index 0000000..7e66db8 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/gerenciais/0052_GERENCIAL__formalizar-nome-canonico-mais-humana-platform-e-aliases.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0052_GERENCIAL__formalizar-nome-canonico-mais-humana-platform-e-aliases + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Registrar a relacao entre canonico -platform, repo local sem sufixo e alias historico -plataform. + +## Objeto da ordem de servico + +Dossie gerencial da plataforma 15, politicas MCP-only, sincronizacao, nome canonico, Docs e runner operacional. + +## Motivo da criacao da ordem de servico + +A decisao institucional registrada no roteador aprovou tudo-para-ia-mais-humana-platform como nome canonico. + +## Resultado esperado da execucao + +Nome canonico aprovado, aliases preservados e migracao futura limitada a janela coordenada sem duplicar repositorio. + +## Tipo da ordem + +`GERENCIAL` + +## Identificacao + +- order_id: `0052_GERENCIAL__formalizar-nome-canonico-mais-humana-platform-e-aliases` +- tipo: `gerencial` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `concluida` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `README.md` +- `dados/mcp-publication-gate-mais-humana.json` + +## Validacoes + +- verificar remote +- verificar ownerPlatformId +- verificar referencias centrais + +## Criterio de pronto + +- decisao institucional registrada +- aliases preservados +- sem repositorio duplicado + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/gerenciais/0053_GERENCIAL__pactuar-docs-catalogonly-ou-response-ready-como-excecao-global.md b/os-orientadoras/central-materialization-fallback/gerenciais/0053_GERENCIAL__pactuar-docs-catalogonly-ou-response-ready-como-excecao-global.md new file mode 100644 index 0000000..e2ffece --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/gerenciais/0053_GERENCIAL__pactuar-docs-catalogonly-ou-response-ready-como-excecao-global.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0053_GERENCIAL__pactuar-docs-catalogonly-ou-response-ready-como-excecao-global + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Resolver o blocker gerencial recorrente de Docs catalogOnly. + +## Objeto da ordem de servico + +Dossie gerencial da plataforma 15, politicas MCP-only, sincronizacao, nome canonico, Docs e runner operacional. + +## Motivo da criacao da ordem de servico + +O plano gerencial identifica Docs catalogOnly como impedimento global ou excecao que precisa ser formalizada. + +## Resultado esperado da execucao + +Docs promovido a responseReady minimo ou excecao catalogOnly deliberada registrada no comparador MCP. + +## Tipo da ordem + +`GERENCIAL` + +## Identificacao + +- order_id: `0053_GERENCIAL__pactuar-docs-catalogonly-ou-response-ready-como-excecao-global` +- tipo: `gerencial` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `bloqueada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `PLANO-GERENCIAL-DO-ECOSSISTEMA.md` +- `dados/mcp-contratos-humanos.json` + +## Validacoes + +- validar estado Docs +- registrar excecao ou responseReady +- atualizar comparador MCP + +## Criterio de pronto + +- decisao Docs aprovada +- blocker global eliminado ou formalizado +- ordem tecnica vinculada + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/gerenciais/0054_GERENCIAL__institucionalizar-catalogo-admin-routes-como-gate-de-release.md b/os-orientadoras/central-materialization-fallback/gerenciais/0054_GERENCIAL__institucionalizar-catalogo-admin-routes-como-gate-de-release.md new file mode 100644 index 0000000..3d08b8c --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/gerenciais/0054_GERENCIAL__institucionalizar-catalogo-admin-routes-como-gate-de-release.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0054_GERENCIAL__institucionalizar-catalogo-admin-routes-como-gate-de-release + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Fazer do catalogo de rotas administrativas um requisito para release interplataforma. + +## Objeto da ordem de servico + +Dossie gerencial da plataforma 15, politicas MCP-only, sincronizacao, nome canonico, Docs e runner operacional. + +## Motivo da criacao da ordem de servico + +A regra MCP-only precisa sair do dossie da Mais Humana e virar gate de ecossistema. + +## Resultado esperado da execucao + +Gate aprovado com owner, evidencia, criterios de excecao e rollback. + +## Tipo da ordem + +`GERENCIAL` + +## Identificacao + +- order_id: `0054_GERENCIAL__institucionalizar-catalogo-admin-routes-como-gate-de-release` +- tipo: `gerencial` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `planejada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `ecossistema/MCP-ADMIN-ROUTE-ACCEPTANCE.md` +- `PLANO-GERENCIAL-DO-ECOSSISTEMA.md` + +## Validacoes + +- avaliar cobertura por plataforma +- aprovar regra MCP-only +- registrar excecoes + +## Criterio de pronto + +- gate formal aprovado +- bloqueios externos separados +- ordens por plataforma vinculadas + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/gerenciais/0055_GERENCIAL__governar-sync-automatico-com-precedencia-da-alteracao-valida.md b/os-orientadoras/central-materialization-fallback/gerenciais/0055_GERENCIAL__governar-sync-automatico-com-precedencia-da-alteracao-valida.md new file mode 100644 index 0000000..966a770 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/gerenciais/0055_GERENCIAL__governar-sync-automatico-com-precedencia-da-alteracao-valida.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0055_GERENCIAL__governar-sync-automatico-com-precedencia-da-alteracao-valida + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Aprovar regra operacional anti-reversao para todos os espelhos. + +## Objeto da ordem de servico + +Dossie gerencial da plataforma 15, politicas MCP-only, sincronizacao, nome canonico, Docs e runner operacional. + +## Motivo da criacao da ordem de servico + +A ordem permanente exige preservar a alteracao valida mais recente em toda a malha. + +## Resultado esperado da execucao + +Politica de sync documentada com bloqueio destrutivo, evidencias e responsabilidades. + +## Tipo da ordem + +`GERENCIAL` + +## Identificacao + +- order_id: `0055_GERENCIAL__governar-sync-automatico-com-precedencia-da-alteracao-valida` +- tipo: `gerencial` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `planejada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `dados/repository-mesh-reconciliation.json` +- `dados/repository-mesh-schedulers.json` + +## Validacoes + +- testar scheduler +- comparar hashes +- registrar conflito de precedencia + +## Criterio de pronto + +- politica aprovada +- logs auditaveis +- bloqueio de reset automatico + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/gerenciais/0056_GERENCIAL__separar-deploy-manual-e-runner-wrangler-oficial.md b/os-orientadoras/central-materialization-fallback/gerenciais/0056_GERENCIAL__separar-deploy-manual-e-runner-wrangler-oficial.md new file mode 100644 index 0000000..8ff4dd1 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/gerenciais/0056_GERENCIAL__separar-deploy-manual-e-runner-wrangler-oficial.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0056_GERENCIAL__separar-deploy-manual-e-runner-wrangler-oficial + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Definir quando deploy manual e aceitavel e quando runner oficial e obrigatorio. + +## Objeto da ordem de servico + +Dossie gerencial da plataforma 15, politicas MCP-only, sincronizacao, nome canonico, Docs e runner operacional. + +## Motivo da criacao da ordem de servico + +A rodada atual recebeu orientacao de deploy manual pelo usuario e historico de spawn EPERM. + +## Resultado esperado da execucao + +Politica clara para deploy, dry-run, smoke, rollback e evidencia operacional Cloudflare. + +## Tipo da ordem + +`GERENCIAL` + +## Identificacao + +- order_id: `0056_GERENCIAL__separar-deploy-manual-e-runner-wrangler-oficial` +- tipo: `gerencial` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `planejada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `dados/mcp-publication-gate-mais-humana.json` +- `ecossistema/MCP-PUBLICATION-GATE-MAIS-HUMANA.md` + +## Validacoes + +- validar smoke live +- registrar deployment +- definir owner do runner + +## Criterio de pronto + +- politica aprovada +- runner ou deploy manual distinguido +- sem uso operacional do plugin + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/gerenciais/0057_GERENCIAL__decidir-nome-canonico-platform-sem-duplicar-repositorio.md b/os-orientadoras/central-materialization-fallback/gerenciais/0057_GERENCIAL__decidir-nome-canonico-platform-sem-duplicar-repositorio.md new file mode 100644 index 0000000..3972401 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/gerenciais/0057_GERENCIAL__decidir-nome-canonico-platform-sem-duplicar-repositorio.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0057_GERENCIAL__decidir-nome-canonico-platform-sem-duplicar-repositorio + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Resolver a divergencia entre nome institucional desejado e repo materializado. + +## Objeto da ordem de servico + +Dossie gerencial da plataforma 15, politicas MCP-only, sincronizacao, nome canonico, Docs e runner operacional. + +## Motivo da criacao da ordem de servico + +O roteador manda institucionalizar o novo nome, mas o repo real/remoto ainda e sem sufixo. + +## Resultado esperado da execucao + +Decisao com matriz de impacto, aliases, migracao e rollback de Git/MCP/Docs/UI. + +## Tipo da ordem + +`GERENCIAL` + +## Identificacao + +- order_id: `0057_GERENCIAL__decidir-nome-canonico-platform-sem-duplicar-repositorio` +- tipo: `gerencial` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `planejada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `README.md` +- `dados/mcp-publication-gate-mais-humana.json` + +## Validacoes + +- inventariar referencias +- aprovar alias +- planejar janela de sync + +## Criterio de pronto + +- nome canonico decidido +- alias registrado +- sem repo duplicado + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/os-orientadoras/central-materialization-fallback/gerenciais/0058_GERENCIAL__fechar-decisao-docs-response-ready-ou-catalogonly-formal.md b/os-orientadoras/central-materialization-fallback/gerenciais/0058_GERENCIAL__fechar-decisao-docs-response-ready-ou-catalogonly-formal.md new file mode 100644 index 0000000..2edda73 --- /dev/null +++ b/os-orientadoras/central-materialization-fallback/gerenciais/0058_GERENCIAL__fechar-decisao-docs-response-ready-ou-catalogonly-formal.md @@ -0,0 +1,79 @@ +# ORDEM DE SERVICO: 0058_GERENCIAL__fechar-decisao-docs-response-ready-ou-catalogonly-formal + +Template oficial: + +`G:/_codex-git/nucleo-gestao-operacional/templates/ordem-de-servico.md` + +## Finalidade da ordem de servico + +Eliminar o blocker Docs da maturidade global por decisao ou implementacao. + +## Objeto da ordem de servico + +Dossie gerencial da plataforma 15, politicas MCP-only, sincronizacao, nome canonico, Docs e runner operacional. + +## Motivo da criacao da ordem de servico + +Docs aparece repetidamente como catalogOnly pendente no plano gerencial. + +## Resultado esperado da execucao + +Docs com leitura canonica responseReady minima ou excecao formal que nao derruba readiness global. + +## Tipo da ordem + +`GERENCIAL` + +## Identificacao + +- order_id: `0058_GERENCIAL__fechar-decisao-docs-response-ready-ou-catalogonly-formal` +- tipo: `gerencial` +- project_id: `tudo-para-ia-mais-humana-platform` +- repo_name: `tudo-para-ia-mais-humana` +- status: `planejada` +- prioridade: `alta` + +## Caminhos + +Pasta da plataforma: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform` + +Projeto real: + +`G:/_codex-git/tudo-para-ia-mais-humana` + +SQLite semantico: + +`G:\_codex-git\nucleo-gestao-operacional\central-de-ordem-de-servico\projects\15_repo_tudo-para-ia-mais-humana-platform/controle-semantico.sqlite` + +## Arquivos e areas afetadas + +- `PLANO-GERENCIAL-DO-ECOSSISTEMA.md` +- `dados/mcp-contratos-humanos.json` + +## Validacoes + +- validar comparador MCP +- registrar decisao +- gerar OS tecnica se necessario + +## Criterio de pronto + +- blocker removido ou formalizado +- owner Docs definido +- proxima execucao clara + +## Fechamento obrigatorio + +- registrar EXECUTADO; +- registrar PENDENCIAS reais; +- atualizar SQL semantico; +- registrar funcao dos arquivos criados ou alterados; +- fazer commit e push quando aplicavel; +- informar hashes finais. + +## Espelho operacional de contingencia + +Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada. +O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada. diff --git a/src/mais_humana/central_materialization.py b/src/mais_humana/central_materialization.py index a869411..fa22e8c 100644 --- a/src/mais_humana/central_materialization.py +++ b/src/mais_humana/central_materialization.py @@ -136,6 +136,8 @@ class CentralMaterializationReport: summary: tuple[str, ...] blockers: tuple[str, ...] generated_files: tuple[str, ...] = () + fallback_order_files: tuple[str, ...] = () + local_semantic_write: SemanticWriteResult | None = None @property def status(self) -> MaterializationStatus: @@ -485,6 +487,10 @@ def _target_path(central_platform_folder: Path, spec: MaterializedOrderSpec) -> return central_platform_folder / "orders" / spec.subfolder / spec.filename +def _fallback_order_path(project_root: Path, spec: MaterializedOrderSpec) -> Path: + return project_root / "os-orientadoras" / "central-materialization-fallback" / spec.subfolder / spec.filename + + def _write_order(central_platform_folder: Path, spec: MaterializedOrderSpec, *, overwrite: bool = False) -> MaterializedOrderAction: path = _target_path(central_platform_folder, spec) if path.exists() and not overwrite: @@ -509,6 +515,51 @@ def _write_order(central_platform_folder: Path, spec: MaterializedOrderSpec, *, ) +def _write_fallback_order( + project_root: Path, + central_platform_folder: Path, + spec: MaterializedOrderSpec, + *, + overwrite: bool = True, +) -> MaterializedOrderAction: + path = _fallback_order_path(project_root, spec) + if path.exists() and not overwrite: + return MaterializedOrderAction(spec.order_id, spec.role, str(path), MaterializationStatus.EXISTS) + try: + path.parent.mkdir(parents=True, exist_ok=True) + before = path.exists() + content = order_markdown(spec.to_order(), str(central_platform_folder), REAL_REPO) + content = ( + content.rstrip() + + "\n\n## Espelho operacional de contingencia\n\n" + + "Esta copia foi gravada no projeto real porque a pasta central ou o SQLite central estavam bloqueados para escrita nesta rodada.\n" + + "O caminho oficial da ordem continua sendo a central da plataforma 15; este arquivo preserva execucao, rastreabilidade e retomada.\n" + ) + path.write_text(content, encoding="utf-8") + return MaterializedOrderAction( + spec.order_id, + spec.role, + str(path), + MaterializationStatus.UPDATED if before else MaterializationStatus.CREATED, + ) + except OSError as exc: + return MaterializedOrderAction( + spec.order_id, + spec.role, + str(path), + MaterializationStatus.FAILED, + f"{type(exc).__name__}: {exc}", + ) + + +def _write_fallback_orders( + project_root: Path, + central_platform_folder: Path, + specs: Sequence[MaterializedOrderSpec], +) -> tuple[MaterializedOrderAction, ...]: + return tuple(_write_fallback_order(project_root, central_platform_folder, spec) for spec in specs) + + def _report_markdown(report: CentralMaterializationReport) -> str: lines = [ "# EXECUTADO - Central Materialization", @@ -543,6 +594,19 @@ def _report_markdown(report: CentralMaterializationReport) -> str: lines.append(f"- orders_count: `{report.semantic_write.orders_count}`") if report.semantic_write.error: lines.append(f"- error: `{report.semantic_write.error}`") + if report.local_semantic_write: + lines.extend(["", "## SQLite Semantico Local", ""]) + lines.append(f"- attempted: `{report.local_semantic_write.attempted}`") + lines.append(f"- ok: `{report.local_semantic_write.ok}`") + lines.append(f"- sqlite_path: `{report.local_semantic_write.sqlite_path}`") + lines.append(f"- files_count: `{report.local_semantic_write.files_count}`") + lines.append(f"- orders_count: `{report.local_semantic_write.orders_count}`") + if report.local_semantic_write.error: + lines.append(f"- error: `{report.local_semantic_write.error}`") + if report.fallback_order_files: + lines.extend(["", "## Ordens Espelhadas no Projeto Real", ""]) + for path in report.fallback_order_files: + lines.append(f"- `{path}`") lines.extend(["", "## Blockers", ""]) if report.blockers: lines.extend(f"- `{item}`" for item in report.blockers) @@ -589,6 +653,8 @@ def _audit_markdown(report: CentralMaterializationReport) -> str: f"- Ordens ja existentes: `{existing}`.", f"- Falhas de escrita: `{failed}`.", f"- SQLite central atualizado: `{report.semantic_write.ok}`.", + f"- Ordens espelhadas no projeto real: `{len(report.fallback_order_files)}`.", + f"- SQLite semantico local atualizado: `{bool(report.local_semantic_write and report.local_semantic_write.ok)}`.", "", "## Parcial ou bloqueado", "", @@ -603,6 +669,7 @@ def _audit_markdown(report: CentralMaterializationReport) -> str: "## Leitura gerencial", "", "- A pasta central agora possui arquivos fisicos para as ordens citadas pela fila.", + "- Quando a central bloqueia escrita, o projeto real preserva espelhos operacionais das ordens e SQL semantico local.", "- As proximas ordens de saida se limitam a publicacao live, credenciais, runner, ACL, nome canonico e Docs.", ] ) @@ -652,6 +719,8 @@ def _state_markdown(report: CentralMaterializationReport) -> str: f"- active_input_orders: `{len(report.active_input_orders)}`", f"- next_output_orders: `{len(report.next_output_orders)}`", f"- semantic_sql_ok: `{report.semantic_write.ok}`", + f"- local_semantic_sql_ok: `{bool(report.local_semantic_write and report.local_semantic_write.ok)}`", + f"- fallback_order_files: `{len(report.fallback_order_files)}`", f"- project_root: `{report.project_root}`", f"- central_platform_folder: `{report.central_platform_folder}`", "", @@ -727,6 +796,19 @@ def _generated_records(report: CentralMaterializationReport, central_platform_fo relation_to_order=action.order_id, ) ) + for path in report.fallback_order_files: + order_id = Path(path).stem + records.append( + GeneratedFile( + path=path, + description="Espelho operacional de ordem de servico gravado no projeto real por bloqueio de escrita central.", + function="fallback service order file", + file_type="markdown", + changed_by="mais_humana.central_materialization", + change_summary=f"Preservada copia de contingencia da ordem {order_id}.", + relation_to_order=order_id, + ) + ) return tuple(records) @@ -800,6 +882,14 @@ def run_central_materialization( records = _generated_records(report, central_platform_folder) semantic = _write_semantic(central_platform_folder / "controle-semantico.sqlite", records, specs) blockers = merge_unique((*blockers, *(("semantic_sql:" + semantic.error,) if semantic.error else ()))) + fallback_actions: tuple[MaterializedOrderAction, ...] = () + fallback_files: tuple[str, ...] = () + local_semantic: SemanticWriteResult | None = None + if any(action.status == MaterializationStatus.FAILED for action in actions) or not semantic.ok: + fallback_actions = _write_fallback_orders(project_root, central_platform_folder, specs) + fallback_files = tuple(action.path for action in fallback_actions if action.status != MaterializationStatus.FAILED) + fallback_errors = tuple(f"{action.order_id}:{action.error}" for action in fallback_actions if action.status == MaterializationStatus.FAILED) + blockers = merge_unique((*blockers, *(f"fallback_order:{item}" for item in fallback_errors))) report = CentralMaterializationReport( report_id=report.report_id, generated_at=report.generated_at, @@ -812,7 +902,28 @@ def run_central_materialization( semantic_write=semantic, summary=report.summary, blockers=blockers, + fallback_order_files=fallback_files, ) + if fallback_files: + local_records = _generated_records(report, central_platform_folder) + local_semantic = _write_semantic(project_root / "controle-semantico.sqlite", local_records, specs) + if local_semantic.error: + blockers = merge_unique((*blockers, "local_semantic_sql:" + local_semantic.error)) + report = CentralMaterializationReport( + report_id=report.report_id, + generated_at=report.generated_at, + project_id=report.project_id, + central_platform_folder=report.central_platform_folder, + project_root=report.project_root, + active_input_orders=report.active_input_orders, + next_output_orders=report.next_output_orders, + actions=report.actions, + semantic_write=report.semantic_write, + summary=report.summary, + blockers=blockers, + fallback_order_files=report.fallback_order_files, + local_semantic_write=local_semantic, + ) artifact_targets = ( (central_platform_folder / "reports" / "EXECUTADO__rodada-015-central-materialization-2026-05-02.md", _report_markdown(report)), (central_platform_folder / "reports" / "PENDENCIAS-CODEX__rodada-015-central-materialization-2026-05-02.md", _pending_markdown(report)), @@ -856,7 +967,9 @@ def run_central_materialization( semantic_write=report.semantic_write, summary=report.summary, blockers=blockers, - generated_files=tuple(generated_files), + generated_files=tuple((*generated_files, *report.fallback_order_files)), + fallback_order_files=report.fallback_order_files, + local_semantic_write=report.local_semantic_write, ) for path, _content in fallback_targets: if path.exists(): diff --git a/tests/test_central_materialization.py b/tests/test_central_materialization.py index c55e2b5..4788650 100644 --- a/tests/test_central_materialization.py +++ b/tests/test_central_materialization.py @@ -54,6 +54,31 @@ class CentralMaterializationTests(unittest.TestCase): self.assertEqual(len(payload["active_input_orders"]), 10) self.assertEqual(len(payload["next_output_orders"]), 10) + def test_run_materialization_preserves_project_fallback_when_central_is_blocked(self) -> None: + root = make_tmp() + project = root / "project" + central = root / "central-blocked" + central.write_text("not a directory", encoding="utf-8") + + report = run_central_materialization(project_root=project, central_platform_folder=central) + + self.assertEqual(report.status, MaterializationStatus.FAILED) + self.assertGreaterEqual(len(report.fallback_order_files), 20) + self.assertIsNotNone(report.local_semantic_write) + self.assertTrue(report.local_semantic_write and report.local_semantic_write.ok) + fallback_order = ( + project + / "os-orientadoras" + / "central-materialization-fallback" + / "executivas" + / "0037_EXECUTIVA__homologar-rotas-administrativas-mcp-no-gateway.md" + ) + self.assertTrue(fallback_order.exists()) + self.assertIn("Espelho operacional de contingencia", fallback_order.read_text(encoding="utf-8")) + counts = table_counts(project / "controle-semantico.sqlite") + self.assertGreaterEqual(counts.get("service_orders", 0), 20) + self.assertGreaterEqual(counts.get("files", 0), 20) + if __name__ == "__main__": unittest.main()