cc-devflow 4.5.4 → 4.5.5

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.
Files changed (74) hide show
  1. package/.claude/skills/cc-act/CHANGELOG.md +6 -0
  2. package/.claude/skills/cc-act/PLAYBOOK.md +21 -5
  3. package/.claude/skills/cc-act/SKILL.md +21 -11
  4. package/.claude/skills/cc-act/assets/PR_BRIEF_TEMPLATE.md +10 -0
  5. package/.claude/skills/cc-act/assets/RELEASE_NOTE_TEMPLATE.md +8 -0
  6. package/.claude/skills/cc-act/references/closure-contract.md +3 -0
  7. package/.claude/skills/cc-act/scripts/cc-act-common.sh +48 -0
  8. package/.claude/skills/cc-act/scripts/generate-status-report.sh +3 -0
  9. package/.claude/skills/cc-act/scripts/render-pr-brief.sh +6 -0
  10. package/.claude/skills/cc-act/scripts/sync-act-docs.sh +13 -0
  11. package/.claude/skills/cc-do/CHANGELOG.md +6 -0
  12. package/.claude/skills/cc-do/PLAYBOOK.md +7 -6
  13. package/.claude/skills/cc-do/SKILL.md +27 -12
  14. package/.claude/skills/cc-do/references/execution-recovery.md +9 -0
  15. package/.claude/skills/cc-investigate/CHANGELOG.md +6 -0
  16. package/.claude/skills/cc-investigate/PLAYBOOK.md +5 -1
  17. package/.claude/skills/cc-investigate/SKILL.md +22 -5
  18. package/.claude/skills/cc-investigate/assets/ANALYSIS_TEMPLATE.md +14 -0
  19. package/.claude/skills/cc-investigate/assets/TASKS_TEMPLATE.md +1 -0
  20. package/.claude/skills/cc-investigate/assets/TASK_MANIFEST_TEMPLATE.json +9 -1
  21. package/.claude/skills/cc-investigate/references/investigation-contract.md +2 -0
  22. package/.claude/skills/cc-plan/CHANGELOG.md +23 -0
  23. package/.claude/skills/cc-plan/PLAYBOOK.md +38 -18
  24. package/.claude/skills/cc-plan/SKILL.md +81 -47
  25. package/.claude/skills/cc-plan/assets/DESIGN_TEMPLATE.md +68 -3
  26. package/.claude/skills/cc-plan/assets/TASKS_TEMPLATE.md +28 -5
  27. package/.claude/skills/cc-plan/assets/TASK_MANIFEST_TEMPLATE.json +54 -2
  28. package/.claude/skills/cc-plan/assets/TINY_DESIGN_TEMPLATE.md +44 -0
  29. package/.claude/skills/cc-plan/references/planning-contract.md +29 -15
  30. package/.claude/skills/cc-roadmap/CHANGELOG.md +12 -0
  31. package/.claude/skills/cc-roadmap/PLAYBOOK.md +15 -9
  32. package/.claude/skills/cc-roadmap/SKILL.md +22 -16
  33. package/.claude/skills/cc-roadmap/assets/BACKLOG_TEMPLATE.md +3 -1
  34. package/.claude/skills/cc-roadmap/assets/ROADMAP_TEMPLATE.md +11 -1
  35. package/.claude/skills/cc-roadmap/assets/TRACKING_TEMPLATE.json +57 -10
  36. package/.claude/skills/cc-roadmap/scripts/lib/roadmap-tracking/markdown.js +68 -3
  37. package/.claude/skills/cc-roadmap/scripts/lib/roadmap-tracking/schema.js +120 -0
  38. package/.claude/skills/cc-roadmap/scripts/lib/roadmap-tracking/store.js +25 -1
  39. package/.claude/skills/cc-roadmap/scripts/locate-roadmap-item.sh +13 -5
  40. package/.claude/skills/cc-roadmap/scripts/roadmap-tracking.js +3 -3
  41. package/.claude/skills/cc-roadmap/scripts/sync-roadmap-progress.sh +3 -3
  42. package/CHANGELOG.md +7 -0
  43. package/README.md +5 -5
  44. package/README.zh-CN.md +5 -5
  45. package/docs/CLAUDE.md +1 -1
  46. package/docs/examples/START-HERE.md +3 -3
  47. package/docs/examples/example-bindings.json +26 -9
  48. package/docs/examples/full-design-blocked/BACKLOG.md +4 -2
  49. package/docs/examples/full-design-blocked/README.md +4 -4
  50. package/docs/examples/full-design-blocked/ROADMAP.md +16 -2
  51. package/docs/examples/full-design-blocked/changes/REQ-002-bulk-invite-import/planning/design.md +39 -1
  52. package/docs/examples/full-design-blocked/changes/REQ-002-bulk-invite-import/planning/task-manifest.json +41 -0
  53. package/docs/examples/full-design-blocked/changes/REQ-002-bulk-invite-import/planning/tasks.md +8 -1
  54. package/docs/examples/full-design-blocked/roadmap.json +123 -0
  55. package/docs/examples/local-handoff/BACKLOG.md +4 -2
  56. package/docs/examples/local-handoff/README.md +4 -4
  57. package/docs/examples/local-handoff/ROADMAP.md +16 -2
  58. package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/planning/design.md +19 -1
  59. package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/planning/task-manifest.json +26 -0
  60. package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/planning/tasks.md +8 -1
  61. package/docs/examples/local-handoff/roadmap.json +121 -0
  62. package/docs/examples/pdca-loop/BACKLOG.md +4 -2
  63. package/docs/examples/pdca-loop/README.md +4 -4
  64. package/docs/examples/pdca-loop/ROADMAP.md +16 -2
  65. package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/planning/design.md +19 -1
  66. package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/planning/task-manifest.json +22 -3
  67. package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/planning/tasks.md +8 -1
  68. package/docs/examples/pdca-loop/roadmap.json +191 -0
  69. package/docs/examples/scripts/check-example-bindings.sh +7 -4
  70. package/docs/guides/getting-started.md +2 -2
  71. package/docs/guides/getting-started.zh-CN.md +2 -2
  72. package/lib/compiler/__tests__/skills-registry.test.js +17 -3
  73. package/lib/skill-runtime/__tests__/cli-bootstrap.integration.test.js +9 -1
  74. package/package.json +1 -1
