Skip to content

P3b: perimeter cleanup — remove workflow-learning/replay from active prompt surface#30

Merged
Li-Sanze merged 13 commits into
mainfrom
plan/p3b-perimeter-cleanup
May 8, 2026
Merged

P3b: perimeter cleanup — remove workflow-learning/replay from active prompt surface#30
Li-Sanze merged 13 commits into
mainfrom
plan/p3b-perimeter-cleanup

Conversation

@Li-Sanze
Copy link
Copy Markdown
Collaborator

@Li-Sanze Li-Sanze commented May 8, 2026

变更摘要

P3b perimeter cleanup 完整收口。将 workflow-learning / replay 从所有活跃 prompt 消费面及安装分发面彻底移除。

变更范围

Prompt 消费面(路由/配置层)

  • Codex/Skills/CN/AGENTS.mdClaude/Skills/CN/CLAUDE.md
  • Codex/Skills/EN/AGENTS.mdClaude/Skills/EN/CLAUDE.md
  • 每份均移除:workflow-learning 策略块、复盘路由表行、技能路由行、footer replay 引用、replay/ 目录结构条目

安装 shipped surface

  • Codex/Skills/{CN,EN}/skills/sopify/workflow-learning/ — 删除
  • Claude/Skills/{CN,EN}/skills/sopify/workflow-learning/ — 删除
  • 安装链路(install_host_assets)不再分发已 sunset 的 skill spec

测试 & 约定对齐

  • tests/test_installer.py:footer_contract_line 断言与新 source 对齐,过期注释同步清除
  • .sopify-skills/project.md:测试口径统一到 pytest(L27/L30),replay/handoff 描述改为 handoff(L34)

归档记录

  • tasks.md 2.13、2.20 标注更新,反映实际完成状态

验证

  • pre-commit 全过:skills sync ✅ version consistency ✅ release sync ✅
  • 全消费面 grep replay|workflow-learning 结果:0 命中
    (排除 design-rules.mdreplayable plan 语义,属不同概念)

已知欠账

无。P3b 定义范围内全部收口。

Li-Sanze added 13 commits May 8, 2026 14:07
- Delete runtime/replay.py and tests/test_runtime_replay.py entirely
- Remove workflow-learning builtin skill (catalog, skill.yaml, generated.json)
- Strip replay event emission from engine, develop_callback, handoff, output
- Remove replay route from router, manifest, checkpoint_request
- Remove RuntimeConfig.workflow_learning_auto_capture and replay_root
- Remove ReplayEvent model and replay_session_dir from RuntimeResult
- Strip config validation for workflow.learning (graceful pop for existing configs)
- Update release-preflight.sh: unittest discover → pytest
- Clean docs: README, README.zh-CN, how-sopify-works (zh/en), fixture yaml
- Sync all affected tests (engine, router, decision, installer, etc.)
- Add P3b plan package (.sopify-skills/plan/20260508_p3b_perimeter_cleanup/)

pytest: 684 passed, 49 subtests passed
Note: skill eval gate needs baseline update (replay cases removed)
The replay route and workflow-learning skill were removed in the previous
commit. This eval case was still expecting route=replay with target=workflow-learning,
causing the skill eval gate to fail (selection.hit_rate=0.875 < 0.9).

Removing the case (rather than adjusting thresholds) since it tests
functionality that no longer exists.

skill eval gate: PASSED (all metrics 1.0/0.0)
CONTRIBUTING.md, CONTRIBUTING_CN.md, and scripts/sync-runtime-assets.sh
still referenced 'python3 -m unittest discover'. Align with
scripts/release-preflight.sh which already uses pytest.

release-preflight: all checks passed
render_draft now produces Summary → Changed (category bullets) → Plan Packages.
The <details> file-list block is removed; individual file paths no longer
appear in auto-drafted changelog entries.

Tests updated to assert new format (category presence, no <details>).

pytest: 684 passed, 49 subtests passed
- CHANGELOG.md: 3256 -> 89 lines (102 auto-generated entries compressed to phase summaries)
- Format: Summary -> Changed -> Plan Packages; no per-file lists
- P3a entry translated to English (was mixed Chinese/English)
- release-draft-changelog.py docstring updated to match actual output (no Details block)
- CONTRIBUTING.md/CONTRIBUTING_CN.md: document summary-only changelog constraint
- P4a: add output rendering fields classification (machine truth projection / human hint / internal taxonomy leak) to Frozen External Surface table scope
- P4c: add output contract convergence slice (status symbol semantics, Next demotion, Changes redefinition, Gate line simplification)
…ementation-mirror)

- 31 test files annotated with '# Test classification: <category>'
- contract: 23 | smoke: 1 | distribution: 6 | implementation-mirror: 1
- implementation-mirror only: test_runtime_knowledge_layout.py
- Includes tests/protocol/test_convention_compliance.py
- tasks.md S3 marked done; S1/S2 verification items updated
…ention mode removed

- Quick Start: install command is now the default entry point
- Returning-user scenario: "Already in a Sopify-managed repo?" at L30
- Added Start/Pause/Resume lightweight table as mental model anchor
- Removed "Convention mode (no install needed)" framing from both READMEs
- tasks.md: synced 4.6/4.7/4.V3/4.V4/2.21 acceptance criteria to match new framing
…eanup

lifecycle_state: archived, plan_status: completed
Completion: 6/6 gates passed (pytest + release-preflight + all metrics green)
Remaining: 2.13 prompt asset replay literal (deferred to prompt asset update)
- Codex/Skills CN+EN AGENTS.md: remove workflow-learning strategy block,
  routing row, skill table row, replay/ dir entry, footer replay ref
- Claude/Skills CN+EN CLAUDE.md: same symmetric cleanup
- skills/sopify/workflow-learning/ (×4): delete from install shipped surface
- tests/test_installer.py: align footer_contract_line assertions (L1302, L1356)
- .sopify-skills/project.md: align test dialect (L27 unittest→pytest,
  L30 bundle smoke unittest→pytest), drop replay/handoff paired term (L34)
- tasks.md 2.13: mark done

Release-Sync: yes

Release-Version: 2026-05-08.191000

Release-Date: 2026-05-08
- tests/test_installer.py L1297/L1351: remove outdated 'replay still
  mentioned' comment; footer assertion now matches cleaned source
- tasks.md 2.20: update note to reflect footer assertions are now
  aligned with current source (no longer deferred)
@Li-Sanze Li-Sanze merged commit e0d106c into main May 8, 2026
2 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant