flow-cc 0.8.2 → 0.8.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,15 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.8.3] - 2026-02-15
9
+
10
+ ### Fixed
11
+ - `/flow:spec` now writes `**Linear Project:**` field to PRD header — downstream skills (`flow:go`, `flow:done`) depend on it
12
+ - `/flow:spec` now sets `projectMilestoneId` on every Linear issue — fixes milestone progress showing 0% despite issues existing
13
+ - `/flow:spec` PRD template includes `**Linear Project:**` field (was missing, causing silent Linear skips)
14
+ - `/flow:go` Step 6 now moves completed milestone issues to "Done" in Linear (were stuck at "In Progress" forever)
15
+ - `/flow:done` Step 5.5 now handles interim milestone completion — moves completed milestone issues to "Done" before checking PR/project status
16
+
8
17
  ## [0.8.2] - 2026-02-14
9
18
 
10
19
  ### Fixed
package/VERSION CHANGED
@@ -1 +1 @@
1
- 0.8.2
1
+ 0.8.3
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flow-cc",
3
- "version": "0.8.2",
3
+ "version": "0.8.3",
4
4
  "description": "Structured workflow system for Claude Code — spec interviews, agent-team execution, session handoffs, compounding knowledge",
5
5
  "author": "Troy Hoffman",
6
6
  "license": "MIT",
@@ -148,14 +148,18 @@ Runs when 5.25 created a PR (or one already exists for this branch).
148
148
 
149
149
  - Check if Linear MCP tools are available; skip silently if not
150
150
  - Parse active PRD for `**Linear Project:**` field
151
- - If found and open PR exists (`gh pr list --head [branch] --state open`):
152
- - Move all "In Progress" issues to "In Review" via `mcp__linear__update_issue`
153
- - Print: "Linear: [N] issues In Review (PR open)"
154
- - If no PR: issues stay In Progress (normal mid-project session end)
155
- - **If project complete** (all milestones done):
156
- - Find project via `mcp__linear__list_projects`, match by name from PRD `**Linear Project:**` field
157
- - Move project to Completed: `mcp__linear__update_project` with `state: "Completed"`
158
- - Print: "Linear: projectCompleted"
151
+ - If found:
152
+ - Find project, list milestones via `mcp__linear__list_milestones`
153
+ - Cross-reference ROADMAP.md: for each milestone marked "Complete", find matching Linear milestone
154
+ - For each completed milestone: list its issues, move non-Done issues to "Done" via `mcp__linear__update_issue`
155
+ - Print: "Linear: [N] issues → Done ([milestone name])" per milestone; if 0 issues: "Linear: [milestone name] — no issues to update"
156
+ - If open PR exists (`gh pr list --head [branch] --state open`):
157
+ - Move remaining "In Progress" issues to "In Review" via `mcp__linear__update_issue`
158
+ - Print: "Linear: [N] issues In Review (PR open)"
159
+ - If no PR: remaining in-progress issues stay (normal mid-project session end)
160
+ - **If project complete** (all milestones done):
161
+ - Move project to Completed: `mcp__linear__update_project` with `state: "Completed"`
162
+ - Print: "Linear: project → Completed"
159
163
  - Post progress comment on any branch-linked Linear issue
160
164
 
161
165
  ### 6. Route Next Action
@@ -188,7 +192,7 @@ Session complete.
188
192
  - Committed: [SHA | nothing to commit]
189
193
  - PR: [created #N | skipped (milestones remain)]
190
194
  - Review: [N comments addressed | pending | skipped]
191
- - Linear: [N issues → In Review, project → Completed | N issues → In Review | skipped]
195
+ - Linear: [N issues → Done (milestone) | N → In Review (PR) | project → Completed | skipped]
192
196
 
193
197
  Next: [routing from Step 6]
194
198
  ```
package/skills/flow-go.md CHANGED
@@ -137,6 +137,8 @@ Atomic commit for this milestone. Stage only files from this milestone's agents.
137
137
 
138
138
  **ROADMAP.md (ALWAYS):** Mark milestone as "Complete ([date])"
139
139
 
140
+ **Linear milestone (ALWAYS):** If `**Linear Project:**` in PRD and Linear MCP available: find completed milestone in Linear via `mcp__linear__list_milestones`, list its issues, move non-Done issues to "Done" via `mcp__linear__update_issue`. Print: "Linear: [N] issues → Done ([milestone name])". If 0 issues: print "Linear: [milestone name] — no issues to update". Skip silently if no Linear Project or MCP unavailable.
141
+
140
142
  **STATE.md (LAST MILESTONE ONLY):** Update only if this was the LAST milestone (project complete): files created/modified count, commit SHA, milestone completion note. Keep "Active PRD" pointing to resolved path. Skip STATE.md for non-final milestones.
141
143
 
142
144
  ## Step 7 — Route Next Action (MANDATORY — FINAL STEP)
@@ -94,6 +94,7 @@ Write to `.planning/prds/{slug}.md` (create dir if needed) with this structure:
94
94
  **Branch:** feat/{project-slug}
95
95
  **Created:** [date]
96
96
  **Assigned To:** [developer or "unassigned"]
97
+ **Linear Project:** [Linear project name if linked, or blank]
97
98
 
98
99
  ## Overview
99
100
  [One paragraph summary]
@@ -161,10 +162,13 @@ After writing the PRD:
161
162
  4. **Linear Integration (optional):**
162
163
  - Check if Linear MCP tools are available (`mcp__linear__list_teams`)
163
164
  - If available: search for matching Linear project (`mcp__linear__list_projects`)
164
- - Found: create one **Linear milestone** per implementation milestone, one **Linear issue** per user story/task (not per milestone)
165
- - Not found: AskUserQuestion to pick project or skip
165
+ - Found: use it. Not found: AskUserQuestion to pick existing project or skip Linear
166
+ - Add `**Linear Project:** [project name]` to the PRD header (after `**Assigned To:**`)
167
+ - For each implementation milestone: create a **Linear milestone** (`mcp__linear__create_milestone`) under the project
168
+ - For each user story: create a **Linear issue** (`mcp__linear__create_issue`) with BOTH `projectId` AND `projectMilestoneId` set — assign to the milestone whose `**Acceptance:**` field references that story. Title: "US-N: [story name]"
169
+ - **Critical:** Every issue MUST have `projectMilestoneId` set. Issues without milestone assignment break downstream status tracking.
166
170
  - If MCP unavailable: skip silently
167
- - Print: "[N] milestones + [M] issues created under project [name]"
171
+ - Print: "[N] milestones + [M] issues created under [project name]"
168
172
 
169
173
  5. Print handoff prompt in a fenced code block.
170
174