@@ -4,7 +4,7 @@
4
4
 
5
5
  - Requirement version: `REQ-002.v2`
6
6
  - Design version: `design.v2`
7
- - CC-Plan skill version: `3.7.1`
7
+ - CC-Plan skill version: `3.7.5`
8
8
  - Source roadmap item: `RM-010`
9
9
  - Source roadmap version: `roadmap.v2`
10
10
 
@@ -15,6 +15,13 @@
15
15
  - Frozen decisions:
16
16
  - bulk invite results must classify each row
17
17
  - audit behavior must match visible results
18
+ - PRD brief:
19
+ - Problem statement: admins need predictable CSV invite outcomes for duplicates, invalid rows, and seat limits
20
+ - Solution summary: freeze deterministic row outcomes before executing the bulk invite flow
21
+ - User stories covered: `US-001`, `US-002`, `US-003`, `US-EDGE-001`, `US-EDGE-002`
22
+ - Implementation decisions: reuse invite engine, billing checks, and audit contract after the row-outcome matrix is approved
23
+ - Testing decisions: test bulk-import rules, admin upload flow, and audit mapping
24
+ - Out of scope: SCIM provisioning, background jobs, rollback wizard
18
25
  - Read first:
19
26
  - `design.md`
20
27
  - `src/admin/BulkInvitePanel.tsx`
