feat(templates): add optional Business Context section to PROJECT.md template (#756)
* feat(templates): add optional Business Context section to PROJECT.md template Adds an optional `## Business Context` section (Customer, Revenue model, Success metric, Strategy notes) between Core Value and Requirements, for monetized or customer-facing projects. Optional by default — an HTML comment tells non-business projects to delete it; capped at four one-line fields to stay a constraint reference, not a business plan. The milestone evolution review in complete-milestone.md checks it only when the section is present. Refs #72 * chore(changeset): set pr number for #72 fragment * test(#72): add source-text-is-the-product exemption marker Addresses review Minor #1 on PR #756. The contract test reads the PROJECT.md template and complete-milestone workflow .md files and asserts on their content (the local/no-source-grep pattern). Those .md files ARE the product surface, so this is a valid source-text-is-the-product case. Add the explicit // allow-test-rule marker per RULESET.TESTS.no-source-grep.exemption so intent is audit-traceable before the rule promotes to error (#453). --------- Co-authored-by: Tom Boucher <trekkie@nomorestars.com>
This commit is contained in:
@@ -17,6 +17,15 @@ Use the user's language and framing. Update whenever reality drifts from this de
|
||||
[The ONE thing that matters most. If everything else fails, this must work.
|
||||
One sentence that drives prioritization when tradeoffs arise.]
|
||||
|
||||
## Business Context
|
||||
|
||||
<!-- OPTIONAL — only for monetized or customer-facing projects. Delete this section otherwise. -->
|
||||
|
||||
- **Customer**: [Who pays / who uses — one line]
|
||||
- **Revenue model**: [How it makes money — one line]
|
||||
- **Success metric**: [The number that matters — one line]
|
||||
- **Strategy notes**: [Link to external strategy doc, if any]
|
||||
|
||||
## Requirements
|
||||
|
||||
### Validated
|
||||
@@ -83,6 +92,13 @@ Common types: Tech stack, Timeline, Budget, Dependencies, Compatibility, Perform
|
||||
- Drives prioritization when tradeoffs arise
|
||||
- Rarely changes; if it does, it's a significant pivot
|
||||
|
||||
**Business Context:**
|
||||
- Optional — only for monetized or customer-facing projects
|
||||
- Delete the entire section for internal tools, experiments, or meta workspaces
|
||||
- 4 fields max, one line each — a constraint reference, not a business plan
|
||||
- Use **Strategy notes** to link out to a dedicated strategy doc rather than duplicating it here
|
||||
- Informs requirement prioritization: features serving the customer/revenue model come first
|
||||
|
||||
**Requirements — Validated:**
|
||||
- Requirements that shipped and proved valuable
|
||||
- Format: `- ✓ [Requirement] — [version/phase]`
|
||||
@@ -140,8 +156,9 @@ and implemented by workflows/transition.md and workflows/complete-milestone.md.
|
||||
**After each milestone:**
|
||||
1. Full review of all sections
|
||||
2. Core Value check — still the right priority?
|
||||
3. Audit Out of Scope — reasons still valid?
|
||||
4. Update Context with current state (users, feedback, metrics)
|
||||
3. Business Context check (if present) — customer, revenue model, success metric still accurate?
|
||||
4. Audit Out of Scope — reasons still valid?
|
||||
5. Update Context with current state (users, feedback, metrics)
|
||||
|
||||
</evolution>
|
||||
|
||||
|
||||
@@ -245,7 +245,12 @@ cat .planning/phases/*-*/*-SUMMARY.md
|
||||
- Still the right priority? Did shipping reveal a different core value?
|
||||
- Update if the ONE thing has shifted
|
||||
|
||||
3. **Requirements audit:**
|
||||
3. **Business Context check (only if the section is present):**
|
||||
- Skip entirely if PROJECT.md has no `## Business Context` section
|
||||
- Customer, revenue model, and success metric still accurate after shipping?
|
||||
- Update any field that drifted; refresh the linked strategy doc reference if it moved
|
||||
|
||||
4. **Requirements audit:**
|
||||
|
||||
**Validated section:**
|
||||
- All Active requirements shipped this milestone → Move to Validated
|
||||
@@ -261,17 +266,17 @@ cat .planning/phases/*-*/*-SUMMARY.md
|
||||
- Remove irrelevant items
|
||||
- Add requirements invalidated during milestone
|
||||
|
||||
4. **Context update:**
|
||||
5. **Context update:**
|
||||
- Current codebase state (LOC, tech stack)
|
||||
- User feedback themes (if any)
|
||||
- Known issues or technical debt
|
||||
|
||||
5. **Key Decisions audit:**
|
||||
6. **Key Decisions audit:**
|
||||
- Extract all decisions from milestone phase summaries
|
||||
- Add to Key Decisions table with outcomes
|
||||
- Mark ✓ Good, ⚠️ Revisit, or — Pending
|
||||
|
||||
6. **Constraints check:**
|
||||
7. **Constraints check:**
|
||||
- Any constraints changed during development? Update as needed
|
||||
|
||||
Update PROJECT.md inline. Update "Last updated" footer:
|
||||
@@ -355,6 +360,7 @@ Initial user testing showed demand for shape tools.
|
||||
|
||||
- [ ] "What This Is" reviewed and updated if needed
|
||||
- [ ] Core Value verified as still correct
|
||||
- [ ] Business Context checked (or confirmed absent)
|
||||
- [ ] All shipped requirements moved to Validated
|
||||
- [ ] New requirements added to Active for next milestone
|
||||
- [ ] Out of Scope reasoning audited
|
||||
|
||||
Reference in New Issue
Block a user