stealthos-cli 0.1.0-alpha.3 → 0.1.0-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/ai/CONTRACT.md +110 -0
  2. package/ai/INDEX.md +203 -0
  3. package/ai/README.md +434 -0
  4. package/ai/ROUTER.md +288 -0
  5. package/ai/agents/README.md +103 -0
  6. package/ai/agents/architect.md +59 -0
  7. package/ai/agents/backend-engineer.md +62 -0
  8. package/ai/agents/founder.md +45 -0
  9. package/ai/agents/frontend-engineer.md +61 -0
  10. package/ai/agents/product-manager.md +56 -0
  11. package/ai/agents/qa-engineer.md +53 -0
  12. package/ai/agents/researcher.md +74 -0
  13. package/ai/agents/reviewer.md +73 -0
  14. package/ai/agents/security-engineer.md +59 -0
  15. package/ai/agents/sre-engineer.md +70 -0
  16. package/ai/agents/tech-lead.md +70 -0
  17. package/ai/architecture/README.md +35 -0
  18. package/ai/architecture/components.md +24 -0
  19. package/ai/architecture/containers.md +30 -0
  20. package/ai/architecture/event-flows.md +36 -0
  21. package/ai/architecture/sequence-diagrams.md +38 -0
  22. package/ai/architecture/system-context.md +46 -0
  23. package/ai/architecture/threat-modeling.md +40 -0
  24. package/ai/blueprints/README.md +67 -0
  25. package/ai/blueprints/_schema.json +40 -0
  26. package/ai/blueprints/ai-platform.json +28 -0
  27. package/ai/blueprints/crm.json +22 -0
  28. package/ai/blueprints/game.json +25 -0
  29. package/ai/blueprints/mobile.json +24 -0
  30. package/ai/blueprints/realtime.json +22 -0
  31. package/ai/blueprints/saas.json +25 -0
  32. package/ai/blueprints/telemetry.json +30 -0
  33. package/ai/blueprints/web.json +23 -0
  34. package/ai/bootstrap/discovery-questions.md +117 -0
  35. package/ai/bootstrap/dispatcher.md +85 -0
  36. package/ai/bootstrap/existing-project.md +191 -0
  37. package/ai/bootstrap/new-project.md +127 -0
  38. package/ai/bootstrap/tech-mapping.md +164 -0
  39. package/ai/clients/README.md +114 -0
  40. package/ai/clients/antigravity.md +125 -0
  41. package/ai/clients/claude-code.md +65 -0
  42. package/ai/clients/cline.md +69 -0
  43. package/ai/clients/codex-aider-cli.md +82 -0
  44. package/ai/clients/continue.md +67 -0
  45. package/ai/clients/copilot.md +49 -0
  46. package/ai/clients/cursor.md +81 -0
  47. package/ai/clients/snippets/mcp-absolute-paths.json +9 -0
  48. package/ai/clients/snippets/mcp-http.json +7 -0
  49. package/ai/clients/snippets/mcp-stdio.json +9 -0
  50. package/ai/clients/trae.md +69 -0
  51. package/ai/clients/windsurf.md +71 -0
  52. package/ai/core/pipeline/execution-engine.md +157 -0
  53. package/ai/engineering/README.md +32 -0
  54. package/ai/engineering/observability/incident-response.md +82 -0
  55. package/ai/evals/protocol-tests.md +150 -0
  56. package/ai/evolution/agent-evolution.md +161 -0
  57. package/ai/evolution/improvements.md +91 -0
  58. package/ai/evolution/learnings.md +49 -0
  59. package/ai/evolution/patterns-discovered.md +48 -0
  60. package/ai/execution/README.md +33 -0
  61. package/ai/execution/backlog.md +27 -0
  62. package/ai/execution/milestones.md +26 -0
  63. package/ai/execution/roadmap.md +30 -0
  64. package/ai/execution/sprint.md +42 -0
  65. package/ai/governance/README.md +34 -0
  66. package/ai/governance/architecture-principles.md +99 -0
  67. package/ai/governance/definition-of-done.md +88 -0
  68. package/ai/governance/definition-of-ready.md +69 -0
  69. package/ai/governance/engineering-principles.md +70 -0
  70. package/ai/governance/quality-gates.md +85 -0
  71. package/ai/governance/security-policies.md +84 -0
  72. package/ai/hooks/enforce-audit.ps1 +41 -0
  73. package/ai/hooks/enforce-audit.sh +39 -0
  74. package/ai/hooks/guard-edit.ps1 +182 -0
  75. package/ai/hooks/guard-edit.sh +161 -0
  76. package/ai/hooks/inject-os-reminder.ps1 +40 -0
  77. package/ai/hooks/inject-os-reminder.sh +16 -0
  78. package/ai/manifest.json +238 -0
  79. package/ai/memory/_detected-stack.json +33 -0
  80. package/ai/memory/_summary.md +49 -0
  81. package/ai/memory/archive/.gitkeep +3 -0
  82. package/ai/memory/completed-tasks.md +156 -0
  83. package/ai/memory/decisions.md +257 -0
  84. package/ai/memory/errors-and-solutions.md +41 -0
  85. package/ai/memory/known-issues.md +40 -0
  86. package/ai/memory/pending-tasks.md +37 -0
  87. package/ai/memory/project-context.md +67 -0
  88. package/ai/operating-system/architecture.md +54 -0
  89. package/ai/operating-system/coding-standards.md +84 -0
  90. package/ai/operating-system/folder-structure.md +126 -0
  91. package/ai/operating-system/performance-rules.md +86 -0
  92. package/ai/operating-system/quality-control.md +81 -0
  93. package/ai/operating-system/security-rules.md +91 -0
  94. package/ai/operating-system/workflow.md +86 -0
  95. package/ai/product/README.md +24 -0
  96. package/ai/product/business-rules.md +26 -0
  97. package/ai/product/personas.md +29 -0
  98. package/ai/product/user-journeys.md +30 -0
  99. package/ai/product/vision.md +35 -0
  100. package/ai/rules/behavior.md +45 -0
  101. package/ai/rules/do.md +47 -0
  102. package/ai/rules/dont.md +46 -0
  103. package/ai/rules/execution-flow.md +125 -0
  104. package/ai/rules/structural-constraints.md +59 -0
  105. package/ai/rules/structure-canon.md +116 -0
  106. package/ai/runtime.md +179 -0
  107. package/ai/scripts/detect-stack.ps1 +166 -0
  108. package/ai/scripts/detect-stack.sh +172 -0
  109. package/ai/scripts/init-ai-os.ps1 +215 -0
  110. package/ai/scripts/init-ai-os.sh +99 -0
  111. package/ai/scripts/lint-os.ps1 +99 -0
  112. package/ai/scripts/lint-os.sh +85 -0
  113. package/ai/scripts/start-os.ps1 +151 -0
  114. package/ai/scripts/start-os.sh +141 -0
  115. package/ai/server/README.md +105 -0
  116. package/ai/server/aios-server.mjs +2134 -0
  117. package/ai/server/package-lock.json +802 -0
  118. package/ai/server/package.json +31 -0
  119. package/ai/server/src/analyzer/graph-builder.ts +92 -0
  120. package/ai/server/src/analyzer/index.ts +191 -0
  121. package/ai/server/src/analyzer/module-mapper.ts +171 -0
  122. package/ai/server/src/analyzer/smell-detector.ts +54 -0
  123. package/ai/server/src/analyzer/stack-detector.ts +70 -0
  124. package/ai/server/src/index.ts +16 -0
  125. package/ai/server/src/packager/context-builder.ts +217 -0
  126. package/ai/server/src/packager/index.ts +3 -0
  127. package/ai/server/src/packager/memory-injector.ts +128 -0
  128. package/ai/server/src/packager/module-summarizer.ts +60 -0
  129. package/ai/server/src/packager/token-estimator.ts +26 -0
  130. package/ai/server/src/snapshot/index.ts +3 -0
  131. package/ai/server/src/snapshot/snapshot-creator.ts +206 -0
  132. package/ai/server/src/snapshot/snapshot-diff.ts +86 -0
  133. package/ai/server/src/snapshot/snapshot-restore.ts +14 -0
  134. package/ai/server/src/types.ts +94 -0
  135. package/ai/server/tsconfig.json +26 -0
  136. package/ai/skills/architecture-design.md +82 -0
  137. package/ai/skills/backend-engineering.md +57 -0
  138. package/ai/skills/database-design.md +76 -0
  139. package/ai/skills/frontend-engineering.md +63 -0
  140. package/ai/skills/performance.md +73 -0
  141. package/ai/skills/scalability.md +84 -0
  142. package/ai/skills/security.md +71 -0
  143. package/ai/skills/testing.md +77 -0
  144. package/ai/specs/ADR/ADR-0002-typescript-runtime.md +103 -0
  145. package/ai/specs/ADR/ADR-0004-runtime-orchestrator.md +94 -0
  146. package/ai/specs/ADR/ADR-0005-workflow-engine.md +105 -0
  147. package/ai/specs/ADR/ADR-0006-runtime-state.md +104 -0
  148. package/ai/specs/ADR/ADR-0007-state-compiler-drift-context-layers-artifact-index.md +82 -0
  149. package/ai/specs/ADR/ADR-0008-intent-runtime-discovery-branching.md +93 -0
  150. package/ai/specs/ADR/ADR-0009-confidence-system-maturity-tracking.md +113 -0
  151. package/ai/specs/ADR/ADR-0010-structural-architecture-standards.md +121 -0
  152. package/ai/specs/ADR/ADR-0011-mcp-prompts.md +86 -0
  153. package/ai/specs/ADR/ADR-0012-stealthos-hybrid-architecture.md +174 -0
  154. package/ai/specs/ADR/_TEMPLATE.md +60 -0
  155. package/ai/specs/BRD/_TEMPLATE.md +50 -0
  156. package/ai/specs/PRD/_TEMPLATE.md +72 -0
  157. package/ai/specs/README.md +43 -0
  158. package/ai/specs/RFC/RFC-0001-runtime-orchestrator.md +149 -0
  159. package/ai/specs/RFC/RFC-0002-runtime-orchestrator-extended.md +134 -0
  160. package/ai/specs/RFC/_TEMPLATE.md +61 -0
  161. package/ai/specs/RUNBOOKS/_TEMPLATE.md +68 -0
  162. package/ai/specs/SDD/_TEMPLATE.md +104 -0
  163. package/ai/specs/TASKS/_TEMPLATE.md +52 -0
  164. package/ai/tools/debugging.md +64 -0
  165. package/ai/tools/dependency-analysis.md +46 -0
  166. package/ai/tools/internet-research.md +42 -0
  167. package/ai/tools/mcp-discovery.md +44 -0
  168. package/ai/workflows/_schema.json +81 -0
  169. package/ai/workflows/init.json +148 -0
  170. package/ai/workflows/sync.json +71 -0
  171. package/ai/workflows/work.json +91 -0
  172. package/package.json +42 -36
  173. package/scripts/bundle-ai.mjs +58 -0
  174. package/src/cli.mjs +83 -79
  175. package/src/commands/install.mjs +35 -11
  176. package/src/commands/run.mjs +117 -0
  177. package/src/lib/resolve-source.mjs +27 -10
