Skip to content

Roadmap de melhorias + reconciliação de docs/documentacao + Onda 1 (frontend)#67

Merged
danzeroum merged 5 commits into
mainfrom
claude/doc-repository-analysis-wcg7jb
Jul 14, 2026
Merged

Roadmap de melhorias + reconciliação de docs/documentacao + Onda 1 (frontend)#67
danzeroum merged 5 commits into
mainfrom
claude/doc-repository-analysis-wcg7jb

Conversation

@danzeroum

Copy link
Copy Markdown
Owner

Contexto

Análise profunda do repositório para estruturar melhorias (backend + frontend), seguida da reconciliação da documentação gerada e da primeira onda de execução do roadmap. Tudo respeitando o rito da campanha e as decisões já registradas (itens gated/adiados-com-gatilho não são reabertos).

O que este PR entrega (6 commits)

1. Roadmap consolidado

  • docs/ROADMAP-MELHORIAS.md — backlog priorizado com status de governança (🟢 quick-win / 🟡 precisa ADR / 🔒 gated / ✅ já resolvido), cobrindo backend, frontend, testes/CI e loops abertos. Cita a análise crítica existente (§9.2) e cruza com evidência (arquivo:linha).

2. Reconciliação de docs/documentacao (doc ↔ código)

Passe de verificação afirmação-por-afirmação nos ~35 arquivos das 4 partes + README:

  • README: contagem .py 89 → 87.
  • diagramas/: forgetting.py removido (não mais "código morto extante"); btv_agent::squad_agent::start_squad_task; contagem api 22→21.
  • dados/: wording de remoção da FallbackChain/forgetting.py; api 22→21.
  • referencia/: 12-typescript (api 22→21, listas lib//state//hooks/); confirmado 15-adrs completo (32 ADRs).
  • mapeamentos/: verificado, zero drift.

3. Onda 1 do roadmap — frontend (F1/F2/F3/F4)

  • F1 — primitivas nativas em btv-web/src/components/primitives/ (AsyncStatus, Modal/ConfirmModal, Toast/useToast), espelhando as do console web/. Minhas.tsx adota useAsyncAction+AsyncStatus (fim dos três estados à mão). +6 testes vitest.
  • F2 — tokens de superfície de feedback no global.css (--ok-bg/--err-bg/--warn-bg…); substituem hexes hardcoded em comum.tsx e Minhas.tsx. Sem terracota (brand-lint verde).
  • F3ensure-bpmn.mjs inicializa o submodule vendor/bpmn automaticamente antes de falhar (clone fresco sem --init não quebra mais o build).
  • F4window.alert/confirm eliminados: SquadRunContext usa toast; Usuarios usa ConfirmModal.

Docs de documentacao atualizadas junto (reconciliação viva): dados/17, diagramas/14, referencia/12.

Verificação local

  • vitest 43/43 (inclui brand-lint)
  • tsc -b + vite build limpos
  • oxlint exit 0

Fora deste PR (respeitando governança)

  • 🔒 B1 (decompor btv-cli) — gated no 2º consumidor do motor.
  • 🟡 L1/L2 (Designer→orquestrador; max_autonomy_level) — decisões de produto/ADR do dono.

🤖 Generated with Claude Code


Generated by Claude Code

claude added 5 commits July 14, 2026 16:12
Reconciliação doc<->código: a varredura estática confirmou 87 arquivos
.py em python/packages/ (não 89). Demais contagens (137 .rs, 160 .ts/.tsx,
14 crates, 5 pacotes, 32 ADRs, 11 schemas, 12 templates) conferidas e OK.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DkWvx5G1XqRZwybmCErshc
- 09-analise-critica: forgetting.py foi REMOVIDO (não é mais código morto
  extante); btv-eval segue placeholder vazio descopado.
- 02-casos-de-uso: btv_agent::start_squad_task -> squad_agent::start_squad_task
  (a função vive em btv-cli/src/squad_agent.rs; alinha com 06-sequencia).
- 03-pacotes / 10-c4-modelo / 14-modulos: web/src/api 22 -> 21 módulos (real).

Demais diagramas (01,04,05,06,07,08,11,12,13) verificados contra o código
e já corretos: 14 crates/137 .rs, 5 pacotes/87 .py, 4 serviços gRPC,
RunStatus/DomainEventKind(8)/Verdict/Handoff, 12 templates.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DkWvx5G1XqRZwybmCErshc
- 11-rust-core-e-llm: FallbackChain descrita como 'era código morto,
  removida' (alinha com provider.rs:40).
- 13 e 16: nota de MemorySummary — 'forgetting.py foi removido' (não 'morto').
- 17-typescript-e-html: web/src/api ~22 -> 21 módulos (contagem exata).

Verificado como já correto: 21 kinds de ledger (8 btv.* + 13 instrumentação),
4 serviços gRPC com stubs Unimplemented documentados, max_autonomy_level no
wire mas ignorado (ADR 0021), 22 rotas do btv_agent, inventário btv-squad
(30 .py, sem forgetting.py), doctor 5 checks (Rust) vs 4 (onboarding TS).
Marcadores 'Nada Fake' preservados.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DkWvx5G1XqRZwybmCErshc
- 12-typescript-frontend: web/src/api 22 -> 21 módulos; completa listas
  lib/ (screenComponents, screenMeta) e state/ (useBrand); adiciona hooks/
  notando useAsyncAction.ts com adoção zero.

Verificado como já correto: 10-rust-crates (14 crates, DomainEventKind 8
variantes, default_set 4 built-ins), 11-python-pacotes (5 pacotes, 5 agentes),
13-contratos (4 serviços gRPC + 11 schemas + 12 templates exatos),
14-endpoints (todas as rotas axum conferidas), 15-adrs (COMPLETO: 32 ADRs,
0030/0032 'proposta'), 16-glossario.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DkWvx5G1XqRZwybmCErshc
Frontend — unificação e higiene (itens F1/F2/F3/F4 de docs/ROADMAP-MELHORIAS.md):

- F1: novas primitivas nativas em btv-web/src/components/primitives/
  (AsyncStatus, Modal/ConfirmModal, Toast/ToastProvider/useToast),
  espelhando as do console web/ nos tokens do produto. Minhas.tsx passa a
  usar useAsyncAction+AsyncStatus (idle/loading/error/success unificados,
  fim dos três estados à mão). +6 testes vitest.
- F2: tokens de superfície de feedback no global.css
  (--ok-bg/--ok-ink, --err-bg/--err-line/--err-ink, --warn-bg/--warn-ink);
  substituem os hexes hardcoded em comum.tsx (Pill/ErroBox) e Minhas.tsx.
  Sem terracota — feedback nunca usa a cor de decisão (brand-lint verde).
- F3: ensure-bpmn.mjs inicializa o submodule vendor/bpmn automaticamente
  antes de falhar (clone fresco sem --init não quebra mais o build).
- F4: window.alert/confirm eliminados — SquadRunContext usa toast (gate
  encerrado), Usuarios usa ConfirmModal na remoção de perfil.

Docs atualizadas junto (reconciliação viva doc<->código): dados/17,
diagramas/14 (cadeia de providers + nó de primitivas) e referencia/12
(useAsyncAction agora adotado; primitives/ listado).

Verificação local: vitest 43/43 (inclui brand-lint), tsc -b + vite build
limpos, oxlint exit 0.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DkWvx5G1XqRZwybmCErshc
@danzeroum danzeroum merged commit a887e2e into main Jul 14, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants