2.4 KiB
2.4 KiB
R4.1 阶段报告
状态
- 任务仍在进行中,来源为 AgentRun #309。
- manager 根因修复已通过 PR #311 合并到
v0.2,merge commit 为b7a15b77e0040f2c602f09629835f2a438132d61。 - UniDesk 只读分类对齐由 UniDesk #1820 和 R4.1.1 接续;完成前不关闭 R4.1。
根因与修复
- 终态 run/cancel 事务未释放
claimed_by、lease_expires_at和 PostgreSQL lease。 - retention 将终态 Pod 的 terminated container 错当成当前 active。
- 修复让终态事务原子释放 claim/lease,并以 DB fence 与 Kubernetes CAS 修复历史漂移;fresh claim、Running/Ready Pod 和事实不完整继续 fail closed。
临时缓解
- 历史容量一度为
20/20;受控观察恢复到4/20后,两个未配置dsflash-go的FailedMount探针通过正式agentrun cancel run/...终态化,未裸删 Job/Pod。 - 缓解期间容量保持 available,最低观测到
3/20、availableSlots=17;临时缓解不等于根因修复。
自动交付
- PR merge 自动产生唯一外层 PaC 事件,PipelineRun 成功,source 为
b7a15b7。 - 新镜像已构建,Argo
Synced/Healthy,runtime1/1且 digest 对齐。 - 未人工触发、sync、flush、创建 PipelineRun 或 patch 运行面。
NC01 验收
- 正式 task
qt_385e04018ef04783a74d0ee86fbb8819经 Queue create/dispatch 完成,result 为RUNNER_RETENTION_ACCEPTANCE_OK。 - 新 manager 的
runner-job-created事件将两个历史对象分类为terminal-run-stale-claim,并给出repairKind=release-terminal-run-claim;fresh active runner 继续 protected。 - Artificer command 完成时保留 warm runner fresh claim;随后正式 cancel 使 run 进入
cancelled,claimedBy=null、leaseExpiresAt=null,验证终态事务立即释放 claim。
验证与剩余项
- 子代理已通过 runner retention/terminal lifecycle 定向合同 40 项、durable dispatch 10 项、变更模块 build 和
git diff --check。 - 隔离 PostgreSQL URL 未声明,因此未反解运行面 Secret,也未执行真实 PostgreSQL 集成入口。
- UniDesk
cleanup-runnersobserver 仍沿用旧分类,未把 manager 已确认的两个终态 claim 显示为 candidate;由 #1820 修复并完成默认 compact CLI 验收。