@greatapps/greatagents 0.1.5 → 0.1.7
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.
- package/docs/ERD_GAGents_Database.mmd +333 -0
- package/package.json +1 -1
- package/scripts/MIGRATION_COMPLETE_DOCUMENTATION.md +672 -0
- package/scripts/README.md +128 -235
- package/scripts/constraints.sql +585 -0
- package/scripts/indexes.sql +662 -0
- package/scripts/migrate_v1.sql +1227 -0
- package/scripts/tables/001_accounts.sql +51 -0
- package/scripts/tables/002_users.sql +69 -0
- package/scripts/tables/003_people.sql +70 -0
- package/scripts/tables/004_tags.sql +62 -0
- package/scripts/tables/005_credentials.sql +79 -0
- package/scripts/tables/006_agents.sql +70 -0
- package/scripts/tables/007_tools.sql +68 -0
- package/scripts/tables/008_channels.sql +75 -0
- package/scripts/tables/009_leads.sql +85 -0
- package/scripts/tables/010_missions.sql +62 -0
- package/scripts/tables/011_objectives.sql +68 -0
- package/scripts/tables/012_conversations.sql +84 -0
- package/scripts/tables/013_objectives_tools.sql +66 -0
- package/scripts/tables/014_messages.sql +78 -0
- package/scripts/tables/015_companies.sql +77 -0
- package/scripts/tables/016_conversations_tags.sql +64 -0
- package/scripts/tables/017_leads_tags.sql +64 -0
- package/scripts/triggers.sql +497 -0
- package/src/modules/accounts/index.js +11 -0
- package/src/modules/accounts/properties.js +46 -0
- package/src/modules/channels/properties.js +1 -0
- package/src/modules/conversations/index.js +1 -1
- package/src/modules/conversations/properties.js +29 -26
- package/src/modules/credentials/properties.js +2 -2
- package/src/modules/leads/properties.js +4 -4
- package/src/modules/messages/properties.js +40 -2
- package/src/modules/missions/properties.js +1 -0
- package/src/modules/objectives/properties.js +1 -18
- package/src/modules/objectives_tools/index.js +1 -1
- package/src/modules/objectives_tools/properties.js +1 -37
- package/src/modules/tools/properties.js +1 -0
- package/src/modules/users/index.js +11 -0
- package/src/modules/users/properties.js +156 -0
- package/src/product.js +4 -0
- package/scripts/agents/create_table.sql +0 -43
- package/scripts/channels/create_table.sql +0 -48
- package/scripts/companies/create_table.sql +0 -52
- package/scripts/conversations/add_messages_reference.sql +0 -42
- package/scripts/conversations/create_table.sql +0 -55
- package/scripts/conversations_tags/create_table.sql +0 -39
- package/scripts/credentials/create_table.sql +0 -63
- package/scripts/leads/create_table.sql +0 -55
- package/scripts/leads_tags/create_table.sql +0 -39
- package/scripts/messages/create_table.sql +0 -44
- package/scripts/missions/create_table.sql +0 -39
- package/scripts/objectives/create_table.sql +0 -47
- package/scripts/objectives_tools/create_table.sql +0 -52
- package/scripts/people/create_table.sql +0 -51
- package/scripts/tags/create_table.sql +0 -38
- package/scripts/tools/create_table.sql +0 -43
package/scripts/README.md
CHANGED
|
@@ -1,272 +1,165 @@
|
|
|
1
|
-
# Scripts
|
|
1
|
+
# Scripts de Migração GAgents v1.0
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Este diretório contém os scripts SQL organizados para migração do banco PostgreSQL v14+ do sistema GAgents.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## 📁 Estrutura de Diretórios
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
- Índices otimizados para consultas frequentes
|
|
34
|
-
- Chaves estrangeiras e integridade referencial
|
|
35
|
-
- Comentários detalhados de documentação
|
|
36
|
-
- Execução segura com `CREATE IF NOT EXISTS`
|
|
37
|
-
|
|
38
|
-
### Sincronização
|
|
39
|
-
|
|
40
|
-
A relação entre os módulos garante que:
|
|
41
|
-
- Cada schema JavaScript tem um script SQL correspondente
|
|
42
|
-
- Os tipos de dados são consistentes entre as duas representações
|
|
43
|
-
- As modificações nos schemas refletem automaticamente nos scripts
|
|
44
|
-
- A estrutura permanece sincronizada em todas as camadas
|
|
45
|
-
|
|
46
|
-
## Estrutura dos Dados
|
|
47
|
-
|
|
48
|
-
O sistema GreatAgents é organizado em **17 módulos** distribuídos em duas categorias:
|
|
49
|
-
|
|
50
|
-
### Módulos Principais (13)
|
|
51
|
-
|
|
52
|
-
| Módulo | Descrição | Dependências |
|
|
53
|
-
|--------|-----------|--------------|
|
|
54
|
-
| [`accounts`](accounts/) | Contas/organizações do sistema | - |
|
|
55
|
-
| [`agents`](agents/) | Agentes de IA e suas configurações | accounts |
|
|
56
|
-
| [`channels`](channels/) | Canais de comunicação (WhatsApp, Telegram, etc.) | accounts, credentials |
|
|
57
|
-
| [`companies`](companies/) | Empresas dos leads | - |
|
|
58
|
-
| [`conversations`](conversations/) | Conversas entre usuários e agentes | accounts, agents, leads_channels |
|
|
59
|
-
| [`credentials`](credentials/) | Credenciais de autenticação para integrações | accounts |
|
|
60
|
-
| [`leads`](leads/) | Leads/contatos do sistema | accounts, companies |
|
|
61
|
-
| [`messages`](messages/) | Mensagens das conversas | accounts, conversations |
|
|
62
|
-
| [`missions`](missions/) | Missões/tarefas complexas dos agentes | accounts, agents |
|
|
63
|
-
| [`objectives`](objectives/) | Objetivos específicos dentro das missões | accounts, agents, missions |
|
|
64
|
-
| [`tags`](tags/) | Sistema de tags para categorização | accounts |
|
|
65
|
-
| [`tools`](tools/) | Ferramentas disponíveis para os agentes | accounts, credentials |
|
|
66
|
-
| [`users`](users/) | Usuários do sistema | accounts |
|
|
67
|
-
|
|
68
|
-
### Tabelas de Relacionamento (4)
|
|
69
|
-
|
|
70
|
-
| Módulo | Descrição | Relaciona |
|
|
71
|
-
|--------|-----------|-----------|
|
|
72
|
-
| [`conversations_tags`](conversations_tags/) | Tags das conversas | conversations ↔ tags |
|
|
73
|
-
| [`leads_channels`](leads_channels/) | Canais dos leads | leads ↔ channels |
|
|
74
|
-
| [`leads_tags`](leads_tags/) | Tags dos leads | leads ↔ tags |
|
|
75
|
-
| [`objectives_tools`](objectives_tools/) | Ferramentas dos objetivos | objectives ↔ tools |
|
|
7
|
+
```
|
|
8
|
+
gagents-schemas/scripts/
|
|
9
|
+
├── README.md # Este arquivo
|
|
10
|
+
├── migrate_v1.sql # Script principal de migração
|
|
11
|
+
├── indexes.sql # Criação de índices otimizados
|
|
12
|
+
├── constraints.sql # Constraints e chaves estrangeiras
|
|
13
|
+
├── triggers.sql # Triggers para automação
|
|
14
|
+
└── tables/ # Scripts de criação das tabelas
|
|
15
|
+
├── 001_accounts.sql # Tabela base (sem dependências)
|
|
16
|
+
├── 002_users.sql # Depende de: accounts
|
|
17
|
+
├── 003_people.sql # Depende de: accounts
|
|
18
|
+
├── 004_tags.sql # Depende de: accounts
|
|
19
|
+
├── 005_credentials.sql # Depende de: accounts
|
|
20
|
+
├── 006_agents.sql # Depende de: accounts
|
|
21
|
+
├── 007_tools.sql # Depende de: accounts
|
|
22
|
+
├── 008_channels.sql # Depende de: credentials
|
|
23
|
+
├── 009_leads.sql # Depende de: people
|
|
24
|
+
├── 010_missions.sql # Depende de: agents
|
|
25
|
+
├── 011_objectives.sql # Depende de: agents, missions
|
|
26
|
+
├── 012_conversations.sql # Sem FK inicial (ref. cíclica)
|
|
27
|
+
├── 013_objectives_tools.sql # Depende de: objectives, tools
|
|
28
|
+
├── 014_messages.sql # Depende de: conversations
|
|
29
|
+
├── 015_companies.sql # Depende de: leads
|
|
30
|
+
├── 016_conversations_tags.sql # Depende de: conversations, tags
|
|
31
|
+
└── 017_leads_tags.sql # Depende de: leads, tags
|
|
32
|
+
```
|
|
76
33
|
|
|
77
|
-
|
|
34
|
+
## 🎯 Ordem de Dependências
|
|
78
35
|
|
|
79
|
-
|
|
80
|
-
-
|
|
81
|
-
- `users` - Gestão de usuários
|
|
82
|
-
- `credentials` - Autenticação
|
|
36
|
+
### Tabelas Base (Sem Dependências)
|
|
37
|
+
- **001_accounts**: Tabela central do sistema
|
|
83
38
|
|
|
84
|
-
|
|
85
|
-
-
|
|
86
|
-
-
|
|
87
|
-
-
|
|
88
|
-
-
|
|
39
|
+
### Nível 1 (Dependem de accounts)
|
|
40
|
+
- **002_users**: Usuários do sistema
|
|
41
|
+
- **003_people**: Pessoas cadastradas
|
|
42
|
+
- **004_tags**: Sistema de etiquetas
|
|
43
|
+
- **005_credentials**: Credenciais de integração
|
|
44
|
+
- **006_agents**: Agentes inteligentes
|
|
45
|
+
- **007_tools**: Ferramentas disponíveis
|
|
89
46
|
|
|
90
|
-
|
|
91
|
-
-
|
|
92
|
-
-
|
|
93
|
-
-
|
|
47
|
+
### Nível 2 (Dependem do Nível 1)
|
|
48
|
+
- **008_channels**: Canais de comunicação (credentials)
|
|
49
|
+
- **009_leads**: Leads comerciais (people)
|
|
50
|
+
- **010_missions**: Missões dos agentes (agents)
|
|
94
51
|
|
|
95
|
-
|
|
96
|
-
-
|
|
97
|
-
-
|
|
98
|
-
- `leads_channels` - Associações lead-canal
|
|
52
|
+
### Nível 3 (Dependem do Nível 2)
|
|
53
|
+
- **011_objectives**: Objetivos das missões (agents, missions)
|
|
54
|
+
- **012_conversations**: Conversas (sem FK inicial para resolver ciclo)
|
|
99
55
|
|
|
100
|
-
|
|
101
|
-
-
|
|
102
|
-
-
|
|
103
|
-
-
|
|
56
|
+
### Nível 4 (Dependem do Nível 3)
|
|
57
|
+
- **013_objectives_tools**: Relacionamento N:N (objectives, tools)
|
|
58
|
+
- **014_messages**: Mensagens das conversas (conversations)
|
|
59
|
+
- **015_companies**: Empresas dos leads (leads)
|
|
104
60
|
|
|
105
|
-
|
|
61
|
+
### Nível 5 (Tabelas de Relacionamento)
|
|
62
|
+
- **016_conversations_tags**: Relacionamento N:N (conversations, tags)
|
|
63
|
+
- **017_leads_tags**: Relacionamento N:N (leads, tags)
|
|
106
64
|
|
|
107
|
-
|
|
65
|
+
## 🔄 Referência Cíclica Resolvida
|
|
108
66
|
|
|
109
|
-
|
|
110
|
-
-
|
|
111
|
-
-
|
|
67
|
+
**Problema**: `conversations` ↔ `messages`
|
|
68
|
+
- conversations pode referenciar a última mensagem
|
|
69
|
+
- messages sempre referenciam a conversa
|
|
112
70
|
|
|
113
|
-
|
|
71
|
+
**Solução Implementada**:
|
|
72
|
+
1. Criar `conversations` sem FK para messages (script 012)
|
|
73
|
+
2. Criar `messages` com FK para conversations (script 014)
|
|
74
|
+
3. Adicionar FK de conversations para messages no `constraints.sql`
|
|
114
75
|
|
|
115
|
-
|
|
76
|
+
## 🚀 Como Executar a Migração
|
|
116
77
|
|
|
78
|
+
### Opção 1: Script Principal (Recomendado)
|
|
117
79
|
```bash
|
|
118
|
-
|
|
119
|
-
cd gagents-schemas/scripts
|
|
120
|
-
|
|
121
|
-
# Executar todos os 17 scripts
|
|
122
|
-
for module in accounts agents channels companies conversations conversations_tags credentials leads leads_channels leads_tags messages missions objectives objectives_tools tags tools users; do
|
|
123
|
-
echo "Criando tabela: $module"
|
|
124
|
-
psql -d sua_base_dados -f "$module/create_table.sql"
|
|
125
|
-
done
|
|
80
|
+
psql -d sua_database -f migrate_v1.sql
|
|
126
81
|
```
|
|
127
82
|
|
|
128
|
-
###
|
|
129
|
-
|
|
130
|
-
Para uma nova instalação, execute na ordem recomendada:
|
|
131
|
-
|
|
83
|
+
### Opção 2: Execução Manual
|
|
132
84
|
```bash
|
|
133
|
-
# 1.
|
|
134
|
-
psql -d
|
|
135
|
-
psql -d
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
# 2.
|
|
139
|
-
psql -d
|
|
140
|
-
psql -d
|
|
141
|
-
psql -d
|
|
142
|
-
psql -d sua_base_dados -f leads/create_table.sql
|
|
143
|
-
|
|
144
|
-
# 3. Tabelas com múltiplas dependências
|
|
145
|
-
psql -d sua_base_dados -f tools/create_table.sql
|
|
146
|
-
psql -d sua_base_dados -f channels/create_table.sql
|
|
147
|
-
psql -d sua_base_dados -f missions/create_table.sql
|
|
148
|
-
psql -d sua_base_dados -f leads_channels/create_table.sql
|
|
149
|
-
|
|
150
|
-
# 4. Tabelas de nível superior
|
|
151
|
-
psql -d sua_base_dados -f conversations/create_table.sql
|
|
152
|
-
psql -d sua_base_dados -f messages/create_table.sql
|
|
153
|
-
psql -d sua_base_dados -f objectives/create_table.sql
|
|
154
|
-
|
|
155
|
-
# 5. Tabelas de relacionamento
|
|
156
|
-
psql -d sua_base_dados -f conversations_tags/create_table.sql
|
|
157
|
-
psql -d sua_base_dados -f leads_tags/create_table.sql
|
|
158
|
-
psql -d sua_base_dados -f objectives_tools/create_table.sql
|
|
85
|
+
# 1. Executar tabelas em ordem
|
|
86
|
+
psql -d sua_database -f tables/001_accounts.sql
|
|
87
|
+
psql -d sua_database -f tables/002_users.sql
|
|
88
|
+
# ... continuar na ordem até 017_leads_tags.sql
|
|
89
|
+
|
|
90
|
+
# 2. Executar estruturas auxiliares
|
|
91
|
+
psql -d sua_database -f indexes.sql
|
|
92
|
+
psql -d sua_database -f constraints.sql
|
|
93
|
+
psql -d sua_database -f triggers.sql
|
|
159
94
|
```
|
|
160
95
|
|
|
161
|
-
|
|
96
|
+
## 📋 Pré-requisitos
|
|
162
97
|
|
|
163
|
-
|
|
98
|
+
- **PostgreSQL**: Versão 14 ou superior
|
|
99
|
+
- **Permissões**: CREATE TABLE, CREATE INDEX, CREATE TRIGGER
|
|
100
|
+
- **Extensões**: Verificadas automaticamente nos scripts
|
|
164
101
|
|
|
165
|
-
|
|
166
|
-
# Exemplo: criar apenas a tabela de agentes
|
|
167
|
-
psql -d sua_base_dados -f agents/create_table.sql
|
|
102
|
+
## 🔍 Verificações Automáticas
|
|
168
103
|
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
104
|
+
Cada script inclui:
|
|
105
|
+
- ✅ Verificação da versão do PostgreSQL
|
|
106
|
+
- ✅ Logs informativos de progresso
|
|
107
|
+
- ✅ Verificação de sucesso na criação
|
|
108
|
+
- ✅ Tratamento de erros
|
|
174
109
|
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
Após a execução, verifique se todas as tabelas foram criadas:
|
|
178
|
-
|
|
179
|
-
```sql
|
|
180
|
-
-- Verificar contagem de tabelas criadas
|
|
181
|
-
SELECT COUNT(*) as total_tabelas
|
|
182
|
-
FROM information_schema.tables
|
|
183
|
-
WHERE table_schema = 'public'
|
|
184
|
-
AND table_name IN (
|
|
185
|
-
'accounts', 'agents', 'channels', 'companies', 'conversations',
|
|
186
|
-
'conversations_tags', 'credentials', 'leads', 'leads_channels',
|
|
187
|
-
'leads_tags', 'messages', 'missions', 'objectives',
|
|
188
|
-
'objectives_tools', 'tags', 'tools', 'users'
|
|
189
|
-
);
|
|
190
|
-
-- Resultado esperado: 17
|
|
191
|
-
|
|
192
|
-
-- Verificar integridade referencial
|
|
193
|
-
SELECT
|
|
194
|
-
tc.table_name,
|
|
195
|
-
kcu.column_name,
|
|
196
|
-
ccu.table_name AS tabela_referenciada,
|
|
197
|
-
ccu.column_name AS coluna_referenciada
|
|
198
|
-
FROM information_schema.table_constraints AS tc
|
|
199
|
-
JOIN information_schema.key_column_usage AS kcu
|
|
200
|
-
ON tc.constraint_name = kcu.constraint_name
|
|
201
|
-
JOIN information_schema.constraint_column_usage AS ccu
|
|
202
|
-
ON ccu.constraint_name = tc.constraint_name
|
|
203
|
-
WHERE tc.constraint_type = 'FOREIGN KEY'
|
|
204
|
-
ORDER BY tc.table_name;
|
|
205
|
-
```
|
|
206
|
-
|
|
207
|
-
## Informações Técnicas
|
|
208
|
-
|
|
209
|
-
### Características dos Scripts
|
|
210
|
-
|
|
211
|
-
**Execução Segura:**
|
|
212
|
-
- Todos os scripts usam `CREATE IF NOT EXISTS`
|
|
213
|
-
- Podem ser executados múltiplas vezes sem riscos
|
|
214
|
-
- Não há perda de dados em re-execuções
|
|
110
|
+
## 📝 Status Atual
|
|
215
111
|
|
|
216
|
-
|
|
217
|
-
-
|
|
218
|
-
-
|
|
219
|
-
-
|
|
112
|
+
### ✅ Implementado
|
|
113
|
+
- [x] Estrutura de diretórios
|
|
114
|
+
- [x] 17 arquivos de tabelas com templates
|
|
115
|
+
- [x] Scripts de índices, constraints e triggers (templates)
|
|
116
|
+
- [x] Script principal de migração
|
|
117
|
+
- [x] Documentação completa
|
|
220
118
|
|
|
221
|
-
|
|
222
|
-
-
|
|
223
|
-
-
|
|
224
|
-
-
|
|
119
|
+
### 🔄 Próximas Etapas
|
|
120
|
+
- [ ] Implementar conteúdo SQL das tabelas
|
|
121
|
+
- [ ] Definir índices específicos para performance
|
|
122
|
+
- [ ] Implementar constraints de integridade
|
|
123
|
+
- [ ] Criar triggers de auditoria e automação
|
|
124
|
+
- [ ] Testes de migração em ambiente de desenvolvimento
|
|
225
125
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
Todas as tabelas incluem os seguintes campos automáticos:
|
|
229
|
-
|
|
230
|
-
```sql
|
|
231
|
-
id SERIAL PRIMARY KEY, -- Chave primária auto-incremento
|
|
232
|
-
deleted BOOLEAN DEFAULT false NOT NULL, -- Exclusão lógica
|
|
233
|
-
datetime_add TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, -- Data de criação
|
|
234
|
-
datetime_alt TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, -- Data de alteração
|
|
235
|
-
datetime_del TIMESTAMP NULL -- Data de exclusão lógica
|
|
236
|
-
```
|
|
126
|
+
## 📚 Convenções Utilizadas
|
|
237
127
|
|
|
238
|
-
###
|
|
128
|
+
### Nomenclatura
|
|
129
|
+
- **Arquivos**: Numerados sequencialmente (001-017)
|
|
130
|
+
- **Tabelas**: Snake_case (lowercase com underscores)
|
|
131
|
+
- **Relacionamentos**: `tabela1_tabela2` para N:N
|
|
239
132
|
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
133
|
+
### Headers Padronizados
|
|
134
|
+
Todos os scripts incluem:
|
|
135
|
+
- Identificação do arquivo
|
|
136
|
+
- Descrição e dependências
|
|
137
|
+
- Informações de versionamento
|
|
138
|
+
- Verificações de segurança
|
|
244
139
|
|
|
245
|
-
###
|
|
140
|
+
### Logs Estruturados
|
|
141
|
+
- `RAISE NOTICE` para informações de progresso
|
|
142
|
+
- `RAISE EXCEPTION` para erros críticos
|
|
143
|
+
- Timestamps em todas as mensagens
|
|
246
144
|
|
|
247
|
-
|
|
248
|
-
|------------------|-----|---------|
|
|
249
|
-
| `SERIAL` | Chaves primárias auto-incremento | `id` |
|
|
250
|
-
| `INTEGER` | Chaves estrangeiras e números | `id_account`, `verified` |
|
|
251
|
-
| `VARCHAR(n)` | Textos com limite definido | `name VARCHAR(100)` |
|
|
252
|
-
| `TEXT` | Textos longos sem limite | `prompt`, `content` |
|
|
253
|
-
| `BOOLEAN` | Valores verdadeiro/falso | `deleted` |
|
|
254
|
-
| `TIMESTAMP` | Datas e horários | `datetime_add` |
|
|
145
|
+
## 🔧 Manutenção
|
|
255
146
|
|
|
256
|
-
|
|
147
|
+
Para adicionar novas tabelas:
|
|
148
|
+
1. Criar arquivo com numeração sequencial apropriada
|
|
149
|
+
2. Seguir template de header padrão
|
|
150
|
+
3. Atualizar dependências no `migrate_v1.sql`
|
|
151
|
+
4. Documentar no README.md
|
|
257
152
|
|
|
258
|
-
|
|
259
|
-
- Configurada com `ON DELETE CASCADE` onde apropriado
|
|
260
|
-
- Garante limpeza automática de registros dependentes
|
|
153
|
+
## 📞 Suporte
|
|
261
154
|
|
|
262
|
-
|
|
263
|
-
-
|
|
264
|
-
-
|
|
265
|
-
-
|
|
155
|
+
Para dúvidas sobre a estrutura de migração:
|
|
156
|
+
- Verificar logs de execução dos scripts
|
|
157
|
+
- Consultar dependências neste README
|
|
158
|
+
- Analisar ordem de execução no `migrate_v1.sql`
|
|
266
159
|
|
|
267
|
-
|
|
160
|
+
---
|
|
268
161
|
|
|
269
|
-
**
|
|
270
|
-
**
|
|
271
|
-
**
|
|
272
|
-
**
|
|
162
|
+
**Versão**: 1.0
|
|
163
|
+
**Data**: 2025-09-20
|
|
164
|
+
**Autor**: Sistema de Migração GAgents
|
|
165
|
+
**PostgreSQL**: v14+
|