Skip to content

docs: sync migration and strategy counts with the code - #12970

Merged
diegosouzapw merged 1 commit into
release/v3.8.51from
fix/release-v3.8.51-doc-counts
Sep 8, 2026
Merged

diegosouzapw merged 1 commit into
release/v3.8.51from
fix/release-v3.8.51-doc-counts

Conversation

@diegosouzapw

Copy link
Copy Markdown
Owner

⚠️ Toca superfície de instrução de agente — precisa da sua aprovação explícita

Dois arquivos deste diff estão na lista da Hard Rule: AGENTS.md e skills/cli-tunnel/SKILL.md. Nenhuma instrução foi alterada — são correções de números e de uma assinatura de CLI, listadas abaixo linha a linha para você conferir sem abrir o diff.

Base-red

Docs Gates (fast-path) falha no tip de release/v3.8.51 com 6 drifts STRICT:

✗ README.md — stale migrations: "169 migrations" — code has 171
✗ AGENTS.md — stale migrations: "169 migrations" — code has 171
✗ llm.txt   — stale migrations: "169 migrations", "169 versioned SQL migration", "169 SQL migrations" — code has 171
✗ docs/diagrams/readme-hero.svg      — stale: "19 routing strategies" — code has 20
✗ docs/diagrams/comparison-table.svg — stale: "19 routing strategies" — code has 20
✗ docs/diagrams/tier-cascade.svg     — stale: "19 routing strategies" — code has 20

Vermelho da minha leva de 16 PRs, e eu não peguei na validação:

Contei os arquivos em vez de confiar na memória: ls src/lib/db/migrations/*.sql | wc -l → 171.

O que mudou

arquivo mudança
README.md, AGENTS.md 169 migrations → 171 migrations (uma célula de tabela cada)
llm.txt as 4 ocorrências do número
docs/i18n/*/llm.txt (41) regenerados por scripts/i18n/sync-llm-mirrors.mjs — o gate exige cópia exata da raiz
3 SVGs de diagrama 19 routing strategies → 20
skills/cli-tunnel/SKILL.md tunnel create [type] → tunnel create

Sobre o SKILL.md

O outro braço do Merge integrity é check:agent-skills-sync acusando GENERATED: + cli-tunnel. O arquivo commitado documentava um argumento que a CLI não aceita:

// bin/cli/commands/tunnel.mjs:21
.command("create")

