Loading...
Loading...
Compare original and translation side by side
SPECIFY ──→ PLAN ──→ TASKS ──→ IMPLEMENT
│ │ │ │
▼ ▼ ▼ ▼
Human Human Human Human
reviews reviews reviews reviewsSPECIFY ──→ PLAN ──→ TASKS ──→ IMPLEMENT
│ │ │ │
▼ ▼ ▼ ▼
人工审核 人工审核 人工审核 人工审核ASSUMPTIONS I'M MAKING:
1. This is a web application (not native mobile)
2. Authentication uses session-based cookies (not JWT)
3. The database is PostgreSQL (based on existing Prisma schema)
4. We're targeting modern browsers only (no IE11)
→ Correct me now or I'll proceed with these.Build: npm run build
Test: npm test -- --coverage
Lint: npm run lint --fix
Dev: npm run devsrc/ → Application source code
src/components → React components
src/lib → Shared utilities
tests/ → Unit and integration tests
e2e/ → End-to-end tests
docs/ → Documentationundefined我的假设前提:
1. 这是一个Web应用(而非原生移动应用)
2. 认证采用基于会话的Cookie(而非JWT)
3. 数据库为PostgreSQL(基于现有Prisma schema)
4. 我们仅针对现代浏览器(不支持IE11)
→ 若有错误请立即指出,否则我将基于这些假设推进。构建: npm run build
测试: npm test -- --coverage
代码检查: npm run lint --fix
开发: npm run devsrc/ → 应用源代码
src/components → React组件
src/lib → 共享工具库
tests/ → 单元测试与集成测试
e2e/ → 端到端测试
docs/ → 文档undefined
**Reframe instructions as success criteria.** When receiving vague requirements, translate them into concrete conditions:
This lets you loop, retry, and problem-solve toward a clear goal rather than guessing what "faster" means.
**将模糊需求转化为成功标准。** 收到模糊需求时,将其转换为具体条件:
这样你就能朝着明确的目标迭代、重试和解决问题,而非猜测“更快”的具体含义。- [ ] Task: [Description]
- Acceptance: [What must be true when done]
- Verify: [How to confirm — test command, build, manual check]
- Files: [Which files will be touched]- [ ] 任务:[描述]
- 验收标准:[完成时需满足的条件]
- 验证方式:[确认方法——测试命令、构建、人工检查]
- 涉及文件:[将修改的文件]incremental-implementationtest-driven-developmentincremental-implementationtest-driven-development| Rationalization | Reality |
|---|---|
| "This is simple, I don't need a spec" | Simple tasks don't need long specs, but they still need acceptance criteria. A two-line spec is fine. |
| "I'll write the spec after I code it" | That's documentation, not specification. The spec's value is in forcing clarity before code. |
| "The spec will slow us down" | A 15-minute spec prevents hours of rework. Waterfall in 15 minutes beats debugging in 15 hours. |
| "Requirements will change anyway" | That's why the spec is a living document. An outdated spec is still better than no spec. |
| "The user knows what they want" | Even clear requests have implicit assumptions. The spec surfaces those assumptions. |
| 误区 | 真相 |
|---|---|
| "这个任务很简单,不需要规范" | 简单任务不需要长篇规范,但仍需验收标准。两行规范即可。 |
| "我先写代码再补规范" | 那是文档记录,而非规范制定。规范的价值在于在代码编写之前强制明确需求。 |
| "写规范会拖慢进度" | 15分钟的规范能避免数小时的返工。15分钟的前置规划胜过15小时的调试。 |
| "反正需求总会变" | 这正是规范作为活文档的原因。过时的规范仍胜于无规范。 |
| "用户知道自己想要什么" | 即使是明确的需求也存在隐含假设。规范的作用就是暴露这些假设。 |