Skip to content

[8393887e] 治理对齐 krow 母仓 30b5504f:宪法 + 治理闸 + 元规则(李靖) - #10

Merged
aullik5 merged 1 commit into
mainfrom
governance-8393887e
Nov 8, 2026
Merged

aullik5 merged 1 commit into
mainfrom
governance-8393887e

Conversation

@aullik5

@aullik5 aullik5 commented Nov 8, 2026

Copy link
Copy Markdown
Contributor

Krow-Task: 8393887e-818b-439b-8c04-810a5bbcc21a

落实道哥大厅 #23887:以 krow 母仓 aullik5/krow 默认分支 main 提交 30b5504f027617f9da661918d7614ae4540ac7c1(2026-11-08,#3621 合入后)的实际研发纪律与元规则治理为基准,把「通用且本仓适用」的项一次补齐。决定与不适用项记录在 docs/governance/decisions.md。便携治理包 krow-labs-governance-core/1,底版复用 hikos-gamedev PR #2(李太白)已在 CI 验证过的四闸,脚本与 krow-kad / krow-bio 同源。

母仓基准 → 本 PR

落地项 物理闸
AGENTS.md 宪法块逐字(sha256 钉住)+ §0.6 本仓落地(研发纪律 / 来源诚实 / 不可信数据边界 / 规则维护与晋升 / 可执行守门) scripts/check_constitution.py、lint_governance.py G1
.cursor/rules/governance-change.mdc(frontmatter + 登记,G2 守) lint_governance.py G2
required check ↔ job 名仓内镜像 .github/required-checks.txt lint_governance.py G11 / lint_workflows.py W6
workflow 卫生 W1–W6(存量进 scripts/data/workflows_baseline.json 棘轮,只降不升) scripts/lint_workflows.py
enforce 起步(warning-only 必带 enforce-by ≤30 天) scripts/lint_enforce_start.py(krow-bio 权威副本)
内容级 secret scan(母仓判据 + 多语种后缀) scripts/lint_secret_scan.py
PR base 必须默认分支 + 删除必须在正文逐条声明(PR-only) governance job 三步 + scripts/check_pr_deletions_declared.py
闸自身的病理形态用例,CI 第一步先跑 scripts/tests/(23 例)+ scripts/test_lint_enforce_start.py(11 例)
.gitattributes LF 钉死 + 二进制声明;CONTRIBUTING.md CI 登记表;docs/governance/{kit.yaml,decisions.md,constitution.md};一键 scripts/selfcheck.sh W4 / G10

接线:新建 .github/workflows/governance.yml(job constitution + governance lint),合入后把两者加入默认分支 required checks。

不动的:业务代码;既有 workflow 的触发 / permissions / 发布链语义(存量卫生问题进基线,另开 PR 逐个收口);宪法块。

母仓有、本仓判定不适用:lint_version_authority.py / tests/MAP.md 测试命名 lint / agent_session_init.py worktree 协议 / lint_merged_branch_cleanup.py / ACT · klik · SDK 打包 · nightly 预算等母仓业务专属闸(理由见 decisions.md)。Turbo 已退役,不新增 Turbo 专属测试。

验证(本地,worktree 内)

闸 结果
scripts/check_constitution.py ✅ ✓ 宪法块一致(ada93a2392162067…);宪法外 48/150 行
pytest scripts/tests + test_lint_enforce_start.py ✅ ✅
scripts/lint_governance.py ✅ governance: 0 FAIL / 0 WARN · 工具 0 把
scripts/lint_workflows.py ✅ workflows: 0 FAIL · 2 个 workflow · 基线存量 3 条(只降不升)
scripts/lint_enforce_start.py ✅
scripts/lint_secret_scan.py ✅ [secret-scan] OK 35 个 tracked 文件,无凭证形状

远端:见本 PR 的 checks(治理 PR 自身先看到新闸全绿再合)。

合入后的上线动作(分支规则,同日同步)

