fix: isolate PaC validation by selected consumer

This commit is contained in:
Codex
2026-07-14 17:17:20 +02:00
parent 0ef9832ab0
commit 4e2e7f6268
7 changed files with 272 additions and 54 deletions
@@ -1,7 +1,7 @@
# R3.1 任务报告
已将 PaC 配置校验收敛为显式选中 consumer 的局部 fail-closed 与未选 consumer 的结构化非阻塞告警。YAML 解析、全局核心字段、选中 consumer repository、namespace、安全、ownership 和有效参数错误继续阻塞;其他 consumer 的一致性错误输出 `consumer``configPath``code``blocking=false` 和脱敏 evidence。无效 consumer 不写入 marker 或 ServiceAccount 唯一性集合,聚合状态与历史只处理有效 consumer 并保留告警
已将 PaC 配置解析与语义校验按显式选中对象隔离。选中 consumer 及其唯一 repository 的解析、字段、权限、Secret、ownership 与 mutation target 继续 fail-closed;非选中 consumer/repository 的解析或一致性错误输出 `code``object.kind/id``configPath``blocking=false` 和脱敏 `evidence`。无法安全解析或归属的对象从聚合 status/history 候选中排除,同时保留 warning
SELFMEDIA 开发与生产 consumer 共用仓库级 `selfmedia-nc01` Repository CRproduction 通过 consumer 参数固定 release、独立 Pipeline、runner、GitOps 与 runtime。source artifact 已更新至 pikainc/selfmedia#29`fba0019`,删除无语义空 `workspaces`
`embeddedPipelineRun``remotePipelineRun` 在没有 workspace 绑定时完全省略外层 `spec.workspaces`,有绑定时保持原结构。生产 artifact 已由 [pikainc/selfmedia#29](https://github.com/pikainc/selfmedia/pull/29) 的 `783f0d3` 对齐;开发 artifact 已由 [pikainc/selfmedia#32](https://github.com/pikainc/selfmedia/pull/32) 的 `e9d5234` 对齐。两边执行 source-artifact write 均为 `mutation=false`,随后 check 均为 aligned 且 worktree clean
验证:PaC/Gitea 定向测试 18 passsource artifact 专项测试 31 pass`check --syntax-only` 11/11production source-artifact check aligned 且 worktree cleanproduction bootstrap dry-run `ok=true``mutation=false`、branch=release、repository=selfmedia-nc01/selfmedia-ci`git diff --check` 通过。未执行 bootstrap confirm、人工 mirror、PipelineRun、Argo sync、合并或生产触发。
验证结果PaC/Gitea 定向测试 19 passsource-artifact 专项测试 32 pass`check --syntax-only` 11/11`git diff --check` 通过。production bootstrap dry-run 返回 `ok=true``mutation=false`、branch=release、repository=selfmedia-nc01/selfmedia-ci。未执行 bootstrap confirm、人工 mirror、PipelineRun、Argo sync、PR 合并或生产触发。本任务关联 [pikasTech/unidesk#2007](https://github.com/pikasTech/unidesk/issues/2007) 与 [PR #2040](https://github.com/pikasTech/unidesk/pull/2040)。
+1 -1
View File
@@ -24,6 +24,6 @@
依据 [UniDesk #2007](https://github.com/pikasTech/unidesk/issues/2007) 为 pikainc/selfmedia release 分支建立独立生产 PaC/GitOps 流水线:master 保持开发 consumerrelease 精确驱动独立生产 namespace、Pipeline、GitOps branch/Application、runtime/PVC/Secret 与 YAML-first 公网端口;禁止 branch follower、手工同步和共享可写状态,以正常 release PR merge 验收生产公网入口、登录、digest 与 health,完成任务后将详细报告写入[任务报告](./details/selfmedia-production-delivery/R3_Task_Report.md)。
### R3.1 [in_progress]
### R3.1 [completed]
按用户最新要求将非选中 consumer 的全局配置一致性错误降级为结构化 non-blocking warning,避免开发 source-artifact/状态/交付被生产配置阻塞;当前选中 target/consumer 的字段、权限、ownership 与安全校验仍 fail-closed,并由定向测试证明两类边界,完成任务后将详细报告写入[任务报告](./details/selfmedia-production-delivery/R3.1_Task_Report.md)。