@claude
组件删除/恢复功能(复活 d560644e)
📝 描述
## 背景 d560644e(架构平台增加删除功能)在 REQ-69212ee4 批量清理 9 条 0-commit verified REQ 时被错误地 rejected。原 REQ 标题过于简略(无 description/AC),清理脚本判断失误,未识别出这是真实未完成需求。 ## 现状 - components.py 只有 GET/POST/PATCH,**无 DELETE endpoint** - CLI arch component 只有 create/get/list/update,**无 delete/archive/restore** - Component 模型已有 is_archived 字段(对齐 Requirement 软删除模式),但**路由层未启用** ## 实施方案 1. backend/app/routes/components.py: - DELETE /{component_id}:软删除(is_archived=true),冲突检测(被其他复合组件引用则 409) - POST /{component_id}/restore:撤销软删除 - GET / 默认过滤 archived;加 ?include_archived=true 2. CLI arch component: - delete <id|name> [--reason TEXT] - restore <id|name> 3. 业务规则: - 已删除组件不可 update/composed_of 引用 - delete 必填 reason(≥10 字符,记录清理意图) - 复合组件:被引用时禁止删除(409),提示先解除依赖 4. 测试用例(8 个):见 AC ## 关联 - 被错误 rejected 的原 REQ: d560644e(留作审计) - 同批错误清理的还有 8 条 REQ(可能需要复查)
🏷️ 标签
component delete soft-delete resurrect audit
🔄 推进状态
创建于 2026-06-23 16:11 · 决策于 2026-06-23 16:12 · 关闭于 2026-06-23 16:19