@@ -0,0 +1,126 @@
1
+ ---
2
+ version: 1.0.0
3
+ updated: 2026-05-14
4
+ tier: conditional
5
+ tokens: ~500
6
+ load: setup, refactor
7
+ triggers: estrutura, pasta, folder, organização
8
+ ---
9
+
10
+ # Folder Structure
11
+
12
+ > Organização canônica de diretórios. Adapte conforme stack — mas mantenha o princípio: organização por **domínio/feature**, não por **tipo de arquivo**.
13
+ >
14
+ > **Camada acima desta**: organização por **especificação técnica** (Frontend, Backend, BD, Infra, Integrações, Tools, APIs, MCPs). Ver [`bootstrap/tech-mapping.md`](../bootstrap/tech-mapping.md). Cada especificação pode (e deve) **internamente** ser organizada por feature/domínio conforme as regras abaixo.
15
+
16
+ ## Organização macro (por especificação técnica)
17
+
18
+ Em projetos com múltiplas especificações, a raiz reflete as especificações que existem (não inventar):
19
+
20
+ ```
21
+ projeto/
22
+ ├── frontend/ # ou src/ se for monorepo simplificado
23
+ ├── backend/ # ou server/
24
+ ├── infra/ # docker-compose.yml, k8s/, terraform/
25
+ ├── integrations/ # clients de terceiros isolados (opcional)
26
+ ├── scripts/ # tools internas (opcional)
27
+ ├── samples/ # data samples gitignored (opcional)
28
+ ├── docs/ # documentação humana (opcional)
29
+ └── .ai/ # AI OS deste projeto
30
+ ```
31
+
32
+ > Em monorepos pequenos, é comum ver `src/` (front) + `server/` (back) na raiz, sem `frontend/` explícito — aceitável; o `architecture.md` documenta o mapeamento real.
33
+
34
+ ---
35
+
36
+ ## Anti-padrão: organização por tipo
37
+
38
+ ```
39
+ src/
40
+ ├── controllers/
41
+ ├── services/
42
+ ├── models/
43
+ └── views/
44
+ ```
45
+
46
+ ❌ Cada feature está espalhada em 4 lugares. Mudança simples toca 4 pastas.
47
+
48
+ ## Padrão: organização por feature
49
+
50
+ ```
51
+ src/
52
+ ├── orders/
53
+ │ ├── order.entity.ts
54
+ │ ├── order.service.ts
55
+ │ ├── order.controller.ts
56
+ │ ├── order.repository.ts
57
+ │ └── order.test.ts
58
+ ├── users/
59
+ │ └── ...
60
+ └── shared/
61
+ ├── http/
62
+ ├── db/
63
+ └── utils/
64
+ ```
65
+
66
+ ✅ Tudo de "orders" no mesmo lugar. `shared/` para o que é genuinamente reutilizado.
67
+
68
+ ## Exemplos por Stack
69
+
70
+ ### Node.js / TypeScript backend
71
+
72
+ ```
73
+ src/
74
+ ├── domains/ # bounded contexts
75
+ │ ├── orders/
76
+ │ ├── users/
77
+ │ └── billing/
78
+ ├── infrastructure/ # adapters concretos
79
+ │ ├── db/
80
+ │ ├── http/
81
+ │ └── queue/
82
+ ├── shared/ # util genuinamente cross-domain
83
+ ├── config/ # carregamento de env tipado
84
+ └── server.ts # bootstrap
85
+ tests/ # ou colocado junto do código (.test.ts)
86
+ ```
87
+
88
+ ### React / Next.js
89
+
90
+ ```
91
+ src/
92
+ ├── app/ # rotas (Next 13+)
93
+ ├── components/
94
+ │ ├── ui/ # primitivos sem lógica de domínio
95
+ │ └── feature/ # com lógica de domínio
96
+ ├── hooks/
97
+ ├── lib/ # utils sem React
98
+ ├── styles/
99
+ └── types/
100
+ ```
101
+
102
+ ### Python (FastAPI / Django)
103
+
104
+ ```
105
+ src/
106
+ ├── apps/ # por feature
107
+ │ ├── orders/
108
+ │ └── users/
109
+ ├── core/ # config, db base, middlewares
110
+ ├── shared/
111
+ └── main.py
112
+ tests/
113
+ ```
114
+
115
+ ## Princípios
116
+
117
+ 1. **Profundidade controlada**: máximo 3-4 níveis. Acima disso, repensar.
118
+ 2. **`shared/` é caro**: só vai para lá o que é usado por 2+ domínios E não pertence a nenhum.
119
+ 3. **Testes ao lado do código** (`order.test.ts`) > tudo em `tests/` separado, especialmente em projetos grandes.
120
+ 4. **Convenção sobre configuração**: arquivos com sufixo `.entity`, `.service`, `.repository` para encontrar rápido.
121
+
122
+ ## Onde NÃO pôr coisa
123
+
124
+ - Pasta `utils/` virando lixeira → revisar trimestralmente.
125
+ - `helpers/` genéricos sem dono → costuma indicar má modelagem do domínio.
126
+ - Arquivos `misc.ts`, `common.ts`, `stuff.ts` → renomear ou eliminar.
@@ -0,0 +1,86 @@
1
+ ---
2
+ version: 1.0.0
3
+ updated: 2026-05-14
4
+ tier: conditional
5
+ tokens: ~500
6
+ load: performance
7
+ triggers: performance, latência, p95, p99, slo, sla, budget
8
+ ---
9
+
10
+ # Performance Rules
11
+
12
+ > Regras operacionais. Complementa `skills/performance.md` (que é metodológico).
13
+
14
+ ## Princípios
15
+
16
+ 1. **Medir antes de otimizar.** Sem profile, sem decisão.
17
+ 2. **Otimizar o caminho quente.** 5% do código, 95% do tempo.
18
+ 3. **Não regredir.** Performance é feature; mudança que degrada precisa ser justificada.
19
+
20
+ ## Orçamentos (defaults; ajustar por projeto em `memory/project-context.md`)
21
+
22
+ ### Backend HTTP
23
+ - p50 < 100ms
24
+ - p95 < 250ms
25
+ - p99 < 500ms
26
+ - error rate < 0.1%
27
+
28
+ ### Frontend (Core Web Vitals)
29
+ - LCP < 2.5s
30
+ - INP < 200ms
31
+ - CLS < 0.1
32
+ - TTFB < 800ms
33
+
34
+ ### Banco de dados
35
+ - p99 query time < 100ms para queries OLTP
36
+ - Sem query > 1s sem justificativa
37
+
38
+ ### Background jobs
39
+ - SLA por tipo de job, registrado em `memory/project-context.md`
40
+
41
+ ## Regras Obrigatórias
42
+
43
+ - **Toda chamada de rede tem timeout.** Sem exceção.
44
+ - **Toda lista paginada.** LIMIT + cursor/offset.
45
+ - **Sem `SELECT *`** em produção.
46
+ - **Índice ANTES de query lenta chegar a prod** quando o padrão de acesso é conhecido.
47
+ - **N+1 detectado em review = bloqueia merge.**
48
+
49
+ ## Padrões aplicáveis
50
+
51
+ ### Caching
52
+ - Cache miss + invalidação errada > sem cache. Pensar invalidação antes.
53
+ - TTL adequado ao churn dos dados.
54
+ - Não cachear resposta de operação autenticada sem chave por usuário.
55
+
56
+ ### Async
57
+ - I/O bound → async/await ou worker pool.
58
+ - Webhook recebido → ack rápido, processar em background.
59
+
60
+ ### Loading
61
+ - Frontend: lazy load de rotas, componentes pesados, imagens fora do viewport.
62
+ - Backend: lazy init de recursos caros (DB pool já é assim por default).
63
+
64
+ ### Batching
65
+ - N requisições para o mesmo serviço → batchar quando possível.
66
+ - Inserções em loop → bulk insert.
67
+
68
+ ## Monitoramento
69
+
70
+ - Dashboards de latência (p50/p95/p99), throughput, error rate.
71
+ - Alerta em violação de SLO (não em CPU/memória diretamente — usar Golden Signals).
72
+ - Trace amostrado em produção; trace completo em staging.
73
+
74
+ ## Anti-padrões a rejeitar
75
+
76
+ - "Está rápido localmente" como prova.
77
+ - Adicionar cache porque "vai melhorar".
78
+ - Trocar lib por outra "mais performática" sem benchmark do caso real.
79
+ - Otimização que reduz 10ms em endpoint de 5 req/dia.
80
+
81
+ ## Performance Regression
82
+
83
+ Mudança que regride > 10% em alguma métrica chave:
84
+ 1. Bloqueia merge.
85
+ 2. Investigar causa.
86
+ 3. Otimizar OU justificar trade-off em ADR.
@@ -0,0 +1,81 @@
1
+ ---
2
+ version: 1.0.0
3
+ updated: 2026-05-14
4
+ tier: conditional
5
+ tokens: ~500
6
+ load: quality, review
7
+ triggers: review, quality, dod, definition of done, ci, lint
8
+ ---
9
+
10
+ # Quality Control
11
+
12
+ > Definições de "feito" e portões de qualidade. O que NÃO passar bloqueia entrega.
13
+
14
+ ## Definition of Done
15
+
16
+ Uma tarefa só está "pronta" se:
17
+
18
+ - [ ] Código implementado e revisado (auto + humano se PR).
19
+ - [ ] Lint sem erros (warnings revisados).
20
+ - [ ] Type-check sem erros.
21
+ - [ ] Testes novos cobrem a mudança.
22
+ - [ ] Suite de testes existente passa 100%.
23
+ - [ ] Smoke-test manual em ambiente próximo ao real (se UI/runtime).
24
+ - [ ] Documentação atualizada se contratos públicos mudaram.
25
+ - [ ] `memory/completed-tasks.md` atualizado.
26
+ - [ ] ADR criado se houve decisão arquitetural.
27
+ - [ ] Sem segredo, log de PII ou debug code no diff.
28
+
29
+ ## Portões Automatizados (CI)
30
+
31
+ | Etapa | Falha bloqueia merge? |
32
+ |---|---|
33
+ | Lint | sim |
34
+ | Type-check | sim |
35
+ | Unit tests | sim |
36
+ | Integration tests | sim |
37
+ | Build | sim |
38
+ | Security scan (deps) | sim para crítico/alto |
39
+ | Coverage | só se cair abaixo de threshold definido |
40
+ | E2E | sim para PR para main |
41
+
42
+ ## Code Review — checklist
43
+
44
+ ### Correção
45
+ - [ ] Faz o que diz no título do PR?
46
+ - [ ] Cobre edge cases óbvios?
47
+ - [ ] Erros tratados ou propagados conscientemente?
48
+
49
+ ### Design
50
+ - [ ] Encaixa na arquitetura existente?
51
+ - [ ] Acoplamento justificado?
52
+ - [ ] Não duplica algo que já existe?
53
+
54
+ ### Legibilidade
55
+ - [ ] Nomes são bons?
56
+ - [ ] Funções têm tamanho razoável?
57
+ - [ ] Comentários onde precisam e só onde precisam?
58
+
59
+ ### Testes
60
+ - [ ] Testes cobrem o comportamento, não a implementação?
61
+ - [ ] Testes de regressão para bugs corrigidos?
62
+
63
+ ### Segurança
64
+ - [ ] Input validado?
65
+ - [ ] Sem segredo no diff?
66
+ - [ ] Sem PII em log?
67
+
68
+ ### Performance
69
+ - [ ] Sem N+1 introduzido?
70
+ - [ ] Sem loop síncrono sobre I/O?
71
+
72
+ ## Métricas de saúde
73
+
74
+ - **Build time**: monitorar tendência. Lentidão crônica vira atrito.
75
+ - **Test runtime**: testes lentos → quarentena ou otimização.
76
+ - **Flakiness**: zero tolerância em main. Quarentena imediata, fix em <1 semana.
77
+ - **Dívida técnica**: alocar % do tempo (10-20%) para reduzir, não esperar "tempo livre".
78
+
79
+ ## Quality gate de regressão
80
+
81
+ Bug em prod → criar teste que **falha sem o fix** antes de fazer o fix. Garante que o teste exercita o bug.
@@ -0,0 +1,91 @@
1
+ ---
2
+ version: 1.0.0
3
+ updated: 2026-05-14
4
+ tier: conditional
5
+ tokens: ~700
6
+ load: security
7
+ triggers: segurança, security, auth, senha, token, compliance, lgpd, gdpr, pci
8
+ ---
9
+
10
+ # Security Rules
11
+
12
+ > Regras operacionais de segurança aplicadas em todo o projeto. Complementa `skills/security.md` (que é mais técnico-conceitual).
13
+
14
+ ## Não-negociáveis
15
+
16
+ 1. **Nenhum segredo em código.** Nunca. `.env` no `.gitignore`.
17
+ 2. **HTTPS sempre.** HTTP só em loopback de dev.
18
+ 3. **Auth em toda rota não-pública.** Default: privado; whitelist explícita o público.
19
+ 4. **Validação em borda.** Todo input externo (HTTP, fila, arquivo, env) passa por schema.
20
+ 5. **PII minimizada.** Coletar só o necessário; expirar / anonimizar quando o propósito acabar.
21
+
22
+ ## Gestão de Segredos
23
+
24
+ - Cofre: AWS Secrets Manager, GCP Secret Manager, Vault, doppler, ou equivalente.
25
+ - Injeção em runtime via env vars.
26
+ - `.env.example` versionado com chaves vazias.
27
+ - Rotação: trimestral mínimo; imediata se vazado.
28
+ - Chave de longa vida (>1 ano) → exceção que exige justificativa.
29
+
30
+ ## Autenticação / Autorização
31
+
32
+ - Senhas: argon2id (preferência) ou bcrypt cost ≥ 12.
33
+ - MFA disponível para todos; obrigatório para roles administrativos.
34
+ - Sessões: token opaco server-side OU JWT curto + refresh.
35
+ - JWT em cookie `HttpOnly`, `Secure`, `SameSite=Lax`.
36
+ - Rate limit em login, signup, password reset.
37
+
38
+ ## Logging
39
+
40
+ - **Nunca logar**: senhas, tokens, chaves, números de cartão, CPF/SSN completos, conteúdo de mensagens privadas.
41
+ - **Mascarar ao logar**: `email: a***@b***.com`, `card: ****1234`.
42
+ - **Log de eventos de segurança**: login, logout, falha de auth, mudança de permissão, acesso a dado sensível.
43
+
44
+ ## Headers HTTP obrigatórios em produção
45
+
46
+ ```
47
+ Strict-Transport-Security: max-age=63072000; includeSubDomains; preload
48
+ Content-Security-Policy: (configurada por projeto, default-src 'self')
49
+ X-Content-Type-Options: nosniff
50
+ X-Frame-Options: DENY
51
+ Referrer-Policy: strict-origin-when-cross-origin
52
+ Permissions-Policy: (mínimo necessário)
53
+ ```
54
+
55
+ ## Input
56
+
57
+ - Schema na entrada (Zod, Pydantic, JSON Schema). Reject unknown fields.
58
+ - Limites: tamanho de payload, profundidade, tamanho de strings.
59
+ - File upload: validar tipo por magic bytes, não só por extensão.
60
+
61
+ ## Dependências
62
+
63
+ - Auditoria em CI (`npm audit`, `pip-audit`, `cargo audit`, Snyk, Dependabot).
64
+ - Crítico/alto → fix em <7 dias.
65
+ - Médio → fix no próximo ciclo.
66
+ - Baixo → revisão trimestral.
67
+
68
+ ## Compliance
69
+
70
+ - **LGPD** (Brasil): finalidade, mínimo, transparência, direito à exclusão.
71
+ - **GDPR** (UE): consentimento, portabilidade, esquecimento.
72
+ - **PCI-DSS** (cartões): nunca armazenar PAN/CVV em claro.
73
+ - **HIPAA** (saúde EUA): criptografia, auditoria, BAA.
74
+
75
+ → Aplicabilidade registrada em `memory/project-context.md`.
76
+
77
+ ## Incidentes
78
+
79
+ 1. Detecção → rotação imediata de credenciais expostas.
80
+ 2. Contenção → desabilitar superfície atacável.
81
+ 3. Comunicação → stakeholders + (se LGPD/GDPR) autoridades em prazo legal.
82
+ 4. Erradicação → fix + verificação.
83
+ 5. Lições → registrar em `memory/errors-and-solutions.md` + `evolution/learnings.md`.
84
+
85
+ ## Proibições absolutas
86
+
87
+ - `eval()` / equivalentes em input do usuário.
88
+ - Desserialização de dado não confiável sem schema.
89
+ - SQL concatenado com input.
90
+ - Comparar segredos com `==` em vez de comparação constante.
91
+ - Disabling de TLS verification em produção.
@@ -0,0 +1,86 @@
1
+ ---
2
+ version: 1.0.0
3
+ updated: 2026-05-14
4
+ tier: conditional
5
+ tokens: ~600
6
+ load: workflow, git, ci
7
+ triggers: pr, pull request, merge, branch, commit, release, deploy, ci, cd
8
+ ---
9
+
10
+ # Workflow
11
+
12
+ > Como o trabalho flui do início (ideia/bug) à entrega.
13
+
14
+ ## Fluxo de Tarefa
15
+
16
+ ```
17
+ 1. Origem (request, bug, idea)
18
+
19
+ 2. Registrar em pending-tasks.md (com critério de aceite)
20
+
21
+ 3. Triagem (prioridade, dependências)
22
+
23
+ 4. Pickup → mover para "in-progress"
24
+
25
+ 5. Branch (feat/, fix/, chore/, refactor/)
26
+
27
+ 6. Implementação seguindo rules/execution-flow.md
28
+
29
+ 7. Auto-revisão (lint, types, tests, leitura do diff)
30
+
31
+ 8. PR / Review humano
32
+
33
+ 9. Merge
34
+
35
+ 10. Mover para completed-tasks.md
36
+
37
+ 11. Atualizar decisions.md / errors-and-solutions.md se aplicável
38
+ ```
39
+
40
+ ## Branches
41
+
42
+ - `main` (ou `master`): sempre verde, sempre deployável.
43
+ - `feat/<slug>`, `fix/<slug>`, `chore/<slug>`, `refactor/<slug>`, `docs/<slug>`.
44
+ - Branch de vida curta: <1 semana ideal, <3 dias ótimo.
45
+ - Rebase contra main antes de PR para minimizar merge commits.
46
+
47
+ ## Commits
48
+
49
+ - Conventional Commits (`feat:`, `fix:`, `chore:`, `refactor:`, `docs:`, `test:`).
50
+ - Mensagem clara: o **quê** muda e (se não óbvio) **por quê**.
51
+ - Atômicos: um commit = uma mudança lógica.
52
+
53
+ ## Pull Requests
54
+
55
+ - Título: imperativo, < 70 caracteres.
56
+ - Descrição obrigatória:
57
+ - **O que muda**
58
+ - **Por quê** (link para issue/ADR)
59
+ - **Como testar**
60
+ - **Risco / rollback**
61
+ - Tamanho: < 400 linhas mudadas ideal. PR gigante = revisão ruim.
62
+
63
+ ## Review
64
+
65
+ - Bloqueia: bug, segurança, perf grave, arquitetura.
66
+ - Sugere: estilo, naming, refactor opcional.
67
+ - Não bloquear por preferência pessoal sem fundamento.
68
+
69
+ ## Deploy
70
+
71
+ - CI verde obrigatório antes de merge.
72
+ - Deploy automatizado pós-merge em staging.
73
+ - Promoção para prod: manual ou agendada, com janela definida.
74
+ - Rollback plan documentado para mudanças críticas.
75
+
76
+ ## Postmortem
77
+
78
+ - Incidente em prod → postmortem blameless dentro de 1 semana.
79
+ - Registrar em `memory/errors-and-solutions.md` (sintoma + causa + correção + prevenção).
80
+ - Padrão recorrente → `evolution/patterns-discovered.md`.
81
+
82
+ ## Cadência sugerida
83
+
84
+ - Daily async: o que fiz, o que farei, bloqueios (curto).
85
+ - Weekly: revisão de `pending-tasks.md` — repriorizar, descartar obsoletos.
86
+ - Monthly: revisão de `evolution/` — promover learnings consolidados a `operating-system/`.
@@ -0,0 +1,24 @@
1
+ ---
2
+ version: 1.0.0
3
+ updated: 2026-05-15
4
+ tier: on_demand
5
+ audience: humano + product-manager agent
6
+ ---
7
+
8
+ # Product — Visão, personas, regras de negócio, jornadas
9
+
10
+ > Artefatos de **produto** mantidos pelo `product-manager` agent (+ founder). Vivem **separados de `specs/`**: produto = "o quê e por quê"; specs = "como em detalhe".
11
+
12
+ ## Arquivos
13
+
14
+ | Arquivo | Conteúdo |
15
+ |---|---|
16
+ | `vision.md` | Visão do produto (longo prazo, 1-3 anos) |
17
+ | `personas.md` | Perfis de usuário com motivações e dores |
18
+ | `business-rules.md` | Regras de negócio (não-funcionais centrais) |
19
+ | `user-journeys.md` | Jornadas principais (do usuário → resultado) |
20
+ | `requirements/PRD/` | PRDs aceitos (atalho para `specs/PRD/`) |
21
+ | `requirements/BRD/` | BRDs aceitos (atalho para `specs/BRD/`) |
22
+ | `requirements/RFC/` | RFCs (atalho para `specs/RFC/`) |
23
+
24
+ > Diretórios `requirements/*/` são opcionalmente alimentados por link/cópia — facilita "tour de produto" em um lugar só. Se preferir ficar enxuto, deletar `requirements/` e referenciar `specs/` direto.
@@ -0,0 +1,26 @@
1
+ ---
2
+ version: 1.0.0
3
+ updated: 2026-05-15
4
+ tier: conditional
5
+ mutable: true
6
+ ---
7
+
8
+ # Business Rules
9
+
10
+ > Regras de negócio invariantes — independem da tecnologia. Mudança aqui exige discussão com Founder.
11
+
12
+ ## Formato
13
+
14
+ ```
15
+ ## BR-NNN — <nome>
16
+ - Categoria: validação | autorização | cálculo | fluxo | compliance
17
+ - Descrição: <regra em linguagem natural>
18
+ - Origem: <regulação, decisão de produto, acordo comercial>
19
+ - Onde é aplicada: <camada front/back/ambos>
20
+ - Penalidade se violada: <multa, perda de cliente, dado corrompido>
21
+ - Testes que cobrem: <referência>
22
+ ```
23
+
24
+ ## Regras ativas
25
+
26
+ <!-- preencher por projeto -->
@@ -0,0 +1,29 @@
1
+ ---
2
+ version: 1.0.0
3
+ updated: 2026-05-15
4
+ tier: conditional
5
+ mutable: true
6
+ ---
7
+
8
+ # Personas
9
+
10
+ > Perfis arquetípicos de usuário. Cada persona = 1 segmento real com motivações, dores e contexto distintos. Personas devem ser observadas (entrevistas, dados), não inventadas.
11
+
12
+ ## Formato
13
+
14
+ ```
15
+ ## P-NNN — <nome arquetípico> (ex.: "Maria, gerente de frota")
16
+
17
+ - Segmento: <em qual segmento>
18
+ - Demografia / contexto: <idade, papel, ferramentas atuais>
19
+ - Objetivo principal: <o que quer alcançar>
20
+ - Dores atuais: <o que não funciona>
21
+ - Métrica de sucesso (do ponto de vista da persona): <como mede>
22
+ - Como usaria o produto: <cenário típico>
23
+ - Hábitos: <quando usa, com que frequência, em qual device>
24
+ - Não é o usuário-alvo: <persona X> — porque ...
25
+ ```
26
+
27
+ ## Personas ativas
28
+
29
+ <!-- preencher por projeto com base em pesquisa real -->
@@ -0,0 +1,30 @@
1
+ ---
2
+ version: 1.0.0
3
+ updated: 2026-05-15
4
+ tier: conditional
5
+ mutable: true
6
+ ---
7
+
8
+ # User Journeys
9
+
10
+ > Jornadas principais do ponto de vista da persona: do gatilho à recompensa. Mantém alinhamento entre features fragmentadas.
11
+
12
+ ## Formato
13
+
14
+ ```
15
+ ## J-NNN — <nome da jornada>
16
+ - Persona: P-NNN (ver `personas.md`)
17
+ - Gatilho: <o que inicia>
18
+ - Estados:
19
+ 1. <estado/passo>
20
+ 2. <estado/passo>
21
+ 3. ...
22
+ - Recompensa: <resultado para a persona>
23
+ - Métrica de jornada: <tempo até completar | % de conclusão | NPS pós-jornada>
24
+ - Pontos de fricção conhecidos: <lista>
25
+ - Features que tocam: <referências PRD-NNNN>
26
+ ```
27
+
28
+ ## Jornadas ativas
29
+
30
+ <!-- preencher por projeto -->
@@ -0,0 +1,35 @@
1
+ ---
2
+ version: 1.0.0
3
+ updated: 2026-05-15
4
+ tier: conditional
5
+ mutable: true
6
+ ---
7
+
8
+ # Vision
9
+
10
+ > **Visão de 1-3 anos.** Reflete o "para onde estamos indo", não o que estamos fazendo este mês.
11
+
12
+ ## Norte
13
+ 1-2 frases. "Em [horizonte], queremos que [persona] consiga [ação central] de [maneira diferenciada]."
14
+
15
+ ## Por quê agora
16
+ O que mudou no mundo / mercado / tecnologia que torna isso possível ou urgente?
17
+
18
+ ## Para quem (alto nível)
19
+ Apontador para `personas.md`. Aqui só os 1-2 segmentos prioritários.
20
+
21
+ ## Critério de sucesso em 12 meses
22
+ 3-5 indicadores binários ou métricos.
23
+ - [ ] <métrica 1>
24
+ - [ ] <métrica 2>
25
+
26
+ ## Princípios de produto
27
+ - <princípio 1 — ex.: "preferir automação a configuração">
28
+ - <princípio 2>
29
+ - <princípio 3>
30
+
31
+ ## Não-objetivos
32
+ O que **explicitamente** não queremos virar. Evita drift.
33
+
34
+ ## Atualização
35
+ Revisar a cada 3-6 meses. Mudança grande exige conversa estratégica registrada em `memory/decisions.md`.
@@ -0,0 +1,45 @@
1
+ ---
2
+ version: 1.0.0
3
+ updated: 2026-05-14
4
+ tier: core
5
+ tokens: ~400
6
+ load: always
7
+ ---
8
+
9
+ # Regras de Comportamento
10
+
11
+ ## Postura
12
+
13
+ - **Engenheiro sênior, não assistente passivo.** Questione premissas mal formuladas antes de executar.
14
+ - **Direto e técnico.** Sem floreios, sem auto-elogios, sem "claro!", "ótima pergunta!".
15
+ - **Calibre confiança.** Diga "não sei" quando não souber. Diga "suposição" quando supor.
16
+ - **Pense antes de agir.** Plano > execução cega.
17
+
18
+ ## Tom
19
+
20
+ - Português técnico, sem gírias, sem emojis (exceto se solicitado).
21
+ - Frases curtas. Parágrafos curtos. Cite arquivos como `caminho/arquivo.ext:linha`.
22
+ - Não narre o que vai fazer em prosa antes de fazer — faça e relate o resultado.
23
+
24
+ ## Granularidade de Resposta
25
+
26
+ | Tipo de pergunta | Resposta esperada |
27
+ |---|---|
28
+ | Pergunta factual simples | 1 frase |
29
+ | Decisão de design | 2-3 frases + trade-off principal |
30
+ | Implementação | Plano breve → código → validação |
31
+ | Exploratória ("o que acha de...") | Recomendação + alternativa + razão (sem implementar) |
32
+ | Bug | Causa raiz → correção mínima → teste |
33
+
34
+ ## Honestidade Operacional
35
+
36
+ - Nunca afirmar que algo foi testado se não foi.
37
+ - Nunca afirmar que um arquivo existe sem ter verificado.
38
+ - Nunca afirmar que uma dependência funciona sem ter executado.
39
+ - Se a tarefa é grande, dizer onde está incompleto antes de declarar "pronto".
40
+
41
+ ## Resposta a Conflitos
42
+
43
+ - Conflito entre instrução do usuário e regra deste OS → seguir a instrução do usuário, mas avisar.
44
+ - Conflito entre `rules/dont.md` e qualquer outra coisa → `dont.md` vence sempre.
45
+ - Ambiguidade → perguntar, não inventar.