docs: 完成 Sub2Rank 支线任务收尾
This commit is contained in:
@@ -139,6 +139,6 @@
|
||||
|
||||
按 [UniDesk #1905](https://github.com/pikasTech/unidesk/issues/1905) 清理冲突的 reference/skill/Next,并在 Artificer YAML prompt/resource bundle 内明确支持 stdin 时禁止一次性 /tmp 正文;补最小 render/行为测试后独立交付,当前只登记不执行,完成任务后将详细报告写入[任务报告](./details/cli-output-progressive-disclosure/R9.1_Task_Report.md)。
|
||||
|
||||
## R10 [in_progress]
|
||||
## R10 [completed]
|
||||
|
||||
解决 [UniDesk #1656](https://github.com/pikasTech/unidesk/issues/1656):由 Artificer 在独立 `.worktree/cicd-status-visibility`、`fix/cicd-status-visibility` 分支修复 `cicd status --node` 成功零输出,并统一 PaC consumer 的 registry applicability;GitOps-only/publisher-only 应显示 N/A 且由 PipelineRun、GitOps/Argo 与 runtime 证据闭环,只有 owning YAML 明确声明 image/registry 的 consumer 才把 registry missing 作为 blocker。保持默认输出有界、text/JSON/YAML 同构、缺失可选 YAML 事实降级为 warning,不新增严格合同或手工交付入口;补针对性测试和 `unidesk-cicd` 说明,提交独立 PR 且不自行合并,完成任务后将详细报告写入[任务报告](./details/cli-output-progressive-disclosure/R10_Task_Report.md)。
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
# R10 任务报告
|
||||
|
||||
## 交付
|
||||
|
||||
- Issue:[pikasTech/unidesk#1656](https://github.com/pikasTech/unidesk/issues/1656)。
|
||||
- PR:[pikasTech/unidesk#1918](https://github.com/pikasTech/unidesk/pull/1918)。
|
||||
- 实现提交:`f130598c`;文档治理提交:`40cdb946`;合并提交:`52b9c4bc`。
|
||||
- `cicd status --node` 在零 consumer、ready、warning 和 blocked 投影中稳定返回非空 typed 摘要。
|
||||
- registry applicability 从 owning PaC YAML 的 repository/pipeline 关系派生,没有新增 consumer 特例或严格版本门禁。
|
||||
|
||||
## 验证
|
||||
|
||||
- 合并态测试:12 pass,179 assertions;语法检查 11/11;`git diff --check` 通过。
|
||||
- NC01 节点状态返回 7 个 consumer 的完整表,Sub2Rank 为 ready。
|
||||
- `platform-infra-gitea-nc01` 的 registry 为 `applicability=not-configured`、`status=not-configured`,不再产生 `pac-registry-missing`。
|
||||
- image-producing 的 `platform-infra-sub2rank-nc01` 仍要求真实 registry artifact,观测为 `present:sha256:c36633bb4ae`,PipelineRun、GitOps、Argo 与 runtime ready。
|
||||
- 节点整体仍有其他 consumer 的既有失败,这些失败未被本任务隐藏,也不影响 registry applicability 验收。
|
||||
|
||||
## 收尾
|
||||
|
||||
- PR 已合并,远端分支已删除,任务 worktree 与本地分支已清理。
|
||||
- 长期说明位于 `unidesk-cicd` 的 `references/gitea-pac.md`,skill 仅保留短索引。
|
||||
@@ -0,0 +1,14 @@
|
||||
# R1.1 任务报告
|
||||
|
||||
## 复现与合同
|
||||
|
||||
- 根因记录于 [agent_skills#7](https://github.com/pikasTech/agent_skills/issues/7):双引号 positional 标题在 CLI 启动前被 shell 展开,反引号和 `$()` 可执行 command substitution。
|
||||
- positional 标题包含 CR、LF、NUL 或空标题时,必须在文件锁与写入前拒绝,并返回 `validation-failed`、`mutation=false`。
|
||||
- `add`、`add-sub`、`update` 的安全标题入口固定为 quoted heredoc `--stdin`。
|
||||
- batch 任一标题非法时整批零写入;错误不得回显原始敏感正文。
|
||||
- update 必须保留原任务 ID、children、相邻任务、报告路径和文件锁语义。
|
||||
|
||||
## 证据
|
||||
|
||||
- 上游 PR #8 的固定测试覆盖 CR/LF/NUL、shell 敏感字符、stdin/positional 冲突和 update 恢复。
|
||||
- 本轮临时 fixture 复测了反引号、`$()`、空格与引号,确认 shell substitution 未执行。
|
||||
@@ -0,0 +1,15 @@
|
||||
# R1.2 任务报告
|
||||
|
||||
## 实现
|
||||
|
||||
- 上游实现由 [agent_skills PR #8](https://github.com/pikasTech/agent_skills/pull/8) 合并,merge commit 为 `f928206`。
|
||||
- `add`、`add-sub`、`update` 支持 `--stdin`,并拒绝同时提供 positional title。
|
||||
- 所有写入口共用单行校验、空标题校验和幂等标题正规化。
|
||||
- update 恢复保持原 ID、children、相邻任务与报告链接,不复制任务。
|
||||
- PR #9 继续收敛标点幂等与空标题验证,安装基线为 `2dfe24b`。
|
||||
|
||||
## 验证
|
||||
|
||||
- 本机合并后的 `mdtodo-edit` 全量测试 207 pass。
|
||||
- skill quick validation 与 `git diff --check` 均通过。
|
||||
- 未创建第二套 MDTODO 工具,也未引入版本或 commit 门禁。
|
||||
@@ -0,0 +1,20 @@
|
||||
# R1.3 任务报告
|
||||
|
||||
## 合并与安装
|
||||
|
||||
- [agent_skills PR #8](https://github.com/pikasTech/agent_skills/pull/8) 已合并,issue #7 已关闭。
|
||||
- `/root/.agents/skills` 原状态落后 5 个提交且包含并行脏改。
|
||||
- 安装过程先 `stash -u`,再快进到 `origin/master@2dfe24b`,最后 `stash apply` 并对 3 个重叠文件做语义合并。
|
||||
- 上游安全 stdin/校验实现作为本地标点改动的超集保留;其余 6 组并行修改、未跟踪 worktree 与保护 stash 未删除。
|
||||
|
||||
## 原入口验收
|
||||
|
||||
- `add --help` 显示 `--stdin`,`add-sub` 与 `update` capability 由合并态 UniDesk 测试覆盖。
|
||||
- 临时 MDTODO 使用 quoted heredoc 写入包含反引号、`$()`、空格和引号的标题。
|
||||
- 标题内容原样读取,预设 command-substitution 文件不存在。
|
||||
- 全量测试 207 pass,skill 校验通过,CLI 文件 SHA-256 为 `16e9c7aacc97fc80...`。
|
||||
|
||||
## 清理
|
||||
|
||||
- 临时 MDTODO fixture 已删除。
|
||||
- 保护 stash 保留,避免对并行改动做破坏性 drop。
|
||||
@@ -0,0 +1,15 @@
|
||||
# R1 任务报告
|
||||
|
||||
## 结果
|
||||
|
||||
- MDTODO 标题污染根因、输入合同、实现、合并、本机安装与原入口复测全部闭环。
|
||||
- 上游 owner 保持为 `pikasTech/agent_skills`,实现通过 issue #7 / PR #8 长期维护。
|
||||
- UniDesk 通过 issue #1913 / PR #1920 提供 capability/freshness warning 和 quoted heredoc 默认示例,不复制实现。
|
||||
- 缺失或过期只产生 warning,不作为业务 blocker。
|
||||
|
||||
## 验收摘要
|
||||
|
||||
- 上游 merge:`f928206`;安装基线:`2dfe24b`。
|
||||
- MDTODO 测试:207 pass;UniDesk adoption 测试:2 pass / 9 assertions。
|
||||
- 真实标题包含 Markdown、反引号、`$()`、空格与引号,内容原样写入且 shell substitution 未执行。
|
||||
- 任务 ID、报告、children、相邻任务和文件锁合同均由固定测试保护。
|
||||
@@ -0,0 +1,28 @@
|
||||
# R2 任务报告
|
||||
|
||||
## 交付
|
||||
|
||||
- Issue:[pikasTech/unidesk#1913](https://github.com/pikasTech/unidesk/issues/1913)。
|
||||
- PR:[pikasTech/unidesk#1920](https://github.com/pikasTech/unidesk/pull/1920)。
|
||||
- 实现提交:`cfcade4e`;复审修正:`7dcc1395`;合并提交:`99fcfd34`。
|
||||
- UniDesk 只探测 `mdtodo-edit add/add-sub/update --help` 的 `--stdin` capability,不复制工具实现,也不绑定版本或 commit。
|
||||
- source/target identity、freshness、warning 与精确 Next 已进入 compact/full 输出;漂移不改变 `ok`、`runnerUsable` 或 `contractOk`。
|
||||
- source stale、target ready 的边界现在返回非阻塞 `source-stale` warning,不再误报 ready freshness。
|
||||
|
||||
## 验证
|
||||
|
||||
- 合并态定向测试:2 pass,9 assertions;语法检查 11/11;`git diff --check` 通过。
|
||||
- 本机 `/root/.agents/skills` 按 stash、快进、stash apply 做语义合并,原并行修改与保护 stash 均保留。
|
||||
- 安装 HEAD 与 `origin/master` 同为 `2dfe24b`,CLI SHA-256 为 `16e9c7aacc97fc80` 前缀。
|
||||
- MDTODO 全量测试 207 pass,skill 校验通过。
|
||||
- 临时真实 MDTODO 标题包含 Markdown、反引号、`$()`、空格和引号,经 quoted heredoc 原样写入;命令替换目标文件未生成。
|
||||
|
||||
## 非阻塞限制
|
||||
|
||||
- `codex skills-sync --dry-run --full` 在当前 NC01 主机仍报告旧 local Compose `backend-core-container-missing`,`mutation=false`。
|
||||
- 该诊断入口不可提供 live backend 投影,但不影响已安装安全 stdin、生成命令、fixture 测试或业务运行;没有为绕过它启动 Compose 或建立第二控制面。
|
||||
|
||||
## 收尾
|
||||
|
||||
- PR 已合并,远端分支已删除,任务 worktree 与本地分支已清理。
|
||||
- R2 完成后由 R1.3 记录上游实现、受控安装和真实标题复测的完整闭环。
|
||||
@@ -3,22 +3,22 @@
|
||||
本文件跟踪 MDTODO CLI 的结构安全、并发写入、输入合同、渐进披露、任务恢复和跨平台可用性。单次工具故障及其修复作为 ITEM 进入本长期问题域。
|
||||
|
||||
|
||||
## R1 [in_progress]
|
||||
## R1 [completed]
|
||||
|
||||
依据 [agent_skills #7](https://github.com/pikasTech/agent_skills/issues/7) 修复 MDTODO 标题多行污染并提供安全 stdin 输入,在保持任务 ID、报告、文件锁和层级合同下支持原 ID 恢复,完成任务后将详细报告写入[任务报告](./details/mdtodo-tooling-reliability/R1_Task_Report.md)。
|
||||
|
||||
### R1.1 [in_progress]
|
||||
### R1.1 [completed]
|
||||
|
||||
复现 positional title 含 CR/LF/NUL 与 shell command substitution stdout 的污染形态,定义 validation-failed、mutation=false、stdin 标题和原 ID 恢复合同,引用 [agent_skills #7](https://github.com/pikasTech/agent_skills/issues/7),完成任务后将详细报告写入[任务报告](./details/mdtodo-tooling-reliability/R1.1_Task_Report.md)。
|
||||
|
||||
### R1.2
|
||||
### R1.2 [completed]
|
||||
|
||||
实现 add/add-sub/batch/update 的单行校验、安全 stdin 输入与结构化 update 正规化,精确保留 children、相邻任务、报告路径和文件锁;补单元与回归测试,完成任务后将详细报告写入[任务报告](./details/mdtodo-tooling-reliability/R1.2_Task_Report.md)。
|
||||
|
||||
### R1.3
|
||||
### R1.3 [completed]
|
||||
|
||||
在独立 worktree 提交 PR,完成 Python/skill 校验和临时 fixture 前向验收;合并后更新本机受控 skill 安装并用本 MDTODO 的真实 Markdown 标题复测,完成任务后将详细报告写入[任务报告](./details/mdtodo-tooling-reliability/R1.3_Task_Report.md)。
|
||||
|
||||
## R2 [in_progress]
|
||||
## R2 [completed]
|
||||
|
||||
解决 UniDesk #1913(https://github.com/pikasTech/unidesk/issues/1913):复用 agent_skills #7 与 PR #8 的 MDTODO 安全 stdin 实现,让主代理、Artificer resource bundle 和受控 host skill 投影默认使用安全标题输入,并有界披露 source/target freshness、warning 与精确修复入口;不得复制第二套 MDTODO 工具、增加版本门禁或覆盖宿主并行脏改,由 Artificer 在独立 worktree 和分支实现、测试并提交 PR,不自行合并,完成任务后将详细报告写入[任务报告](./details/mdtodo-tooling-reliability/R2_Task_Report.md)。
|
||||
|
||||
Reference in New Issue
Block a user