Sem [type]. Conferi na fonte antes de aceitar a saída do gerador. São duas linhas, produzidas por scripts/skills/generate-agent-skills.mjs --apply a partir do parser que lê bin/cli/commands/*.mjs — não escrevi nada à mão ali.

Esse era herdado, não da minha leva: o corpo do #12866 já registrava check:agent-skills-sync dry-run + cli-tunnel como base-red inerited de #12732.

Evidência

gate antes depois
check:docs-counts 6 drifts STRICT 0 (2 soft permanecem, pré-existentes)
check:docs-sync FAIL — 41 mirrors divergentes PASS
check:agent-skills-sync GENERATED: + cli-tunnel UNCHANGED: 46 skills
check:doc-links PASS PASS

Depende do #12963 e do #12964 para o tip ficar realmente verde — são três vermelhos independentes.

@ggiak

ggiak commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Verified locally on the current tip — the full Docs Gates chain goes green with this PR.

Node v26.4.0. Every open PR against the branch currently inherits those drifts under Docs Gates (fast-path) (e.g. #13036).

@ggiak ggiak left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

diegosouzapw added a commit that referenced this pull request Sep 8, 2026
…ore (#12963)

Base-red: `API Route Typecheck` falhava no tip com 13 TS2339 novos em `chatCore.ts`, vindos do #12867 — que eu mergeei validando só com `typecheck:core`, que não cobre esse arquivo.

Causa: `legResult` é a união `NonStreamingProviderLegResult`; o guard de erro estreita para a variante `ok`, mas a reatribuição condicional do tool loop devolve o tipo declarado e as 13 leituras seguintes perdem a narrowing. Corrigido fixando a variante num binding próprio — `loopApply.leg` já é `& { kind: "ok" }`, então sem cast.

Gate: 302 erros com 13 novos → **289, todos dentro da baseline congelada**. `typecheck:core` limpo, ESLint 0 no arquivo.

Dois commits: o primeiro é Prettier puro sobre o arquivo do tip (que chegou fora do padrão pelo #12867), verificado byte a byte contra `prettier(tip)`; o segundo é a mudança semântica, 39 linhas.

Os demais vermelhos deste PR são herdados e cobertos por #12990, #12964 e #12970.
@diegosouzapw
diegosouzapw merged commit 10fef01 into release/v3.8.51 Sep 8, 2026
15 of 21 checks passed
diegosouzapw added a commit that referenced this pull request Sep 10, 2026
Contagem de migrations 171 → 172 após a `175_call_logs_provider_stats_indexes.sql` do #12832. Medido com `ls src/lib/db/migrations/*.sql | wc -l`.

Falha minha de processo: depois da onda 1 desta leva eu medi file-size, api-typecheck, changelog-integrity e colisão de migration — não o `check:docs-counts`. O drift ficou vivo até a onda 2 esbarrar nele.

41 mirrors de `llm.txt` regenerados pelo script do projeto. Aprovado por você para tocar `AGENTS.md`, mesma classe do #12970.
diegosouzapw pushed a commit that referenced this pull request Sep 10, 2026
…eights, quality gate and scoring diagram now covered (#12507)

Estender o gate de contagens para headings, rankings, catálogo, pesos, quality gate e o diagrama de scoring é exatamente o tipo de trabalho que evita a classe inteira em vez de um caso.

Falo por experiência desta campanha: o `check:docs-counts` caiu **duas vezes** hoje pela mesma causa — contagem de migration escrita à mão em três arquivos mais 41 mirrors, desatualizando a cada migration nova (#12970 e #13209). Cada superfície que este PR passa a cobrir é uma que deixa de virar base-red na mão de quem vier depois.

Revalidei sobre o tip: **19/19**, `check:docs-counts-sync` com 0 drifts, `check:docs-all` PASS, `check:doc-links` PASS.

**Integração:** dois conflitos.

1. `scripts/check/check-docs-counts-sync.mjs` — o bloco de leitura de fatos conflitou com os imports de free-tier que entraram pelo #12786/#12744 nesta campanha. Aditivo, os dois conjuntos ficaram.
2. `docs/diagrams/auto-combo-scoring.mmd` — o seu rótulo dizia `reliability (0.0000)`, mas o #12731 mergeou horas antes e passou a dar peso de reliability a todo mode pack. Ficou o rótulo do tip, `reliability (0.0000 DEFAULT, 0.03 packs, 0.04 reliable)`, que é o número real agora.
muhamadgalihsaputra pushed a commit to niyatna/NiyatnaRoute that referenced this pull request Sep 27, 2026
…ore (diegosouzapw#12963)

Base-red: `API Route Typecheck` falhava no tip com 13 TS2339 novos em `chatCore.ts`, vindos do diegosouzapw#12867 — que eu mergeei validando só com `typecheck:core`, que não cobre esse arquivo.

Causa: `legResult` é a união `NonStreamingProviderLegResult`; o guard de erro estreita para a variante `ok`, mas a reatribuição condicional do tool loop devolve o tipo declarado e as 13 leituras seguintes perdem a narrowing. Corrigido fixando a variante num binding próprio — `loopApply.leg` já é `& { kind: "ok" }`, então sem cast.

Gate: 302 erros com 13 novos → **289, todos dentro da baseline congelada**. `typecheck:core` limpo, ESLint 0 no arquivo.

Dois commits: o primeiro é Prettier puro sobre o arquivo do tip (que chegou fora do padrão pelo diegosouzapw#12867), verificado byte a byte contra `prettier(tip)`; o segundo é a mudança semântica, 39 linhas.

Os demais vermelhos deste PR são herdados e cobertos por diegosouzapw#12990, diegosouzapw#12964 e diegosouzapw#12970.
muhamadgalihsaputra pushed a commit to niyatna/NiyatnaRoute that referenced this pull request Sep 27, 2026
…12970)

Contadores de docs fora de sincronia com o código, aprovado pelo dono em chat por tocar `AGENTS.md` e `skills/cli-tunnel/SKILL.md` (Hard Rule — superfície de instrução de agente). Nenhuma instrução mudou.

`Docs Gates` acusava 6 drifts STRICT. Dois vieram da minha leva de 16 PRs: migrations 169 → **171** (diegosouzapw#12707 trouxe a 173, diegosouzapw#12867 a 174) e estratégias de roteamento 19 → **20** (diegosouzapw#12789 registrou a `quota-weighted`). Contei os arquivos em vez de confiar na memória: `ls src/lib/db/migrations/*.sql | wc -l` → 171.

Os 41 mirrors de `docs/i18n/*/llm.txt` foram regenerados com `scripts/i18n/sync-llm-mirrors.mjs` — o gate exige cópia exata da raiz.

O outro braço, `check:agent-skills-sync` acusando `GENERATED: + cli-tunnel`, era herdado (o corpo do diegosouzapw#12866 já o registrava). O `SKILL.md` commitado documentava `tunnel create [type]`, um argumento que a CLI **não aceita** — conferido em `bin/cli/commands/tunnel.mjs:21`, que declara `.command("create")` puro. Saída do gerador, não escrita à mão.

| gate | antes | depois |
|---|---|---|
| `check:docs-counts` | 6 drifts STRICT | **0** |
| `check:docs-sync` | FAIL — 41 mirrors divergentes | **PASS** |
| `check:agent-skills-sync` | `+ cli-tunnel` | **UNCHANGED: 46 skills** |
muhamadgalihsaputra pushed a commit to niyatna/NiyatnaRoute that referenced this pull request Sep 27, 2026
Contagem de migrations 171 → 172 após a `175_call_logs_provider_stats_indexes.sql` do diegosouzapw#12832. Medido com `ls src/lib/db/migrations/*.sql | wc -l`.

Falha minha de processo: depois da onda 1 desta leva eu medi file-size, api-typecheck, changelog-integrity e colisão de migration — não o `check:docs-counts`. O drift ficou vivo até a onda 2 esbarrar nele.

41 mirrors de `llm.txt` regenerados pelo script do projeto. Aprovado por você para tocar `AGENTS.md`, mesma classe do diegosouzapw#12970.
muhamadgalihsaputra pushed a commit to niyatna/NiyatnaRoute that referenced this pull request Sep 27, 2026
…eights, quality gate and scoring diagram now covered (diegosouzapw#12507)

Estender o gate de contagens para headings, rankings, catálogo, pesos, quality gate e o diagrama de scoring é exatamente o tipo de trabalho que evita a classe inteira em vez de um caso.

Falo por experiência desta campanha: o `check:docs-counts` caiu **duas vezes** hoje pela mesma causa — contagem de migration escrita à mão em três arquivos mais 41 mirrors, desatualizando a cada migration nova (diegosouzapw#12970 e diegosouzapw#13209). Cada superfície que este PR passa a cobrir é uma que deixa de virar base-red na mão de quem vier depois.

Revalidei sobre o tip: **19/19**, `check:docs-counts-sync` com 0 drifts, `check:docs-all` PASS, `check:doc-links` PASS.

**Integração:** dois conflitos.

1. `scripts/check/check-docs-counts-sync.mjs` — o bloco de leitura de fatos conflitou com os imports de free-tier que entraram pelo diegosouzapw#12786/diegosouzapw#12744 nesta campanha. Aditivo, os dois conjuntos ficaram.
2. `docs/diagrams/auto-combo-scoring.mmd` — o seu rótulo dizia `reliability (0.0000)`, mas o diegosouzapw#12731 mergeou horas antes e passou a dar peso de reliability a todo mode pack. Ficou o rótulo do tip, `reliability (0.0000 DEFAULT, 0.03 packs, 0.04 reliable)`, que é o número real agora.
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