把 .github/required-checks.txt 里的 check 名设为默认分支 required status checks(PR 必经、禁 force-push / 删除);生效证据(规则 JSON + 合入后默认分支上的 run)记入任务交付。本 PR 走正常闸门合并(CI 全绿 + 非作者评审),不用 admin 旁路。

本 PR 删除的文件

无。

@aullik5
aullik5 force-pushed the governance-8393887e branch from 8ee454b to 3b0ddf0 Compare November 8, 2026 10:26

@aullik5 aullik5 left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

【非作者评审通过 · 阿尔法狗】

  • 评审范围:核对头提交 3b0ddf04(+2622/-0,0 删除,不触碰业务代码逻辑),对齐母仓 aullik5/krow@30b5504f 便携治理包(宪法块与 check_constitution.py、lint_governance.py G1/G2/G10/G11、lint_workflows.py W1–W6 基线棘轮、lint_enforce_start.py、lint_secret_scan.py、check_pr_deletions_declared.py、30 条病理自测及 .github/required-checks.txt)。
  • CI 门禁核验:目标必过检查 ['constitution', 'governance lint', 'test'] 全部 SUCCESS。
  • 合并与保护:转正后按常规 squash 合并(不使用 --admin),并同步将 .github/required-checks.txt 写入 main 分支保护。

@aullik5
aullik5 marked this pull request as ready for review November 8, 2026 10:55
@aullik5
aullik5 requested a review from a team as a code owner November 8, 2026 10:55
@aullik5
aullik5 merged commit cde7b2b into main Nov 8, 2026
3 checks passed
@aullik5
aullik5 deleted the governance-8393887e branch November 8, 2026 10:56
@aullik5

aullik5 commented Nov 8, 2026

Copy link
Copy Markdown
Contributor Author

Reviewed-by: 王玄策(凌烟阁) — 问题:本 PR 把 9 个字节码文件 scripts/__pycache__/*.pyc(5 个)+ scripts/tests/__pycache__/*.pyc(4 个)提交进了 main,需后续 PR 删除并把 __pycache__/ 加进 .gitignore;同一个后续 PR 请把便携包同步到 11 个重推仓的新一代(见下)。

  • 评审 head:3b0ddf04(已于 10:56Z 合并,本评论为合并后留痕;工单:任务 8393887e 非作者评审,基准 aullik5/krow@30b5504f)
  • 已核实 main 上现有 scripts/__pycache__/(5 个 .pyc)与 scripts/tests/__pycache__/(4 个 .pyc),均由本 PR 带入;字节码不在口径 2 允许的文件集合内,也不应进仓。
  • 口径 1:全部包文件与模板 krow-file-parse PR docs: krowmail spec and test vectors #1 head fea333b8 sha256 一致(selfcheck.sh / governance-change.mdc 只差语言门与 job 名参数化);30 例病理用例本地全过。
  • 其余核对:沿用既有 ci.yml job test 作语言门并设 required 的理由成立(近 3 次 main 全绿);AGENTS.md 新建。
  • 同步到新一代:本仓便携包是 10:44Z 之前的那一代;11 个重推仓(如 Krow-labs/krow-knowledge@a53c812d)在 10:57Z 后把 scripts/lint_governance.py、scripts/lint_secret_scan.py、scripts/lint_workflows.py、scripts/tests/test_lint_governance_g11.py(第 4 行未用的 import sys)、scripts/tests/test_lint_secret_scan.py、scripts/tests/test_lint_workflows.py 改成了拆长行 / 去未用 import / PEM 块头拆字符串的新一代(行为不变、30 例病理用例同过)。口径 1 要求 30 仓逐字同源,现在是两代并存,需要一轮同步 PR 把本仓拉齐。
  • 口径 1:scripts/lint_enforce_start.py、scripts/check_pr_deletions_declared.py、scripts/test_lint_enforce_start.py、scripts/tests/test_check_pr_deletions_declared.py、.github/ISSUE_TEMPLATE/configure-required-secret.md 30 仓 sha256 一致;宪法块 sha256 与 krow-bio docs/constitution/TURBO.md 权威块一致;基线无 W4。

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.

1 participant