Skip to content

[PR] ci(#4828): kernel-guard exempts lockfile-only churn from the human gate - #4837

Merged
ranxianglei merged 1 commit into
masterfrom
2026-10-26_kernel-guard-lockfile-exempt
Oct 26, 2026
Merged

ranxianglei merged 1 commit into
masterfrom
2026-10-26_kernel-guard-lockfile-exempt

Conversation

@ranxianglei

Copy link
Copy Markdown
Owner

(ai: zhipuai-lb/glm-5.3)

Fixes #4828

这是什么

kernel-guard 的人工门禁(Rule 1)把 kernel/package-lock.json 也算进「改了 kernel/」——而它是生成物,不是 kernel 源码。8 个 PR(#4823 #4808 #4802 #4800 #4799 #4794 #4790 #4785)纯粹因为锁文件漂移被卡,机器人往 PR 正文补 kernel-change: 声明的做法又被 owner 正确地否决了(绕过了批准环节)。

修法(= issue 里方案 A 的机制化,一次治一类而不是逐个批准)

Rule 1 判定「触碰 kernel/」时排除 kernel/package-lock.json:

  • 真改 kernel 源码/构建配置 → 照旧要声明 + owner 批准(人工门禁原样保留)
  • 纯锁文件漂移 → 直接过,不再要 owner 走一趟
  • 锁文件的一致性由独立的 lock-sync 门禁强制(真漂移照样红——今天 [PR] chore: empty PR (no changes) #4725 合并后 master 的 lock-sync 红就是活证,该红的时候它红)

验证

  • YAML 合法;Rule 2(版本纪律:源码变更必须带 bump / bump 必须带源码变更)不受影响——lockfile-only PR 两个开关都是 0,直接过
  • 分支基于最新 master(341e76c)

对 #4828 问题的直接回答

owner 不再需要逐个批准这批锁文件更新:本 PR 合并后,那 8 个 PR 重跑 CI 即绿,无需任何声明。代理侧的纪律(别在 PR 分支里对 kernel/ 跑 install)仍值得写进 AGENTS.md,但门禁不再依赖人的自觉。

…n for lockfile-only churn

kernel/package-lock.json is generated state, not kernel source. Agents' test
prep (npm install inside kernel/, sweep-bot merges of stale lockfiles) churns
it without any intent to change the kernel — 8 PRs (#4823 #4808 #4802 #4800
#4799 #4794 #4790 #4785) tripped the human gate on lockfile-only diffs, and
the previous stopgap (bots appending kernel-change: declarations to PR
bodies) was correctly rejected by the owner as bypassing the approval step.

The human gate exists to protect kernel SOURCE. Rule 1 now ignores
kernel/package-lock.json when deciding whether a PR 'touches kernel/'; real
source/build-config changes still require the declaration + owner approval,
and lockfile CONSISTENCY stays enforced by the separate lock-sync job (which
fails on genuine drift — the #4725 merge red being today's live proof).
@ranxianglei ranxianglei changed the title ci(#4828): kernel-guard exempts lockfile-only churn from the human gate [PR] ci(#4828): kernel-guard exempts lockfile-only churn from the human gate Oct 26, 2026
@github-actions

Copy link
Copy Markdown
Contributor

📦 Built Package Artifact

Branch: 2026-10-26_kernel-guard-lockfile-exempt (8299547)

Latest build — install this exact version

npm install -g billion-context@0.0.6239-pr.4837.20ddf94

This exact version is immutable and reproducible. The rolling pr tag tracks the newest test build across all PRs.

Recent builds (commit → version)

commit version build
8299547 billion-context@0.0.6239-pr.4837.20ddf94 build

Download artifact

  1. Download the artifact from the Actions run
  2. Extract the tarball and install:
tar xzf billion-context-pr4837.tgz
npm install -g package

Install instructions are refreshed on each push.

@ranxianglei
ranxianglei merged commit 24e71f6 into master Oct 26, 2026
46 of 47 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

📦 Merged Build Published

This merge to master was published as 0.0.860-master.24e71f6 (rolling master tag).

npm install -g billion-context@0.0.860-master.24e71f6  # this exact build
npm install -g billion-context@master  # always the newest merged build

npm view billion-context@master prints the current version at any time.

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.

kernel authorization request: package-lock churn in PR branches tripping the kernel human-gate (8 PRs)

1 participant