Skip to content

design: 哲学/SKILL 文档去版本后缀(V1/V2/schema_version) #107

@loning

Description

@loning

背景

CLAUDE.md 已加新不动点:`哲学文档不写版本后缀`(V1/V2/`schema_version: 1` 等)。SKILL.md/REFERENCE.md 仍有 ~48 个 versioned identifier site:`WorkUnitV1`、`IntegrationSyncDaemonV1`、`IntegrationSyncRequestV1`、`ManualIssueTriageDecisionV1`、`SkillDegradationWatchV1`、`WorktreeLifecycleProjectionV1`、`schema_version: 1`、`work_unit_schema_version: 1` 等。

CLAUDE.md 哲学段已就地替换 2 处 `IntegrationSyncDaemonV1` 为功能描述 "integration-branch sync daemon"。

目标

把 SKILL.md / REFERENCE.md / scripts 注释 / 测试名称中的 V1/V2 后缀替换为职责导向的命名,保留 schema 内部演化坐标(`state.json` 字段 `schema_version` / `work_unit_schema_version` 在代码里继续用,只从哲学文本撤出)。

替换映射(候选,Phase 9 收敛)

  • `WorkUnitV1` → `WorkUnit` 或 `work-unit container`
  • `IntegrationSyncDaemonV1` → `integration-branch sync daemon`
  • `IntegrationSyncRequestV1` → `integration-sync request artifact`
  • `ManualIssueTriageDecisionV1` → `manual-issue triage decision artifact`
  • `SkillDegradationWatchV1` → `skill-degradation watch`
  • `WorktreeLifecycleProjectionV1` → `worktree-lifecycle projection`(若实现)
  • `schema_version: 1` 在哲学/SKILL 文档段 → 删除该字面提及,改 "v1 stable" 等抽象描述;`state.json` 字段保留

不可动

  • `state.json` 实际字段名 `schema_version`/`work_unit_schema_version`(代码内,不在哲学层)
  • `.version-bump.json` 映射的 package/manifest release semver(发布坐标,不是 design identifier)
  • marker 词表本身(`SOLVER_DONE`/`META_JUDGE_DONE` 等 — 已 language-agnostic)
  • sentinel `⟦AI:AUTO-LOOP⟧`

验证标准

  • `grep -E 'V1|V2|schema_version' skills/codex-refactor-loop/SKILL.md skills/codex-refactor-loop/REFERENCE.md` 在哲学/契约段返回零(实际字段定义保留)
  • Source-regression test:禁止未来在 SKILL/REFERENCE 哲学段重新出现 `*V1`/`*V2` identifier(代码内 schema 字段可豁免)
  • 共识引擎语义零变更
  • behavior test 全绿

Phase 9 framing

  • minimal: 仅替换 SKILL.md/REFERENCE.md 哲学段的字面,代码 identifier 暂保留(逐 PR 跟进)
  • structural: 哲学段 + 代码 identifier 同步 rename,加 source-regression 锁哲学段
  • delete: 删整段 versioned exception 文本,改抽象描述 + indirect 指向 `runs/.../judge.md` artifact

⟦AI:AUTO-LOOP⟧

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions