wegho-agentes 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/.agents/AGENT_WORKFLOW.md +528 -0
  2. package/.agents/AI_COMPATIBILITY.md +332 -0
  3. package/.agents/CLI.md +222 -0
  4. package/.agents/README.md +130 -0
  5. package/.agents/cli.js +389 -0
  6. package/.agents/code-auditor-agent.ts +333 -0
  7. package/.agents/config.ts +145 -0
  8. package/.agents/context-loader.ts +300 -0
  9. package/.agents/core/agent-parallelizer.test.ts +94 -0
  10. package/.agents/core/agent-parallelizer.ts +108 -0
  11. package/.agents/core/architecture-agent.ts +237 -0
  12. package/.agents/core/base-agent.ts +311 -0
  13. package/.agents/core/cache-manager.test.ts +147 -0
  14. package/.agents/core/cache-manager.ts +184 -0
  15. package/.agents/core/documentation-agent.ts +183 -0
  16. package/.agents/core/feedback-collector.ts +207 -0
  17. package/.agents/core/frontend-agent.ts +210 -0
  18. package/.agents/core/inventory-agent.ts +582 -0
  19. package/.agents/core/memory-system.ts +397 -0
  20. package/.agents/core/quality-agent.ts +268 -0
  21. package/.agents/core/retry-utility.test.ts +165 -0
  22. package/.agents/core/retry-utility.ts +140 -0
  23. package/.agents/core/security-agent.ts +217 -0
  24. package/.agents/core/workflow-validator.test.ts +171 -0
  25. package/.agents/core/workflow-validator.ts +158 -0
  26. package/.agents/domains/README.md +53 -0
  27. package/.agents/domains/logistics/route-agent.ts +177 -0
  28. package/.agents/domains/news/cms-agent.ts +158 -0
  29. package/.agents/domains/news/seo-agent.ts +170 -0
  30. package/.agents/domains/production/production-control-agent.ts +169 -0
  31. package/.agents/example-learning-system.js +118 -0
  32. package/.agents/init.ts +164 -0
  33. package/.agents/memory/architecture-agent/failures.json +1 -0
  34. package/.agents/memory/architecture-agent/learnings.json +1 -0
  35. package/.agents/memory/architecture-agent/specialty.md +31 -0
  36. package/.agents/memory/architecture-agent/successes.json +16 -0
  37. package/.agents/memory/cms-agent/failures.json +1 -0
  38. package/.agents/memory/cms-agent/learnings.json +1 -0
  39. package/.agents/memory/cms-agent/specialty.md +30 -0
  40. package/.agents/memory/cms-agent/successes.json +16 -0
  41. package/.agents/memory/documentation-agent/failures.json +1 -0
  42. package/.agents/memory/documentation-agent/learnings.json +1 -0
  43. package/.agents/memory/documentation-agent/specialty.md +33 -0
  44. package/.agents/memory/documentation-agent/successes.json +16 -0
  45. package/.agents/memory/frontend-agent/failures.json +1 -0
  46. package/.agents/memory/frontend-agent/learnings.json +1 -0
  47. package/.agents/memory/frontend-agent/specialty.md +30 -0
  48. package/.agents/memory/frontend-agent/successes.json +16 -0
  49. package/.agents/memory/inventory-agent/failures.json +1 -0
  50. package/.agents/memory/inventory-agent/inventory/index.json +8 -0
  51. package/.agents/memory/inventory-agent/inventory/types.json +77716 -0
  52. package/.agents/memory/inventory-agent/inventory/variables.json +405 -0
  53. package/.agents/memory/inventory-agent/learnings.json +1 -0
  54. package/.agents/memory/inventory-agent/specialty.md +129 -0
  55. package/.agents/memory/inventory-agent/successes.json +30 -0
  56. package/.agents/memory/production-control-agent/failures.json +1 -0
  57. package/.agents/memory/production-control-agent/learnings.json +1 -0
  58. package/.agents/memory/production-control-agent/specialty.md +29 -0
  59. package/.agents/memory/production-control-agent/successes.json +16 -0
  60. package/.agents/memory/quality-agent/failures.json +16 -0
  61. package/.agents/memory/quality-agent/learnings.json +1 -0
  62. package/.agents/memory/quality-agent/specialty.md +31 -0
  63. package/.agents/memory/quality-agent/successes.json +1 -0
  64. package/.agents/memory/reference-repositories.json +271 -0
  65. package/.agents/memory/route-agent/failures.json +1 -0
  66. package/.agents/memory/route-agent/learnings.json +1 -0
  67. package/.agents/memory/route-agent/specialty.md +29 -0
  68. package/.agents/memory/route-agent/successes.json +16 -0
  69. package/.agents/memory/security-agent/failures.json +1 -0
  70. package/.agents/memory/security-agent/learnings.json +1 -0
  71. package/.agents/memory/security-agent/specialty.md +31 -0
  72. package/.agents/memory/security-agent/successes.json +16 -0
  73. package/.agents/memory/seo-agent/failures.json +1 -0
  74. package/.agents/memory/seo-agent/learnings.json +1 -0
  75. package/.agents/memory/seo-agent/specialty.md +31 -0
  76. package/.agents/memory/seo-agent/successes.json +16 -0
  77. package/.agents/orchestrator.ts +438 -0
  78. package/.agents/project-discovery-agent.ts +342 -0
  79. package/.agents/security/pentesting-agent.py +387 -0
  80. package/.agents/security/python-bridge.ts +193 -0
  81. package/.agents/security/vulnerability-db.json +201 -0
  82. package/.agents/task-analyzer-agent.ts +346 -0
  83. package/.agents/test-init-context.js +67 -0
  84. package/INSTALL.md +300 -0
  85. package/LICENSE +21 -0
  86. package/README.md +315 -0
  87. package/docs/AGENT_RULES.md +292 -0
  88. package/docs/BUILD_HISTORY.md +65 -0
  89. package/docs/DESIGN_SYSTEM.md +256 -0
  90. package/docs/LEARNING_SYSTEM.md +326 -0
  91. package/docs/SYMBOLS_TREE.md +182 -0
  92. package/docs/VERSION.md +6 -0
  93. package/docs/architecture.md +111 -0
  94. package/package.json +60 -0
@@ -0,0 +1,326 @@
1
+ # Sistema de Agentes com Aprendizado Contínuo
2
+
3
+ ## 🎯 Visão Geral
4
+
5
+ Sistema inteligente onde cada agente possui memória persistente, aprende com sucessos e falhas, e o orquestrador seleciona os melhores agentes baseado em histórico de performance.
6
+
7
+ ## 🚀 Início Rápido
8
+
9
+ ### 1. Instalação
10
+
11
+ ```bash
12
+ # Já incluído no sistema de agentes
13
+ cd seu-projeto
14
+ node .agents/test-init-context.js
15
+ ```
16
+
17
+ ### 2. Uso Básico
18
+
19
+ ```javascript
20
+ const { IntelligentOrchestrator } = require('./.agents/orchestrator');
21
+ const { ContextLoader } = require('./.agents/context-loader');
22
+
23
+ // Carregar contexto
24
+ const contextLoader = new ContextLoader();
25
+ const context = await contextLoader.loadContext();
26
+
27
+ // Criar orquestrador
28
+ const orchestrator = new IntelligentOrchestrator(context);
29
+
30
+ // Executar tarefa
31
+ const result = await orchestrator.orchestrateTask(
32
+ 'Criar componente de login com validação'
33
+ );
34
+
35
+ // Fornecer feedback
36
+ await orchestrator.provideFeedback(result.taskId, 'frontend-agent', {
37
+ satisfied: true,
38
+ likes: ['Validação implementada', 'Acessibilidade OK'],
39
+ dislikes: [],
40
+ suggestions: ['Adicionar animações']
41
+ });
42
+ ```
43
+
44
+ ## 📁 Estrutura de Memória
45
+
46
+ ```
47
+ .agents/memory/
48
+ ├── frontend-agent/
49
+ │ ├── specialty.md # Especialidade e responsabilidades
50
+ │ ├── successes.json # Histórico de sucessos
51
+ │ ├── failures.json # Histórico de falhas
52
+ │ └── learnings.json # Padrões aprendidos
53
+ ├── security-agent/
54
+ │ └── ...
55
+ └── ...
56
+ ```
57
+
58
+ ## 🧠 Como Funciona o Aprendizado
59
+
60
+ ### 1. Registro Automático
61
+
62
+ Cada vez que um agente executa uma tarefa:
63
+ - ✅ **Sucesso**: Registrado em `successes.json`
64
+ - ❌ **Falha**: Registrado em `failures.json`
65
+
66
+ ### 2. Feedback do Usuário
67
+
68
+ Após cada tarefa, você pode fornecer feedback:
69
+
70
+ ```javascript
71
+ await orchestrator.provideFeedback(taskId, agentName, {
72
+ satisfied: true,
73
+ likes: ['Feature X', 'Implementação Y'],
74
+ dislikes: ['Problema Z'],
75
+ suggestions: ['Melhorar W']
76
+ });
77
+ ```
78
+
79
+ ### 3. Geração de Aprendizados
80
+
81
+ O sistema analisa feedback e gera aprendizados:
82
+ - **Padrões positivos**: "Repetir: Feature X"
83
+ - **Padrões negativos**: "Evitar: Problema Z"
84
+ - **Sugestões**: "Considerar: Melhorar W"
85
+
86
+ ### 4. Aplicação em Tarefas Futuras
87
+
88
+ Em tarefas similares, agentes:
89
+ - 🔍 Consultam memória para casos parecidos
90
+ - 💡 Aplicam recomendações aprendidas
91
+ - ⚠️ Alertam sobre padrões problemáticos
92
+
93
+ ## 🎯 Orquestrador Inteligente
94
+
95
+ ### Seleção Baseada em Performance
96
+
97
+ O orquestrador analisa histórico de cada agente:
98
+
99
+ ```
100
+ 📊 frontend-agent:
101
+ Taxa de sucesso: 85.5%
102
+ Total de tarefas: 23
103
+ ✅ Selecionado (alta confiança)
104
+
105
+ 📊 security-agent:
106
+ Taxa de sucesso: 92.1%
107
+ Total de tarefas: 38
108
+ ✅ Selecionado (alta confiança)
109
+ ```
110
+
111
+ ### Escalação Inteligente
112
+
113
+ 1. **Análise da Tarefa**: Identifica áreas envolvidas
114
+ 2. **Seleção de Agentes**: Escolhe melhores baseado em histórico
115
+ 3. **Distribuição**: Atribui subtarefas específicas
116
+ 4. **Execução**: Agentes trabalham com memória
117
+ 5. **Feedback**: Coleta resultados e aprende
118
+
119
+ ## 📊 Exemplos de Uso
120
+
121
+ ### Exemplo 1: Componente com Validação
122
+
123
+ ```javascript
124
+ const result = await orchestrator.orchestrateTask(
125
+ 'Criar componente de formulário com validação Zod e estados de loading/error'
126
+ );
127
+
128
+ // Agentes selecionados:
129
+ // - frontend-agent: Validar UI/UX e estados
130
+ // - security-agent: Verificar validação de inputs
131
+ // - architecture-agent: Garantir estrutura < 500 linhas
132
+ ```
133
+
134
+ ### Exemplo 2: Feedback Positivo
135
+
136
+ ```javascript
137
+ await orchestrator.provideFeedback(result.taskId, 'frontend-agent', {
138
+ satisfied: true,
139
+ likes: [
140
+ 'Estados de loading/error implementados',
141
+ 'Validação com Zod',
142
+ 'Acessibilidade com aria-labels'
143
+ ],
144
+ dislikes: [],
145
+ suggestions: ['Adicionar testes unitários']
146
+ });
147
+
148
+ // Aprendizados gerados:
149
+ // ✅ "Repetir: Estados de loading/error implementados"
150
+ // ✅ "Repetir: Validação com Zod"
151
+ // ✅ "Repetir: Acessibilidade com aria-labels"
152
+ // 💡 "Sugestão: Adicionar testes unitários"
153
+ ```
154
+
155
+ ### Exemplo 3: Feedback Negativo
156
+
157
+ ```javascript
158
+ await orchestrator.provideFeedback(result.taskId, 'security-agent', {
159
+ satisfied: false,
160
+ likes: [],
161
+ dislikes: [
162
+ 'Não detectou falta de sanitização',
163
+ 'Permitiu uso de dangerouslySetInnerHTML'
164
+ ],
165
+ suggestions: ['Adicionar verificação de DOMPurify']
166
+ });
167
+
168
+ // Aprendizados gerados:
169
+ // ❌ "Evitar: Não detectou falta de sanitização"
170
+ // ❌ "Evitar: Permitiu uso de dangerouslySetInnerHTML"
171
+ // 💡 "Sugestão: Adicionar verificação de DOMPurify"
172
+ ```
173
+
174
+ ## 🔧 Configuração
175
+
176
+ ### Habilitar/Desabilitar Memória
177
+
178
+ ```typescript
179
+ // .agents/config.ts
180
+ export const DEFAULT_CONFIG: AgentConfig = {
181
+ // ...
182
+ memoryEnabled: true, // Habilitar sistema de memória
183
+ memoryPath: '.agents/memory', // Caminho da memória
184
+ feedbackEnabled: true, // Habilitar coleta de feedback
185
+ autoLearn: false, // Requerer aprovação manual
186
+ maxMemoryEntries: 1000, // Limite de entradas
187
+ };
188
+ ```
189
+
190
+ ### Aprendizado Automático vs Manual
191
+
192
+ - **Manual** (`autoLearn: false`): Requer aprovação para cada aprendizado
193
+ - **Automático** (`autoLearn: true`): Aprende automaticamente com feedback
194
+
195
+ ## 📈 Relatórios
196
+
197
+ ### Ver Feedback de um Agente
198
+
199
+ ```javascript
200
+ const report = orchestrator.getFeedbackReport('frontend-agent');
201
+ console.log(report);
202
+ ```
203
+
204
+ Saída:
205
+ ```
206
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
207
+ 📊 RELATÓRIO DE FEEDBACK - frontend-agent
208
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
209
+
210
+ 📈 Estatísticas:
211
+ Total de tarefas: 23
212
+ Taxa de sucesso: 85.5%
213
+
214
+ 👍 O que os usuários mais gostam:
215
+ 1. Estados de loading/error implementados
216
+ 2. Validação com Zod
217
+ 3. Acessibilidade com aria-labels
218
+
219
+ 👎 O que os usuários não gostam:
220
+ 1. Falta de testes unitários
221
+ 2. Componentes muito grandes
222
+
223
+ 💡 Sugestões recorrentes:
224
+ 1. Adicionar testes unitários
225
+ 2. Dividir componentes grandes
226
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
227
+ ```
228
+
229
+ ## 🎓 Melhores Práticas
230
+
231
+ ### 1. Forneça Feedback Específico
232
+
233
+ ❌ **Ruim**:
234
+ ```javascript
235
+ likes: ['Bom trabalho']
236
+ ```
237
+
238
+ ✅ **Bom**:
239
+ ```javascript
240
+ likes: [
241
+ 'Validação de email com regex correto',
242
+ 'Estados de loading implementados',
243
+ 'Acessibilidade com ARIA'
244
+ ]
245
+ ```
246
+
247
+ ### 2. Seja Consistente
248
+
249
+ - Forneça feedback para todas as tarefas importantes
250
+ - Use terminologia consistente
251
+ - Seja específico sobre o que gostou/não gostou
252
+
253
+ ### 3. Monitore Aprendizados
254
+
255
+ ```javascript
256
+ // Ver aprendizados periodicamente
257
+ const report = orchestrator.getFeedbackReport('frontend-agent');
258
+ console.log(report);
259
+ ```
260
+
261
+ ### 4. Limpe Memória Antiga
262
+
263
+ ```javascript
264
+ // Memória é limitada a maxMemoryEntries (padrão: 1000)
265
+ // Entradas mais antigas são removidas automaticamente
266
+ ```
267
+
268
+ ## 🚨 Troubleshooting
269
+
270
+ ### Memória não está sendo salva
271
+
272
+ 1. Verificar permissões da pasta `.agents/memory/`
273
+ 2. Verificar se `memoryEnabled: true` em config
274
+ 3. Verificar logs de erro
275
+
276
+ ### Agentes não estão aprendendo
277
+
278
+ 1. Verificar se está fornecendo feedback
279
+ 2. Verificar se `feedbackEnabled: true`
280
+ 3. Ver arquivos `learnings.json` para confirmar
281
+
282
+ ### Performance lenta
283
+
284
+ 1. Reduzir `maxMemoryEntries` em config
285
+ 2. Limpar memória antiga manualmente
286
+ 3. Desabilitar memória para tarefas simples
287
+
288
+ ## 📚 Arquivos de Especialidade
289
+
290
+ Cada agente tem um arquivo `specialty.md` que define:
291
+ - Responsabilidades
292
+ - Expertise
293
+ - Regras
294
+ - Tarefas típicas
295
+
296
+ Exemplo: `.agents/memory/frontend-agent/specialty.md`
297
+
298
+ ## 🔄 Fluxo Completo
299
+
300
+ ```
301
+ 1. Usuário solicita tarefa
302
+
303
+ 2. Orquestrador analisa tarefa
304
+
305
+ 3. Seleciona melhores agentes (baseado em histórico)
306
+
307
+ 4. Agentes consultam memória
308
+
309
+ 5. Agentes executam com recomendações
310
+
311
+ 6. Resultados são registrados
312
+
313
+ 7. Usuário fornece feedback
314
+
315
+ 8. Sistema gera aprendizados
316
+
317
+ 9. Próxima tarefa usa aprendizados
318
+ ```
319
+
320
+ ## 🎉 Benefícios
321
+
322
+ - ✅ **Aprendizado Contínuo**: Agentes melhoram com o tempo
323
+ - ✅ **Seleção Inteligente**: Melhores agentes para cada tarefa
324
+ - ✅ **Evita Erros**: Aprende com falhas passadas
325
+ - ✅ **Personalização**: Adapta-se ao seu estilo
326
+ - ✅ **Transparência**: Histórico completo de decisões
@@ -0,0 +1,182 @@
1
+ # Árvore de Símbolos do Projeto
2
+
3
+ **Última atualização**: 2026-01-20 10:10
4
+ **Versão**: 1.0.0
5
+
6
+ Esta árvore mapeia a estrutura hierárquica de componentes, hooks, tipos e serviços do projeto.
7
+
8
+ ---
9
+
10
+ ## 📁 Estrutura de Diretórios
11
+
12
+ ```
13
+ app/
14
+ ├── (auth)/
15
+ │ ├── login/
16
+ │ │ └── page.tsx → LoginPage
17
+ │ └── layout.tsx → AuthLayout
18
+ ├── (dashboard)/
19
+ │ ├── page.tsx → DashboardPage
20
+ │ ├── production/
21
+ │ │ └── page.tsx → ProductionPage
22
+ │ ├── orders/
23
+ │ │ └── page.tsx → OrdersPage
24
+ │ ├── weighing/
25
+ │ │ └── page.tsx → WeighingPage
26
+ │ ├── financial/
27
+ │ │ └── page.tsx → FinancialPage
28
+ │ └── layout.tsx → DashboardLayout
29
+ └── layout.tsx → RootLayout
30
+ ```
31
+
32
+ ---
33
+
34
+ ## 🧩 Componentes
35
+
36
+ ### UI Primitives (`components/ui/`)
37
+ Componentes base do shadcn/ui:
38
+ - `Button` - Botão com variantes (default, outline, ghost, destructive, link)
39
+ - `Input` - Campo de entrada de texto
40
+ - `Card`, `CardHeader`, `CardContent`, `CardFooter` - Container de conteúdo
41
+ - `Dialog`, `DialogTrigger`, `DialogContent` - Modal/Dialog
42
+ - `Label` - Label para inputs
43
+ - `Table`, `TableHeader`, `TableBody`, `TableRow`, `TableCell` - Tabela
44
+ - `Select`, `SelectTrigger`, `SelectContent`, `SelectItem` - Dropdown
45
+ - `Tabs`, `TabsList`, `TabsTrigger`, `TabsContent` - Abas
46
+
47
+ ### Common Components (`components/common/`)
48
+ Componentes reutilizáveis globais:
49
+ - `Header` - Cabeçalho do dashboard
50
+ - `Footer` - Rodapé (se existir)
51
+ - `Sidebar` - Menu lateral de navegação
52
+ - `LoadingSpinner` - Indicador de loading
53
+ - `ErrorBoundary` - Tratamento de erros React
54
+
55
+ ### Page Components (`components/pages/`)
56
+ Componentes específicos de páginas:
57
+ - `DashboardView` - Visão geral do dashboard
58
+ - `ProductionView` - Gestão de produção
59
+ - `OrdersView` - Gestão de pedidos
60
+ - `WeighingView` - Sistema de pesagem
61
+ - `FinancialView` - Gestão financeira
62
+
63
+ ### Feature Components
64
+ Componentes específicos por funcionalidade:
65
+ - **Production** (`components/production/`)
66
+ - `ProductionEventForm` - Formulário de eventos de produção
67
+ - `ProductionEventTable` - Tabela de eventos
68
+ - `PlantProductionCard` - Card de produção da planta
69
+
70
+ - **Orders** (`components/orders/`)
71
+ - `OrderForm` - Formulário de pedidos
72
+ - `OrderTable` - Tabela de pedidos
73
+ - `OrderDetailsModal` - Modal de detalhes
74
+
75
+ - **Weighing** (`components/weighing/`)
76
+ - `WeighingForm` - Formulário de pesagem
77
+ - `WeighingHistory` - Histórico de pesagens
78
+
79
+ ---
80
+
81
+ ## 🪝 Hooks Customizados
82
+
83
+ ### Global Hooks (`hooks/`)
84
+ - `useAppCrud` - CRUD genérico para qualquer tabela Supabase
85
+ - **Funções**: `handleAdd`, `handleUpdate`, `handleDelete`
86
+ - **Estados**: `loading`, `error`
87
+
88
+ - `useAuth` - Gerenciamento de autenticação
89
+ - **Funções**: `signIn`, `signOut`, `signUp`
90
+ - **Estados**: `user`, `session`, `loading`
91
+
92
+ - `useAppLogic` - Lógica de negócio principal
93
+ - **Dados**: `orders`, `productionEvents`, `miningCycles`, `plantLogs`
94
+ - **Refreshers**: `refreshOrders`, `refreshProductionEvents`, etc.
95
+
96
+ ### Feature Hooks
97
+ - `usePlantProduction` (`hooks/usePlantProduction.ts`) - Lógica de produção da planta
98
+ - `useOrderManagement` - Lógica de gestão de pedidos
99
+ - `useWeighing` - Lógica de pesagem
100
+
101
+ ---
102
+
103
+ ## 🛠 Services & APIs
104
+
105
+ ### Supabase (`utils/supabase/`)
106
+ - `client.ts` - Cliente Supabase (browser)
107
+ - `server.ts` - Cliente Supabase (server-side)
108
+
109
+ ### API Clients (`services/`)
110
+ - `orders.ts` - Funções de API para pedidos
111
+ - `production.ts` - Funções de API para produção
112
+ - `weighing.ts` - Funções de API para pesagem
113
+ - `financial.ts` - Funções de API para financeiro
114
+
115
+ ---
116
+
117
+ ## 📊 Types & Interfaces
118
+
119
+ ### Database Types (`types/database.ts`)
120
+ Tipos gerados do Supabase:
121
+ - Todas as tabelas do banco de dados
122
+
123
+ ### Domain Types (`types/`)
124
+ - `Order` - Pedido
125
+ - `ProductionEvent` - Evento de produção
126
+ - `MiningCycle` - Ciclo de mineração
127
+ - `PlantLog` - Log da planta
128
+ - `WeighingRecord` - Registro de pesagem
129
+
130
+ ---
131
+
132
+ ## 🔧 Utilitários
133
+
134
+ ### Helpers (`lib/`)
135
+ - `utils.ts` - Funções utilitárias gerais (ex: `cn()` para classes)
136
+ - `format.ts` - Formatação de datas, números, moeda
137
+ - `validation.ts` - Schemas de validação Zod
138
+
139
+ ### Constants (`constants/`)
140
+ - `TABLE_NAMES` - Nomes das tabelas do Supabase
141
+ ```ts
142
+ {
143
+ orders: 'orders',
144
+ production_events: 'production_events',
145
+ mining_cycles: 'mining_cycles',
146
+ plant_logs: 'plant_logs'
147
+ }
148
+ ```
149
+ - `ROLES` - Papéis de usuários
150
+ - `STATUS` - Status de pedidos, produção, etc.
151
+
152
+ ---
153
+
154
+ ## 🗃 Schemas Supabase
155
+
156
+ ### Tabelas Principais
157
+ - `orders` - Pedidos expedidos
158
+ - `production_events` - Eventos de produção
159
+ - `mining_cycles` - Ciclos de mineração
160
+ - `plant_logs` - Logs da planta
161
+ - `weighing_records` - Registros de pesagem
162
+ - `users` - Usuários do sistema
163
+ - `profiles` - Perfis de usuários
164
+
165
+ ### Views
166
+ - (Se houver views, listar aqui)
167
+
168
+ ### Functions
169
+ - (Se houver functions, listar aqui)
170
+
171
+ ---
172
+
173
+ ## 📝 Notas
174
+
175
+ - Esta árvore é atualizada automaticamente pelo **Agente de Documentação**
176
+ - Ao adicionar novos componentes/hooks/services, eles devem ser registrados aqui
177
+ - Manter sincronizado com a estrutura real do código
178
+
179
+ ---
180
+
181
+ **Gerado por**: Documentation Agent
182
+ **Próxima atualização**: Após próximo build
@@ -0,0 +1,6 @@
1
+ # Version History
2
+
3
+ | Version | Date | Build | Description | Author |
4
+ |:---:|:---:|:---:|:---|:---:|
5
+ | 0.0.1 | 2026-01-09 | 2 | Fix Orders View "Green Screen" crash by adding safety guards to property accesses. | AI Agent |
6
+ | 0.0.0 | 2026-01-08 | 1 | Initial audit and global rules implementation start. | AI Agent |
@@ -0,0 +1,111 @@
1
+ # Architecture: Triunfo Mineração - KP Fértil
2
+
3
+ > [!IMPORTANT]
4
+ > This document is the **Source of Truth (SOT)** for the application's architecture. Any major changes to hooks, services, pages, or database tables must be reflected here.
5
+
6
+ ## Navigation & Routes
7
+
8
+ | View | Component | Description |
9
+ | :--- | :--- | :--- |
10
+ | `HOME` | `HomeView` | Welcome screen with quick access modules. |
11
+ | `DASHBOARD` | `Dashboard` | Admin control panel, metrics, and data management. |
12
+ | `CLIENTS` | `ClientsView` | Customer list and location management. |
13
+ | `ORDERS` | `OrdersView` | **(Current Focus)** Order management and tracking. |
14
+ | `WEIGHING` | `WeighingView` | Balance records and dispatch control. |
15
+ | `SCHEDULING` | `SchedulingView` | Loading schedules and logistics. |
16
+ | `GATE` | `GateView` | Security/Gate control for truck entry. |
17
+ | `FINANCIAL` | `FinancialView` | Billing and accounting integration. |
18
+ | `MY_ACCOUNT` | `MyAccountView` | User profile and preferences. |
19
+
20
+ ---
21
+
22
+ ## Current Architecture (Monolith)
23
+
24
+ The application currently operates as a feature-rich monolith where `App.tsx` manages the majority of the global state and logic, distributing it via props to lazy-loaded views.
25
+
26
+ ```mermaid
27
+ graph TD
28
+ App[App.tsx (God Component)]
29
+ App -->|Props: products, users...| Dashboard
30
+ App -->|Props: clients, orders...| ClientsView
31
+ App -->|Props: orders...| OrdersView
32
+ App -->|Props: records...| WeighingView
33
+
34
+ App --Owns--> State[Global State (All Data)]
35
+ App --Owns--> Logic[Business Logic & Handlers]
36
+ App --Owns--> Fetch[useSupabaseTable (Internal Hook)]
37
+
38
+ subgraph Services
39
+ Supabase[Supabase Client]
40
+ end
41
+
42
+ App --> Supabase
43
+ ```
44
+
45
+ ## Target Architecture (Modular)
46
+
47
+ Transitioning towards a context-based and hook-driven architecture to improve maintainability and performance.
48
+
49
+ ```mermaid
50
+ graph TD
51
+ Root[App.tsx (Router/Layout)]
52
+
53
+ subgraph Contexts
54
+ AuthCtx[AuthContext]
55
+ DataCtx[DataContext]
56
+ end
57
+
58
+ subgraph Hooks
59
+ useAuth
60
+ useSupabaseTable
61
+ useOrders
62
+ useClients
63
+ end
64
+
65
+ Root --> AuthCtx
66
+ Root --> DataCtx
67
+
68
+ DataCtx --> useSupabaseTable
69
+
70
+ Dashboard --> useOrders
71
+ ClientsView --> useClients
72
+
73
+ subgraph Dashboard_Module
74
+ Dashboard[Dashboard (Main)]
75
+
76
+ subgraph Dashboard_Hooks
77
+ useRegistration
78
+ useReports
79
+ useInvoices
80
+ useMaintenance
81
+ useLinkMapping
82
+ useHistory
83
+ end
84
+
85
+ Dashboard --> useRegistration
86
+ Dashboard --> useReports
87
+ Dashboard --> useInvoices
88
+ Dashboard --> useMaintenance
89
+ Dashboard --> useLinkMapping
90
+ Dashboard --> useHistory
91
+
92
+ Dashboard --> AnalyticsTab[AnalyticsTab]
93
+ Dashboard --> ReportsTab[ReportsTab]
94
+ Dashboard --> SettingsTab[SettingsTab]
95
+
96
+ Dashboard --> RegistrationTabs[Registration Tabs (Products, Users, etc.)]
97
+ RegistrationTabs --> GenericRegistrationTab
98
+
99
+ AnalyticsTab --> AnalyticsCards[cards/AnalyticsCards]
100
+ AnalyticsTab --> AnalyticsCharts[charts/AnalyticsCharts]
101
+ AnalyticsTab --> SalespersonTable[analytics/SalespersonTable]
102
+ end
103
+ ```
104
+
105
+ ---
106
+
107
+ ## Database & Sync
108
+
109
+ - **Service**: Supabase (PostgreSQL).
110
+ - **Sync**: `useSyncQueue` handles offline operations and synchronization.
111
+ - **Policies**: Row Level Security (RLS) is applied to all sensitive tables.
package/package.json ADDED
@@ -0,0 +1,60 @@
1
+ {
2
+ "name": "wegho-agentes",
3
+ "version": "4.0.1",
4
+ "description": "Sistema de agentes especializados para Next.js + Supabase com validação automática de qualidade, segurança e arquitetura",
5
+ "main": ".agents/cli.js",
6
+ "bin": {
7
+ "wegho-agentes": ".agents/cli.js"
8
+ },
9
+ "scripts": {
10
+ "init": "npx tsx .agents/init.ts",
11
+ "install-agents": "node .agents/install.js",
12
+ "test": "jest",
13
+ "test:watch": "jest --watch",
14
+ "test:coverage": "jest --coverage",
15
+ "agent": "node .agents/cli.js"
16
+ },
17
+ "keywords": [
18
+ "agents",
19
+ "nextjs",
20
+ "supabase",
21
+ "typescript",
22
+ "validation",
23
+ "security",
24
+ "architecture",
25
+ "quality",
26
+ "code-quality",
27
+ "automation"
28
+ ],
29
+ "author": "Caleb Cordeirinho <cordeirinhocaleb@gmail.com>",
30
+ "license": "MIT",
31
+ "repository": {
32
+ "type": "git",
33
+ "url": "git+https://github.com/cordeirinhocaleb/wegho-agentes.git"
34
+ },
35
+ "engines": {
36
+ "node": ">=18.0.0"
37
+ },
38
+ "peerDependencies": {
39
+ "typescript": "^5.0.0"
40
+ },
41
+ "devDependencies": {
42
+ "@types/jest": "^30.0.0",
43
+ "@types/node": "^25.0.10",
44
+ "jest": "^30.2.0",
45
+ "ts-jest": "^29.4.6"
46
+ },
47
+ "files": [
48
+ ".agents/**/*",
49
+ "docs/**/*",
50
+ "README.md",
51
+ "INSTALL.md",
52
+ "LICENSE"
53
+ ],
54
+ "publishConfig": {
55
+ "access": "public"
56
+ },
57
+ "dependencies": {
58
+ "glob": "^13.0.0"
59
+ }
60
+ }