Merge remote-tracking branch 'origin/master' into feat/pikaoa-platform

# Conflicts:
#	config/secrets-distribution.yaml
#	docs/MDTODO/agentrun-runtime-reliability.md
#	scripts/src/platform-infra-pipelines-as-code.ts
This commit is contained in:
Codex
2026-07-14 11:09:30 +02:00
79 changed files with 3469 additions and 360 deletions
+13 -2
View File
@@ -114,6 +114,17 @@
解决 [UniDesk #1883](https://github.com/pikasTech/unidesk/issues/1883) 与 [AgentRun #342](https://github.com/pikasTech/agentrun/issues/342):让 Artificer runner 的受控 trans 复用 UniDesk Windows route 解析与 frontend transport,支持 D518:win 及 win/<drive>/<path> 原入口;区分 primary source workspace 与用户授权的远端 tool target,删除 unsupported-operation 和 host path 误判,不新增节点特例、旁路 SSH 或隐藏 fallback。两个 PR 自动上线后用最短 Artificer canary 验收 pwd、ls、cat 和 apply-patch,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R5.6_Task_Report.md)。
### R5.7 [in_progress]
### R5.7
解决 [UniDesk #2014](https://github.com/pikasTech/unidesk/issues/2014):把 `config/unidesk-cli.yaml#github.auth.repositoryOverrides` 的既有私有仓凭据通过 YAML-first tool credential/resource bundle 投影给 Artificer,使受控 `unidesk-gh` 可读取、创建和评论任务私有仓 PR;Secret 只披露 SecretRef presence/fingerprint/valuesPrinted=false,不新增第二 GitHub 客户端、权限契约、租约或围栏,并与 PikaOA MVP 主线并行且不作为业务门禁,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R5.7_Task_Report.md)。
解决 [UniDesk #1957](https://github.com/pikasTech/unidesk/issues/1957):修复 Artificer resource bundle 缺失 `$post-task` skill 与 `$unidesk-subagent` 权威收口引用不一致;只沿 owning skill source、AipodSpecresource bundle 和 runner 投影定位并物化,禁止 prompt 复制规则、手工 Pod/宿主补文件、第二 bundle authority 或人工 CI/CD,完成任务后以真实 Artificer follow-up 加载 `$post-task` 验收,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R5.7_Task_Report.md)。
### R5.8 [in_progress]
解决 [UniDesk #2014](https://github.com/pikasTech/unidesk/issues/2014):把 `config/unidesk-cli.yaml#github.auth.repositoryOverrides` 的既有私有仓凭据通过 YAML-first tool credential/resource bundle 投影给 Artificer,使受控 `unidesk-gh` 可读取、创建和评论任务私有仓 PR;Secret 只披露 SecretRef presence/fingerprint/valuesPrinted=false,不新增第二 GitHub 客户端、权限契约、租约或围栏,并与 PikaOA MVP 主线并行且不作为业务门禁,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R5.8_Task_Report.md)。
## R6 [completed]
将“先恢复运行面再工程化”固化为 unidesk-subagent 的泛化主线规则:运行面恢复关键路径由主代理控制,低耦合工程化任务及时并行,恢复后继续完成工程化交付;将单 PR 收口、复用 guarded merge 内建 preflight、避免仅补 merge SHA 的重复 PR 和减少碎片化 GitHub 查询固化到 unidesk-gh 及相关 reference,并让 merge 默认摘要直接披露 merge commit 与 mergedAt,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R6_Task_Report.md)。
## R7 [completed]
将 Artificer 固化为所有执行型子代理任务的强制默认执行面:用户只说“子代理”时必须使用 Artificer;只有用户明确指定原生子代理,或 Artificer 经有界 readiness/真实派单证据确认故障不可用时,才允许原生子代理执行;禁止主代理因方便、速度、空闲槽或历史习惯自行降级,并要求 Artificer 恢复后立即停止原生扩展并交接,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R7_Task_Report.md)。
@@ -0,0 +1,22 @@
# R6 任务报告
## 结论
已将“先恢复运行面,再工程化”固化为子代理调度的泛化原则:主代理冻结恢复标准并控制恢复关键路径,优先通过既有受控入口做最小、可逆、可验证的恢复;恢复不再阻塞低耦合工程化任务并行,运行面恢复后仍继续完成根因修复、PR、验证与治理收口。
已将减少重复交付固化到 GitHub skill 与 PR referencereview-plan 只建立索引并按需下钻,guarded merge 内建 preflight,功能、skill、MDTODO 报告和完成状态应在同一 PR 收口,禁止仅为补 merge SHA、mergedAt 或重复 closeout 创建第二个 PR。只有 merge 后产生新运行证据且用户明确要求写回 Git 时,才允许第二个 closeout PR。
已更新 GitHub merge 默认文本摘要,成功合并直接披露 mergeCommit 与 mergedAt,并取消机械 pr view 的 Next 提示。
## 验证
- unidesk-subagent skill quick_validate:通过。
- unidesk-gh skill quick_validate:通过。
- bun --check scripts/src/gh/pr-merge.ts:通过。
- bun scripts/cli.ts check --syntax-only11 项通过,0 项失败。
- renderer 定向验证:成功输出包含 mergeCommit=abc123 与 mergedAt=2026-07-14T10:00:00Z,且不包含 gh pr view。
- git diff --check:通过。
## 交付边界
本任务不修改运行面、不新增状态库或门禁。规则、CLI、MDTODO 报告与完成状态在同一功能 PR 中交付;merge 事实由 GitHub 和受控 merge 摘要保存,不回写本报告。
@@ -0,0 +1,7 @@
# R7 任务报告
已将 Artificer 固化为执行型子代理任务的强制默认执行面。用户泛称子代理、并行代理或派代理时必须使用 Artificer;只有用户明确指定原生子代理,或 Artificer 经有界 readiness、最短真实派单或 typed failure 证明确实不可用时,才允许原生执行面。
规则明确禁止主代理因方便、速度、空闲并发槽、已有 worktree、任务较短或历史习惯自行降级。Artificer 故障修复仍可交给原生子代理;管理性和决策性工作由主代理直接完成。临时原生 fallback 必须在 Artificer 恢复后停止扩展并交接。
验证:unidesk-subagent skill quick_validate 通过;git diff --check 通过。
@@ -0,0 +1,68 @@
# R1.3 任务报告
## 结论
- 已从 owner-only sourceRef `/root/.unidesk/.env/selfmedia-access.env` 重新分发用户更新后的 SelfMedia 管理员凭据。
- sourceRef 权限保持 `0600`,新旧 fingerprint 已变化;全过程未读取、解码或输出账号、密码、cookie 与 Secret 值。
- 已将 SelfMedia 的 owning YAML、Secret sync/status、消费者生效、自动交付观察、WebTerm 权限边界和公网鉴权验收沉淀为 `unidesk-selfmedia` skill。
- 已通过 UniDesk PR [#1995](https://github.com/pikasTech/unidesk/pull/1995) 合并到 `master`merge commit 为 `393711d9773cce8faa738a01e1297a5bf513e663`
## SelfMedia 凭据兼容修复与交付
- 新管理员密码为 13 字节,旧配置错误地与机器 API key、session secret 共用 32 字节门槛。
- SelfMedia PR [#25](https://github.com/pikainc/selfmedia/pull/25) 拆分强度配置:
- 管理员密码最小长度由 YAML 配置为 12 字节;
- API key 与 session secret 分别保持 32 字节;
- merge commit 为 `a50869afcbccde3c0a0e06d595f1938f5f671f78`
- 自动 PipelineRun `selfmedia-nc01-a50869afcbccde3c0a0e06d595f1938f5f671f78-8fgcs`
- 状态为 Succeeded
- 耗时 194 秒;
- 镜像摘要前缀为 `sha256:acf4191432f`
- GitOps revision 为 `78c0bfa0745c`
- Argo 为 `Synced/Healthy`
- runtime 为 `1/1`
- SelfMedia PR [#26](https://github.com/pikainc/selfmedia/pull/26) 收口对应 MDTODO 与验收记录,merge commit 为 `11bfcf2657cd4f62e5e7221803872e53143e5f0c`
## YAML-first 运维能力
- `config/selfmedia.yaml` 继续负责部署、存储、运行时、权限与公网暴露。
- `config/secrets-distribution.yaml``selfmedia-nc01` 声明 `selfmedia` Deployment 的 `consumerRollout`、等待时限与轮询间隔。
- `scripts/src/secrets.ts` 在 Secret apply 成功后:
- 按 YAML 声明重启消费者;
- 用多次短 `trans` 连接轮询 Deployment ready
- 默认 confirmed sync 只输出有界摘要;
- `--full` 保留显式完整下钻;
- 所有输出保持 `valuesPrinted=false`
- 新 skill 文件:
- `.agents/skills/unidesk-selfmedia/SKILL.md`
- `.agents/skills/unidesk-selfmedia/references/operations.md`
- `.agents/skills/unidesk-selfmedia/agents/openai.yaml`
## 真实同步与公网验收
- Secret 同步 job `secrets_sync_20260714052911863_5fd8da`
- 状态为 Succeeded
- 总耗时 9 秒;
- Secret apply exitCode 为 0
- consumer rollout restart exitCode 为 0
- ready 轮询 2 次,耗时 8 秒;
- Deployment generation 为 18
- ready/available 为 `1/1`
- 默认 stdout 为 8032 bytes,未截断;
- `valuesPrinted=false`
- 公网原入口:
- `/` 返回 200
- `/healthz` 返回 200
- 匿名 `/api/v1/system` 返回 401
- 匿名 `/api/v1/terminal/status` 返回 401
- 用户更新后的管理员账号登录返回 200;
- 登录 session 访问 `/api/v1/system` 返回 200。
- 登录验证只记录 HTTP 状态和 `valuesPrinted=false`,未记录账号、密码或 cookie。
## 验证
- `quick_validate.py .agents/skills/unidesk-selfmedia`skill valid。
- `bun scripts/cli.ts check --syntax-only`11/11。
- `bun --check scripts/src/secrets.ts`:通过。
- `git diff --check`:通过。
- UniDesk PR #1995 preflight`MERGEABLE/CLEAN`,已用 merge commit 合并。
@@ -73,3 +73,7 @@
### R1.14 [completed]
依据用户最新反馈全量重写 HWLAB v0.3 管理域导航、授权、密钥、用户、账务与 MDTODO 页面代码(子 issue [pikasTech/HWLAB#2522](https://github.com/pikasTech/HWLAB/issues/2522)):禁止以换色、圆角、字母方块、薄包装组件或局部 CSS 冒充重写;先抽取工业运营台通用工作区、状态轨、实体索引、权限矩阵、密钥流向、审计/账本时间线、真实线性图标与 Markdown/报告 Viewer,再重建五页组件树、状态组合和样式并删除旧私有实现。MDTODO 只保留成熟的有界三栏、任务树→正文→报告、Source/File、inline edit、报告调宽/关闭/全屏和深链思想;保留 typed API、稳定 ID、revision/fingerprint、ACL、Secret 脱敏与公共 Workbench Launch 合同,完成 1920/960/390 原入口验收,完成任务后将详细报告写入[任务报告](./details/hwlab-web-product-experience/R1.14_Task_Report.md)。
## R2 [in_progress]
执行 [HWLAB #2537](https://github.com/pikasTech/HWLAB/issues/2537):纠正此前名义完成但真实效果不达标的问题,依据 OA SPEC 和 R1_Context 全量重写 HWLAB v0.3 非 Workbench 页面代码;先抽取工业风高信息密度通用表格、卡片、弹窗、日志/Markdown/JSON/Trace Viewer、Inspector 和图标/列表/密度切换,再重写 AC/SK/UR/AB、MDTODO、HWPOD 与 HWPOD Node,补 Python 单文件节点下载及分阶段接入引导;保留 MDTODO 三栏布局思想、typed API、权限/Secret/硬件/账务 authority 和 Workbench 主路径,完成 1920/960/390、ARIA、reduced-motion 与完整异步状态验收,完成任务后将详细报告写入[任务报告](./details/hwlab-web-product-experience/R2_Task_Report.md)。
+50 -2
View File
@@ -57,8 +57,56 @@
### R4.3 [in_progress]
执行 [UniDesk #1949](https://github.com/pikasTech/unidesk/issues/1949):由 config/hwlab-node-lanes.yaml 选择 transactionalProjector、projectionOutboxRelay、projectionRealtime 单一产品 authority,关闭 live-only direct authority,保持 renderer/status/preflight YAML-first,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.3_Task_Report.md)。
执行 [UniDesk #1949](https://github.com/pikasTech/unidesk/issues/1949) 与 [UniDesk #1981](https://github.com/pikasTech/unidesk/issues/1981):删除 config/hwlab-node-lanes.yaml、renderer、runtime GitOps 和 CI/CD 中对 Workbench 数据 authority、direct/live/refresh、projector/outbox/realtime 的架构选择与六个布尔 env 硬门禁;HWLAB v0.3 固定纯 Kafka transactional projector→outbox→实时/回放 SSEYAML 只保留 broker/topic/group/tuning 与产品功能配置,schema 校验仅 warning 且不阻塞滚动上线,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.3_Task_Report.md)。
### R4.4
### R4.4 [in_progress]
依赖 R4.1-R4.3,主代理完成 PR 架构审核、顺序合并、自动 CI/CD 和 NC01/v03 原 Workbench 新 hi turn 验收;核对 command/run 实际耗时、Kafka backlog/lag、运行中增量、terminal/final、刷新 replay、公开 result 与 OTel 一致后收口,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4_Task_Report.md)。
#### R4.4.1 [in_progress]
执行 [HWLAB #2527](https://github.com/pikasTech/HWLAB/issues/2527):修复 HWLAB PaC source artifact 未吸收 UniDesk owning YAML transactional projection authority 的漂移,以新的正常 PR merge 自动生成 direct/live/replay=false、projector/outbox/realtime=true 的 GitOps manifest;禁止手工 PipelineRun、mirror sync、Argo refresh 和运行面 patch,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.1_Task_Report.md)。
#### R4.4.2 [in_progress]
执行 [UniDesk #1959](https://github.com/pikasTech/unidesk/issues/1959) 及其后续解阻任务:修复 HWLAB PaC source artifact 的 runtime GitOps helper、ARG_MAX、marker 与 overlay 投影问题,并按最新 R4.4.2.10/R6 合同删除六个架构 env 及其 CI 硬门禁;大段逻辑继续使用 repo-native 文件或等价受管制品,产品 schema 失败只 warning 并继续滚动上线,禁止手改生成物、HTTP 补链、页面轮询、第二 authority 和人工 PipelineRun/同步/刷新/patch,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.2_Task_Report.md)。
##### R4.4.2.1 [in_progress]
执行 [UniDesk #1963](https://github.com/pikasTech/unidesk/issues/1963):修复 HWLAB runtime GitOps scripts ConfigMap 的 Git-backed 自动 ownership/交付漂移,只由正常 PR merge 自动事件验收;保持 `UNIDESK_RUNTIME_GITOPS_OVERLAY_FILE`、纯 Kafka transactional projector 与实时/回放 SSE,禁止 B64 回退、HTTP 补链、轮询、第二 authority、人工 PipelineRun/ConfigMap apply/运行面 patch及额外锁租约状态库,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.2.1_Task_Report.md)。
##### R4.4.2.2 [in_progress]
执行 [HWLAB #2530](https://github.com/pikasTech/HWLAB/issues/2530):增加 repo-owned PaC 回归验证 `UNIDESK_RUNTIME_GITOPS_OVERLAY_FILE`、禁止 B64 内联并校对 ConfigMap mount/helper 合同,以正常 v0.3 PR merge 触发真实自动交付;保持纯 Kafka transactional projector 与实时/回放 SSE,禁止空提交、人工 PipelineRun/同步/刷新/运行面 patch及额外锁租约状态库,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.2.2_Task_Report.md)。
##### R4.4.2.3 [in_progress]
执行 [UniDesk #1967](https://github.com/pikasTech/unidesk/issues/1967):修复 runtime GitOps postprocess 仅 JSON.parse 而跳过真实 YAML workload,使用结构化 YAML API 覆盖普通、多文档与 List 并显式写入六项 `false,false,false,true,true,true` 能力 env;只由正常 PR merge 自动交付和新 HWLAB merge 验收,禁止放宽 required boolean、手工 patch/补跑/同步/刷新及额外锁租约状态库,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.2.3_Task_Report.md)。
##### R4.4.2.4 [in_progress]
执行 [UniDesk #1968](https://github.com/pikasTech/unidesk/issues/1968):对齐 runtime GitOps guard 的 typed `continuing/no-build-no-rollout-plan-gitops-verify` 与 PaC terminal evaluator,保持普通 skip 与 verify 模式显式分离且缺证据 fail closed,使 status/history/debug-step 同构;禁止按 TaskRun 成功启发式放宽、人工补跑/同步/刷新/patch及额外状态库锁租约,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.2.4_Task_Report.md)。
##### R4.4.2.5 [in_progress]
执行 [HWLAB #2532](https://github.com/pikasTech/HWLAB/issues/2532):修复 prepare-source 仍期待 `require.resolve("yaml")` 的过期测试,结构化验证 CI node dependency bootstrap、renderer dependency-install-disabled 与 runtime GitOps helper 的 YAML 模块可解析合同,跑通全文件测试并以正常 v0.3 PR merge触发最终自动验收;禁止运行时 npm install、B64、手改生成物、空提交及人工补跑/patch,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.2.5_Task_Report.md)。
##### R4.4.2.6 [in_progress]
执行 [UniDesk #1971](https://github.com/pikasTech/unidesk/issues/1971):修复 runtime GitOps verify guard 保留旧 `!willRunGitopsPromote` 条件导致 typed continuing marker 永不发出的合同缺口,使无 build/rollout plan 与继续 verify 正交并让 status/history/debug-step 精确返回 runtime-gitops-verify/valid=true;禁止放宽 evaluator、人工补跑/同步/刷新/patch、第二 authority及额外锁租约状态库,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.2.6_Task_Report.md)。
##### R4.4.2.7 [in_progress]
执行 [HWLAB #2534](https://github.com/pikasTech/HWLAB/issues/2534):在 UniDesk #1972 自动交付后用受控 source-artifact renderer 重新生成 HWLAB NC01/v03 PaC artifact,使无 build/rollout plan 的 typed continuing marker 与 `willRunGitopsPromote` 解耦,并以正常 v0.3 PR merge 验证 runtime-gitops-verify/valid=true;禁止手改生成物、空提交、人工补跑/同步/刷新/patch、放宽 evaluator及第二 authority,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.2.7_Task_Report.md)。
##### R4.4.2.8 [in_progress]
执行 [UniDesk #1973](https://github.com/pikasTech/unidesk/issues/1973):修复 PaC evaluator 对 runtime GitOps verify 真实 marker 组合的误判,允许零运行时变更 plan 下 collect-artifacts skip 与 gitops-promote continuing 共存,同时继续拒绝 promote skipped/continuing 冲突、非零 plan 与终态证据缺失;由正常 PR merge 自动交付后只读复核 `runtime-gitops-verify/valid=true`,禁止人工补跑、同步、刷新、patch及第二 authority,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.2.8_Task_Report.md)。
##### R4.4.2.9 [in_progress]
执行 [UniDesk #1975](https://github.com/pikasTech/unidesk/issues/1975):修复 runtime GitOps scripts ConfigMap 丢失 owning YAML `codeAgentRuntime` overlay 导致 postprocess 静默未写纯 Kafka capability env、cloud-api CrashLoop 的问题,并让 verify 在工作负载未命中或 transactional projection capability/env 不完整时 fail closed;以正常 PR merge 自动链和新的 HWLAB source merge 验证 Pod ready、Argo `Synced/Healthy`、projector/outbox/realtime health 归零,禁止人工补跑、同步、刷新、patch及第二 authority,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.2.9_Task_Report.md)。
##### R4.4.2.10 [in_progress]
执行 [HWLAB #2538](https://github.com/pikasTech/HWLAB/issues/2538) P0 架构纠偏:确认 PR #2540 把已工作的 agentrun.event.v1→hwlab.event.v1→实时 SSE/Kafka retention 回放错误替换为强制 PostgreSQL transactional projector,构成重大架构偏移;从最新 v0.3 分析偏移提交并创建新的精确纠偏提交,恢复 direct publish、live Kafka SSE、Kafka refresh replay 及其单一 Kafka authority,删除强制 v8 schema 启动门禁和数据库迁移依赖,保留 canonical duration 修复、feature-config schema、HTTP fallback 禁令及其他无关改动;通过新 PR 和自动 PaC/GitOps/Argo 上线后校对实时、回放、terminal/final 与 canonical duration,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R4.4.2.10_Task_Report.md)。
@@ -82,3 +82,19 @@
### R5.3
合并修复 PR 后只观察新的 GitHub webhook→Gitea mirror→PaC→Tekton→GitOps/Argo 自动事件,验证 watcher Ready、TaskRun 创建及 AgentRun/Monitor runtime 收敛,不人工补齐既有 queued run,完成任务后将详细报告写入[任务报告](./details/pr-merge-driven-automatic-delivery/R5.3_Task_Report.md)。
## R6 [in_progress]
执行 [UniDesk #1981](https://github.com/pikasTech/unidesk/issues/1981):固定仓库产品功能 schema 路径为 config/feature-config.schema.jsonCI/CD 只读校验 schema 语法、值匹配和功能到唯一配置变量的一对一关系;缺失、非法、不匹配或重复仅输出 typed warning 并投影到 OTel/status/history/debug-step,必须继续 artifact、GitOps/Argo 和滚动上线,禁止写回、默认值、变量删除、功能关闭、架构切换及其他补救操作,完成任务后将详细报告写入[任务报告](./details/pr-merge-driven-automatic-delivery/R6_Task_Report.md)。
## R7 [in_progress]
执行 [UniDesk #2008](https://github.com/pikasTech/unidesk/issues/2008):按 PJ2026-01060106 建立 HWLAB 开发/生产双环境发布;v0.3 固定为 NC01 developmentrelease 固定为 production,两个环境在 source、Pipeline、GitOps、Argo、namespace、public origin、PostgreSQL database/role/Secret/migration ledger 和 Kafka consumer group 上隔离,所有值由 owning YAML 控制,完成任务后将详细报告写入[任务报告](./details/pr-merge-driven-automatic-delivery/R7_Task_Report.md)。
### R7.1 [in_progress]
迁移 [UniDesk #2009](https://github.com/pikasTech/unidesk/issues/2009):保持 v0.3 开发 branch/namespace/DB consumer,删除其对 hwlab.pikapython.com 的所有权,选择并 YAML 固化 NC01 公网 IP 的空闲 HTTP 端口和同源 API/health/probe,通过新 PR 和自动链完成原入口验证,完成任务后将详细报告写入[任务报告](./details/pr-merge-driven-automatic-delivery/R7.1_Task_Report.md)。
### R7.2 [in_progress]
建立 [UniDesk #2010](https://github.com/pikasTech/unidesk/issues/2010):跟随 release branch 的独立 production PaC/Tekton/GitOps/Argo、namespace、host PostgreSQL database/role/Secret/migration ledger、Kafka consumer group 与 https://hwlab.pikapython.com YAML publicExposurerelease 只从完成 P0 Kafka 纠偏并验证的 v0.3 commit 初始化,完成任务后将详细报告写入[任务报告](./details/pr-merge-driven-automatic-delivery/R7.2_Task_Report.md)。
@@ -11,3 +11,15 @@
### R1.2 [completed]
有界恢复 NC01 AgentRun manager 受控代理可见性:定位连续 agentrun-proxy-exec-failed,只允许检查并恢复既有 manager.baseUrl、lane service proxy 与授权 presence,不打印凭据,不修改 Artificer 主线源码,不新增安全围栏;恢复后用原始 agentrun events/logs 入口验证并写任务报告,完成任务后将详细报告写入[任务报告](./details/selfmedia-production-delivery/R1.2_Task_Report.md)。
### R1.3 [completed]
重新分发用户更新后的 SelfMedia 管理员凭据,并将 owning YAML、Secret sync/status、自动交付与公网鉴权验收最短路径沉淀到 `unidesk-selfmedia` skill;不得读取或输出凭据值,不得影响其他仓库 token 选择,完成任务后将详细报告写入[任务报告](./details/selfmedia-production-delivery/R1.3_Task_Report.md)。
## R2 [in_progress]
依据 [UniDesk #2006](https://github.com/pikasTech/unidesk/issues/2006) 优化 selfmedia-nc01 PaC 流水线的 env reuse 与依赖缓存:由 owning YAML、lockfile 和 source artifact 生成环境身份,依赖不变时复用并披露 hit/miss 与阶段耗时,依赖变化时正确失效;通过正常 SELFMEDIA PR merge 自动交付验收,保持 commit-pinned artifact、GitOps/Argo、runtime health 和单一 source authority,完成任务后将详细报告写入[任务报告](./details/selfmedia-production-delivery/R2_Task_Report.md)。
## R3 [in_progress]
依据 [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)。
+4 -4
View File
@@ -244,12 +244,12 @@ bun scripts/cli.ts agentrun create task \
--repo <owner/repo> \
--ref <branch> \
--mdtodo-id <R6.3> \
--prompt-stdin \
--dry-run
--prompt-stdin
```
- dry-run 与 live 都先经 Target `trans` 重入并执行 source/worktree/Aipod/SecretRef 预检
- live 的 submit 成功后自动 dispatch
- 默认直接执行 live 单命令,不把 `--dry-run` 作为派单前置步骤
- live 先经 Target `trans` 重入并执行 source/worktree/Aipod/SecretRef 只读预检
- 预检通过后在同一命令内 submit 并自动 dispatch
- 幂等重试不得重复创建 attempt 或重复 dispatch
- UniDesk 不实现 AgentRun queue 协议,也不把 task double-write 回旧 Code Queue。
+6
View File
@@ -200,6 +200,12 @@ PR 是审查型交付入口,不是所有 Code Queue 任务的默认出口。Un
PR handoff 的职责默认分开:runner 实现、测试、提交、push head branch 并创建 PR;指挥官监督并发、steer、审阅、确认 checks 和合并裁决。短期内 GPT-5.5 runner 如果收到明确 PR 收口授权,并且 PR 是普通 UniDesk source 变更、checks 满足任务要求、无冲突且不涉及 prod/runtime/release/security/database/破坏性回滚,可以自行用 repo-owned GitHub merge/close 路径完成收口并报告 SHA。高风险、边界不清、checks 失败或用户/指挥官保留 final action 的 PR 仍必须交回 commander 审查。host commander 也不把直接编辑业务代码当成常规 PR 替代路径。
- PR 审核默认由指挥官主代理直接完成:
- runner 或 Artificer 的实施授权不包含审核授权;
- 并行实施、多轮审查或 reviewer feedback 不自动创建审核 runner
- 只有用户明确要求子代理审核、独立审核代理或多代理交叉审核时,才允许派发审核型 AgentRun;
- 主代理发现问题后,优先通过原 session follow-up 纠偏,再由主代理复核。
PR 支持本身是 Code Queue 能力的一部分。当前 UniDesk CLI 支持 `gh pr list|view|create|update|comment create|comment update|comment edit|comment delete|close|reopen`,其中 create 需要显式 `--title``--base``--head` 和正文来源,update 需要显式 PR number、正文来源和 `--mode replace|append`comment create/update/edit 需要显式 commentId 或目标 shorthand 和正文来源,且推荐使用 `--body-stdin``--body-file`。PR 收口观察应使用 `gh pr view <number> --json state,stateDetail,closed,closedAt,merged,mergedAt,mergeCommit,headRefName,baseRefName,mergeable,mergeStateStatus,statusCheckRollup` 获取普通关闭/已合并区分、merge commit、目标分支、源分支、mergeability 和检查汇总;该路径仍是只读元数据,不执行 merge,且 `closeoutMetadata.ok=false``missingOrUnknownFields` 或 GraphQL failure 都只能作为“需要人工复核/重试”的信号。`pr create --dry-run``pr update --dry-run``pr comment create/update/edit --dry-run` 只返回 planned operation,不创建 PR、不更新正文、不写评论;非 dry-run 创建前会校验 repo、base、head 和 compare ahead 状态,append 更新会先读取当前 PR body。`gh pr list` 不开放 mergeability/statusCheckRollup 列表字段,避免默认拉取 noisy/raw 状态汇总。`gh pr delete` 在 UniDesk REST CLI 中返回 `unsupported-command`,不能伪造硬删除;需要移除活跃 PR 时使用 `gh pr close``gh pr merge` 是 guarded REST write,没有 `--confirm` 可以绕过 preflight;获得收口授权的 GPT-5.5 runner 可使用 UniDesk `gh pr merge`、GitHub UI 或等价 repo-owned GitHub merge path 处理普通 PR,并报告结果 SHA。需要 PR 交付时,prompt 必须明确允许的人工、runner 或后续工具路径,并报告未覆盖范围。
### PR 驱动派单模板