# Development — Pendências > Registro vivo do que ficou pra próximas etapas da área de desenvolvimento. > **Nada aqui pode se perder** — cada item vira task quando for tratado. **Última atualização:** 2026-04-17 **Responsável:** Leonardo (user) · **Implementação:** Claude (dev sessions) --- ## ✅ Entregue até agora ### Parte A — Banco + estrutura (2026-04-17) - [x] Pasta `development/` criada com estrutura hierárquica (`01-visao-geral`…`05-database`) - [x] 6 arquivos `.md`/`.txt`/`.html` movidos da raiz pra subpastas temáticas - [x] `development/README.md` de navegação - [x] Migration `20260417000001_dev_tables.sql` aplicada com 8 tabelas (`dev_*`) + RLS via `is_saas_admin()` - [x] 3 seeds executados: - `seed_030_dev_phases_items.sql` → 3 fases + 48 items - `seed_031_dev_auditoria.sql` → 14 bugs/débitos (12 resolvidos + 2 abertos) - `seed_032_dev_competitors.sql` → 7 concorrentes + 74 features + 60 linhas de matriz ### Parte B — UI read-only (2026-04-17) - [x] Rota `/saas/desenvolvimento` registrada em `routes.saas.js` - [x] Item de menu "Desenvolvimento > Área de Dev" em `saas.menu.js` - [x] `SaasDevelopmentPage.vue` com TabView de 7 abas - [x] 7 sub-componentes (read-only): - `DevOverviewTab.vue` — stats + progresso das fases + últimas gerações - `DevRoadmapTab.vue` — fases, items, filtros por status/prioridade/bloco - `DevEstruturaTab.vue` — ESTRUTURA.md embutido + iframe do mapa-sistema.html - `DevAuditoriaTab.vue` — bugs/débitos expansíveis, filtros por status/severidade - `DevCompetitorsTab.vue` — concorrentes + features agrupadas por categoria + matriz de gaps - `DevDatabaseTab.vue` — comandos do db.cjs com copy-to-clipboard + log de execuções - `DevExportTab.vue` — stubs de "Gerar ROADMAP.md/AUDITORIA.md/concorrentes.md/ESTRUTURA.md" (desabilitados, mensagem "Pendente — Parte C") --- ## 🔨 Parte C — Edição + integração CLI ### C.1 Edição inline na UI ✅ **CONCLUÍDA (2026-04-17)** Banco agora é source-of-truth. Implementado: **Infra reutilizável:** - [x] `components/DevDrawer.vue` — drawer lateral com footer (save/cancel/delete) - [x] `components/DevField.vue` — wrapper de label/input padronizado - [x] `composables/useDraggableList.js` — drag-drop HTML5 nativo (sem deps) - [x] Migration `20260417000002_dev_tables_ordem.sql` — coluna `ordem` em `dev_auditoria_items` e `dev_competitor_features` **Roadmap (`DevRoadmapTab.vue`)** - [x] Drawer pra editar item (todos os campos) - [x] Drag & drop pra reordenar items dentro de um bloco (via `BlocoItems.vue`) - [x] Mover item entre fases (via select no drawer) - [x] Criar novo item - [x] Excluir item (com confirm) - [x] Criar nova fase (botão "+" no seletor) - [x] Editar fase (nome, objetivo, timeline, status, datas) - [x] Excluir fase (cascade nos items) **Auditoria (`DevAuditoriaTab.vue`)** - [x] Drawer com todos os campos (título, categoria, severidade, status, problema, solução, arquivo, tags, datas) - [x] Criar/editar/excluir - [x] Drag-reorder (desativado quando filtro ativo) **Concorrentes (`DevCompetitorsTab.vue`)** - [x] CRUD de concorrente (slug, nome, país, foco, pricing, posicionamento, url, notas, ativo) - [x] CRUD de feature por concorrente (categoria, nome, descrição, fonte, url, destaque) - [x] CRUD de linha da matriz (domínio, feature, status, nota, importância) - [x] **Edição inline de status na matriz** (dropdown colorido) **Pendências menores que ficaram:** - [ ] Drag-reorder no overview das fases - [ ] Drag-reorder na matriz de comparação - [ ] Drag-reorder nas features dentro de um concorrente - [ ] Drag-reorder do topo da lista de concorrentes - [ ] Autosave nos drawers (hoje é "clique em Salvar") - [ ] Undo recente - [ ] Keyboard shortcuts (`/` busca, `n` novo, `Esc` fecha) - [ ] Mudança rápida de status direto no badge do card (sem abrir drawer) - [ ] Marcar fase como concluída automaticamente quando 100% items concluídos - [ ] Quick filters no overview (só bloqueadores, só Fase 1, etc.) ### C.2 Integração CLI local (opcional — usuário disse "copy-to-clipboard por ora") Hoje todos os comandos do `DevDatabaseTab.vue` são copy-to-clipboard. Na próxima onda (se for quiser): - [ ] Pequeno server Node em `development/cli-server/server.cjs` - Escuta em `127.0.0.1:3456` (localhost-only) - Whitelist de comandos: `backup`, `dashboard`, `schema-export`, `status`, `verify`, `migrate`, `seed`, `diff` - Endpoints: `POST /run/:cmd` com SSE pra streaming do stdout - Escreve em `dev_generation_log` o resultado - [ ] Script `npm run dev:cli` pra iniciar o server - [ ] Indicador na UI (verde/vermelho) mostrando se server está online - [ ] Botões "Executar agora" ao lado de cada comando (alternativo ao copy) ### C.3 Export banco → .md (botões da aba "Exportar") - [ ] Edge Function `generate-roadmap-md` que lê `dev_roadmap_phases` + `dev_roadmap_items` e retorna markdown - [ ] Edge Function `generate-auditoria-md` análogo - [ ] Edge Function `generate-concorrentes-md` análogo - [ ] Na UI: botão clica → fetch da edge function → `` do resultado - [ ] OU: endpoint no CLI server escreve direto em `development/04-roadmap/ROADMAP.md` (se CLI server existir) - [ ] Versionar os arquivos gerados no git (script "publish": gera tudo + `git add development/`) ### C.4 Pesquisa automática de concorrentes O usuário **disse "não sei"** sobre essa feature. Quando for decidir: - [ ] Edge Function `fetch-competitor-page` — recebe URL, faz `fetch()` do HTML, retorna raw - [ ] UI: botão "Pesquisar este concorrente" abre modal com: - Input de URL - Preview do HTML capturado - Campo de texto livre pra colar observações - Opção: "extrair com IA" (chama Anthropic API com system prompt pra listar features) - [ ] Features extraídas entram numa fila de revisão (usuário aprova → salva em `dev_competitor_features`) - [ ] Histórico: `dev_competitor_features` ganha campos `aprovado_em`, `aprovado_por`, `revisao_status` ### C.5 Melhorias secundárias - [ ] **Autosave** nos drawers de edição (debounce 1s) - [ ] **Toast de feedback** em toda mutação - [ ] **Undo recente** (Ctrl+Z nos últimos 5 minutos via revision log) - [ ] **Keyboard shortcuts** — `/` foca busca, `n` novo item, `Esc` fecha drawer - [ ] **Dark mode** — se o app tem, garantir compatibilidade (surface tokens estão OK mas validar) - [ ] **Responsividade mobile** — tabs scroll horizontal já tratado, mas drawers precisam virar modals full-screen em mobile - [ ] **Paginação/virtualização** nas listas grandes (quando matriz passar de 100 linhas) --- ## 📋 Itens órfãos / decisões estratégicas ### Decisões **abertas** (do `ROADMAP.md`) Repetidas aqui pra não perder: 1. **Pricing** — R$ 59, R$ 99 ou R$ 149 solo? Afeta quanto tempo você tem pra Fase 2. 2. **Tier clínica** — existe desde o MVP ou só na Fase 3? Afeta TISS (item 32) e multi-unidade (42). 3. **Gateway de pagamento** — Asaas (barato) vs Iugu (melhor DX)? Escolher agora. 4. **IA própria ou terceirizada?** — Claude/OpenAI via API (rápido, custo variável) vs open-source local (lento, custo fixo)? Recomendo API pra começar. 5. **Foco da Fase 3** — IA-first, teleconsulta-first ou enterprise-first? Capacity só dá pra uma aposta no primeiro semestre. 6. **Data de lançamento MVP** — se meta é 2026-06-01, Fase 1 termina mid-maio. ### Itens técnicos **abertos** do `AUDITORIA.md` Ainda não resolvidos (já no banco como `dev_auditoria_items` com status `aberto` / `em_analise`): - `window.__guardsBound / window.__supabaseAuthListenerBound` — flags globais no window (anti-pattern) - Arquivos obsoletos no projeto (cleanup parcial — a finalizar) --- ## 🎯 Ordem sugerida pra Parte C Se quiser atacar **agora**: 1. **C.1 roadmap** — drawer de edição (mais valor imediato — marcar items concluídos) 2. **C.1 auditoria** — mesmo padrão do roadmap 3. **C.3 export** — ROADMAP.md e AUDITORIA.md (para versionar o que você editou) 4. **C.1 concorrentes** — edição completa 5. **C.2 CLI server** — quando cansar de copy-paste 6. **C.4 pesquisa auto** — se decidir que vale --- ## 📁 Referências - Migração: `database-novo/migrations/20260417000001_dev_tables.sql` - Seeds: `database-novo/seeds/seed_030_dev_phases_items.sql`, `seed_031_dev_auditoria.sql`, `seed_032_dev_competitors.sql` - Frontend: `src/views/pages/saas/development/` - Rota: `src/router/routes.saas.js` (path `desenvolvimento`) - Menu: `src/navigation/menus/saas.menu.js` (grupo "Desenvolvimento") - Docs fonte: `development/04-roadmap/ROADMAP.md` · `development/02-auditoria/AUDITORIA.md` · `development/03-concorrentes/concorrentes.md`