You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+23Lines changed: 23 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,28 @@
1
1
# Changelog
2
2
3
+
## 2026-04-01 — Linear PM Layer (Retroactive Sync + Auto-Bind)
4
+
5
+
**What:** Full Linear integration layer added as a PM-facing workflow mirror. The repo remains the source of truth; Linear reflects state for stakeholder visibility.
6
+
7
+
- Created `commands/linear-bind.md` — binds active repo issue to a Linear team and project; creates `experiments/linear-sync/issue-<NNN>.json` sync map; writes `linear_enabled: true` and all binding fields to `project-state.md`
8
+
- Created `commands/linear-sync.md` — mirrors repo artifacts into Linear in 4 modes: `issue` (brief), `plan` (document snapshot + child issues from manifest), `status` (stage labels + blockers), `release` (PR/deployment links)
9
+
- Created `commands/linear-brief.md` — read-only summary of current Linear view; compares repo stage against Linear status; identifies mismatches
10
+
- Created `commands/linear-close.md` — finalizes Linear project after `/learning`; sets project to `completed`, root issue to `Done`, creates closeout snapshot document
11
+
- Created `agents/linear-agent.md` — Linear Agent role definition (product operations specialist); idempotent sync behavior; repo-as-source-of-truth constraint
- Registered all 4 commands as `.claude/commands/` stubs
14
+
- Added Linear PM Layer section to `CLAUDE.md` with recommended sync checkpoints
15
+
- Updated `commands/create-issue.md` to auto-bind Linear at the end of every new issue creation (no manual `/linear-bind` step required going forward)
16
+
- Retroactively synced issues 002–006 and 008 to Linear as `Completed`
17
+
18
+
**Why:** Pipeline had no PM-facing visibility layer. Issues were built, shipped, and archived with zero Linear record. Linear now mirrors all 6 completed projects with closeout snapshots, enabling portfolio visibility and cycle velocity tracking.
19
+
20
+
**Pipeline isolation:** Linear commands are utility-only. They do not alter stage progression, do not interact with `experiments/` artifact content, and cannot block or unblock pipeline stages.
-`project-state.md` remains canonical for workflow state
85
+
-`experiments/linear-sync/issue-<NNN>.json` stores durable Linear ids for idempotent re-syncs
86
+
- Linear utility commands may read and write Linear only after reading repo state
87
+
- Linear commands must never silently skip failed writes
88
+
- Existing pipeline commands remain valid even if Linear is unavailable
89
+
90
+
Recommended checkpoints:
91
+
92
+
-**`/create-issue` auto-binds Linear** — `/linear-bind` + root issue creation run automatically at the end of every `/create-issue`. No manual bind step required.
93
+
- After `/create-issue`: `/linear-sync issue` (brief already bound; sync the description)
94
+
- After `/create-plan`: `/linear-sync plan`
95
+
- After `/review`, `/peer-review`, `/qa-test`: `/linear-sync status`
96
+
- After `/deploy-check`: `/linear-sync release`
97
+
- After `/learning`: `/linear-close`
98
+
73
99
**Never use hard-coded template examples.** All outputs must reference the active project context.
74
100
75
101
### State Management
@@ -82,6 +108,13 @@ After every command execution, update `project-state.md`:
82
108
- Set quality gate status (pass/fail) for review stages
83
109
- Append key decisions to the Decisions Log
84
110
111
+
For Linear utility commands:
112
+
113
+
- Update only the Linear metadata fields
114
+
- Persist durable Linear ids in `experiments/linear-sync/issue-<NNN>.json`
115
+
- Never change pipeline stage progression as a side effect of a Linear command
116
+
- Record explicit sync failures instead of silently ignoring them
117
+
85
118
**Blocked State Rule**: If a quality gate fails, set `status` to `blocked` and add the blocker to the Blockers section. Do not proceed until resolved.
Copy file name to clipboardExpand all lines: README.md
+36Lines changed: 36 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -67,6 +67,10 @@ The OS enforces a sequential pipeline with quality gates. A stage cannot start u
67
67
68
68
-`/docs` — Generate `CODEBASE-CONTEXT.md` for the active app
69
69
-`/explain` — Deep-dive on a concept, pattern, or error
70
+
-`/linear-bind` — Bind the active repo issue to a Linear team/project
71
+
-`/linear-sync` — Sync repo artifacts and workflow status into Linear
72
+
-`/linear-brief` — Summarize the current Linear state for the active issue
73
+
-`/linear-close` — Close the Linear project after the repo workflow completes
70
74
71
75
---
72
76
@@ -85,6 +89,38 @@ Every agent reads the knowledge base before executing — preventing the same cl
85
89
86
90
---
87
91
92
+
## Linear PM Layer
93
+
94
+
Linear is an optional PM-facing layer on top of the repo workflow.
95
+
96
+
The source of truth remains in this repository:
97
+
98
+
-`project-state.md` is the canonical workflow state
99
+
-`experiments/` contains the canonical issue, exploration, plan, and result artifacts
100
+
-`experiments/linear-sync/` stores durable Linear sync identities per issue
101
+
-`commands/` defines the execution contracts
102
+
103
+
Linear exists to improve:
104
+
105
+
- prioritization
106
+
- roadmap visibility
107
+
- blocker communication
108
+
- task tracking from execution manifests
109
+
- release and closeout visibility
110
+
111
+
Recommended usage:
112
+
113
+
1. Run `/linear-bind` after `/create-issue`
114
+
2. Run `/linear-sync issue` after the issue brief exists
115
+
3. Run `/linear-sync plan` after `/create-plan` to publish plan artifacts and child tasks
116
+
4. Run `/linear-sync status` after review gates to reflect blockers or approvals
117
+
5. Run `/linear-sync release` after `/deploy-check`
118
+
6. Run `/linear-close` after `/learning`
119
+
120
+
If Linear is unavailable, the Linear utility command should fail explicitly. The 12-step pipeline remains usable because Linear is not the workflow engine.
121
+
122
+
---
123
+
88
124
## Getting Started (Forking This Repo)
89
125
90
126
1.**Check the current state** — read [`project-state.md`](project-state.md) to see what stage the system is at and which issue is active
0 commit comments