@@ -0,0 +1,123 @@
1
+ {
2
+ "version": 3,
3
+ "outputPolicy": {
4
+ "documentLanguage": "en"
5
+ },
6
+ "meta": {
7
+ "roadmapVersion": "roadmap.v2",
8
+ "skillVersion": "5.0.0",
9
+ "status": "active",
10
+ "lastUpdated": "2026-04-19",
11
+ "currentFocusStage": "Stage 2"
12
+ },
13
+ "context": {
14
+ "planningPosture": "",
15
+ "evidenceMaturity": "",
16
+ "canonicalTerms": [],
17
+ "durableDecisionSources": []
18
+ },
19
+ "evidence": [],
20
+ "route": {
21
+ "recommended": "",
22
+ "whyThisWinsNow": "",
23
+ "rejectedRoutes": [],
24
+ "firstSignal": "",
25
+ "killSignal": ""
26
+ },
27
+ "stages": [],
28
+ "items": [
29
+ {
30
+ "rmId": "RM-010",
31
+ "item": "Add CSV bulk invite import for admins",
32
+ "stage": "Stage 2",
33
+ "priority": "P1",
34
+ "primaryCapability": "cap-bulk-invite-import",
35
+ "secondaryCapabilities": [
36
+ "cap-workspace-membership"
37
+ ],
38
+ "expectedSpecDelta": "define import semantics before widening current truth",
39
+ "dependsOn": [],
40
+ "status": "Verification blocked",
41
+ "req": "REQ-002",
42
+ "progress": "80%",
43
+ "backlog": {
44
+ "capabilityGap": "admins can invite one user at a time but cannot safely import invite batches",
45
+ "evidence": "sales onboarding asks for spreadsheet-scale invites",
46
+ "parallelWith": [],
47
+ "unknowns": "duplicate-email policy, seat enforcement, audit fan-out",
48
+ "nextDecision": "reroute to full design before more execution work",
49
+ "ready": true,
50
+ "whyNow": "demand is real, but the contract is too wide to keep improvising in code",
51
+ "successSignal": "the capability has a trusted import contract before implementation resumes",
52
+ "entryConstraints": "must freeze limits, duplicates, warnings, and audit behavior first",
53
+ "openRisks": "another partial implementation pass would deepen the semantic drift",
54
+ "firstPlanningQuestion": "which subflows share one import contract and which need explicit splits?",
55
+ "requiredContextToLoad": "invite limits, billing rules, duplicate handling, audit logging",
56
+ "whyReadyNow": "the blocker is design truth, not implementation effort",
57
+ "parked": false,
58
+ "parkedReason": "",
59
+ "triggerToReopen": "",
60
+ "missingEvidence": ""
61
+ }
62
+ }
63
+ ],
64
+ "handoff": {
65
+ "readyForCcPlan": [
66
+ "RM-010"
67
+ ],
68
+ "parked": [],
69
+ "serialSpine": [
70
+ "RM-010"
71
+ ],
72
+ "parallelWaves": []
73
+ },
74
+ "architecture": {
75
+ "diagramType": "flowchart",
76
+ "nodes": [
77
+ {
78
+ "id": "roadmap_json",
79
+ "label": "roadmap.json"
80
+ },
81
+ {
82
+ "id": "roadmap_md",
83
+ "label": "ROADMAP.md"
84
+ },
85
+ {
86
+ "id": "backlog_md",
87
+ "label": "BACKLOG.md (deprecated)"
88
+ },
89
+ {
90
+ "id": "cc_plan",
91
+ "label": "cc-plan"
92
+ }
93
+ ],
94
+ "edges": [
95
+ {
96
+ "from": "roadmap_json",
97
+ "to": "roadmap_md",
98
+ "label": "renders"
99
+ },
100
+ {
101
+ "from": "roadmap_json",
102
+ "to": "backlog_md",
103
+ "label": "projects"
104
+ },
105
+ {
106
+ "from": "roadmap_md",
107
+ "to": "cc_plan",
108
+ "label": "hands off"
109
+ }
110
+ ]
111
+ },
112
+ "backlogMeta": {
113
+ "roadmapVersion": "roadmap.v2",
114
+ "skillVersion": "4.4.1",
115
+ "currentFocusStage": "Stage 2"
116
+ },
117
+ "dependencyHandoff": {
118
+ "serialSpine": "RM-010",
119
+ "parallelReadyNextWave": "-",
120
+ "notesOnBlockers": "verification is blocked until the import contract covers limits, duplicates, billing, and audit consistency"
121
+ },
122
+ "lastSyncedAt": "2026-04-19"
123
+ }
@@ -1,12 +1,14 @@
1
1
  # BACKLOG
2
2
 
3
+ > Deprecated projection. Edit `roadmap.json` instead.
4
+
3
5
  ## Backlog Meta
4
6
 
5
7
  - Roadmap version: `roadmap.v2`
6
- - Skill version: `4.4.1`
8
+ - Skill version: `5.0.0`
7
9
  - Last synced: `2026-04-19`
8
10
  - Current focus stage: `Stage 2`
9
- - Tracking source: `roadmap-tracking.json`
11
+ - Roadmap state source: `roadmap.json`
10
12
 
11
13
  ## Queue
12
14
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  - Example version: `1.0.0`
6
6
  - Last reviewed: `2026-04-17`
7
- - Bound skills: `cc-roadmap@4.4.1`, `cc-plan@3.7.1`, `cc-do@1.6.1`, `cc-check@1.10.1`, `cc-act@1.8.1`
7
+ - Bound skills: `cc-roadmap@5.0.0`, `cc-plan@3.7.5`, `cc-do@1.6.2`, `cc-check@1.10.1`, `cc-act@1.8.2`
8
8
 
