BE-PR-010: clean up feat_task_id semantics — deprecate with read-only compat
Decision: retain DB column, mark DEPRECATED. Existing rows still return feat_task_id via API. New accept flow (BE-PR-007) does not write it. Clients should migrate to generated_tasks / Task.source_proposal_id. - Backend: model/schema/router deprecation comments updated - Backend: added docs/BE-PR-010-feat-task-id-deprecation.md - Tests: updated to work with Essential-based accept flow - Tests: all 21 proposal tests pass - TASKLIST: BE-PR-010 marked complete
This commit is contained in:
@@ -76,16 +76,16 @@
|
||||
- [x] 设计是用反查字段、关联表还是事件记录
|
||||
- [x] 实现最小可用追踪能力
|
||||
|
||||
- [ ] BE-PR-009:收紧 Task 类型规则,限制全部 `story/*`(backend only)
|
||||
- [ ] 更新 `TASK_SUBTYPE_MAP` 相关约束
|
||||
- [ ] 将所有 `story/*` 组合标记为 restricted
|
||||
- [ ] 禁止通用 create endpoint 直接创建任何 story
|
||||
- [ ] 保留内部受控入口用于 Proposal Accept
|
||||
- [x] BE-PR-009:收紧 Task 类型规则,限制全部 `story/*`(backend only)
|
||||
- [x] 更新 `TASK_SUBTYPE_MAP` 相关约束
|
||||
- [x] 将所有 `story/*` 组合标记为 restricted
|
||||
- [x] 禁止通用 create endpoint 直接创建任何 story
|
||||
- [x] 保留内部受控入口用于 Proposal Accept
|
||||
|
||||
- [ ] BE-PR-010:清理旧的 `feat_task_id` 语义(backend only)
|
||||
- [ ] 判断字段是否保留但废弃
|
||||
- [ ] 如果废弃,给出兼容读取策略
|
||||
- [ ] 如果替换,落地新的字段或关联方式
|
||||
- [x] BE-PR-010:清理旧的 `feat_task_id` 语义(backend only)
|
||||
- [x] 判断字段是否保留但废弃 → 保留 DB 列,标记 DEPRECATED
|
||||
- [x] 如果废弃,给出兼容读取策略 → 旧行仍返回值,新 accept 不写入,客户端迁移到 generated_tasks
|
||||
- [x] 如果替换,落地新的字段或关联方式 → 已由 BE-PR-008 通过 Task.source_proposal_id 替代
|
||||
|
||||
- [ ] BE-PR-011:补 Proposal / Essential / Story restricted 的后端测试(backend only)
|
||||
- [ ] Essential CRUD 测试
|
||||
|
||||
Reference in New Issue
Block a user