Confirmado contra prints reais do App Builder: o wizard de criação só oferece 'From scratch' ou 'As copy of an existing Data Load Definition' — não existe tela de upload de amostra para autodetectar colunas, como eu tinha documentado antes sem verificar. Corrige o roteiro pra seguir exatamente as telas reais (Method -> Application -> As Copy, renomeando DL_TECH_CMDB_V1 -> DL_TECH_CMDB_V2 e DL_TECH_VULNERABILIDADE_V2 -> DL_TECH_VULNERABILIDADE_V3 na mesma tela). Marca explicitamente onde o roteiro ainda não está confirmado (tela pós-'Copy Data Load Definition') em vez de continuar adivinhando. Reposiciona os templates/*.xlsx: servem para testar a carga depois de pronta, não para criar o perfil. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
110 lines
7.4 KiB
Markdown
110 lines
7.4 KiB
Markdown
# Tasks — ampmInsights V2 (v2.0.0)
|
|
|
|
Board de sprint deste projeto. Fonte da verdade é este arquivo, versionado neste repo — cada
|
|
tarefa concluída vira um commit dedicado marcando o checkbox junto da mudança real, então
|
|
`git log`/`git blame` funcionam como histórico de status.
|
|
|
|
## Fluxo de trabalho (confirmado 2026-09-09)
|
|
|
|
Para cada item abaixo: eu preparo o script/passo documentado → **você roda no seu ambiente e
|
|
valida** → você traz o resultado (cole aqui/no chat) → eu marco o checkbox e sigo para o próximo.
|
|
Eu não executo nada em banco/console — nem no ambiente congelado, nem em um futuro ambiente de
|
|
teste — a menos que você peça explicitamente o contrário.
|
|
|
|
## Ponto de partida
|
|
|
|
- **Origem:** fork de `ampmInsights_V1/` (2026-09-09), com `docs/10-carga-cmdb-vulnerabilidades.html`
|
|
trazido de `ampmInsights_V1_Cliente/` (existia lá, faltava em V1) e toda a marca "Documentação V1"
|
|
atualizada para "V2" nas 10 páginas de docs.
|
|
- **`ampmInsights_V1/` e `ampmInsights_V1_Cliente/` ficam congelados** — são a réplica validada e
|
|
já implementada no cliente. Nenhuma mudança neles a partir de agora; todo o trabalho de v2.0.0
|
|
acontece só nesta pasta.
|
|
- **Nenhum ambiente (ADB) é tocado até haver um ambiente de teste dedicado à v2.** Até lá, este
|
|
ciclo produz apenas SQL (como arquivo, não executado) + documentação passo a passo.
|
|
- **Decisão de deploy (2026-09-09):** a v2.0.0 chega ao schema existente por **evolução aditiva**
|
|
(ALTER TABLE / novas tabelas de staging e histórico / MERGE) — nunca por DROP+recriação. Motivo
|
|
explícito do usuário: um DROP passaria impressão negativa entre Oracle e cliente; releases
|
|
incrementais são o caminho profissional.
|
|
|
|
## Fase 1 — Dados/ETL (design + script, sem executar)
|
|
|
|
- [x] **Concluído e validado em 2026-09-09** — `sql/03_v2_ddl_schema_evolution.sql`: DDL híbrido
|
|
(`ALTER TABLE ... ADD`, 23 colunas em `TB_26AI_TECH_V2` + 12 em `TB_26AI_TECH_CMDB`,
|
|
incluindo `RAW_JSON` CLOB catch-all em cada uma), 100% aditivo (sem DROP). Rodado pelo
|
|
usuário no ambiente `AMPMINSIGHTS` via Database Actions; checkpoint de validação confirmou
|
|
`STATUS = 'OK'` nas duas tabelas (23 e 12 colunas, exatamente o esperado). Nota: a primeira
|
|
tentativa de checkpoint deu `ORA-00903` por um trecho abreviado/ilustrativo em
|
|
`docs/11-v2-evolucao-schema.html` (já corrigido, commit `dd40d0a`) — os `ALTER TABLE` em si
|
|
nunca tiveram problema.
|
|
- [x] **Concluído e validado em 2026-09-09** — `sql/04_v2_view_procedure_update.sql`:
|
|
`V_26AI_TECH` com as 81 colunas confirmadas na ordem certa (46 originais + 35 novas,
|
|
`RAW_JSON_TENABLE`/`RAW_JSON_CMDB` sem colidir); `prc_26ai_tech` `VALID`. Pegadinha
|
|
encontrada: rodando statement a statement no Database Actions, o `CREATE OR REPLACE VIEW`
|
|
(bloco grande) foi pulado na primeira passada — o checkpoint de compilação deu `VALID`
|
|
porque a view *antiga* (46 colunas) já era válida antes. Resolvido rodando o bloco
|
|
explicitamente; segunda checagem confirmou as 81 colunas.
|
|
- [ ] **Em andamento, roteiro sendo confirmado tela a tela** (ver
|
|
[docs/13-v2-perfis-carga.html](docs/13-v2-perfis-carga.html)) — mapeamento de colunas
|
|
pronto; passo a passo real do App Builder confirmado até "Copy Data Load Definition"
|
|
(método = cópia de `DL_TECH_CMDB_V1`/`DL_TECH_VULNERABILIDADE_V2`, renomeadas pra
|
|
`DL_TECH_CMDB_V2`/`DL_TECH_VULNERABILIDADE_V3` — **não** "upload de amostra", isso foi um
|
|
chute meu já corrigido). Falta confirmar a tela seguinte (adicionar as colunas novas na
|
|
cópia) antes de completar o roteiro. Depois de pronto: exportar a Application 100 de novo
|
|
(captura os perfis com IDs corretos) — o cliente só importa esse export, nunca toca em Data
|
|
Load Definitions. **Achado importante:** essas definições vivem dentro de
|
|
`sql/02_ampminsights_apex_app.sql` via API interna do APEX (`wwv_flow_imp_shared`) — não
|
|
escrever isso à mão fora de um import completo, risco de corromper os Shared Components.
|
|
`RAW_JSON` deliberadamente fora do escopo deste item — depende do item de staging abaixo.
|
|
Os `templates/*.xlsx` servem pra testar a carga depois de pronta, não pra criar o perfil.
|
|
- [ ] Pipeline de staging: bucket → `TB_26AI_TECH_V2_STG` via `DBMS_CLOUD.COPY_DATA` (tabela nova,
|
|
não mexe nas existentes)
|
|
- [ ] `MERGE` com histórico (`LOAD_BATCH_ID`, `TB_26AI_TECH_V2_HIST` — tabela nova), honrando o
|
|
campo `state` do Tenable (NEW/ACTIVE/FIXED/RESURFACED)
|
|
- [ ] Documentar passo a passo de cada script acima em `docs/` (novo capítulo `11-schema-v2.html`
|
|
ou extensão do `10-carga`, a decidir ao chegar lá)
|
|
|
|
## Fase 2 — Validação (só quando houver ambiente dedicado)
|
|
|
|
- [ ] Provisionar/receber acesso a um ambiente de teste **que não seja a réplica validada atual**
|
|
- [ ] Aplicar o DDL/ETL da Fase 1 nesse ambiente; QA dos campos novos
|
|
- [ ] Validar que o AI Insight cita CVE/pacote/remediação de fato (amostra de 5-10 ativos)
|
|
- [ ] Rodar geração de insight em lote; revisão de qualidade
|
|
- [ ] Relatórios visuais (top CVEs/CISA KEV, ativos mais expostos, tendência semanal via `_HIST`)
|
|
|
|
## Fase 3 — Release controlada (v2.0.0 como novo release, não como rebuild)
|
|
|
|
- [ ] Congelar escopo v2.0.0, gerar zip, validar em ambiente limpo
|
|
- [ ] Aplicar a release **de forma aditiva** no ambiente do cliente (sem downtime, sem DROP)
|
|
- [ ] Material de apresentação (antes/depois: grid vazia vs preenchida, insight com CVE/remediação)
|
|
- [ ] Demo + feedback do cliente (registrado direto neste arquivo)
|
|
- [ ] Consolidar feedback em backlog v2.1.0, atualizar `CHANGELOG.md`/docs
|
|
|
|
## Pendências separadas (v1.3.0, carga inicial no ambiente do cliente)
|
|
|
|
Herdadas de `ampmInsights_V1_Cliente/CHANGELOG.md` ("[Não lançado]") — não fazem parte do escopo
|
|
v2.0.0, ficam registradas aqui só para não perder o rastro; tratar quando fizer sentido:
|
|
|
|
- [ ] Confirmar upload de `DL_TECH_CMDB_V1_AMPM.xlsx` no ambiente de teste (esperado: 109 linhas)
|
|
- [ ] Confirmar upload de `DL_TECH_VULNERABILIDADE_V2_AMPM.xlsx` (esperado: 1.724 linhas)
|
|
- [ ] Validar visualmente que só aparecem nomes padrão `AM...` na tela "Insigths sobre
|
|
Vulnerabilidades"
|
|
- [ ] Decidir sobre `AMPMOCIVWNSP01#DUP` / `AMPMOCIVWNSP02#DUP` (sufixo `#DUP` do ServiceNow)
|
|
- [ ] Confirmar fonte de dados para `É_VIRTUAL`, `APPLIANCE`, `EDR` (em branco hoje)
|
|
- [ ] Confirmar se `amprotrib` e `aampmocivlfgap02` são ativos AMPM reais
|
|
|
|
## Backlog futuro — v3.0.0 Agêntico (não iniciado)
|
|
|
|
Ver [ROADMAP_AGENTICO.md](ROADMAP_AGENTICO.md) — análise de 2026-09-09 a partir de um case
|
|
bancário de referência (`DBMS_CLOUD_AI_AGENT`, Property Graph, Knowledge Graph chain) e de um app
|
|
pronto da Oracle (Ask Oracle Select AI Chatbot). **Depende do v2.0.0 estar em produção primeiro**
|
|
(os agentes/tools consultariam os campos Tier-1 do Passo 1). Um item da análise (separar cálculo
|
|
determinístico de narrativa da IA, tipo `fn_analise_carteira_json`) não depende de agentes e pode
|
|
entrar como v2.1.0 depois da carga real dos dados.
|
|
|
|
## Gap encontrado ao criar a V2 (não resolvido, só registrado)
|
|
|
|
`docs/08-glossario-roadmap.html` afirma que "este pacote V1 corresponde ao **Level Zero**" da
|
|
jornada Agentic AI do parceiro V8 Solution (`Jornada_AgenticAI.pptx`). Não sei se a V2 deveria
|
|
virar "Level 1" dessa jornada — não li o pptx e não vou presumir a numeração. Revisar com o
|
|
usuário antes de editar esse parágrafo.
|