9
9
  This example shows verified work that is **ready to move forward**, but `cc-act` still chooses `local-handoff`.
10
10
 
@@ -36,9 +36,9 @@ But the current environment is local-only:
36
36
 
37
37
  ## Artifact Map
38
38
 
39
- - `ROADMAP.md`
40
- - `roadmap-tracking.json` (shared roadmap/backlog truth)
41
- - `BACKLOG.md`
39
+ - `roadmap.json` (editable roadmap truth)
40
+ - `ROADMAP.md` (generated view)
41
+ - `BACKLOG.md` (deprecated projection)
42
42
  - `changes/REQ-003-audit-log-export/planning/design.md`
43
43
  - `changes/REQ-003-audit-log-export/planning/tasks.md`
44
44
  - `changes/REQ-003-audit-log-export/planning/task-manifest.json`
@@ -3,7 +3,7 @@
3
3
  ## Roadmap Meta
4
4
 
5
5
  - Roadmap version: `roadmap.v3`
6
- - Skill version: `4.4.1`
6
+ - Skill version: `5.0.0`
7
7
  - Status: `active`
8
8
  - Last updated: `2026-04-16`
9
9
  - Owner / decider: `product-owner`
@@ -36,10 +36,24 @@
36
36
  - Kill signal / stop condition: if export requires a shared reporting pipeline redesign
37
37
 
38
38
  ## Implementation Tracking
39
- - Tracking source: `roadmap-tracking.json`
39
+ - Roadmap state source: `roadmap.json`
40
40
 
41
41
  <!-- roadmap-tracking:start -->
42
42
  | RM-ID | Item | Stage | Priority | Primary Capability | Secondary Capabilities | Expected Spec Delta | Depends On | Status | REQ | Progress |
43
43
  |------|------|------|------|------|------|------|------|------|------|------|
44
44
  | RM-020 | Add an audit-log export summary download | Stage 2 | P1 | cap-audit-log-export | - | codify local export summary truth | - | Local handoff | REQ-003 | 100% |
45
45
  <!-- roadmap-tracking:end -->
46
+
47
+
48
+ ## Technical Architecture
49
+
50
+ ```mermaid
51
+ flowchart TD
52
+ roadmap_json["roadmap.json"]
53
+ roadmap_md["ROADMAP.md"]
54
+ backlog_md["BACKLOG.md (deprecated)"]
55
+ cc_plan["cc-plan"]
56
+ roadmap_json -->|renders| roadmap_md
57
+ roadmap_json -->|projects| backlog_md
58
+ roadmap_md -->|hands off| cc_plan
59
+ ```
@@ -4,7 +4,7 @@
4
4
 
5
5
  - Requirement version: `REQ-003.v1`
6
6
  - Design version: `design.v1`
7
- - CC-Plan skill version: `3.7.1`
7
+ - CC-Plan skill version: `3.7.5`
8
8
  - Requirement ID: `REQ-003`
9
9
  - Design mode: `tiny-design`
10
10
  - Why this stays `tiny-design`: the patch adds one export action inside the existing admin audit UI without changing data contracts
@@ -34,6 +34,23 @@
34
34
  - keep the action inside the current admin panel
35
35
  - Upgrade trigger to `full-design`: if export needs background generation or new reporting contracts
36
36
 
37
+ ## PRD-Grade Brief
38
+
39
+ - Problem statement: admins can review audit summary rows in the UI, but taking them into weekly reports requires manual copying.
40
+ - Solution summary: admins can download the currently visible audit summary rows as a CSV from the existing admin panel.
41
+ - Actors / personas:
42
+ - workspace admin reviewing weekly activity
43
+ - User stories:
44
+ - US-001: As a workspace admin, I want to download visible audit summary rows as CSV, so that I can include them in weekly reporting without manual copying.
45
+ - Implementation decisions:
46
+ - Export only the rows already visible in the panel.
47
+ - Keep CSV as the only output format.
48
+ - Testing decisions:
49
+ - Test through the admin panel action and visible row data.
50
+ - Existing audit summary panel tests are the prior art.
51
+ - Out of scope: JSON export, scheduled reporting, and shared reporting backend work.
52
+ - Further notes: richer machine-readable exports should become a separate requirement.
53
+
37
54
  ## Validation
38
55
 
39
56
  - Primary check: targeted panel test proves the export action is available and uses current summary rows
@@ -56,6 +73,7 @@
56
73
  - Scope scan: pass
57
74
  - Ambiguity scan: pass
58
75
  - Feasibility scan: pass
76
+ - PRD brief scan: pass; the export story and scope boundaries are explicit
59
77
  - Final recommendation: approved as `tiny-design`
60
78
 
61
79
  ## Approval
@@ -5,6 +5,32 @@
5
5
  "updatedAt": "2026-04-16T14:20:00.000Z",
6
6
  "requirementId": "REQ-003",
7
7
  "requirementVersion": "REQ-003.v1",
8
+ "planningMeta": {
9
+ "reqPlanSkillVersion": "3.7.5",
10
+ "designVersion": "design.v1",
11
+ "approvedAt": "2026-04-16T13:10:00.000Z",
12
+ "approvedBy": "user",
13
+ "basedOnOption": "Tiny design card",
14
+ "requirementBrief": {
15
+ "problemStatement": "Admins can review audit summary rows in the UI, but weekly reporting requires manual copying.",
16
+ "solutionSummary": "Add a CSV download action for the currently visible audit summary rows.",
17
+ "actors": ["workspace admin reviewing weekly activity"],
18
+ "userStories": [
19
+ {
20
+ "id": "US-001",
21
+ "actor": "workspace admin",
22
+ "want": "download visible audit summary rows as CSV",
23
+ "benefit": "include them in weekly reporting without manual copying",
24
+ "acceptance": ["Panel behavior test proves the export action uses current summary rows"]
25
+ }
26
+ ],
27
+ "edgeOrRecoveryStories": [],
28
+ "implementationDecisions": ["Export only rows already visible in the panel", "Keep CSV as the only output format"],
29
+ "testingDecisions": ["Test through the admin panel action and visible row data"],
30
+ "outOfScope": ["JSON export", "scheduled reporting", "shared reporting backend"],
31
+ "furtherNotes": ["Richer machine-readable exports should become a separate requirement"]
32
+ }
33
+ },
8
34
  "currentTaskId": null,
9
35
  "activePhase": null,
10
36
  "tasks": [
@@ -4,7 +4,7 @@
4
4
 
5
5
  - Requirement version: `REQ-003.v1`
6
6
  - Design version: `design.v1`
7
- - CC-Plan skill version: `3.7.1`
7
+ - CC-Plan skill version: `3.7.5`
8
8
  - Source roadmap item: `RM-020`
9
9
  - Source roadmap version: `roadmap.v3`
10
10
 
@@ -15,6 +15,13 @@
15
15
  - Frozen decisions:
16
16
  - export only the visible audit summary rows
17
17
  - CSV is the only format in this requirement
18
+ - PRD brief:
19
+ - Problem statement: admins manually copy audit summaries into weekly reports
20
+ - Solution summary: CSV download action for currently visible audit summary rows
21
+ - User stories covered: `US-001`
22
+ - Implementation decisions: export visible rows only, CSV only
23
+ - Testing decisions: test through admin panel action and visible row data
24
+ - Out of scope: JSON export, scheduled reporting, shared reporting backend
18
25
  - Read first:
19
26
  - `design.md`
20
27
  - `src/admin/AuditSummaryPanel.tsx`
@@ -0,0 +1,121 @@
1
+ {
2
+ "version": 3,
3
+ "outputPolicy": {
4
+ "documentLanguage": "en"
5
+ },
6
+ "meta": {
7
+ "roadmapVersion": "roadmap.v2",
8
+ "skillVersion": "5.0.0",
9
+ "status": "active",
10
+ "lastUpdated": "2026-04-19",
11
+ "currentFocusStage": "Stage 2"
12
+ },
13
+ "context": {
14
+ "planningPosture": "",
15
+ "evidenceMaturity": "",
16
+ "canonicalTerms": [],
17
+ "durableDecisionSources": []
18
+ },
19
+ "evidence": [],
20
+ "route": {
21
+ "recommended": "",
22
+ "whyThisWinsNow": "",
23
+ "rejectedRoutes": [],
24
+ "firstSignal": "",
25
+ "killSignal": ""
26
+ },
27
+ "stages": [],
28
+ "items": [
29
+ {
30
+ "rmId": "RM-020",
31
+ "item": "Add an audit-log export summary download",
32
+ "stage": "Stage 2",
33
+ "priority": "P1",
34
+ "primaryCapability": "cap-audit-log-export",
35
+ "secondaryCapabilities": [],
36
+ "expectedSpecDelta": "codify local export summary truth",
37
+ "dependsOn": [],
38
+ "status": "Local handoff",
39
+ "req": "REQ-003",
40
+ "progress": "100%",
41
+ "backlog": {
42
+ "capabilityGap": "admins can export raw audit data but not a compact summary for review",
43
+ "evidence": "support escalations keep asking for a lightweight summary bundle",
44
+ "parallelWith": [],
45
+ "unknowns": "csv-only or csv-plus-markdown summary",
46
+ "nextDecision": "resume from local handoff once remote access returns",
47
+ "ready": true,
48
+ "whyNow": "the implementation and proof already exist, only the landing path is deferred",
49
+ "successSignal": "admins can download a concise audit summary without manual spreadsheet cleanup",
50
+ "entryConstraints": "stay local-only and avoid remote automation",
51
+ "openRisks": "handoff may age if schema changes before the next maintainer resumes",
52
+ "firstPlanningQuestion": "does the summary format need another review before remote landing?",
53
+ "requiredContextToLoad": "admin export screen, generated summary fixture, local handoff notes",
54
+ "whyReadyNow": "the requirement is already proven and only needs a clean resume point",
55
+ "parked": false,
56
+ "parkedReason": "",
57
+ "triggerToReopen": "",
58
+ "missingEvidence": ""
59
+ }
60
+ }
61
+ ],
62
+ "handoff": {
63
+ "readyForCcPlan": [
64
+ "RM-020"
65
+ ],
66
+ "parked": [],
67
+ "serialSpine": [
68
+ "RM-020"
69
+ ],
70
+ "parallelWaves": []
71
+ },
72
+ "architecture": {
73
+ "diagramType": "flowchart",
74
+ "nodes": [
75
+ {
76
+ "id": "roadmap_json",
77
+ "label": "roadmap.json"
78
+ },
79
+ {
80
+ "id": "roadmap_md",
81
+ "label": "ROADMAP.md"
82
+ },
83
+ {
84
+ "id": "backlog_md",
85
+ "label": "BACKLOG.md (deprecated)"
86
+ },
87
+ {
88
+ "id": "cc_plan",
89
+ "label": "cc-plan"
90
+ }
91
+ ],
92
+ "edges": [
93
+ {
94
+ "from": "roadmap_json",
95
+ "to": "roadmap_md",
96
+ "label": "renders"
97
+ },
98
+ {
99
+ "from": "roadmap_json",
100
+ "to": "backlog_md",
101
+ "label": "projects"
102
+ },
103
+ {
104
+ "from": "roadmap_md",
105
+ "to": "cc_plan",
106
+ "label": "hands off"
107
+ }
108
+ ]
109
+ },
110
+ "backlogMeta": {
111
+ "roadmapVersion": "roadmap.v2",
112
+ "skillVersion": "4.4.1",
113
+ "currentFocusStage": "Stage 2"
114
+ },
115
+ "dependencyHandoff": {
116
+ "serialSpine": "RM-020",
117
+ "parallelReadyNextWave": "-",
118
+ "notesOnBlockers": "export work stays local-only until the next maintainer has remote access"
119
+ },
120
+ "lastSyncedAt": "2026-04-19"
121
+ }
@@ -1,12 +1,14 @@
1
1
  # BACKLOG
2
2
 
3
+ > Deprecated projection. Edit `roadmap.json` instead.
4
+
3
5
  ## Backlog Meta
4
6
 
5
7
  - Roadmap version: `roadmap.v1`
6
- - Skill version: `4.4.1`
8
+ - Skill version: `5.0.0`
7
9
  - Last synced: `2026-04-19`
8
10
  - Current focus stage: `Stage 1`
9
- - Tracking source: `roadmap-tracking.json`
11
+ - Roadmap state source: `roadmap.json`
10
12
 
11
13
  ## Queue
12
14
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  - Example version: `1.0.0`
6
6
  - Last reviewed: `2026-04-17`
7
- - Bound skills: `cc-roadmap@4.4.1`, `cc-plan@3.7.1`, `cc-do@1.6.1`, `cc-check@1.10.1`, `cc-act@1.8.1`
7
+ - Bound skills: `cc-roadmap@5.0.0`, `cc-plan@3.7.5`, `cc-do@1.6.2`, `cc-check@1.10.1`, `cc-act@1.8.2`
8
8
 
9
9
  This folder shows one minimal but complete `cc-roadmap -> cc-plan -> cc-do -> cc-check -> cc-act` loop.
10
10
 
@@ -27,9 +27,9 @@ The sample requirement is:
27
27
 
28
28
  ## Artifact Map
29
29
 
30
- - `ROADMAP.md`: what `cc-roadmap` decided and why this item is first
31
- - `roadmap-tracking.json`: machine-readable roadmap/backlog truth that renders `ROADMAP.md` and `BACKLOG.md`
32
- - `BACKLOG.md`: capability-aware handoff that makes `RM-001` ready for `cc-plan`
30
+ - `roadmap.json`: editable roadmap truth that renders the generated views
31
+ - `ROADMAP.md`: generated view of what `cc-roadmap` decided and why this item is first
32
+ - `BACKLOG.md`: deprecated capability-aware projection that makes `RM-001` ready for `cc-plan`
33
33
  - `changes/REQ-001-copy-invite-link/planning/design.md`: approved tiny design
34
34
  - `changes/REQ-001-copy-invite-link/planning/tasks.md`: executable task handoff
35
35
  - `changes/REQ-001-copy-invite-link/planning/task-manifest.json`: machine-readable execution truth
@@ -3,7 +3,7 @@
3
3
  ## Roadmap Meta
4
4
 
5
5
  - Roadmap version: `roadmap.v1`
6
- - Skill version: `4.4.1`
6
+ - Skill version: `5.0.0`
7
7
  - Status: `active`
8
8
  - Last updated: `2026-04-15`
9
9
  - Owner / decider: `product-owner`
@@ -122,7 +122,7 @@
122
122
  - What changed in this version: narrowed Stage 1 to the smallest visible sharing fix
123
123
 
124
124
  ## Implementation Tracking
125
- - Tracking source: `roadmap-tracking.json`
125
+ - Roadmap state source: `roadmap.json`
126
126
 
127
127
  <!-- roadmap-tracking:start -->
128
128
  | RM-ID | Item | Stage | Priority | Primary Capability | Secondary Capabilities | Expected Spec Delta | Depends On | Status | REQ | Progress |
@@ -131,3 +131,17 @@
131
131
  | RM-002 | Add copied-state feedback to the share dialog | Stage 1 | P2 | cap-invite-links | - | extend invite-link feedback truth | RM-001 | Planned | - | 0% |
132
132
  | RM-004 | Collaboration analytics follow-up | - | - | - | - | - | - | - | - | - |
133
133
  <!-- roadmap-tracking:end -->
134
+
135
+
136
+ ## Technical Architecture
137
+
138
+ ```mermaid
139
+ flowchart TD
140
+ roadmap_json["roadmap.json"]
141
+ roadmap_md["ROADMAP.md"]
142
+ backlog_md["BACKLOG.md (deprecated)"]
143
+ cc_plan["cc-plan"]
144
+ roadmap_json -->|renders| roadmap_md
145
+ roadmap_json -->|projects| backlog_md
146
+ roadmap_md -->|hands off| cc_plan
147
+ ```
@@ -4,7 +4,7 @@
4
4
 
5
5
  - Requirement version: `REQ-001.v1`
6
6
  - Design version: `design.v1`
7
- - CC-Plan skill version: `3.7.1`
7
+ - CC-Plan skill version: `3.7.5`
8
8
  - Requirement ID: `REQ-001`
9
9
  - Design mode: `tiny-design`
10
10
  - Why this stays `tiny-design`: the patch is limited to an existing dialog and test file, with no API or data model changes
@@ -34,6 +34,23 @@
34
34
  - show a lightweight copied-state confirmation inside the current dialog
35
35
  - Upgrade trigger to `full-design`: if clipboard support requires new platform fallbacks, or if the patch spills into shared share-service contracts
36
36
 
37
+ ## PRD-Grade Brief
38
+
39
+ - Problem statement: users can see the invite URL, but copying it still requires manual selection and creates avoidable share-flow friction.
40
+ - Solution summary: users get a one-click copy action in the existing share dialog and see lightweight confirmation after the link is copied.
41
+ - Actors / personas:
42
+ - workspace member sharing an invite
43
+ - User stories:
44
+ - US-001: As a workspace member, I want to copy the invite link with one click, so that I can share it without manually selecting text.
45
+ - Implementation decisions:
46
+ - Reuse the existing invite URL source and dialog props.
47
+ - Keep clipboard behavior inside the current share dialog surface.
48
+ - Testing decisions:
49
+ - Test through the dialog behavior, not an internal helper.
50
+ - Existing share-dialog tests are the prior art.
51
+ - Out of scope: new invite generation, role controls, analytics, or clipboard fallback redesign.
52
+ - Further notes: if confirmation remains unclear, open a separate UX requirement.
53
+
37
54
  ## Validation
38
55
 
39
56
  - Primary check: targeted dialog test proves the button renders and copies the current invite URL
@@ -57,6 +74,7 @@
57
74
  - Scope scan: pass; no backend, no permission work
58
75
  - Ambiguity scan: pass; execution does not need to re-decide button placement or clipboard source
59
76
  - Feasibility scan: pass; existing dialog and tests already cover the target surface
77
+ - PRD brief scan: pass; problem, story, implementation decision, testing decision, and out-of-scope are durable
60
78
  - Final recommendation: approved as `tiny-design`
61
79
 
62
80
  ## Approval
@@ -9,7 +9,7 @@
9
9
  "sourceRoadmap": {
10
10
  "itemId": "RM-001",
11
11
  "roadmapVersion": "roadmap.v1",
12
- "roadmapSkillVersion": "4.4.1",
12
+ "roadmapSkillVersion": "5.0.0",
13
13
  "sourceStage": "Stage 1",
14
14
  "successSignal": "Users can copy the invite link with one click",
15
15
  "killSignal": "The patch requires backend or permission changes",
@@ -22,11 +22,30 @@
22
22
  ]
23
23
  },
24
24
  "planningMeta": {
25
- "reqPlanSkillVersion": "3.7.1",
25
+ "reqPlanSkillVersion": "3.7.5",
26
26
  "designVersion": "design.v1",
27
27
  "approvedAt": "2026-04-15T10:05:00.000Z",
28
28
  "approvedBy": "user",
29
- "basedOnOption": "Tiny design card"
29
+ "basedOnOption": "Tiny design card",
30
+ "requirementBrief": {
31
+ "problemStatement": "Users can see the invite URL, but copying it still requires manual selection.",
32
+ "solutionSummary": "Add a one-click copy action with lightweight confirmation inside the existing share dialog.",
33
+ "actors": ["workspace member sharing an invite"],
34
+ "userStories": [
35
+ {
36
+ "id": "US-001",
37
+ "actor": "workspace member",
38
+ "want": "copy the invite link with one click",
39
+ "benefit": "share it without manually selecting text",
40
+ "acceptance": ["Dialog behavior test proves the current invite URL is copied"]
41
+ }
42
+ ],
43
+ "edgeOrRecoveryStories": [],
44
+ "implementationDecisions": ["Reuse the existing invite URL source and dialog props"],
45
+ "testingDecisions": ["Test through the share dialog behavior, not an internal helper"],
46
+ "outOfScope": ["invite generation", "role controls", "analytics", "clipboard fallback redesign"],
47
+ "furtherNotes": ["Richer copied-state feedback is a separate UX requirement"]
48
+ }
30
49
  },
31
50
  "currentTaskId": null,
32
51
  "activePhase": null,
@@ -4,7 +4,7 @@
4
4
 
5
5
  - Requirement version: `REQ-001.v1`
6
6
  - Design version: `design.v1`
7
- - CC-Plan skill version: `3.7.1`
7
+ - CC-Plan skill version: `3.7.5`
8
8
  - Source roadmap item: `RM-001`
9
9
  - Source roadmap version: `roadmap.v1`
10
10
 
@@ -16,6 +16,13 @@
16
16
  - copy from the existing invite URL source
17
17
  - keep the patch inside the current dialog
18
18
  - leave richer feedback for a future requirement if needed
19
+ - PRD brief:
20
+ - Problem statement: copying the visible invite URL still requires manual selection
21
+ - Solution summary: one-click copy action with lightweight confirmation
22
+ - User stories covered: `US-001`
23
+ - Implementation decisions: reuse existing invite URL source and dialog props
24
+ - Testing decisions: test through share dialog behavior
25
+ - Out of scope: invite generation, role controls, analytics, clipboard fallback redesign
19
26
  - Read first:
20
27
  - `design.md`
21
28
  - `src/features/share/ShareDialog.tsx`