22description : " Task list template for feature implementation"
33---
44
5+ <!-- Principle definitions centralized in .specify/memory/principles.md; do not restate here. -->
56# Tasks: [ FEATURE NAME]
67
78** Input** : Design documents from ` /specs/[###-feature-name]/ `
89** Prerequisites** : plan.md (required), spec.md (required for user stories), research.md, data-model.md, contracts/
910
10- ** Tests** : Core logic unit tests are MANDATORY (Constitution Principle 1). Additional integration or snapshot tests OPTIONAL unless specified.
11+ ** Tests** : Core logic unit tests are MANDATORY (Constitution PID : A- 1 ). Additional integration or snapshot tests OPTIONAL unless specified.
1112
1213** Organization** : Tasks are grouped by user story to enable independent implementation and testing of each story.
1314
@@ -21,9 +22,9 @@ description: "Task list template for feature implementation"
2122- Tests MUST go under ` tests/unit/ ` (unit) or ` tests/integration/ ` (integration)
2223- Mirrored paths: For ` release_notes_generator/x/y.py ` create ` tests/unit/release_notes_generator/x/test_y.py ` .
2324- Branch naming: Branch MUST start with allowed prefix (feature|fix|docs|chore) + kebab-case descriptor.
24- - Typing: New or changed public functions MUST include full type annotations (Principle 14 ).
25- - TODOs: Any introduced TODO must include issue reference per ` TODO(<issue-id>): ` pattern (Principle 15 ).
26- - Performance: If feature affects mining/data fetch loops, add measurement & API budget validation task (Principle 7 ).
25+ - Typing: New or changed public functions MUST include full type annotations (PID : K-1 ).
26+ - TODOs: Any introduced TODO must include issue reference per ` TODO(<issue-id>): ` pattern (PID : G-3 ).
27+ - Performance: If feature affects mining/data fetch loops, add measurement & API budget validation task (PID : E-1 ).
2728
2829<!-- SAMPLE TASKS BELOW (REPLACE) -->
2930
@@ -32,12 +33,12 @@ description: "Task list template for feature implementation"
3233** Purpose** : Project initialization and basic structure
3334
3435- [ ] T001 Create any new module directories in ` release_notes_generator/ `
35- - [ ] T002 [ P] Ensure mirrored test path structure for new/relocated tests (Principle 12 )
36- - [ ] T003 Verify branch prefix matches regex ` ^(feature|fix|docs|chore)/ ` (Principle 13 ) or rename before proceeding
37- - [ ] T004 [ P] Add initial failing unit tests in ` tests/unit/ ` for new logic (Test‑First gate)
38- - [ ] T005 [ P] Configure/verify linting, typing (mypy) and formatting tools (Principles 1, 14 )
39- - [ ] T006 [ P] Add TODO pattern linter or script (Principle 15 )
40- - [ ] T007 [ P] Add performance baseline/measurement scaffold if feature impacts API calls (Principle 7 )
36+ - [ ] T002 [ P] Ensure mirrored test path structure for new/relocated tests (PID : A-2 )
37+ - [ ] T003 Verify branch prefix matches regex ` ^(feature|fix|docs|chore)/ ` (PID : H-1 ) or rename before proceeding
38+ - [ ] T004 [ P] Add initial failing unit tests in ` tests/unit/ ` for new logic (Test‑First gate PID : A-1 )
39+ - [ ] T005 [ P] Configure/verify linting, typing (mypy) and formatting tools (PIDs: A- 1, K-1 )
40+ - [ ] T006 [ P] Add TODO pattern linter or script (PID : G-3 )
41+ - [ ] T007 [ P] Add performance baseline/measurement scaffold if feature impacts API calls (PID : E-1 )
4142
4243---
4344
@@ -51,7 +52,7 @@ description: "Task list template for feature implementation"
5152- [ ] T009 [ P] Add utilities (if needed) with tests (` tests/unit/test_utils_<name>.py ` )
5253- [ ] T010 Setup error handling pattern (log & return) — no cross-module exception leakage
5354- [ ] T011 Dead code removal (list obsolete functions) + tests ensuring replacement paths
54- - [ ] T012 Security review: confirm no sensitive logging added (Principle 16 )
55+ - [ ] T012 Security review: confirm no sensitive logging added (PID : I-1 )
5556
5657** Checkpoint** : Foundation ready - user story implementation can now begin in parallel
5758
@@ -70,10 +71,10 @@ description: "Task list template for feature implementation"
7071
7172### Implementation for User Story 1
7273
73- - [ ] T015 [ P] [ US1] Implement function(s) in ` release_notes_generator/<module>.py ` (full typing - P14 )
74- - [ ] T016 [ US1] Logging additions (INFO lifecycle, DEBUG details) without secrets (P5, P16 )
75- - [ ] T017 [ US1] Ensure deterministic ordering adjustments (P3 )
76- - [ ] T018 [ US1] Capture performance metrics (API calls & elapsed) if applicable (P7 )
74+ - [ ] T015 [ P] [ US1] Implement function(s) in ` release_notes_generator/<module>.py ` (full typing - PID : K-1 )
75+ - [ ] T016 [ US1] Logging additions (INFO lifecycle, DEBUG details) without secrets (PID : D-1 , PID : I-1 )
76+ - [ ] T017 [ US1] Ensure deterministic ordering adjustments (PID : B-2 )
77+ - [ ] T018 [ US1] Capture performance metrics (API calls & elapsed) if applicable (PID : E-1 )
7778
7879** Checkpoint** : User Story 1 fully functional & independently testable
7980
@@ -91,9 +92,9 @@ description: "Task list template for feature implementation"
9192
9293### Implementation for User Story 2
9394
94- - [ ] T020 [ US2] Implement logic in existing module (maintain typing - P14 )
95- - [ ] T021 [ US2] Update records builder ensuring no cross-module exceptions (P9 )
96- - [ ] T022 [ US2] Update/extend performance measurement if scope affects API usage (P7 )
95+ - [ ] T020 [ US2] Implement logic in existing module (maintain typing - PID : K-1 )
96+ - [ ] T021 [ US2] Update records builder ensuring no cross-module exceptions (PID : F-1 )
97+ - [ ] T022 [ US2] Update/extend performance measurement if scope affects API usage (PID : E-1 )
9798
9899** Checkpoint** : User Stories 1 & 2 independently functional
99100
@@ -112,9 +113,9 @@ description: "Task list template for feature implementation"
112113### Implementation for User Story 3
113114
114115- [ ] T024 [ US3] Implement functionality
115- - [ ] T025 [ US3] Update documentation/comments (concise, logic-focused) (P11 )
116- - [ ] T026 [ US3] Add/adjust TODOs with issue references (P15 )
117- - [ ] T027 [ US3] Re-run performance snapshot if affected (P7 )
116+ - [ ] T025 [ US3] Update documentation/comments (concise, logic-focused) (PID : G-2 )
117+ - [ ] T026 [ US3] Add/adjust TODOs with issue references (PID : G-3 )
118+ - [ ] T027 [ US3] Re-run performance snapshot if affected (PID : E-1 )
118119
119120** Checkpoint** : All user stories functional; tests green
120121
@@ -124,10 +125,9 @@ description: "Task list template for feature implementation"
124125
125126- [ ] TXXX [ P] Documentation updates in ` README.md ` , ` docs/ `
126127- [ ] TXXX Code cleanup (remove any newly unused code)
127- - [ ] TXXX Performance optimization / confirm within budget (P7)
128- - [ ] TXXX [ P] Additional unit tests (edge cases) in ` tests/unit/ `
129- - [ ] TXXX Security/robustness improvements (P16)
130- - [ ] TXXX TODO sweep: ensure all TODOs have current issue links and none expired (P15)
128+ - [ ] TXXX Performance optimization / confirm within budget (PID: E-1 )
129+ - [ ] TXXX Security/robustness improvements (PID: I-1 )
130+ - [ ] TXXX TODO sweep: ensure all TODOs have current issue links and none expired (PID: G-3 )
131131
132132---
133133
@@ -154,12 +154,12 @@ Add each story with its own failing tests → implementation → validation cycl
154154
155155## Notes
156156
157- - Avoid unused functions (delete immediately if obsoleted) (P10 )
158- - Prefer functions over classes unless state/polymorphism required (P8 )
159- - Handle errors locally; log & return (P9 )
160- - Comments concise & logic-focused (P11 )
161- - Test Path Mirroring required for new tests (P12 )
162- - Enforce full typing & minimal ignores (P14 )
163- - TODOs require issue linkage (P15 )
164- - No sensitive output in logs (P16 )
165- - Monitor API calls & elapsed runtime (P7 )
157+ - Avoid unused functions (delete immediately if obsoleted) (PID : G-1 )
158+ - Prefer functions over classes unless state/polymorphism required (PID : K-2 )
159+ - Handle errors locally; log & return (PID : F-1 )
160+ - Comments concise & logic-focused (PID : G-2 )
161+ - Test Path Mirroring required for new tests (PID : A-2 )
162+ - Enforce full typing & minimal ignores (PID : K-1 )
163+ - TODOs require issue linkage (PID : G-3 )
164+ - No sensitive output in logs (PID : I-1 )
165+ - Monitor API calls & elapsed runtime (PID : E-1 )
0 commit comments