Skip to content

fix(ci): make Merge integrity green — a bulletless changelog fragment and a stale generated skill - #12923

Closed
ntdat812 wants to merge 2 commits into
diegosouzapw:release/v3.8.51from
ntdat812:fix/changelog-fragment-bullet
Closed

ntdat812 wants to merge 2 commits into
diegosouzapw:release/v3.8.51from
ntdat812:fix/changelog-fragment-bullet

Conversation

@ntdat812

@ntdat812 ntdat812 commented Sep 7, 2026 •

Copy link
Copy Markdown
Contributor

release/v3.8.51 fails its own Merge integrity (changelog + generated skills) gate, so every open pull request inherits a red check that has nothing to do with its diff. The gate has two halves and both are failing on the base branch. One PR fixes both, because fixing either alone leaves the check red.

Half 1 — a changelog fragment with no bullet

$ node scripts/check/check-changelog-integrity.mjs     # on origin/release/v3.8.51, clean tree
[changelog-integrity] 1 invalid changelog fragment(s):
  ✗ changelog.d/fixes/reset-aware-model-family.md: fragment must start with a markdown bullet ("- ")

The file is a bare sentence. It arrived with 2a6eff0aec (#12637, @HouMinXi, 3 Sep), and because the gate scans the whole changelog.d/ tree rather than only the fragments a PR touches, one malformed file turns the check red for everybody.

Restored as the bullet the other fragments use, wording unchanged apart from an article, credit kept:

- **fix(combo):** Keep Antigravity Gemini usable when the same connection's Claude weekly quota is empty; the generic quota cache stays per-connection for every other provider ([#12637](https://github.com/diegosouzapw/OmniRoute/pull/12637)) — thanks @HouMinXi

Also renamed to 12637-reset-aware-model-family.md, since changelog.d/README.md specifies <PR-number>-<short-slug>.md and says the prefix is what keeps aggregation order deterministic. Happy to drop the rename if you would rather keep a fix like this to one line.

Half 2 — a generated skill that drifted from the CLI

$ npm run -s check:agent-skills-sync                   # on origin/release/v3.8.51, clean tree
  GENERATED:
    + cli-tunnel
  UNCHANGED: 45 skills (all up-to-date)

skills/cli-tunnel/SKILL.md documents tunnel create [type]; the generator reads tunnel create from the current CLI definition. Two lines, and the file was never regenerated after the argument changed. Regenerated with --apply, no hand edits.

Verification

Both halves, before and after, on a clean tree:

# before (origin/release/v3.8.51)
node scripts/check/check-changelog-integrity.mjs   → 1 invalid changelog fragment(s)   exit 1
npm run -s check:agent-skills-sync                 → GENERATED: + cli-tunnel

# after
node scripts/check/check-changelog-integrity.mjs   → OK — no base bullets lost           exit 0
npm run -s check:agent-skills-sync                 → UNCHANGED: 46 skills (all up-to-date)
node scripts/release/aggregate-changelog.mjs --dry-run
                                                   → aggregates cleanly, renamed file included

There is no unit test to add: the gate that was failing is the test, and it goes red → green on this diff. Nothing outside those two files is touched.

I have not checked whether either drift is present on other release branches; if they were cherry-picked, the same two fixes apply there.

check:changelog-integrity fails on release/v3.8.51 itself:
changelog.d/fixes/reset-aware-model-family.md is a bare sentence with no
"- " bullet, so the Merge integrity gate is red on every open pull
request, not just the one that added it.

Restores the bullet in the repo's format with the credit to @HouMinXi,
and renames the file to the documented <PR-number>-<slug> convention so
aggregation order stays deterministic.
check:agent-skills-sync is the other half of the Merge integrity gate and
it is also failing on release/v3.8.51 itself: the committed SKILL.md
documents 'tunnel create [type]' while the generator reads 'tunnel
create' from the CLI definition. Regenerated with --apply; no hand edits.
@ggiak

ggiak commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Verified locally on the current tip — both halves of Merge integrity go green with this PR.

Node v26.4.0. Every open PR against the branch currently inherits that + cli-tunnel red (e.g. #13036).

@diegosouzapw

Copy link
Copy Markdown
Owner

Both issues here were real when opened, but the ground shifted under this PR: the changelog
fragment got folded into CHANGELOG.md by the release reconciliation sweep, and the cli-tunnel
skill was independently regenerated to the CORRECT tunnel create [type] form (the addArgument
parser fix landed after this branch was cut) — so this PR's skill change would actually be a
step backwards now. Closing as superseded on both counts, no fault of the diagnosis.

Triage note: this is the review recommendation — the close itself happens only after the maintainer's per-PR sign-off (and, where a superseding PR is named, after it has landed). Nothing is being closed by this comment.

@diegosouzapw diegosouzapw added the protected-surface Touches an agent-instruction surface (AGENTS/CLAUDE/llm.txt/SKILL.md) — per-PR operator OK to merge label Sep 15, 2026
@diegosouzapw

Copy link
Copy Markdown
Owner

Obrigado, mas esta não pode entrar — ela reverteria duas coisas que o tip já corrigiu, e uma delas é superfície de instrução de agente.

1. skills/cli-tunnel/SKILL.md — regressão. O tip já está no formato novo:

$ git show origin/release/v3.8.51:skills/cli-tunnel/SKILL.md | grep 'tunnel create'
40:### `tunnel create [type]`
45:omniroute tunnel create [type]

E o diff desta PR faz o caminho inverso:

-### `tunnel create [type]`
+### `tunnel create`

SKILL.md é executado como autoridade por toda sessão de agente. Documentar a assinatura antiga faria qualquer agente futuro chamar o comando errado — por isso este repo exige aprovação explícita do operador para qualquer PR que toque essas superfícies (precedente: #11770).

2. changelog.d/fixes/reset-aware-model-family.md não existe mais no tip — foi dobrado no CHANGELOG.md pela reconciliação da #12971. Editá-lo recria um fragmento já consumido.

Fechando. O problema de "Merge integrity" que motivou a PR era real quando você a abriu; ele foi resolvido por outro caminho (#13216) enquanto ela esperava. Se ainda vir o gate vermelho no tip atual, reabra com a saída do gate que você está vendo — aí investigo de novo.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

protected-surface Touches an agent-instruction surface (AGENTS/CLAUDE/llm.txt/SKILL.md) — per-PR operator OK to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants