Skip to content

fix(ci): pin MK-01 to PostgreSQL 18 and sealed process inputs - #930

Merged
LIghtJUNction merged 1 commit into
wip/rust-core-go-extensionsfrom
cursor/mk-01-identity-ci-9de5
Oct 16, 2026
Merged

LIghtJUNction merged 1 commit into
wip/rust-core-go-extensionsfrom
cursor/mk-01-identity-ci-9de5

Conversation

@LIghtJUNction

@LIghtJUNction LIghtJUNction commented Oct 16, 2026 •

Copy link
Copy Markdown
Collaborator

变更说明

问题与关联 Issue/PR:

Fixes #929

MK-01 identity and teams 在基线 278ef81e 与 tip a901a606 上对所有触及 services/core/** 的 PR 失败,与业务改动无关。对照 run 38928672624(head 51d79011)与同一 head 的 protocol run 38928672599:protocol 的 “Rust checks and real database tests” 通过,MK-01 的 identity job 失败。

为什么采用此方案:

失败日志确认两处 CI 差异,目录指纹保持 660ddf6f… 不变:

  1. MK-01 拉取未固定的 postgres:17-alpine。core_schema::index_tests 得到 25dd8365…,期望值为已审核的 660ddf6f…。随之 tests/cli.rs:1093 报 Error: Storage,oauth2_lmm_author 四处 Unavailable,oauth2_lmm_http 返回 503。protocol 使用与 deployment/docker/compose.identity.yml 相同的 postgres:18-alpine@sha256:77f585114c32…,这些用例通过。
  2. MK-01 未导出 protocol 已导出的密封输入。tests/model_process.rs:94 对 LMM_MODEL_PROCESS_ROOT 的 unwrap 使 7 个用例 panic;tests/payments_process.rs 因缺少 LMM_PAYMENT_CORE_BIN 失败。

只改 .github/workflows/mk-01-identity.yml:Postgres 镜像改为 protocol 的固定 digest;测试步骤按 protocol 先 cargo test --no-run,再导出模型进程根目录、Core/Go/bootstrap 二进制及其 SHA-256,然后执行 cargo test。Go host 构建改为与 protocol 相同的 CGO_ENABLED=0 go build -mod=readonly -trimpath。不改业务代码,也不把指纹改成 PostgreSQL 17 的值。

复用了什么,替代或删除了什么:

复用 protocol 作业里已验证的镜像 digest 和密封变量脚本。替换未固定的 postgres:17-alpine,以及直接执行、未绑定进程输入的 cargo test。

可能破坏的行为、外部契约或数据路径:

无运行时契约变化。MK-01 现在跑与 protocol 相同的非忽略支付恢复用例和模型进程用例。302 秒用例仍保持 ignore。protocol 工作流文件未改。

上游来源与许可证影响(不适用时说明):

不适用。仅仓库 CI 配置。

验证证据

审查基点 SHA:

a901a60637e21c39285df6c0217492d730241668

实际测试的 HEAD 与工作区摘要:

ad54700ee5ef3434c0a376537a892ccd49c12155,仅 .github/workflows/mk-01-identity.yml。

修复前失败、修复后通过的命令与日志:

  • 修复前:run 38928672624 identity 失败。指纹断言 25dd8365… ≠ 660ddf6f…;Error: Storage;model_process 7 失败;oauth2 author 4 失败与 http 503;required sealed input LMM_PAYMENT_CORE_BIN。
  • 本地:node --test scripts/workflow-topology.test.mjs 12 通过;actionlint v1.7.12 对 mk-01-identity.yml 无输出。
  • 修复后,同一 head 上两条工作流都成功:
    • MK-01 identity and teams:run 38941222720,job identity success(13m30s)。日志显示拉取 postgres:18-alpine@sha256:77f585114c32…,current_schema_index_predecessor_upgrade_changes_only_verified_index_and_two_receipts、independent_process_personal_permissions_and_idempotency、real_core_and_go_payment_credit_commit_before_local_receipt_crash 均为 ok。
    • Microkernel implementation checks(protocol):run 38941222719,job protocol success(13m44s)。

重构的行为保持证据,或明确的业务语义差异:

无业务语义差异。

quick / related / full 的报告、失败、受阻及未执行项目:

quick:workflow topology 与 actionlint。related:本 PR 上的 MK-01 与 protocol,均已通过。未在本地复跑 cargo test(需要与 CI 相同的固定 PostgreSQL 18 服务)。agcc 在此环境不可用,未建立 watch 会话。

用户可见变化的浏览器证据;核心变化的同环境资源对比(适用时):

不适用。无界面变化。

必须独立审查的内容

门禁、测试断言、类型配置、阈值、锁文件、基线或例外的变更与理由:

无断言、锁文件或指纹基线变更。MK-01 的 Postgres 镜像与密封测试输入与 protocol 对齐,避免 PostgreSQL 17 反解析出另一套目录指纹。

高风险业务、临时方案的责任人、到期时间与退出条件:

无。

独立审查者与证据(尚未执行请写 pending,作者不能自行批准):

pending

提交前核对

  • 一个明确目标,无夹带格式化、重命名或架构重写;已核对重复工作及被删除内容的消费者。
  • 没有通过跳过测试、删除有效断言、测试专用成功分支或降低门槛换取通过。
  • 模块测试、真实业务验收、未执行与受阻项目已区分;构建成功未冒充完整验收。
  • 已更新受影响的文档和配置;代码及提交证据不含凭据、DSN 或用户私密数据。

本地补丁也填写以上内容。规则及命令见 本地质量门禁。提交不代表允许合并、发布或部署。

Open in Web Open in Cursor 

MK-01 used unpinned postgres:17-alpine and omitted the model and payment
process variables that the protocol job already exports, so identity
tests failed on every services/core pull request.

Co-authored-by: LIghtJUNction <lightjunction.me@gmail.com>
@LIghtJUNction
LIghtJUNction marked this pull request as ready for review October 16, 2026 18:38

Copy link
Copy Markdown
Collaborator Author

Bot 巡检(2026-10-17 02:40 UTC+8):head ad54700e 上 protocol 与 identity(MK-01)均已通过,mergeable=clean,仅改 .github/workflows/mk-01-identity.yml。已从 draft 标为 ready for review,等待 owner 决定是否合并(bot 不自行合并)。合并后 #929 会自动关闭。

Copilot AI balanced review requested due to automatic review settings October 16, 2026 18:38

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 16, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
🔒 Security Review ⚠️ Failed 2026-10-16T18:44:27.292785Z ad54700 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@LIghtJUNction
LIghtJUNction merged commit 8f3d4cb into wip/rust-core-go-extensions Oct 16, 2026
2 checks passed
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.

ci(MK-01): identity 工作流在基线上就失败(PostgreSQL 17 未固定 + 缺少密封测试变量)

3 participants