docs(audit-p6-m895): plan-issue intention must record literal decision data (miss #895)

This commit is contained in:
Francisco Solla 2026-08-25 10:31:51 -03:00
parent 8032afdead
commit c3e46da6c3
4 changed files with 13 additions and 1 deletions

View file

@ -57,7 +57,7 @@ Cada fase pesada é delegada a um sub-agente com contexto mínimo. O agente prin
- [ ] 2. Reserva de IDs
- [ ] 3. Dispatch sub-agente explorador → receber findings
- [ ] 4. Dispatch sub-agentes escritores (paralelo) → receber planos
- [ ] 5. GATE: overview + rascunho UI (se muda UI) → confirmar
- [ ] 5. GATE: overview + rascunho UI (se muda UI) + decisão de dados → literais no plano → confirmar
- [ ] 6. Dispatch sub-agente registrador → PR → merge → promote
```
@ -117,6 +117,7 @@ Antes de criar Issues:
- Overview: ID, título, prio, depends, appetite, link do plano
- Para cada item UI: aponte o link do `.html` fonte
- Decisão de dados → valores literais presentes no plano? (bloco "Dados da decisão (literais)" — nunca só narrativa)
- Perguntas acumuladas, recomendação de produto primeiro
**Pare e espere.** Itere até confirmação explícita do lote.

View file

@ -57,6 +57,15 @@ Responsável: —
- **Decisões desbloqueadas:** <ator + escolha; uma por bullet. Sem decisão nomeável → corte vaidade.>
- **Forma:** *adiada ao plano de implementação* — aqui só restrições de produto (ex.: "sem % estadual absoluto", "leitura relativa/local").
## Dados da decisão (literais)
<!-- Sempre presente. Se a intenção fixa valores de dados (IDs, nomes de modelo, strings
exatas, envs, tabelas de threshold), grave-os verbatim aqui — nunca só narrativa.
Sem valor fixo: "N/A — <por quê>". -->
- <valor literal que o executor deve aplicar, um por bullet>
- ex.: OPS95 registraria a tabela flag→ID do mapa (os 5 IDs)
## Direção no codebase (hipótese)
<!-- Soft. Revisável. Sem signatures, sem "criar collection X", sem mermaid de solução. -->

View file

@ -20,6 +20,7 @@ Ledger dos guardrails determinísticos colhidos de `kind:agent-miss` (fluxo `pnp
| `src/lib` não type-importa `@/utilities/**` (direção única também para tipos) | dodge do Pass 3 (suggestionCatalog) | 2 | ESLint `no-restricted-imports` `allowTypeImports: false` na zona `src/lib` | PR [#92](https://github.com/fsolla/teqo/pull/92) (Pass 4) |
| Local API com `user` sempre declara `overrideAccess`; import dinâmico de módulos server banido em utilities | guarda ausente (medida baseline 59/0) | 3 | `tests/unit/localApiOverrideAccessConventions.unit.spec.ts` | PR [#92](https://github.com/fsolla/teqo/pull/92) (Pass 4) |
| Desarme determinístico do auto-merge da /testing-audit (cria→desarma→verifica atômico; draft fail-closed) | [#909](https://github.com/fsolla/teqo/issues/909) | 3 (script + spec) | `scripts/testing-audit-disarm.mjs` (create/`--pr` + `--draft-on-failure`); pin `tests/unit/testingAuditDisarmConventions.unit.spec.ts` (skill /testing-audit deve referenciar o script) | vivo desde 2026-08-25 (Pass 6) |
| Plano de intenção com decisão de dados grava os valores literais (IDs, nomes, envs, thresholds) — nunca só narrativa | [#895](https://github.com/fsolla/teqo/issues/895) | 6 (judgment-only declarada — doc/convenção, não fingir que doc é guarda) | bloco "Dados da decisão (literais)" no `intention-template.md` + prompt "decisão de dados → valores literais presentes no plano?" no gate do plan-issue | vivo desde 2026-08-25 (Pass 6) |
## Precedentes vivos (anteriores ao primeiro harvest)

View file

@ -0,0 +1 @@
**P6-M895 (#895) — plano de intenção grava os dados literais da decisão (miss #895, docs-only, classe 6):** `intention-template.md` ganha o bloco sempre presente "Dados da decisão (literais)" (IDs, nomes de modelo, strings exatas, envs, tabelas de threshold — verbatim, nunca só narrativa; "N/A — por quê" explícito quando não há valor fixo; com o exemplo do próprio miss: "ex.: OPS95 registraria a tabela flag→ID do mapa (os 5 IDs)"); o gate do `plan-issue` (Checklist item 5 + Passo 4) cobra o prompt "decisão de dados → valores literais presentes no plano?"; linha nova na tabela Ativos de `docs/GUARDRAILS.md` declarando a guarda judgment-only (classe 6 — doc/convenção, sem detector).