docs: 按问题域拆分架构任务
Pipelines as Code CI / hwlab-web-probe-sentinel-nc01- Success
Pipelines as Code CI / platform-infra-gitea-nc01- Success
Pipelines as Code CI / unidesk-host- Success

This commit is contained in:
Codex
2026-07-11 22:54:54 +02:00
parent 92c70c971b
commit caed7d74a1
4 changed files with 52 additions and 20 deletions
@@ -37,23 +37,3 @@
### R2.4 [completed]
登记 [UniDesk #1801](https://github.com/pikasTech/unidesk/issues/1801)diagnose 的 command/result 读取会向同一业务 trace 补记 command_result span,使重复读取改变 instrumentation completeness;该问题涉及 trace context 与诊断证据隔离,本轮按架构变更边界跳过,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R2.4_Task_Report.md)。
## R3
在不改变已验收的纯 Kafka + SSE 实时/刷新链路前提下,统一解决 [UniDesk #1784](https://github.com/pikasTech/unidesk/issues/1784) managed mirror 物化、[UniDesk #1801](https://github.com/pikasTech/unidesk/issues/1801) 诊断 trace 污染和 [UniDesk #1802](https://github.com/pikasTech/unidesk/issues/1802) 自动交付 provenance 未收敛;所有可调事实来自 owning YAML,保持单一 source、terminal 与 trace authority,交付只由 PR merge 自动触发,禁止人工补跑、fallback 或下游过滤补洞,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R3_Task_Report.md)。
### R3.1
冻结 [#1784](https://github.com/pikasTech/unidesk/issues/1784)、[#1801](https://github.com/pikasTech/unidesk/issues/1801)、[#1802](https://github.com/pikasTech/unidesk/issues/1802) 与 [#1769](https://github.com/pikasTech/unidesk/issues/1769) 的统一架构合同:明确 repository dependency owner、诊断 trace 边界、source→snapshot→artifact→GitOps→Argo→runtime provenance schema、controller 职责、迁移顺序与 fail-closed 语义;先形成决策报告和测试计划,不改运行面,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R3.1_Task_Report.md)。
### R3.2
依赖 R3.1,解决 [#1802](https://github.com/pikasTech/unidesk/issues/1802):让 YAML-owned pipeline 输出 admission-owned outer-event provenance 和标准 terminal evidence,由单一 controller 自动 reconcile GitOps 并验证 commit graph;只用修复 PR merge 的新事件验收 source、GitOps、Argo 为 exact/descendant 且 runtime digest 对齐,禁止人工 mirror、PipelineRun、sync、flush、trigger、apply 或 closeout,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R3.2_Task_Report.md)。
### R3.3
依赖 R3.1,并与 R3.2 复用同一 source authority,解决 [#1784](https://github.com/pikasTech/unidesk/issues/1784):由 owning YAML 声明依赖 repository/ref,统一 renderer/controller 自动物化 repo、cache 与 ref,提供 durable status/retry,消费者在 ready 前 fail-closed;以新 PR merge 事件验收 resource bundle 自动获取,禁止 direct GitHub fallback 或人工 mirror,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R3.3_Task_Report.md)。
### R3.4
依赖 R3.1,解决 [#1801](https://github.com/pikasTech/unidesk/issues/1801):诊断读取创建独立 diagnostic trace,通过 OTel Span Link 和关联字段引用原业务 trace,不继承其 active trace parent;重复诊断不得改变原业务 trace 的 terminal/instrumentation 判定,同时保留诊断自身可观测性,并用固定 trace 与端到端合同确认纯 Kafka + SSE 链路无改动,完成任务后将详细报告写入[任务报告](./details/agentrun-runtime-reliability/R3.4_Task_Report.md)。
@@ -30,3 +30,19 @@
### R2.1 [completed]
依据 [UniDesk #1784](https://github.com/pikasTech/unidesk/issues/1784) 的只读审计,确认修复需要 owning YAML 到 managed mirror renderer/controller/automatic reconcile 的架构变更;按用户边界保持 issue open 并跳过,禁止人工 mirror、手工 CI/CD 补跑或 GitHub fallback,完成任务后将详细报告写入[任务报告](./details/github-gitea-durable-source-authority/R2.1_Task_Report.md)。
## R3
解决 [UniDesk #1784](https://github.com/pikasTech/unidesk/issues/1784):建立 owning YAML → managed repository/cache/ref 的单一持久源码 authority,让 AgentRun resource bundle 依赖自动物化、恢复和重试;禁止 direct GitHub fallback、人工 mirror 或第二 source authority,完成任务后将详细报告写入[任务报告](./details/github-gitea-durable-source-authority/R3_Task_Report.md)。
### R3.1
冻结 [#1784](https://github.com/pikasTech/unidesk/issues/1784) 与 [AgentRun #294](https://github.com/pikasTech/agentrun/issues/294) 的 repositoryDependency 合同:明确 owning YAML schema、repository/ref owner、readiness、生命周期、失败分类和迁移边界;desired 只来自 YAML,不从运行面反解,完成任务后将详细报告写入[任务报告](./details/github-gitea-durable-source-authority/R3.1_Task_Report.md)。
### R3.2
依赖 R3.1,在共享 renderer/controller 中实现 repository、cache 与 ref 的幂等物化、durable status、自动 retry/reconcile 和有界可见性;消费者在依赖 ready 前 fail-closed,不新增 repo 专属特例或第二套同步器,完成任务后将详细报告写入[任务报告](./details/github-gitea-durable-source-authority/R3.2_Task_Report.md)。
### R3.3
依赖 R3.2,覆盖仓库缺失、ref 缺失、重复 delivery、controller 重启、retry exhaustion 与恢复测试;只用修复 PR merge 产生的新自动事件验收 resource bundle 获取成功,禁止人工 mirror、sync、flush、trigger 或 direct GitHub 补洞,完成任务后将详细报告写入[任务报告](./details/github-gitea-durable-source-authority/R3.3_Task_Report.md)。
@@ -0,0 +1,20 @@
# 可观测性与 Trace 可靠性 MDTODO
范围:长期跟踪跨服务 OTel trace context、业务 trace 与诊断 trace 隔离、Span Link、诊断重复性和 trace 证据稳定性。单个故障或 GitHub issue 作为 MDTODO ITEM 进入本文件,不为一次性 trace 或根因新建 MDTODO FILE。
## R1
解决 [UniDesk #1801](https://github.com/pikasTech/unidesk/issues/1801):隔离业务 trace 与 diagnostic trace,使诊断读取保持可观测但不再向被诊断业务 trace 补记 span;不得通过静默过滤隐藏真实 span,不改变已验收的纯 Kafka + SSE 实时/刷新链路,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R1_Task_Report.md)。
### R1.1
冻结 [#1801](https://github.com/pikasTech/unidesk/issues/1801) 的 trace-context 合同:业务 trace 只承载原业务执行证据,diagnostic trace 使用独立 traceId,并通过 OTel Span Link 和明确关联字段引用目标 trace;定义跨 UniDesk/AgentRun 的 propagation、采样、错误和兼容边界,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R1.1_Task_Report.md)。
### R1.2
依赖 R1.1,修改诊断入口与相关 instrumentation,使 command/result/events 读取不继承目标业务 trace 的 active parent,同时保留独立诊断 trace、Span Link、businessTraceId/commandId 关联和有界 CLI 可见性;禁止新增 terminal authority 或 Kafka event,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R1.2_Task_Report.md)。
### R1.3
依赖 R1.2,用固定 warm-session trace 验证重复诊断不改变原业务 trace 的 terminal/instrumentation 判定,诊断 trace 仍完整可查;补跨服务合同和端到端验收,确认实时、刷新回放及纯 Kafka + SSE 事件顺序均无变化,完成任务后将详细报告写入[任务报告](./details/observability-trace-reliability/R1.3_Task_Report.md)。
@@ -43,3 +43,19 @@
### R3.1 [completed]
记录 [AgentRun PR #301](https://github.com/pikasTech/agentrun/pull/301) 自动 Pipeline Succeeded、GitOps result 与 Argo/runtime provenance 未收敛的证据;确认涉及自动 GitOps/provenance 架构后保持 [UniDesk #1802](https://github.com/pikasTech/unidesk/issues/1802) open 并跳过实现,完成任务后将详细报告写入[任务报告](./details/pr-merge-driven-automatic-delivery/R3.1_Task_Report.md)。
## R4
解决 [UniDesk #1802](https://github.com/pikasTech/unidesk/issues/1802) 并对齐 [UniDesk #1769](https://github.com/pikasTech/unidesk/issues/1769):建立 source commit → immutable snapshot → artifact digest → GitOps commit → Argo revision → runtime digest 的单一、不可伪造自动交付 provenanceGitHub PR merge 仍是唯一触发,禁止人工补交付,完成任务后将详细报告写入[任务报告](./details/pr-merge-driven-automatic-delivery/R4_Task_Report.md)。
### R4.1
冻结 [#1802](https://github.com/pikasTech/unidesk/issues/1802) / [#1769](https://github.com/pikasTech/unidesk/issues/1769) 的交付合同:定义 admission-owned outer-event provenance、标准 terminal roles/results、父子运行归属、commit/digest 关联和 fail-closed 判定,明确 YAML owner 与 controller 职责,完成任务后将详细报告写入[任务报告](./details/pr-merge-driven-automatic-delivery/R4.1_Task_Report.md)。
### R4.2
依赖 R4.1,让 YAML-owned pipeline 输出标准 terminal evidence,由单一 controller 自动 reconcile GitOpsArgo/status 必须针对同一 GitOps repository 和 commit graph 验证 exact/descendant,并把 source、artifact、GitOps、revision、runtime digest 形成可审计链,完成任务后将详细报告写入[任务报告](./details/pr-merge-driven-automatic-delivery/R4.2_Task_Report.md)。
### R4.3
依赖 R4.2,覆盖 provenance 缺失、伪造、stale revision、commit graph unavailable 和 runtime digest 不一致;最终只接受修复 PR merge 的新 webhook/PaC 事件自动收敛,禁止 mirror、PipelineRun、sync、flush、trigger、apply、closeout 或 runtime patch,完成任务后将详细报告写入[任务报告](./details/pr-merge-driven-automatic-delivery/R4.3_Task_Report.md)。