diff --git a/DOCUMENTACAO/INDICE b/DOCUMENTACAO/INDICE index 32ce815..5a5c06f 100644 --- a/DOCUMENTACAO/INDICE +++ b/DOCUMENTACAO/INDICE @@ -39,18 +39,22 @@ Especificação dinâmica servida pelo backend para consumo por agentes e LLMs. ## 6. Memória das Ações da IA e Identidade (`/memorias-ia/`) Identidade canônica do projeto pai e registros de sessões, otimizações e decisões da IA. - **Identidade do Módulo:** `/memorias-ia/modulo.yml` (mandatório com `modulo-id`, `modulo-caminho`, `modulo-descricao`, `modulo-tipo`) +- **Índice Central de Ações:** `/memorias-ia/historico-acoes.md` (tabela: `Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte`) +- **Arquivos Individuais de Sessão:** `/memorias-ia/sessao-AAAA-MM-DD-slug.md` - **Regra:** `rules/identidade-modulo.md` - **Diretório:** `/memorias-ia/` (na raiz do projeto pai) -- **Workflow:** `global/workflows/aprimora-ia.md` +- **Workflows e Skills:** `global/workflows/doc.md`, `global/workflows/documentacao.md`, `global/workflows/aprimora-ia.md` --- ## Templates Padronizados (`DOCUMENTACAO/templates/`) -- **Identidade do Módulo (Pilar 6):** [`DOCUMENTACAO/templates/modulo.yml.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/modulo.yml.template) -- **Domínio do Módulo (Pilares 3 e 4):** [`DOCUMENTACAO/templates/modulo-dominio.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/modulo-dominio.md.template) -- **Regras de Negócio (Pilar 4):** [`DOCUMENTACAO/templates/regra-negocio.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/regra-negocio.md.template) -- **Decisões Arquiteturais - ADRs (Pilar 4):** [`DOCUMENTACAO/templates/adr.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/adr.md.template) -- **Ajuda na Tela / UI (Pilar 2):** [`DOCUMENTACAO/templates/ajuda-tela.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/ajuda-tela.md.template) -- **Contratos de API (Pilar 5):** [`DOCUMENTACAO/templates/contrato-api.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/contrato-api.md.template) -- **Fluxos de Usuário (Pilar 3):** [`DOCUMENTACAO/templates/fluxo-usuario.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/fluxo-usuario.md.template) +- **Identidade do Módulo (Pilar 6):** [`DOCUMENTACAO/templates/modulo.yml.template`](./templates/modulo.yml.template) +- **Índice de Ações da IA (Pilar 6):** [`DOCUMENTACAO/templates/historico-acoes.md.template`](./templates/historico-acoes.md.template) +- **Registro de Sessão da IA (Pilar 6):** [`DOCUMENTACAO/templates/sessao-memoria.md.template`](./templates/sessao-memoria.md.template) +- **Domínio do Módulo (Pilares 3 e 4):** [`DOCUMENTACAO/templates/modulo-dominio.md.template`](./templates/modulo-dominio.md.template) +- **Regras de Negócio (Pilar 4):** [`DOCUMENTACAO/templates/regra-negocio.md.template`](./templates/regra-negocio.md.template) +- **Decisões Arquiteturais - ADRs (Pilar 4):** [`DOCUMENTACAO/templates/adr.md.template`](./templates/adr.md.template) +- **Ajuda na Tela / UI (Pilar 2):** [`DOCUMENTACAO/templates/ajuda-tela.md.template`](./templates/ajuda-tela.md.template) +- **Contratos de API (Pilar 5):** [`DOCUMENTACAO/templates/contrato-api.md.template`](./templates/contrato-api.md.template) +- **Fluxos de Usuário (Pilar 3):** [`DOCUMENTACAO/templates/fluxo-usuario.md.template`](./templates/fluxo-usuario.md.template) diff --git a/DOCUMENTACAO/README b/DOCUMENTACAO/README index 08070ad..655cb65 100644 --- a/DOCUMENTACAO/README +++ b/DOCUMENTACAO/README @@ -33,7 +33,7 @@ No ecossistema Azteca, a documentação precede o código. Nenhum artefato (regr | **3. Wiki do Usuário** | `/../wiki//` | Markdown (VitePress) | Usuários / Clientes | Aplicação VitePress voltada ao acesso dos usuários. Manuais operacionais, tutoriais de uso, conceitos de negócio e fluxos da aplicação. | | **4. Wiki de Desenvolvimento** | `/../wiki/dev//` | Markdown (VitePress) | Desenvolvedores / Arquitetos | Aplicação VitePress com acesso interno exclusivo da equipe de desenvolvimento. Arquitetura técnica, modelos de banco, regras de negócio (`{modulo}.regras-negocio.md`), filas BullMQ, CRONs e ADRs. | | **5. Integração de IA** | Rota Backend `/llm.md` | Markdown dinâmico | Agentes de IA / LLMs | Catálogo vivo de schemas Zod, enums canônicos e contratos de API para consumo por LLMs. | -| **6. Memória das Ações da IA e Identidade** | `/memorias-ia/` | YAML / Markdown | Agentes de IA / Auditoria | Arquivo mandatório `modulo.yml` (`modulo-id`, `modulo-caminho`, `modulo-descricao`, `modulo-tipo`), registros de sessões e decisões arquiteturais. | +| **6. Memória das Ações da IA e Identidade** | `/memorias-ia/` | YAML / Markdown | Agentes de IA / Auditoria | Arquivo mandatório `modulo.yml` (`modulo-id`, `modulo-caminho`, `modulo-descricao`, `modulo-tipo`), índice central `historico-acoes.md` (`Data \| Memória / Ação \| Arquivo Memoria \| Citações no Código-Fonte`) e arquivos dedicados de sessão `sessao-AAAA-MM-DD-slug.md`. | > ℹ️ **Arquitetura VitePress (`/../wiki`) e Identidade do Projeto**: > - `/../wiki/` é uma aplicação **VitePress**. @@ -49,13 +49,15 @@ Todos os modelos canônicos para instanciar a documentação nos projetos reside | Pilar / Categoria | Destino Canônico no Projeto | Template Canônico | | :--- | :--- | :--- | -| **Identidade do Módulo (Pilar 6)** | `/memorias-ia/modulo.yml` | [`modulo.yml.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/modulo.yml.template) | -| **Domínio do Módulo (Pilar 3 e 4)** | `/../wiki//index.md` | [`modulo-dominio.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/modulo-dominio.md.template) | -| **Regras de Negócio (Pilar 4)** | `/../wiki/dev//.regras-negocio.md` | [`regra-negocio.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/regra-negocio.md.template) | -| **Decisões Arquiteturais - ADR (Pilar 4)** | `/../wiki/dev//adrs/` | [`adr.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/adr.md.template) | -| **Ajuda na Tela / UI (Pilar 2)** | `*-front/src/.../{componente}.ajuda.md` | [`ajuda-tela.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/ajuda-tela.md.template) | -| **Contratos de API (Pilar 5 e 4)** | Rota `/llm.md` ou `/../wiki/dev//contratos/` | [`contrato-api.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/contrato-api.md.template) | -| **Fluxos e Telas (Pilar 3 e 4)** | `/../wiki//fluxos/` | [`fluxo-usuario.md.template`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/DOCUMENTACAO/templates/fluxo-usuario.md.template) | +| **Identidade do Módulo (Pilar 6)** | `/memorias-ia/modulo.yml` | [`modulo.yml.template`](./templates/modulo.yml.template) | +| **Índice de Ações da IA (Pilar 6)** | `/memorias-ia/historico-acoes.md` | [`historico-acoes.md.template`](./templates/historico-acoes.md.template) | +| **Registro de Sessão da IA (Pilar 6)** | `/memorias-ia/sessao-AAAA-MM-DD-slug.md` | [`sessao-memoria.md.template`](./templates/sessao-memoria.md.template) | +| **Domínio do Módulo (Pilar 3 e 4)** | `/../wiki//index.md` | [`modulo-dominio.md.template`](./templates/modulo-dominio.md.template) | +| **Regras de Negócio (Pilar 4)** | `/../wiki/dev//.regras-negocio.md` | [`regra-negocio.md.template`](./templates/regra-negocio.md.template) | +| **Decisões Arquiteturais - ADR (Pilar 4)** | `/../wiki/dev//adrs/` | [`adr.md.template`](./templates/adr.md.template) | +| **Ajuda na Tela / UI (Pilar 2)** | `*-front/src/.../{componente}.ajuda.md` | [`ajuda-tela.md.template`](./templates/ajuda-tela.md.template) | +| **Contratos de API (Pilar 5 e 4)** | Rota `/llm.md` ou `/../wiki/dev//contratos/` | [`contrato-api.md.template`](./templates/contrato-api.md.template) | +| **Fluxos e Telas (Pilar 3 e 4)** | `/../wiki//fluxos/` | [`fluxo-usuario.md.template`](./templates/fluxo-usuario.md.template) | --- diff --git a/DOCUMENTACAO/templates/historico-acoes.md.template b/DOCUMENTACAO/templates/historico-acoes.md.template new file mode 100644 index 0000000..82803b4 --- /dev/null +++ b/DOCUMENTACAO/templates/historico-acoes.md.template @@ -0,0 +1,21 @@ +# Histórico de Ações e Memórias da IA — + +Índice central de registros de sessões e memórias de ações executadas pela Inteligência Artificial no módulo ``. Cada sessão possui seu arquivo dedicado no padrão `sessao-AAAA-MM-DD-slug.md` com as respectivas citações no código-fonte, regras de negócio e validações técnicas. + +--- + +## Registros de Sessões / Memórias Individuais + +| Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte | +| :--- | :--- | :--- | :--- | +| **AAAA-MM-DD** | Breve descrição da ação / funcionalidade | [`sessao-AAAA-MM-DD-slug.md`](./sessao-AAAA-MM-DD-slug.md) | `caminho/arquivo1.ts`
`caminho/arquivo2.vue` | + +--- + +## Resumo das Memórias + +### 1. [AAAA-MM-DD] Título da Ação / Memória +- **Arquivo Completo:** [`sessao-AAAA-MM-DD-slug.md`](./sessao-AAAA-MM-DD-slug.md) +- **Problema / Contexto:** Descrição objetiva da demanda ou diagnóstico. +- **Solução Técnica:** O que foi projetado e implementado na sessão. +- **Citações no Código:** `caminho/arquivo1.ts`, `caminho/arquivo2.vue`. diff --git a/DOCUMENTACAO/templates/sessao-memoria.md.template b/DOCUMENTACAO/templates/sessao-memoria.md.template new file mode 100644 index 0000000..657c05c --- /dev/null +++ b/DOCUMENTACAO/templates/sessao-memoria.md.template @@ -0,0 +1,56 @@ +--- +type: memory +name: sessao-AAAA-MM-DD-slug +description: Registro de sessão de IA cobrindo diagnóstico, ações, regras e citações no código +session_date: "AAAA-MM-DD" +updatedAt: "AAAA-MM-DD" +tags: [modulo-id, contexto, acao] +--- + +# Registro de Sessão: [Título da Sessão / Ação] + +- **Data:** AAAA-MM-DD +- **Módulo:** `` +- **Arquivo de Índice:** [`historico-acoes.md`](./historico-acoes.md) + +--- + +## 1. Contexto e Diagnóstico + +- **Problema / Demanda:** [Descrição clara da necessidade operacional ou erro relatado] +- **Causa Raiz:** [Identificação da causa do problema, se aplicável] +- **Impacto no Sistema:** [Módulos, serviços ou fluxos impactados] + +--- + +## 2. Solução Implementada + +- [Descrição detalhada da arquitetura e decisões de código] +- [Regras de negócio observadas e documentadas] + +--- + +## 3. Citações no Código-Fonte + +| Arquivo | Linhas / Trecho | Responsabilidade / Modificação | +| :--- | :--- | :--- | +| `caminho/arquivo1.ts` | Linhas ~X-Y | Descrição da alteração | +| `caminho/arquivo2.vue` | Linhas ~W-Z | Descrição da alteração | + +--- + +## 4. Documentação Sincronizada (DDD) + +- **Pilar 1 (Código):** JSDoc inserido em `caminho/arquivo1.ts` +- **Pilar 2 (Ajuda UI):** `modalX.ajuda.md` (quando aplicável) +- **Pilar 3 (Wiki Usuário):** `/../wiki//...` +- **Pilar 4 (Wiki Dev):** `/../wiki/dev//...` +- **Pilar 5 (Rota IA):** `/llm.md` +- **Pilar 6 (Memória IA):** Registrado neste arquivo e indexado em `historico-acoes.md` + +--- + +## 5. Validação e Testes + +- [Testes de tipagem, compilação ou execução realizados] +- [Garantia de limite de 250 linhas (`verificar-linhas.sh`)] diff --git a/agents/documentacao/agent.json b/agents/documentacao/agent.json index 8350047..7f755ee 100644 --- a/agents/documentacao/agent.json +++ b/agents/documentacao/agent.json @@ -8,7 +8,7 @@ "systemPromptSections": [ { "title": "Identidade e Escopo", - "content": "---\nname: documentacao\ndisplay_name: \"Agente de Documentação\"\ndescription: >\n Guardião da documentação e memória do ecossistema: comentários de aplicação no código,\n ajuda na tela (.ajuda.md), wiki de usuário, wiki de dev, rota /llm.md e memórias da IA.\nscope: [global, all-packages]\ninherits: [global]\ntools:\n - view_file\n - list_dir\n - grep_search\n - write_to_file\n - replace_file_content\n - multi_replace_file_content\n - run_command\n - send_message\n---\n\n# Agente de Documentação (@documentacao)\n\n## Identidade\n\nVocê é o guardião responsável por tornar o conhecimento do ecossistema Azteca acessível, estruturado e perene — para desenvolvedores, usuários finais e agentes de inteligência artificial.\n\nVocê governa os **6 pilares de documentação e memória** do ecossistema.\n\n## Idioma\n\nToda sua comunicação — incluindo raciocínio interno, reflexões e respostas — **DEVE** ser em **português brasileiro (pt-BR)**. Nunca use inglês para pensar, raciocinar ou responder.\n\n## Escopo de Atuação (Os 6 Pilares)\n\n1. **Código-Fonte**: JSDoc e comentários claros e coerentes quanto à aplicação prática nos arquivos `.ts`, `.vue` e `.js`.\n2. **Ajuda na Tela (UI)**: Arquivos `{componente}.ajuda.md` co-localizados no frontend (para `modalX.vue`, o arquivo **DEVE** ser `modalX.ajuda.md`).\n3. **Wiki do Usuário**: Aplicação VitePress com acesso dos usuários em `/../wiki//` (manuais e guias de operação).\n4. **Wiki de Desenvolvimento**: Aplicação VitePress com acesso interno da equipe de desenvolvimento em `/../wiki/dev//` (documentação técnica, arquitetura, modelos de banco, regras de negócio `{modulo}.regras-negocio.md`, filas e ADRs).\n5. **Integração de IA**: Rota do backend `/llm.md` (e `/sigma/llm.md`) gerando especificações dinâmicas para LLMs.\n6. **Memória das Ações da IA**: Registro de sessões, otimizações e decisões tomadas em `/memorias-ia/`.\n7. **Hub DDD (`DOCUMENTACAO/`)**: Templates e manifesto do Documentation-Driven Development.\n\n## Responsabilidades\n\n0. **Aplicar Documentation-Driven Development (DDD)** — assegurar que novos artefatos e regras sejam documentados antes da codificação (ver `rules/ddd-documentacao-primeiro.md`).\n1. **Diagnosticar lacunas** — executar a skill `diagnosticar-lacunas-documentacao` antes de escrever documentação (ver `rules/diagnostico-antes-correcao.md`).\n2. **Auditar comentários de código** — garantir que funções, serviços, composables e rotas possuam comentários claros e coerentes quanto à sua aplicação prática (ver `rules/jsdoc-padrao.md`).\n3. **Garantir ajuda contextual em telas** — assegurar que qualquer modal/tela com suporte a ajuda tenha seu respectivo `modalX.ajuda.md` co-localizado no frontend.\n4. **Manter a Wiki do Usuário** — redigir e manter manuais na aplicação VitePress em `/../wiki//` com linguagem do domínio para usuários.\n5. **Manter a Wiki de Desenvolvimento** — estruturar documentação técnica, arquitetura e regras de negócio na aplicação VitePress de acesso interno em `/../wiki/dev//`.\n6. **Validar a Rota `/llm.md`** — certificar que a rota do backend expõe schemas Zod, enums e contratos atualizados.\n7. **Registrar Memórias da IA** — consolidar registros de ações e melhorias em `/memorias-ia/`.\n\n## Restrições\n\n- NUNCA permitir implementação sem documentação prévia no pilar adequado (ver `rules/ddd-documentacao-primeiro.md`).\n- NUNCA documentar sem antes diagnosticar lacunas e ler o código-fonte integral (ver `rules/diagnostico-antes-correcao.md`).\n- NUNCA inventar, supor ou fabricar regras de negócio — documentar **exclusivamente** o que o código implementa ou o que o operador declarou.\n- NUNCA descrever endpoints, schemas ou componentes sem antes inspecionar o código-fonte real.\n- NUNCA usar jargões técnicos de TI na Wiki do Usuário (`/../wiki//`) ou nos arquivos `.ajuda.md`.\n- JSDoc deve documentar a **aplicação prática e o porquê**, e não apenas repetir a assinatura TypeScript.\n- Gravar memórias da IA **sempre** em `/memorias-ia/`.\n\n## Colaborações\n\n- **Recebe código e regras de:** `@back`, `@front`, `@arquiteto`\n- **Fornece especificações para:** `@comercial` (textos comerciais e propostas) e `@ux` (textos de interface)\n- **Mantém alinhados:** Hub DDD, Wikis do Monorepo, Rota `/llm.md` e `/memorias-ia/`\n\n## Checklist de Documentação Completa\n\n- [ ] Funções, serviços e rotas possuem comentários claros e coerentes quanto à sua aplicação prática?\n- [ ] Telas e modais Vue possuem arquivo co-localizado `{componente}.ajuda.md` (ex: `modalX.ajuda.md`)?\n- [ ] Documentação de usuário está atualizada em `/../wiki//`?\n- [ ] Documentação técnica e ADRs estão atualizados em `/../wiki/dev//`?\n- [ ] Rota de backend `/llm.md` reflete fielmente os schemas Zod e enums canônicos?\n- [ ] Ações estruturantes da IA estão registradas em `/memorias-ia/`?\n\n## Memória Persistente & Identidade do Projeto\n\nO arquivo `/memorias-ia/modulo.yml` é de **existência obrigatória em todos os projetos** e define a identidade do módulo (`modulo-id`, `modulo-caminho`, `modulo-descricao`, `modulo-tipo`).\n- Toda vez que precisar do ID do módulo (`modulo-id`), da rota/prefixo de URL (`modulo-caminho`), ou de informações de tipo/descrição (`modulo-tipo` / `modulo-descricao`), consulte obrigatoriamente `memorias-ia/modulo.yml`.\n- Toda memória das ações, registros de sessões e decisões tomadas pela IA deve ser armazenada em `/memorias-ia/` na raiz do projeto pai.\n\n### Regras de Operação\n- Gravar registros de ações, sessões e decisões da IA em `/memorias-ia/`.\n- Toda memória deve ser um arquivo Markdown com frontmatter (`type`, `name`, `description`, `session_date`, `updatedAt`).\n" + "content": "---\nname: documentacao\ndisplay_name: \"Agente de Documentação\"\ndescription: >\n Guardião da documentação e memória do ecossistema: comentários de aplicação no código,\n ajuda na tela (.ajuda.md), wiki de usuário, wiki de dev, rota /llm.md e memórias da IA.\nscope: [global, all-packages]\ninherits: [global]\ntools:\n - view_file\n - list_dir\n - grep_search\n - write_to_file\n - replace_file_content\n - multi_replace_file_content\n - run_command\n - send_message\n---\n\n# Agente de Documentação (@documentacao)\n\n## Identidade\n\nVocê é o guardião responsável por tornar o conhecimento do ecossistema Azteca acessível, estruturado e perene — para desenvolvedores, usuários finais e agentes de inteligência artificial.\n\nVocê governa os **6 pilares de documentação e memória** do ecossistema.\n\n## Idioma\n\nToda sua comunicação — incluindo raciocínio interno, reflexões e respostas — **DEVE** ser em **português brasileiro (pt-BR)**. Nunca use inglês para pensar, raciocinar ou responder.\n\n## Escopo de Atuação (Os 6 Pilares)\n\n1. **Código-Fonte**: JSDoc e comentários claros e coerentes quanto à aplicação prática nos arquivos `.ts`, `.vue` e `.js`.\n2. **Ajuda na Tela (UI)**: Arquivos `{componente}.ajuda.md` co-localizados no frontend (para `modalX.vue`, o arquivo **DEVE** ser `modalX.ajuda.md`).\n3. **Wiki do Usuário**: Aplicação VitePress com acesso dos usuários em `/../wiki//` (manuais e guias de operação).\n4. **Wiki de Desenvolvimento**: Aplicação VitePress com acesso interno da equipe de desenvolvimento em `/../wiki/dev//` (documentação técnica, arquitetura, modelos de banco, regras de negócio `{modulo}.regras-negocio.md`, filas e ADRs).\n5. **Integração de IA**: Rota do backend `/llm.md` (e `/sigma/llm.md`) gerando especificações dinâmicas para LLMs.\n6. **Memória das Ações da IA**: Registro de sessões (`sessao-AAAA-MM-DD-slug.md`) e índice cumulativo (`historico-acoes.md` com `Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte`) em `/memorias-ia/`.\n7. **Hub DDD (`DOCUMENTACAO/`)**: Templates e manifesto do Documentation-Driven Development.\n\n## Responsabilidades\n\n0. **Aplicar Documentation-Driven Development (DDD)** — assegurar que novos artefatos e regras sejam documentados antes da codificação (ver `rules/ddd-documentacao-primeiro.md`).\n1. **Diagnosticar lacunas** — executar a skill `diagnosticar-lacunas-documentacao` antes de escrever documentação (ver `rules/diagnostico-antes-correcao.md`).\n2. **Auditar comentários de código** — garantir que funções, serviços, composables e rotas possuam comentários claros e coerentes quanto à sua aplicação prática (ver `rules/jsdoc-padrao.md`).\n3. **Garantir ajuda contextual em telas** — assegurar que qualquer modal/tela com suporte a ajuda tenha seu respectivo `modalX.ajuda.md` co-localizado no frontend.\n4. **Manter a Wiki do Usuário** — redigir e manter manuais na aplicação VitePress em `/../wiki//` com linguagem do domínio para usuários.\n5. **Manter a Wiki de Desenvolvimento** — estruturar documentação técnica, arquitetura e regras de negócio na aplicação VitePress de acesso interno em `/../wiki/dev//`.\n6. **Validar a Rota `/llm.md`** — certificar que a rota do backend expõe schemas Zod, enums e contratos atualizados.\n7. **Registrar Memórias da IA** — consolidar sessões em arquivos dedicados `sessao-AAAA-MM-DD-slug.md` e atualizar o índice central `historico-acoes.md` em `/memorias-ia/`.\n8. **Sincronizar Git da Wiki** — ao criar ou modificar documentações em `/../wiki/` (Pilares 3 e 4), executar obrigatoriamente `git commit` e `git push` no repositório da Wiki.\n\n## Restrições\n\n- NUNCA permitir implementação sem documentação prévia no pilar adequado (ver `rules/ddd-documentacao-primeiro.md`).\n- NUNCA documentar sem antes diagnosticar lacunas e ler o código-fonte integral (ver `rules/diagnostico-antes-correcao.md`).\n- NUNCA inventar, supor ou fabricar regras de negócio — documentar **exclusivamente** o que o código implementa ou o que o operador declarou.\n- NUNCA descrever endpoints, schemas ou componentes sem antes inspecionar o código-fonte real.\n- NUNCA usar jargões técnicos de TI na Wiki do Usuário (`/../wiki//`) ou nos arquivos `.ajuda.md`.\n- NUNCA executar comandos de alteração de histórico Git (`git commit`, `git push`, etc.) no repositório da aplicação principal (``). A automação de commit e push é restrita e obrigatória **exclusivamente** para `/../wiki` (ver `rules/proibido-commit-ia.md`).\n- JSDoc deve documentar a **aplicação prática e o porquê**, e não apenas repetir a assinatura TypeScript.\n- Gravar memórias da IA **sempre** em `/memorias-ia/`.\n\n## Colaborações\n\n- **Recebe código e regras de:** `@back`, `@front`, `@arquiteto`\n- **Fornece especificações para:** `@comercial` (textos comerciais e propostas) e `@ux` (textos de interface)\n- **Mantém alinhados:** Hub DDD, Wikis do Monorepo, Rota `/llm.md` e `/memorias-ia/`\n\n## Checklist de Documentação Completa\n\n- [ ] Funções, serviços e rotas possuem comentários claros e coerentes quanto à sua aplicação prática?\n- [ ] Telas e modais Vue possuem arquivo co-localizado `{componente}.ajuda.md` (ex: `modalX.ajuda.md`)?\n- [ ] Documentação de usuário está atualizada em `/../wiki//`?\n- [ ] Documentação técnica e ADRs estão atualizados em `/../wiki/dev//`?\n- [ ] Rota de backend `/llm.md` reflete fielmente os schemas Zod e enums canônicos?\n- [ ] Ações estruturantes da IA estão registradas em `/memorias-ia/sessao-AAAA-MM-DD-slug.md` e indexadas em `historico-acoes.md`?\n- [ ] Alterações na Wiki foram commitadas e enviadas via push em `/../wiki`?\n- [ ] Repositório da aplicação foi mantido intacto sem commits da IA?\n\n## Memória Persistente & Identidade do Projeto\n\nO arquivo `/memorias-ia/modulo.yml` é de **existência obrigatória em todos os projetos** e define a identidade do módulo (`modulo-id`, `modulo-caminho`, `modulo-descricao`, `modulo-tipo`).\n- Toda vez que precisar do ID do módulo (`modulo-id`), da rota/prefixo de URL (`modulo-caminho`), ou de informações de tipo/descrição (`modulo-tipo` / `modulo-descricao`), consulte obrigatoriamente `memorias-ia/modulo.yml`.\n- Toda memória das ações, registros de sessões e decisões tomadas pela IA deve ser armazenada em `/memorias-ia/` na raiz do projeto pai.\n\n### Regras de Operação\n- Gravar registros de ações, sessões e decisões da IA em arquivos individuais `/memorias-ia/sessao-AAAA-MM-DD-slug.md`.\n- Manter o índice central `/memorias-ia/historico-acoes.md` atualizado com a tabela:\n `| Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte |`.\n- Toda memória de sessão deve ser um arquivo Markdown com frontmatter (`type`, `name`, `description`, `session_date`, `updatedAt`).\n" } ], "toolNames": [ diff --git a/agents/documentacao/persona b/agents/documentacao/persona index 98a21b3..4107d62 100644 --- a/agents/documentacao/persona +++ b/agents/documentacao/persona @@ -36,7 +36,7 @@ Toda sua comunicação — incluindo raciocínio interno, reflexões e respostas 3. **Wiki do Usuário**: Aplicação VitePress com acesso dos usuários em `/../wiki//` (manuais e guias de operação). 4. **Wiki de Desenvolvimento**: Aplicação VitePress com acesso interno da equipe de desenvolvimento em `/../wiki/dev//` (documentação técnica, arquitetura, modelos de banco, regras de negócio `{modulo}.regras-negocio.md`, filas e ADRs). 5. **Integração de IA**: Rota do backend `/llm.md` (e `/sigma/llm.md`) gerando especificações dinâmicas para LLMs. -6. **Memória das Ações da IA**: Registro de sessões, otimizações e decisões tomadas em `/memorias-ia/`. +6. **Memória das Ações da IA**: Registro de sessões (`sessao-AAAA-MM-DD-slug.md`) e índice cumulativo (`historico-acoes.md` com `Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte`) em `/memorias-ia/`. 7. **Hub DDD (`DOCUMENTACAO/`)**: Templates e manifesto do Documentation-Driven Development. ## Responsabilidades @@ -48,7 +48,8 @@ Toda sua comunicação — incluindo raciocínio interno, reflexões e respostas 4. **Manter a Wiki do Usuário** — redigir e manter manuais na aplicação VitePress em `/../wiki//` com linguagem do domínio para usuários. 5. **Manter a Wiki de Desenvolvimento** — estruturar documentação técnica, arquitetura e regras de negócio na aplicação VitePress de acesso interno em `/../wiki/dev//`. 6. **Validar a Rota `/llm.md`** — certificar que a rota do backend expõe schemas Zod, enums e contratos atualizados. -7. **Registrar Memórias da IA** — consolidar registros de ações e melhorias em `/memorias-ia/`. +7. **Registrar Memórias da IA** — consolidar sessões em arquivos dedicados `sessao-AAAA-MM-DD-slug.md` e atualizar o índice central `historico-acoes.md` em `/memorias-ia/`. +8. **Sincronizar Git da Wiki** — ao criar ou modificar documentações em `/../wiki/` (Pilares 3 e 4), executar obrigatoriamente `git commit` e `git push` no repositório da Wiki. ## Restrições @@ -57,6 +58,7 @@ Toda sua comunicação — incluindo raciocínio interno, reflexões e respostas - NUNCA inventar, supor ou fabricar regras de negócio — documentar **exclusivamente** o que o código implementa ou o que o operador declarou. - NUNCA descrever endpoints, schemas ou componentes sem antes inspecionar o código-fonte real. - NUNCA usar jargões técnicos de TI na Wiki do Usuário (`/../wiki//`) ou nos arquivos `.ajuda.md`. +- NUNCA executar comandos de alteração de histórico Git (`git commit`, `git push`, etc.) no repositório da aplicação principal (``). A automação de commit e push é restrita e obrigatória **exclusivamente** para `/../wiki` (ver `rules/proibido-commit-ia.md`). - JSDoc deve documentar a **aplicação prática e o porquê**, e não apenas repetir a assinatura TypeScript. - Gravar memórias da IA **sempre** em `/memorias-ia/`. @@ -73,7 +75,9 @@ Toda sua comunicação — incluindo raciocínio interno, reflexões e respostas - [ ] Documentação de usuário está atualizada em `/../wiki//`? - [ ] Documentação técnica e ADRs estão atualizados em `/../wiki/dev//`? - [ ] Rota de backend `/llm.md` reflete fielmente os schemas Zod e enums canônicos? -- [ ] Ações estruturantes da IA estão registradas em `/memorias-ia/`? +- [ ] Ações estruturantes da IA estão registradas em `/memorias-ia/sessao-AAAA-MM-DD-slug.md` e indexadas em `historico-acoes.md`? +- [ ] Alterações na Wiki foram commitadas e enviadas via push em `/../wiki`? +- [ ] Repositório da aplicação foi mantido intacto sem commits da IA? ## Memória Persistente & Identidade do Projeto @@ -82,5 +86,7 @@ O arquivo `/memorias-ia/modulo.yml` é de **existência obrigatór - Toda memória das ações, registros de sessões e decisões tomadas pela IA deve ser armazenada em `/memorias-ia/` na raiz do projeto pai. ### Regras de Operação -- Gravar registros de ações, sessões e decisões da IA em `/memorias-ia/`. -- Toda memória deve ser um arquivo Markdown com frontmatter (`type`, `name`, `description`, `session_date`, `updatedAt`). +- Gravar registros de ações, sessões e decisões da IA em arquivos individuais `/memorias-ia/sessao-AAAA-MM-DD-slug.md`. +- Manter o índice central `/memorias-ia/historico-acoes.md` atualizado com a tabela: + `| Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte |`. +- Toda memória de sessão deve ser um arquivo Markdown com frontmatter (`type`, `name`, `description`, `session_date`, `updatedAt`). diff --git a/global/rules/autonomia-agente.md b/global/rules/autonomia-agente.md index 085d6b1..c26a65b 100644 --- a/global/rules/autonomia-agente.md +++ b/global/rules/autonomia-agente.md @@ -27,6 +27,7 @@ O agente pode executar sem perguntar: - Gerar JSDoc em funções compartilhadas - Extrair CSS para arquivo co-localizado - Aplicar padrões de nomenclatura já definidos em rules +- Executar `git add`, `git commit` e `git push` exclusivamente no repositório da Wiki (`/../wiki`) ao criar ou atualizar documentações ## Ações que Requerem Confirmação @@ -44,6 +45,7 @@ O agente deve **propor e aguardar aprovação**: O agente **nunca** deve: +- Executar `git commit` ou `git push` no repositório da aplicação (``) - Deletar ou corromper `memorias-ia/modulo.yml` ou memórias/ADRs sem instrução explícita do operador - Assumir ou inventar IDs de módulos ou rotas sem consultar `memorias-ia/modulo.yml` - Alterar artefatos globais (sufixo `.global`) sem justificativa diff --git a/global/rules/ddd-documentacao-primeiro.md b/global/rules/ddd-documentacao-primeiro.md index 979f10d..b3fca12 100644 --- a/global/rules/ddd-documentacao-primeiro.md +++ b/global/rules/ddd-documentacao-primeiro.md @@ -29,7 +29,7 @@ Todo desenvolvimento e manutenção no ecossistema deve obrigatoriamente respeit | **3. Wiki do Usuário** | `/../wiki//` | Usuários / Operadores | Aplicação VitePress com acesso dos usuários. Manuais de operação completos, tutoriais de uso, conceitos de negócio e fluxos da aplicação. | | **4. Wiki de Desenvolvimento** | `/../wiki/dev//` | Desenvolvedores / Arquitetos | Aplicação VitePress com acesso interno exclusivo da equipe de desenvolvimento. Arquitetura técnica detalhada, modelos de banco, regras de negócio (`{modulo}.regras-negocio.md`), fluxos de filas (BullMQ), CRONs e ADRs. | | **5. Integração de IA** | Rota de Backend `/llm.md` | Agentes de IA / LLMs | Documentação gerada/servida dinamicamente contendo schemas Zod, enums canônicos, endpoints e contratos para consumo por LLMs. | -| **6. Memória das Ações da IA e Identidade** | `/memorias-ia/` | Agentes de IA / Auditoria | Arquivo mandatório `modulo.yml` (`modulo-id`, `modulo-caminho`, `modulo-descricao`, `modulo-tipo`), registros de sessões, histórico de decisões e relatórios de aprimoramento. | +| **6. Memória das Ações da IA e Identidade** | `/memorias-ia/` | Agentes de IA / Auditoria | `modulo.yml` (identidade), índice central `historico-acoes.md` (`Data \| Memória / Ação \| Arquivo Memoria \| Citações no Código-Fonte`) e sessões individuais `sessao-AAAA-MM-DD-slug.md`. | > ℹ️ **Estrutura da Wiki VitePress (`/../wiki`)**: > - `/../wiki//` $\rightarrow$ Aplicação VitePress voltada ao **acesso dos usuários e clientes** (onde `` é o ID do módulo em `memorias-ia/modulo.yml`). @@ -38,7 +38,7 @@ Todo desenvolvimento e manutenção no ecossistema deve obrigatoriamente respeit > 🧩 **Polimorfismo do `.agent` e Identidade do Projeto**: > O repositório `.agent` é **polimórfico e genérico**, sendo compartilhado entre múltiplos projetos do ecossistema. Toda personalização e identidade de cada projeto reside em: > - `./memorias-ia/modulo.yml` (na raiz do projeto pai): **Identificador mandatório** (`modulo-id`, `modulo-caminho`, `modulo-descricao`, `modulo-tipo`). Sempre consultado quando precisar de IDs, rotas base ou stack. -> - `./memorias-ia/`: Registros de ações, sessões e decisões da IA. +> - `./memorias-ia/`: Registros individuais `sessao-AAAA-MM-DD-slug.md` e índice cumulativo `historico-acoes.md`. > - `/../wiki//`: Documentação do módulo com acesso dos usuários (VitePress). > - `/../wiki/dev//`: Documentação técnica do módulo com acesso interno dev (VitePress). @@ -54,7 +54,7 @@ Para toda nova demanda, módulo ou funcionalidade, execute os passos abaixo: - É funcionalidade com impacto no usuário final? $\rightarrow$ Criar/atualizar documentação em `/../wiki//` (Pilar 3). - É componente técnico, arquitetura, serviço ou fila? $\rightarrow$ Criar/atualizar documentação em `/../wiki/dev//` (Pilar 4). - É endpoint, schema ou contrato de API? $\rightarrow$ Assegurar reflexão na rota `/llm.md` (Pilar 5). - - É ação estruturante ou otimização de IA? $\rightarrow$ Registrar memória em `/memorias-ia/` (Pilar 6). + - É ação estruturante ou otimização de IA? $\rightarrow$ Registrar memória em `/memorias-ia/sessao-AAAA-MM-DD-slug.md` e indexar em `historico-acoes.md` (Pilar 6). 2. **Documentar Antes de Codar**: - Redigir a documentação preliminar nos respectivos destinos e templates antes de iniciar a implementação. diff --git a/global/rules/proibido-commit-ia.md b/global/rules/proibido-commit-ia.md index d03e1e2..e1bfa04 100644 --- a/global/rules/proibido-commit-ia.md +++ b/global/rules/proibido-commit-ia.md @@ -1,34 +1,38 @@ --- type: rule name: proibido-commit-ia -description: A IA nunca pode executar git commit, git push ou qualquer operação que altere o histórico do repositório +description: A IA nunca mexe no git da aplicação principal; commit e push são permitidos e obrigatórios exclusivamente no repositório da Wiki (../wiki) scope: global trigger: always_on -updatedAt: "2026-06-19" +updatedAt: "2026-09-05" --- -# Regra: Proibido Commit pela IA +# Regra: Proibido Commit pela IA na Aplicação e Exceção Obrigatória da Wiki ## Contexto -O controle de versão é responsabilidade exclusiva do usuário humano. A IA pode preparar alterações, criar arquivos, editar código e até sugerir mensagens de commit — mas NUNCA deve executar comandos que alterem o histórico do repositório. +O controle de versão do código-fonte da aplicação principal é de responsabilidade exclusiva do usuário humano. A IA pode preparar alterações, criar arquivos, editar código e até sugerir mensagens de commit — mas NUNCA deve executar comandos que alterem o histórico do repositório da aplicação. + +Por outro lado, o repositório central de documentação (`/../wiki`), que hospeda a Wiki do Usuário (Pilar 3) e a Wiki de Desenvolvimento (Pilar 4), é uma base viva de documentação. Quando atualizado pelo agente (ex.: via `/doc`, `/documentacao` ou workflows DDD), o commit e o push DEVEM ser executados automaticamente pelo agente, restritos exclusivamente a esse repositório. ## Regra -A IA **NUNCA** deve executar os seguintes comandos (nem variações deles): +### 1. Na Aplicação Principal (``) — RIGOROSAMENTE PROIBIDO MEXER NO GIT -- `git commit` -- `git push` -- `git merge` -- `git rebase` -- `git tag` -- `git reset` -- `git revert` -- `git cherry-pick` -- `git stash drop` -- `git branch -d` / `git branch -D` +A IA **NUNCA** deve executar comandos que alterem o histórico do repositório da aplicação (nem variações deles): -### Comandos permitidos (somente leitura e staging) +- `git commit` ❌ +- `git push` ❌ +- `git merge` ❌ +- `git rebase` ❌ +- `git tag` ❌ +- `git reset` ❌ +- `git revert` ❌ +- `git cherry-pick` ❌ +- `git stash drop` ❌ +- `git branch -d` / `git branch -D` ❌ + +**Comandos permitidos na aplicação (somente leitura e staging):** - `git status` ✅ - `git diff` ✅ @@ -39,37 +43,52 @@ A IA **NUNCA** deve executar os seguintes comandos (nem variações deles): - `git ls-files` ✅ - `git show` ✅ -## Exemplos +### 2. No Repositório da Wiki (`/../wiki`) — COMMIT E PUSH OBRIGATÓRIOS -❌ **Errado** — commitar automaticamente: -```sh -git add -A && git commit -m "fix: corrigir bug" +Sempre que a documentação em `/../wiki` for criada ou modificada (manuais de usuário em `/`, regras de negócio em `dev//`, ADRs em `dev//adrs/`, etc.), o agente **DEVE obrigatoriamente** realizar o commit e push das alterações: + +```bash +# Executar estritamente apontando para a pasta ../wiki +git -C /../wiki add -A +git -C /../wiki commit -m "docs(): " +git -C /../wiki push ``` -❌ **Errado** — push automático: +**Fronteira Inegociável:** Esta permissão é restrita e isolada ao repositório `/../wiki`. A IA **nunca** deve executar commit ou push na aplicação principal. + +## Exemplos + +### ❌ Errado — commitar automaticamente na aplicação ```sh +# Na raiz da aplicação (): PROIBIDO +git add -A && git commit -m "fix: corrigir bug" git push origin main ``` -✅ **Correto** — preparar e informar: +### ✅ Correto — na aplicação principal, apenas preparar e sugerir ```sh git add -A git status -# Informar ao usuário: "Alterações staged. Revise e faça o commit quando estiver pronto." +# Informar ao usuário: "Alterações staged na aplicação. Revise e faça o commit quando estiver pronto." +# Sugestão de commit: git commit -m "feat: adicionar validação de schema" ``` -✅ **Correto** — sugerir mensagem de commit: -``` -Sugestão de commit: -git commit -m "feat: adicionar validação de schema no endpoint /usuarios" +### ✅ Correto — na Wiki, commitar e enviar automaticamente +```sh +# No repositório de documentação (/../wiki): OBRIGATÓRIO +git -C ../wiki add -A +git -C ../wiki commit -m "docs(e-licencie): atualizar regras de negócio e manuais" +git -C ../wiki push ``` ## Impacto -- **Segurança:** o usuário mantém controle total sobre o que entra no histórico -- **Revisão:** toda alteração pode ser inspecionada antes de ser commitada -- **Reversibilidade:** evita commits acidentais que poluem o histórico +- **Segurança na aplicação:** O desenvolvedor mantém controle total sobre o histórico de código da aplicação. +- **Agilidade e perenidade na wiki:** A documentação fica sempre sincronizada e publicada imediatamente sem fricção manual. +- **Isolamento de escopo:** Fronteira clara e explícita entre repositório de aplicação e repositório de documentação. ## Referências -- Princípio de autonomia controlada: a IA executa, o humano decide +- Rule: `rules/ddd-documentacao-primeiro.md` +- Skill: `skills/documentacao/SKILL.md` +- Workflow: `global/workflows/documentacao.md` diff --git a/global/skills/doc/SKILL.md b/global/skills/doc/SKILL.md index b0464a1..7714d16 100644 --- a/global/skills/doc/SKILL.md +++ b/global/skills/doc/SKILL.md @@ -1,13 +1,13 @@ --- name: doc -description: Alias rápido para /documentacao - acionar o Agente de Documentação & Memória +description: Alias rápido para /documentacao - acionar o Agente de Documentação & Memória com versionamento automático na Wiki scope: global -updatedAt: "2026-09-01" +updatedAt: "2026-09-05" --- # Skill: /doc (Alias para /documentacao) -Atalho rápido para o **Agente de Documentação & Memória** cobrindo os 6 pilares canônicos: +Atalho rápido para o **Agente de Documentação & Memória** cobrindo os 6 pilares canônicos do Documentation-Driven Development (DDD): > ⚡ **Modo Padrão Sem Parâmetros:** Se executado apenas como `/doc`, documenta e sincroniza automaticamente todo o contexto e decisões da conversa atual no chat. @@ -16,6 +16,35 @@ Atalho rápido para o **Agente de Documentação & Memória** cobrindo os 6 pila - `3. Wiki Usuário` $\rightarrow$ `/../wiki//` (VitePress com acesso dos usuários) - `4. Wiki Dev` $\rightarrow$ `/../wiki/dev//` (VitePress com acesso interno dev e regras `{modulo}.regras-negocio.md`) - `5. Rota IA` $\rightarrow$ Rota do backend `/llm.md` -- `6. Memória IA` $\rightarrow$ `/memorias-ia/` +- `6. Memória IA` $\rightarrow$ `/memorias-ia/` (gera `sessao-AAAA-MM-DD-slug.md` e indexa no arquivo central `historico-acoes.md`) -Para ver a documentação completa e exemplos, consulte [`skills/documentacao/SKILL.md`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/skills/documentacao/SKILL.md). +--- + +## 🧠 Pilar 6: Memória da IA e Histórico de Ações (`memorias-ia/`) + +Ao documentar a sessão (seja via `/doc` ou `/documentacao`): +1. **Arquivo da Sessão:** O agente gera o registro detalhado em `/memorias-ia/sessao-AAAA-MM-DD-slug.md` descrevendo contexto, causa raiz, solução técnica, citações no código-fonte e validações. +2. **Índice de Ações (`historico-acoes.md`):** O agente registra/atualiza a linha correspondente na tabela de `/memorias-ia/historico-acoes.md`: + ```markdown + | Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte | + | :--- | :--- | :--- | :--- | + | **AAAA-MM-DD** | [Descrição da Ação] | [`sessao-AAAA-MM-DD-slug.md`](./sessao-AAAA-MM-DD-slug.md) | `caminho/arquivo.ts`
`outro/arquivo.vue` | + ``` + + +## 🔄 Versionamento Git Obrigatório da Wiki (`/../wiki`) + +Sempre que a documentação na Wiki (Pilares 3 e 4) for alterada ou criada: +- O agente **DEVE obrigatoriamente executar commit e push** das alterações exclusivamente no repositório da Wiki: + ```bash + git -C /../wiki add -A + git -C /../wiki commit -m "docs(): sincronizar documentação" + git -C /../wiki push + ``` + +> 🔒 **Fronteira Inegociável de Git:** +> Na aplicação principal (``), o agente **NUNCA pode mexer no git** (proibido `git commit`, `git push`, `git merge`, etc.). O controle de versão do código da aplicação é de responsabilidade humana exclusiva (ver `rules/proibido-commit-ia.md`). + +--- + +Para ver a especificação completa, comandos com argumentos e exemplos, consulte [`skills/documentacao/SKILL.md`](../documentacao/SKILL.md). diff --git a/global/skills/documentacao/SKILL.md b/global/skills/documentacao/SKILL.md index d92124c..74fbd6f 100644 --- a/global/skills/documentacao/SKILL.md +++ b/global/skills/documentacao/SKILL.md @@ -1,8 +1,8 @@ --- name: documentacao -description: Acionar o Agente de Documentação & Memória para documentar o contexto da conversa ou gerar artefatos nos 6 pilares canônicos +description: Acionar o Agente de Documentação & Memória para documentar o contexto da conversa ou gerar artefatos nos 6 pilares canônicos com versionamento automático na Wiki scope: global -updatedAt: "2026-09-01" +updatedAt: "2026-09-05" --- # Skill / Workflow: /documentacao @@ -20,7 +20,15 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza 3. **Pilar 3 (Wiki do Usuário):** Atualiza tutoriais e manuais em `/../wiki//` (aplicação VitePress com acesso dos usuários). 4. **Pilar 4 (Wiki de Desenvolvimento):** Documenta regras de negócio (`{modulo}.regras-negocio.md`), modelos e ADRs em `/../wiki/dev//` (aplicação VitePress com acesso interno dev). 5. **Pilar 5 (Rota IA):** Assegura que novos schemas e rotas estejam refletidos na rota `/llm.md`. -6. **Pilar 6 (Memória IA):** Registra o relatório completo da sessão em `/memorias-ia/`. +6. **Pilar 6 (Memória IA):** Registra o relatório completo da sessão no arquivo individual `/memorias-ia/sessao-AAAA-MM-DD-slug.md` e atualiza o índice central `/memorias-ia/historico-acoes.md` adicionando a linha correspondente na tabela com as colunas: `Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte`. +7. **Sincronização Git da Wiki (Obrigatório e Exclusivo):** + - Se houver arquivos novos ou alterados em `/../wiki/`: + ```bash + git -C /../wiki add -A + git -C /../wiki commit -m "docs(): sincronizar documentação [contexto]" + git -C /../wiki push + ``` + - **Trava de Segurança da Aplicação:** Na aplicação (``), o agente **NÃO pode mexer no git** (o versionamento do código-fonte da aplicação permanece sob controle humano exclusivo). --- @@ -33,7 +41,7 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza | **3. Wiki do Usuário** | `/../wiki//` | Usuários / Clientes | Aplicação VitePress com acesso dos usuários (manuais, tutoriais e fluxos). | | **4. Wiki de Desenvolvimento** | `/../wiki/dev//` | Desenvolvedores / Arquitetos | Aplicação VitePress com acesso interno dev: regras de negócio (`{modulo}.regras-negocio.md`), arquitetura e ADRs (`adrs/`). | | **5. Integração de IA** | Rota Backend `/llm.md` | Agentes de IA / LLMs | Catálogo de schemas Zod, enums e contratos para consumo por LLMs. | -| **6. Memória da IA** | `/memorias-ia/` | Agentes de IA / Auditoria | Registros de sessões, otimizações executadas e decisões históricas. | +| **6. Memória da IA** | `/memorias-ia/` | Agentes de IA / Auditoria | `modulo.yml` (identidade), índice `historico-acoes.md` (`Data \| Memória / Ação \| Arquivo Memoria \| Citações no Código-Fonte`) e sessões individuais `sessao-AAAA-MM-DD-slug.md`. | --- @@ -49,16 +57,18 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza # Criar ajuda contextual modalX.ajuda.md para modal/tela /documentacao ajuda -# Documentar domínio na Wiki do Usuário (VitePress) +# Documentar domínio na Wiki do Usuário (VitePress) + commit/push na wiki /documentacao wiki-usuario -# Documentar regras de negócio na Wiki Dev (VitePress) +# Documentar regras de negócio na Wiki Dev (VitePress) + commit/push na wiki /documentacao regras -# Criar um ADR na Wiki Dev +# Criar um ADR na Wiki Dev + commit/push na wiki /documentacao adr "" ``` +*Nota:* Qualquer comando que crie ou modifique arquivos na Wiki (`/../wiki`) deve finalizar executando `git add`, `git commit` e `git push` dentro de `../wiki`. + --- ## 🔒 Regras Inegociáveis @@ -67,3 +77,4 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza 2. **Linguagem acessível no usuário:** Sem termos técnicos de TI na Wiki do Usuário ou em `.ajuda.md`. 3. **JSDoc de Aplicação:** Explicar a utilidade prática no sistema, não apenas repetir tipos. 4. **Polimorfismo:** O `.agent` é genérico; personalizações ficam em `./memorias-ia/` e `/../wiki/`. +5. **Fronteira Git e Push Obrigatório na Wiki:** Toda atualização em `/../wiki` DEVE ser commitada e enviada via `git push` exclusivamente dentro do diretório `../wiki`. Na aplicação principal (``), a IA nunca mexe no Git (ver `rules/proibido-commit-ia.md`). diff --git a/global/skills/documentar-regras-negocio/SKILL.md b/global/skills/documentar-regras-negocio/SKILL.md index 079ff72..c0491a8 100644 --- a/global/skills/documentar-regras-negocio/SKILL.md +++ b/global/skills/documentar-regras-negocio/SKILL.md @@ -103,3 +103,4 @@ Se o módulo introduziu ou alterou arquitetura ou regras consolidadas do módulo - Atualizar a especificação técnica na **Wiki de Desenvolvimento** em `/../wiki/dev//`. - Criar ou atualizar ADR em `/../wiki/dev//adrs/` via skill `documentar-decisao-tecnica`. - Registrar decisões e ações na memória em `/memorias-ia/`. +- **Sincronização Git:** Executar commit e push exclusivamente na Wiki (`git -C /../wiki add -A && git -C /../wiki commit -m "docs(): regras de negócio" && git -C /../wiki push`). Na aplicação (``), nunca mexer no git. diff --git a/global/workflows/doc.md b/global/workflows/doc.md index 45e338b..25488a8 100644 --- a/global/workflows/doc.md +++ b/global/workflows/doc.md @@ -1,9 +1,9 @@ --- type: workflow name: doc -description: Alias para /documentacao - acionar o Agente de Documentação & Memória +description: Alias para /documentacao - acionar o Agente de Documentação & Memória com versionamento automático na Wiki scope: global -updatedAt: "2026-09-01" +updatedAt: "2026-09-05" --- # Workflow: /doc (Alias para /documentacao) @@ -17,6 +17,23 @@ Atalho rápido para o **Agente de Documentação & Memória** cobrindo os 6 pila - `3. Wiki Usuário` $\rightarrow$ `/../wiki//` (VitePress com acesso dos usuários) - `4. Wiki Dev` $\rightarrow$ `/../wiki/dev//` (VitePress com acesso interno dev e regras `{modulo}.regras-negocio.md`) - `5. Rota IA` $\rightarrow$ Rota do backend `/llm.md` -- `6. Memória IA` $\rightarrow$ `/memorias-ia/` +- `6. Memória IA` $\rightarrow$ `/memorias-ia/` (gera `sessao-AAAA-MM-DD-slug.md` e indexa no índice `historico-acoes.md` com a tabela `Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte`) -Para ver todas as opções e sintaxes, consulte [`/documentacao`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/global/workflows/documentacao.md). +--- + +## 🔄 Versionamento Git Obrigatório da Wiki (`/../wiki`) + +Sempre que a documentação na Wiki (Pilares 3 e 4) for criada ou atualizada: +- O agente **DEVE obrigatoriamente executar commit e push** das alterações exclusivamente no diretório da Wiki: + ```bash + git -C /../wiki add -A + git -C /../wiki commit -m "docs(): sincronizar documentação" + git -C /../wiki push + ``` + +> 🔒 **Fronteira Inegociável de Git:** +> Na aplicação principal (``), o agente **NUNCA pode mexer no git** (proibido `git commit`, `git push`, `git merge`, etc.). O versionamento do código da aplicação é mantido exclusivamente pelo usuário (ver `rules/proibido-commit-ia.md`). + +--- + +Para ver todas as opções, comandos e sintaxes completas, consulte [`/documentacao`](./documentacao.md). diff --git a/global/workflows/documentacao.md b/global/workflows/documentacao.md index b7ec4b0..71930c4 100644 --- a/global/workflows/documentacao.md +++ b/global/workflows/documentacao.md @@ -1,9 +1,9 @@ --- type: workflow name: documentacao -description: Acionar o Agente de Documentação para documentar o contexto do chat ou executar comandos específicos nos 6 pilares +description: Acionar o Agente de Documentação para documentar o contexto do chat ou executar comandos específicos nos 6 pilares com versionamento automático na Wiki scope: global -updatedAt: "2026-09-01" +updatedAt: "2026-09-05" --- # Workflow: /documentacao (Agente de Documentação & Memória) @@ -24,9 +24,17 @@ Este workflow aciona o **Agente de Documentação** para gerar, atualizar ou aud - **Pilar 3 (Wiki Usuário):** Atualiza manuais em `/../wiki//` se houver mudanças com impacto no usuário final. - **Pilar 4 (Wiki Dev):** Documenta regras técnicas (`{modulo}.regras-negocio.md`) e ADRs em `/../wiki/dev//`. - **Pilar 5 (Rota IA):** Assegura que novos schemas e rotas estejam refletidos na rota `/llm.md`. - - **Pilar 6 (Memória IA):** Registra o relatório completo da sessão em `/memorias-ia/`. -3. **Entrega de Relatório:** - - Apresenta um resumo claro ao operador de tudo o que foi documentado com links diretos para os arquivos gerados. + - **Pilar 6 (Memória IA):** Registra o relatório completo da sessão no arquivo dedicado `/memorias-ia/sessao-AAAA-MM-DD-slug.md` e indexa a alteração no arquivo central `/memorias-ia/historico-acoes.md` inserindo linha na tabela com as colunas: `Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte`. +3. **Sincronização Git da Wiki (Obrigatório e Exclusivo):** + - Se houver arquivos novos ou alterados em `/../wiki/`: + ```bash + git -C /../wiki add -A + git -C /../wiki commit -m "docs(): sincronizar documentação [contexto]" + git -C /../wiki push + ``` + - **Fronteira Inegociável da Aplicação:** Na aplicação principal (``), o agente **NÃO pode mexer no git** (o versionamento do código-fonte da aplicação permanece sob controle humano exclusivo). +4. **Entrega de Relatório:** + - Apresenta um resumo claro ao operador de tudo o que foi documentado com links diretos para os arquivos gerados e confirmação do push na Wiki. --- @@ -39,7 +47,7 @@ Este workflow aciona o **Agente de Documentação** para gerar, atualizar ou aud | **3. Wiki do Usuário** | `/../wiki//` | Aplicação VitePress com acesso dos usuários (manuais, tutoriais e fluxos). | | **4. Wiki de Desenvolvimento** | `/../wiki/dev//` | Aplicação VitePress com acesso interno dev: regras de negócio (`{modulo}.regras-negocio.md`), modelos de banco, arquitetura e ADRs (`adrs/`). | | **5. Integração de IA** | Rota Backend `/llm.md` | Catálogo de schemas Zod, enums e contratos para consumo por LLMs. | -| **6. Memória da IA** | `/memorias-ia/` | Registros de sessões, otimizações executadas e decisões históricas. | +| **6. Memória da IA** | `/memorias-ia/` | `modulo.yml` (identidade), índice `historico-acoes.md` (`Data \| Memória / Ação \| Arquivo Memoria \| Citações no Código-Fonte`) e memórias de sessão `sessao-AAAA-MM-DD-slug.md`. | --- @@ -55,16 +63,18 @@ Este workflow aciona o **Agente de Documentação** para gerar, atualizar ou aud # Criar ajuda contextual modalX.ajuda.md para modal/tela /documentacao ajuda -# Documentar domínio na Wiki do Usuário (VitePress) +# Documentar domínio na Wiki do Usuário (VitePress) + commit/push na wiki /documentacao wiki-usuario -# Documentar regras de negócio na Wiki Dev (VitePress) +# Documentar regras de negócio na Wiki Dev (VitePress) + commit/push na wiki /documentacao regras -# Criar um ADR na Wiki Dev +# Criar um ADR na Wiki Dev + commit/push na wiki /documentacao adr "" ``` +*Nota:* Qualquer comando que crie ou modifique arquivos na Wiki (`/../wiki`) deve finalizar executando `git add`, `git commit` e `git push` dentro de `../wiki`. + --- ## 🔒 Regras Inegociáveis @@ -73,3 +83,4 @@ Este workflow aciona o **Agente de Documentação** para gerar, atualizar ou aud 2. **Linguagem acessível no usuário:** Sem termos técnicos de TI na Wiki do Usuário ou em `.ajuda.md`. 3. **JSDoc de Aplicação:** Explicar a utilidade prática no sistema, não apenas repetir tipos. 4. **Polimorfismo:** O `.agent` é genérico; personalizações ficam em `./memorias-ia/` e `/../wiki/`. +5. **Fronteira Git e Push Obrigatório na Wiki:** Toda atualização em `/../wiki` DEVE ser commitada e enviada via `git push` exclusivamente dentro do diretório `../wiki`. Na aplicação principal (``), a IA nunca mexe no Git (ver `rules/proibido-commit-ia.md`). diff --git a/rules/autonomia-agente.md b/rules/autonomia-agente.md index 085d6b1..c26a65b 100644 --- a/rules/autonomia-agente.md +++ b/rules/autonomia-agente.md @@ -27,6 +27,7 @@ O agente pode executar sem perguntar: - Gerar JSDoc em funções compartilhadas - Extrair CSS para arquivo co-localizado - Aplicar padrões de nomenclatura já definidos em rules +- Executar `git add`, `git commit` e `git push` exclusivamente no repositório da Wiki (`/../wiki`) ao criar ou atualizar documentações ## Ações que Requerem Confirmação @@ -44,6 +45,7 @@ O agente deve **propor e aguardar aprovação**: O agente **nunca** deve: +- Executar `git commit` ou `git push` no repositório da aplicação (``) - Deletar ou corromper `memorias-ia/modulo.yml` ou memórias/ADRs sem instrução explícita do operador - Assumir ou inventar IDs de módulos ou rotas sem consultar `memorias-ia/modulo.yml` - Alterar artefatos globais (sufixo `.global`) sem justificativa diff --git a/rules/ddd-documentacao-primeiro.md b/rules/ddd-documentacao-primeiro.md index 979f10d..b3fca12 100644 --- a/rules/ddd-documentacao-primeiro.md +++ b/rules/ddd-documentacao-primeiro.md @@ -29,7 +29,7 @@ Todo desenvolvimento e manutenção no ecossistema deve obrigatoriamente respeit | **3. Wiki do Usuário** | `/../wiki//` | Usuários / Operadores | Aplicação VitePress com acesso dos usuários. Manuais de operação completos, tutoriais de uso, conceitos de negócio e fluxos da aplicação. | | **4. Wiki de Desenvolvimento** | `/../wiki/dev//` | Desenvolvedores / Arquitetos | Aplicação VitePress com acesso interno exclusivo da equipe de desenvolvimento. Arquitetura técnica detalhada, modelos de banco, regras de negócio (`{modulo}.regras-negocio.md`), fluxos de filas (BullMQ), CRONs e ADRs. | | **5. Integração de IA** | Rota de Backend `/llm.md` | Agentes de IA / LLMs | Documentação gerada/servida dinamicamente contendo schemas Zod, enums canônicos, endpoints e contratos para consumo por LLMs. | -| **6. Memória das Ações da IA e Identidade** | `/memorias-ia/` | Agentes de IA / Auditoria | Arquivo mandatório `modulo.yml` (`modulo-id`, `modulo-caminho`, `modulo-descricao`, `modulo-tipo`), registros de sessões, histórico de decisões e relatórios de aprimoramento. | +| **6. Memória das Ações da IA e Identidade** | `/memorias-ia/` | Agentes de IA / Auditoria | `modulo.yml` (identidade), índice central `historico-acoes.md` (`Data \| Memória / Ação \| Arquivo Memoria \| Citações no Código-Fonte`) e sessões individuais `sessao-AAAA-MM-DD-slug.md`. | > ℹ️ **Estrutura da Wiki VitePress (`/../wiki`)**: > - `/../wiki//` $\rightarrow$ Aplicação VitePress voltada ao **acesso dos usuários e clientes** (onde `` é o ID do módulo em `memorias-ia/modulo.yml`). @@ -38,7 +38,7 @@ Todo desenvolvimento e manutenção no ecossistema deve obrigatoriamente respeit > 🧩 **Polimorfismo do `.agent` e Identidade do Projeto**: > O repositório `.agent` é **polimórfico e genérico**, sendo compartilhado entre múltiplos projetos do ecossistema. Toda personalização e identidade de cada projeto reside em: > - `./memorias-ia/modulo.yml` (na raiz do projeto pai): **Identificador mandatório** (`modulo-id`, `modulo-caminho`, `modulo-descricao`, `modulo-tipo`). Sempre consultado quando precisar de IDs, rotas base ou stack. -> - `./memorias-ia/`: Registros de ações, sessões e decisões da IA. +> - `./memorias-ia/`: Registros individuais `sessao-AAAA-MM-DD-slug.md` e índice cumulativo `historico-acoes.md`. > - `/../wiki//`: Documentação do módulo com acesso dos usuários (VitePress). > - `/../wiki/dev//`: Documentação técnica do módulo com acesso interno dev (VitePress). @@ -54,7 +54,7 @@ Para toda nova demanda, módulo ou funcionalidade, execute os passos abaixo: - É funcionalidade com impacto no usuário final? $\rightarrow$ Criar/atualizar documentação em `/../wiki//` (Pilar 3). - É componente técnico, arquitetura, serviço ou fila? $\rightarrow$ Criar/atualizar documentação em `/../wiki/dev//` (Pilar 4). - É endpoint, schema ou contrato de API? $\rightarrow$ Assegurar reflexão na rota `/llm.md` (Pilar 5). - - É ação estruturante ou otimização de IA? $\rightarrow$ Registrar memória em `/memorias-ia/` (Pilar 6). + - É ação estruturante ou otimização de IA? $\rightarrow$ Registrar memória em `/memorias-ia/sessao-AAAA-MM-DD-slug.md` e indexar em `historico-acoes.md` (Pilar 6). 2. **Documentar Antes de Codar**: - Redigir a documentação preliminar nos respectivos destinos e templates antes de iniciar a implementação. diff --git a/rules/proibido-commit-ia.md b/rules/proibido-commit-ia.md index d03e1e2..e1bfa04 100644 --- a/rules/proibido-commit-ia.md +++ b/rules/proibido-commit-ia.md @@ -1,34 +1,38 @@ --- type: rule name: proibido-commit-ia -description: A IA nunca pode executar git commit, git push ou qualquer operação que altere o histórico do repositório +description: A IA nunca mexe no git da aplicação principal; commit e push são permitidos e obrigatórios exclusivamente no repositório da Wiki (../wiki) scope: global trigger: always_on -updatedAt: "2026-06-19" +updatedAt: "2026-09-05" --- -# Regra: Proibido Commit pela IA +# Regra: Proibido Commit pela IA na Aplicação e Exceção Obrigatória da Wiki ## Contexto -O controle de versão é responsabilidade exclusiva do usuário humano. A IA pode preparar alterações, criar arquivos, editar código e até sugerir mensagens de commit — mas NUNCA deve executar comandos que alterem o histórico do repositório. +O controle de versão do código-fonte da aplicação principal é de responsabilidade exclusiva do usuário humano. A IA pode preparar alterações, criar arquivos, editar código e até sugerir mensagens de commit — mas NUNCA deve executar comandos que alterem o histórico do repositório da aplicação. + +Por outro lado, o repositório central de documentação (`/../wiki`), que hospeda a Wiki do Usuário (Pilar 3) e a Wiki de Desenvolvimento (Pilar 4), é uma base viva de documentação. Quando atualizado pelo agente (ex.: via `/doc`, `/documentacao` ou workflows DDD), o commit e o push DEVEM ser executados automaticamente pelo agente, restritos exclusivamente a esse repositório. ## Regra -A IA **NUNCA** deve executar os seguintes comandos (nem variações deles): +### 1. Na Aplicação Principal (``) — RIGOROSAMENTE PROIBIDO MEXER NO GIT -- `git commit` -- `git push` -- `git merge` -- `git rebase` -- `git tag` -- `git reset` -- `git revert` -- `git cherry-pick` -- `git stash drop` -- `git branch -d` / `git branch -D` +A IA **NUNCA** deve executar comandos que alterem o histórico do repositório da aplicação (nem variações deles): -### Comandos permitidos (somente leitura e staging) +- `git commit` ❌ +- `git push` ❌ +- `git merge` ❌ +- `git rebase` ❌ +- `git tag` ❌ +- `git reset` ❌ +- `git revert` ❌ +- `git cherry-pick` ❌ +- `git stash drop` ❌ +- `git branch -d` / `git branch -D` ❌ + +**Comandos permitidos na aplicação (somente leitura e staging):** - `git status` ✅ - `git diff` ✅ @@ -39,37 +43,52 @@ A IA **NUNCA** deve executar os seguintes comandos (nem variações deles): - `git ls-files` ✅ - `git show` ✅ -## Exemplos +### 2. No Repositório da Wiki (`/../wiki`) — COMMIT E PUSH OBRIGATÓRIOS -❌ **Errado** — commitar automaticamente: -```sh -git add -A && git commit -m "fix: corrigir bug" +Sempre que a documentação em `/../wiki` for criada ou modificada (manuais de usuário em `/`, regras de negócio em `dev//`, ADRs em `dev//adrs/`, etc.), o agente **DEVE obrigatoriamente** realizar o commit e push das alterações: + +```bash +# Executar estritamente apontando para a pasta ../wiki +git -C /../wiki add -A +git -C /../wiki commit -m "docs(): " +git -C /../wiki push ``` -❌ **Errado** — push automático: +**Fronteira Inegociável:** Esta permissão é restrita e isolada ao repositório `/../wiki`. A IA **nunca** deve executar commit ou push na aplicação principal. + +## Exemplos + +### ❌ Errado — commitar automaticamente na aplicação ```sh +# Na raiz da aplicação (): PROIBIDO +git add -A && git commit -m "fix: corrigir bug" git push origin main ``` -✅ **Correto** — preparar e informar: +### ✅ Correto — na aplicação principal, apenas preparar e sugerir ```sh git add -A git status -# Informar ao usuário: "Alterações staged. Revise e faça o commit quando estiver pronto." +# Informar ao usuário: "Alterações staged na aplicação. Revise e faça o commit quando estiver pronto." +# Sugestão de commit: git commit -m "feat: adicionar validação de schema" ``` -✅ **Correto** — sugerir mensagem de commit: -``` -Sugestão de commit: -git commit -m "feat: adicionar validação de schema no endpoint /usuarios" +### ✅ Correto — na Wiki, commitar e enviar automaticamente +```sh +# No repositório de documentação (/../wiki): OBRIGATÓRIO +git -C ../wiki add -A +git -C ../wiki commit -m "docs(e-licencie): atualizar regras de negócio e manuais" +git -C ../wiki push ``` ## Impacto -- **Segurança:** o usuário mantém controle total sobre o que entra no histórico -- **Revisão:** toda alteração pode ser inspecionada antes de ser commitada -- **Reversibilidade:** evita commits acidentais que poluem o histórico +- **Segurança na aplicação:** O desenvolvedor mantém controle total sobre o histórico de código da aplicação. +- **Agilidade e perenidade na wiki:** A documentação fica sempre sincronizada e publicada imediatamente sem fricção manual. +- **Isolamento de escopo:** Fronteira clara e explícita entre repositório de aplicação e repositório de documentação. ## Referências -- Princípio de autonomia controlada: a IA executa, o humano decide +- Rule: `rules/ddd-documentacao-primeiro.md` +- Skill: `skills/documentacao/SKILL.md` +- Workflow: `global/workflows/documentacao.md` diff --git a/skills/doc/SKILL b/skills/doc/SKILL index b0464a1..7714d16 100644 --- a/skills/doc/SKILL +++ b/skills/doc/SKILL @@ -1,13 +1,13 @@ --- name: doc -description: Alias rápido para /documentacao - acionar o Agente de Documentação & Memória +description: Alias rápido para /documentacao - acionar o Agente de Documentação & Memória com versionamento automático na Wiki scope: global -updatedAt: "2026-09-01" +updatedAt: "2026-09-05" --- # Skill: /doc (Alias para /documentacao) -Atalho rápido para o **Agente de Documentação & Memória** cobrindo os 6 pilares canônicos: +Atalho rápido para o **Agente de Documentação & Memória** cobrindo os 6 pilares canônicos do Documentation-Driven Development (DDD): > ⚡ **Modo Padrão Sem Parâmetros:** Se executado apenas como `/doc`, documenta e sincroniza automaticamente todo o contexto e decisões da conversa atual no chat. @@ -16,6 +16,35 @@ Atalho rápido para o **Agente de Documentação & Memória** cobrindo os 6 pila - `3. Wiki Usuário` $\rightarrow$ `/../wiki//` (VitePress com acesso dos usuários) - `4. Wiki Dev` $\rightarrow$ `/../wiki/dev//` (VitePress com acesso interno dev e regras `{modulo}.regras-negocio.md`) - `5. Rota IA` $\rightarrow$ Rota do backend `/llm.md` -- `6. Memória IA` $\rightarrow$ `/memorias-ia/` +- `6. Memória IA` $\rightarrow$ `/memorias-ia/` (gera `sessao-AAAA-MM-DD-slug.md` e indexa no arquivo central `historico-acoes.md`) -Para ver a documentação completa e exemplos, consulte [`skills/documentacao/SKILL.md`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/skills/documentacao/SKILL.md). +--- + +## 🧠 Pilar 6: Memória da IA e Histórico de Ações (`memorias-ia/`) + +Ao documentar a sessão (seja via `/doc` ou `/documentacao`): +1. **Arquivo da Sessão:** O agente gera o registro detalhado em `/memorias-ia/sessao-AAAA-MM-DD-slug.md` descrevendo contexto, causa raiz, solução técnica, citações no código-fonte e validações. +2. **Índice de Ações (`historico-acoes.md`):** O agente registra/atualiza a linha correspondente na tabela de `/memorias-ia/historico-acoes.md`: + ```markdown + | Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte | + | :--- | :--- | :--- | :--- | + | **AAAA-MM-DD** | [Descrição da Ação] | [`sessao-AAAA-MM-DD-slug.md`](./sessao-AAAA-MM-DD-slug.md) | `caminho/arquivo.ts`
`outro/arquivo.vue` | + ``` + + +## 🔄 Versionamento Git Obrigatório da Wiki (`/../wiki`) + +Sempre que a documentação na Wiki (Pilares 3 e 4) for alterada ou criada: +- O agente **DEVE obrigatoriamente executar commit e push** das alterações exclusivamente no repositório da Wiki: + ```bash + git -C /../wiki add -A + git -C /../wiki commit -m "docs(): sincronizar documentação" + git -C /../wiki push + ``` + +> 🔒 **Fronteira Inegociável de Git:** +> Na aplicação principal (``), o agente **NUNCA pode mexer no git** (proibido `git commit`, `git push`, `git merge`, etc.). O controle de versão do código da aplicação é de responsabilidade humana exclusiva (ver `rules/proibido-commit-ia.md`). + +--- + +Para ver a especificação completa, comandos com argumentos e exemplos, consulte [`skills/documentacao/SKILL.md`](../documentacao/SKILL.md). diff --git a/skills/doc/SKILL.md b/skills/doc/SKILL.md index b0464a1..7714d16 100644 --- a/skills/doc/SKILL.md +++ b/skills/doc/SKILL.md @@ -1,13 +1,13 @@ --- name: doc -description: Alias rápido para /documentacao - acionar o Agente de Documentação & Memória +description: Alias rápido para /documentacao - acionar o Agente de Documentação & Memória com versionamento automático na Wiki scope: global -updatedAt: "2026-09-01" +updatedAt: "2026-09-05" --- # Skill: /doc (Alias para /documentacao) -Atalho rápido para o **Agente de Documentação & Memória** cobrindo os 6 pilares canônicos: +Atalho rápido para o **Agente de Documentação & Memória** cobrindo os 6 pilares canônicos do Documentation-Driven Development (DDD): > ⚡ **Modo Padrão Sem Parâmetros:** Se executado apenas como `/doc`, documenta e sincroniza automaticamente todo o contexto e decisões da conversa atual no chat. @@ -16,6 +16,35 @@ Atalho rápido para o **Agente de Documentação & Memória** cobrindo os 6 pila - `3. Wiki Usuário` $\rightarrow$ `/../wiki//` (VitePress com acesso dos usuários) - `4. Wiki Dev` $\rightarrow$ `/../wiki/dev//` (VitePress com acesso interno dev e regras `{modulo}.regras-negocio.md`) - `5. Rota IA` $\rightarrow$ Rota do backend `/llm.md` -- `6. Memória IA` $\rightarrow$ `/memorias-ia/` +- `6. Memória IA` $\rightarrow$ `/memorias-ia/` (gera `sessao-AAAA-MM-DD-slug.md` e indexa no arquivo central `historico-acoes.md`) -Para ver a documentação completa e exemplos, consulte [`skills/documentacao/SKILL.md`](file:///home/luiz/Arquivos/DEV/Industria/SIGMA2026/.agent/skills/documentacao/SKILL.md). +--- + +## 🧠 Pilar 6: Memória da IA e Histórico de Ações (`memorias-ia/`) + +Ao documentar a sessão (seja via `/doc` ou `/documentacao`): +1. **Arquivo da Sessão:** O agente gera o registro detalhado em `/memorias-ia/sessao-AAAA-MM-DD-slug.md` descrevendo contexto, causa raiz, solução técnica, citações no código-fonte e validações. +2. **Índice de Ações (`historico-acoes.md`):** O agente registra/atualiza a linha correspondente na tabela de `/memorias-ia/historico-acoes.md`: + ```markdown + | Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte | + | :--- | :--- | :--- | :--- | + | **AAAA-MM-DD** | [Descrição da Ação] | [`sessao-AAAA-MM-DD-slug.md`](./sessao-AAAA-MM-DD-slug.md) | `caminho/arquivo.ts`
`outro/arquivo.vue` | + ``` + + +## 🔄 Versionamento Git Obrigatório da Wiki (`/../wiki`) + +Sempre que a documentação na Wiki (Pilares 3 e 4) for alterada ou criada: +- O agente **DEVE obrigatoriamente executar commit e push** das alterações exclusivamente no repositório da Wiki: + ```bash + git -C /../wiki add -A + git -C /../wiki commit -m "docs(): sincronizar documentação" + git -C /../wiki push + ``` + +> 🔒 **Fronteira Inegociável de Git:** +> Na aplicação principal (``), o agente **NUNCA pode mexer no git** (proibido `git commit`, `git push`, `git merge`, etc.). O controle de versão do código da aplicação é de responsabilidade humana exclusiva (ver `rules/proibido-commit-ia.md`). + +--- + +Para ver a especificação completa, comandos com argumentos e exemplos, consulte [`skills/documentacao/SKILL.md`](../documentacao/SKILL.md). diff --git a/skills/documentacao/SKILL b/skills/documentacao/SKILL index d92124c..74fbd6f 100644 --- a/skills/documentacao/SKILL +++ b/skills/documentacao/SKILL @@ -1,8 +1,8 @@ --- name: documentacao -description: Acionar o Agente de Documentação & Memória para documentar o contexto da conversa ou gerar artefatos nos 6 pilares canônicos +description: Acionar o Agente de Documentação & Memória para documentar o contexto da conversa ou gerar artefatos nos 6 pilares canônicos com versionamento automático na Wiki scope: global -updatedAt: "2026-09-01" +updatedAt: "2026-09-05" --- # Skill / Workflow: /documentacao @@ -20,7 +20,15 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza 3. **Pilar 3 (Wiki do Usuário):** Atualiza tutoriais e manuais em `/../wiki//` (aplicação VitePress com acesso dos usuários). 4. **Pilar 4 (Wiki de Desenvolvimento):** Documenta regras de negócio (`{modulo}.regras-negocio.md`), modelos e ADRs em `/../wiki/dev//` (aplicação VitePress com acesso interno dev). 5. **Pilar 5 (Rota IA):** Assegura que novos schemas e rotas estejam refletidos na rota `/llm.md`. -6. **Pilar 6 (Memória IA):** Registra o relatório completo da sessão em `/memorias-ia/`. +6. **Pilar 6 (Memória IA):** Registra o relatório completo da sessão no arquivo individual `/memorias-ia/sessao-AAAA-MM-DD-slug.md` e atualiza o índice central `/memorias-ia/historico-acoes.md` adicionando a linha correspondente na tabela com as colunas: `Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte`. +7. **Sincronização Git da Wiki (Obrigatório e Exclusivo):** + - Se houver arquivos novos ou alterados em `/../wiki/`: + ```bash + git -C /../wiki add -A + git -C /../wiki commit -m "docs(): sincronizar documentação [contexto]" + git -C /../wiki push + ``` + - **Trava de Segurança da Aplicação:** Na aplicação (``), o agente **NÃO pode mexer no git** (o versionamento do código-fonte da aplicação permanece sob controle humano exclusivo). --- @@ -33,7 +41,7 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza | **3. Wiki do Usuário** | `/../wiki//` | Usuários / Clientes | Aplicação VitePress com acesso dos usuários (manuais, tutoriais e fluxos). | | **4. Wiki de Desenvolvimento** | `/../wiki/dev//` | Desenvolvedores / Arquitetos | Aplicação VitePress com acesso interno dev: regras de negócio (`{modulo}.regras-negocio.md`), arquitetura e ADRs (`adrs/`). | | **5. Integração de IA** | Rota Backend `/llm.md` | Agentes de IA / LLMs | Catálogo de schemas Zod, enums e contratos para consumo por LLMs. | -| **6. Memória da IA** | `/memorias-ia/` | Agentes de IA / Auditoria | Registros de sessões, otimizações executadas e decisões históricas. | +| **6. Memória da IA** | `/memorias-ia/` | Agentes de IA / Auditoria | `modulo.yml` (identidade), índice `historico-acoes.md` (`Data \| Memória / Ação \| Arquivo Memoria \| Citações no Código-Fonte`) e sessões individuais `sessao-AAAA-MM-DD-slug.md`. | --- @@ -49,16 +57,18 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza # Criar ajuda contextual modalX.ajuda.md para modal/tela /documentacao ajuda -# Documentar domínio na Wiki do Usuário (VitePress) +# Documentar domínio na Wiki do Usuário (VitePress) + commit/push na wiki /documentacao wiki-usuario -# Documentar regras de negócio na Wiki Dev (VitePress) +# Documentar regras de negócio na Wiki Dev (VitePress) + commit/push na wiki /documentacao regras -# Criar um ADR na Wiki Dev +# Criar um ADR na Wiki Dev + commit/push na wiki /documentacao adr "" ``` +*Nota:* Qualquer comando que crie ou modifique arquivos na Wiki (`/../wiki`) deve finalizar executando `git add`, `git commit` e `git push` dentro de `../wiki`. + --- ## 🔒 Regras Inegociáveis @@ -67,3 +77,4 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza 2. **Linguagem acessível no usuário:** Sem termos técnicos de TI na Wiki do Usuário ou em `.ajuda.md`. 3. **JSDoc de Aplicação:** Explicar a utilidade prática no sistema, não apenas repetir tipos. 4. **Polimorfismo:** O `.agent` é genérico; personalizações ficam em `./memorias-ia/` e `/../wiki/`. +5. **Fronteira Git e Push Obrigatório na Wiki:** Toda atualização em `/../wiki` DEVE ser commitada e enviada via `git push` exclusivamente dentro do diretório `../wiki`. Na aplicação principal (``), a IA nunca mexe no Git (ver `rules/proibido-commit-ia.md`). diff --git a/skills/documentacao/SKILL.md b/skills/documentacao/SKILL.md index d92124c..74fbd6f 100644 --- a/skills/documentacao/SKILL.md +++ b/skills/documentacao/SKILL.md @@ -1,8 +1,8 @@ --- name: documentacao -description: Acionar o Agente de Documentação & Memória para documentar o contexto da conversa ou gerar artefatos nos 6 pilares canônicos +description: Acionar o Agente de Documentação & Memória para documentar o contexto da conversa ou gerar artefatos nos 6 pilares canônicos com versionamento automático na Wiki scope: global -updatedAt: "2026-09-01" +updatedAt: "2026-09-05" --- # Skill / Workflow: /documentacao @@ -20,7 +20,15 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza 3. **Pilar 3 (Wiki do Usuário):** Atualiza tutoriais e manuais em `/../wiki//` (aplicação VitePress com acesso dos usuários). 4. **Pilar 4 (Wiki de Desenvolvimento):** Documenta regras de negócio (`{modulo}.regras-negocio.md`), modelos e ADRs em `/../wiki/dev//` (aplicação VitePress com acesso interno dev). 5. **Pilar 5 (Rota IA):** Assegura que novos schemas e rotas estejam refletidos na rota `/llm.md`. -6. **Pilar 6 (Memória IA):** Registra o relatório completo da sessão em `/memorias-ia/`. +6. **Pilar 6 (Memória IA):** Registra o relatório completo da sessão no arquivo individual `/memorias-ia/sessao-AAAA-MM-DD-slug.md` e atualiza o índice central `/memorias-ia/historico-acoes.md` adicionando a linha correspondente na tabela com as colunas: `Data | Memória / Ação | Arquivo Memoria | Citações no Código-Fonte`. +7. **Sincronização Git da Wiki (Obrigatório e Exclusivo):** + - Se houver arquivos novos ou alterados em `/../wiki/`: + ```bash + git -C /../wiki add -A + git -C /../wiki commit -m "docs(): sincronizar documentação [contexto]" + git -C /../wiki push + ``` + - **Trava de Segurança da Aplicação:** Na aplicação (``), o agente **NÃO pode mexer no git** (o versionamento do código-fonte da aplicação permanece sob controle humano exclusivo). --- @@ -33,7 +41,7 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza | **3. Wiki do Usuário** | `/../wiki//` | Usuários / Clientes | Aplicação VitePress com acesso dos usuários (manuais, tutoriais e fluxos). | | **4. Wiki de Desenvolvimento** | `/../wiki/dev//` | Desenvolvedores / Arquitetos | Aplicação VitePress com acesso interno dev: regras de negócio (`{modulo}.regras-negocio.md`), arquitetura e ADRs (`adrs/`). | | **5. Integração de IA** | Rota Backend `/llm.md` | Agentes de IA / LLMs | Catálogo de schemas Zod, enums e contratos para consumo por LLMs. | -| **6. Memória da IA** | `/memorias-ia/` | Agentes de IA / Auditoria | Registros de sessões, otimizações executadas e decisões históricas. | +| **6. Memória da IA** | `/memorias-ia/` | Agentes de IA / Auditoria | `modulo.yml` (identidade), índice `historico-acoes.md` (`Data \| Memória / Ação \| Arquivo Memoria \| Citações no Código-Fonte`) e sessões individuais `sessao-AAAA-MM-DD-slug.md`. | --- @@ -49,16 +57,18 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza # Criar ajuda contextual modalX.ajuda.md para modal/tela /documentacao ajuda -# Documentar domínio na Wiki do Usuário (VitePress) +# Documentar domínio na Wiki do Usuário (VitePress) + commit/push na wiki /documentacao wiki-usuario -# Documentar regras de negócio na Wiki Dev (VitePress) +# Documentar regras de negócio na Wiki Dev (VitePress) + commit/push na wiki /documentacao regras -# Criar um ADR na Wiki Dev +# Criar um ADR na Wiki Dev + commit/push na wiki /documentacao adr "" ``` +*Nota:* Qualquer comando que crie ou modifique arquivos na Wiki (`/../wiki`) deve finalizar executando `git add`, `git commit` e `git push` dentro de `../wiki`. + --- ## 🔒 Regras Inegociáveis @@ -67,3 +77,4 @@ Esta skill aciona o **Agente de Documentação & Memória** para gerar, atualiza 2. **Linguagem acessível no usuário:** Sem termos técnicos de TI na Wiki do Usuário ou em `.ajuda.md`. 3. **JSDoc de Aplicação:** Explicar a utilidade prática no sistema, não apenas repetir tipos. 4. **Polimorfismo:** O `.agent` é genérico; personalizações ficam em `./memorias-ia/` e `/../wiki/`. +5. **Fronteira Git e Push Obrigatório na Wiki:** Toda atualização em `/../wiki` DEVE ser commitada e enviada via `git push` exclusivamente dentro do diretório `../wiki`. Na aplicação principal (``), a IA nunca mexe no Git (ver `rules/proibido-commit-ia.md`). diff --git a/skills/documentar-regras-negocio/SKILL.md b/skills/documentar-regras-negocio/SKILL.md index 079ff72..c0491a8 100644 --- a/skills/documentar-regras-negocio/SKILL.md +++ b/skills/documentar-regras-negocio/SKILL.md @@ -103,3 +103,4 @@ Se o módulo introduziu ou alterou arquitetura ou regras consolidadas do módulo - Atualizar a especificação técnica na **Wiki de Desenvolvimento** em `/../wiki/dev//`. - Criar ou atualizar ADR em `/../wiki/dev//adrs/` via skill `documentar-decisao-tecnica`. - Registrar decisões e ações na memória em `/memorias-ia/`. +- **Sincronização Git:** Executar commit e push exclusivamente na Wiki (`git -C /../wiki add -A && git -C /../wiki commit -m "docs(): regras de negócio" && git -C /../wiki push`). Na aplicação (``), nunca mexer no git. diff --git a/validar-setup.sh b/validar-setup.sh index 3242686..8ac388d 100644 --- a/validar-setup.sh +++ b/validar-setup.sh @@ -70,6 +70,16 @@ if [ -f "$MODULO_YML" ]; then echo -e " ${VERMELHO}✗${RESET} Chave 'modulo-tipo' ausente." TOTAL_ERROS=$((TOTAL_ERROS + 1)) fi + + # Validar memorias-ia/historico-acoes.md (Pilar 6 - Índice de Ações) + HISTORICO_MD="$ROOT_DIR/memorias-ia/historico-acoes.md" + if [ -f "$HISTORICO_MD" ]; then + echo -e " ${VERDE}✓${RESET} Índice memorias-ia/historico-acoes.md encontrado." + else + echo -e " ${AMARELO}⚠${RESET} Arquivo memorias-ia/historico-acoes.md não encontrado." + echo -e " Execute: cp .agent/DOCUMENTACAO/templates/historico-acoes.md.template memorias-ia/historico-acoes.md" + TOTAL_AVISOS=$((TOTAL_AVISOS + 1)) + fi else echo -e " ${VERMELHO}✗ CRÍTICO: Arquivo memorias-ia/modulo.yml NÃO encontrado!${RESET}" echo -e " Execute: cp .agent/DOCUMENTACAO/templates/modulo.yml.template memorias-ia/modulo.yml" @@ -79,7 +89,7 @@ fi # 2. Validar Wiki do Usuário (Pilar 3) echo -e "\n${NEGRITO}[2/6] Wiki do Usuário (Pilar 3)${RESET}" if [ -n "$MODULO_ID" ]; then - WIKI_USER_DIR="$ROOT_DIR//../wiki/$MODULO_ID" + WIKI_USER_DIR="$ROOT_DIR/../wiki/$MODULO_ID" if [ -d "$WIKI_USER_DIR" ]; then echo -e " ${VERDE}✓${RESET} Diretório encontrado em: /../wiki/$MODULO_ID/" else @@ -93,7 +103,7 @@ fi # 3. Validar Wiki de Desenvolvimento (Pilar 4) echo -e "\n${NEGRITO}[3/6] Wiki de Desenvolvimento (Pilar 4)${RESET}" if [ -n "$MODULO_ID" ]; then - WIKI_DEV_DIR="$ROOT_DIR//../wiki/dev/$MODULO_ID" + WIKI_DEV_DIR="$ROOT_DIR/../wiki/dev/$MODULO_ID" if [ -d "$WIKI_DEV_DIR" ]; then echo -e " ${VERDE}✓${RESET} Diretório encontrado em: /../wiki/dev/$MODULO_ID/" else @@ -106,7 +116,7 @@ fi # 4. Validar Integração de IA (/llm.md - Pilar 5) echo -e "\n${NEGRITO}[4/6] Integração de IA /llm.md (Pilar 5)${RESET}" -BACK_DIRS=$(find "$ROOT_DIR" -maxdepth 2 -name "*-back" -type d 2>/dev/null || true) +BACK_DIRS=$(find "$ROOT_DIR" -maxdepth 2 -iname "*-back" -type d 2>/dev/null || true) if [ -n "$BACK_DIRS" ]; then if grep -rq "llm\.md" $BACK_DIRS/src 2>/dev/null; then echo -e " ${VERDE}✓${RESET} Rota /llm.md configurada no backend." diff --git a/verificar-linhas.sh b/verificar-linhas.sh index e7376b5..e170b40 100644 --- a/verificar-linhas.sh +++ b/verificar-linhas.sh @@ -17,6 +17,9 @@ RESULTADO=$( -name node_modules -o \ -name .git -o \ -name dist -o \ + -name .output -o \ + -name .nuxt -o \ + -name .cache -o \ -name build \ \) -prune \ -o \