openplanr 2.1.1 → 2.2.0

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 (85) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/dist/cli/commands/planning-artifacts.d.ts.map +1 -1
  3. package/dist/cli/commands/planning-artifacts.js +6 -18
  4. package/dist/cli/commands/planning-artifacts.js.map +1 -1
  5. package/dist/cli/commands/sprint-refinement.d.ts +5 -0
  6. package/dist/cli/commands/sprint-refinement.d.ts.map +1 -0
  7. package/dist/cli/commands/sprint-refinement.js +141 -0
  8. package/dist/cli/commands/sprint-refinement.js.map +1 -0
  9. package/dist/cli/commands/status.d.ts.map +1 -1
  10. package/dist/cli/commands/status.js +4 -2
  11. package/dist/cli/commands/status.js.map +1 -1
  12. package/dist/cli/commands/update.d.ts.map +1 -1
  13. package/dist/cli/commands/update.js +5 -8
  14. package/dist/cli/commands/update.js.map +1 -1
  15. package/dist/dashboard/.vite/manifest.json +1 -1
  16. package/dist/dashboard/assets/{index-BCvntXFj.js → index-B74ddyXA.js} +2 -2
  17. package/dist/dashboard/assets/{index-BCvntXFj.js.map → index-B74ddyXA.js.map} +1 -1
  18. package/dist/dashboard/dashboard-manifest.json +8 -8
  19. package/dist/dashboard/index.html +1 -1
  20. package/dist/models/sprint-refinement-schema.d.ts +122 -0
  21. package/dist/models/sprint-refinement-schema.d.ts.map +1 -0
  22. package/dist/models/sprint-refinement-schema.js +147 -0
  23. package/dist/models/sprint-refinement-schema.js.map +1 -0
  24. package/dist/models/types.d.ts +8 -0
  25. package/dist/models/types.d.ts.map +1 -1
  26. package/dist/services/delivery-status-service.d.ts +6 -1
  27. package/dist/services/delivery-status-service.d.ts.map +1 -1
  28. package/dist/services/delivery-status-service.js +28 -1
  29. package/dist/services/delivery-status-service.js.map +1 -1
  30. package/dist/services/git-service.d.ts +19 -0
  31. package/dist/services/git-service.d.ts.map +1 -1
  32. package/dist/services/git-service.js +41 -0
  33. package/dist/services/git-service.js.map +1 -1
  34. package/dist/services/graph-service.d.ts.map +1 -1
  35. package/dist/services/graph-service.js +3 -1
  36. package/dist/services/graph-service.js.map +1 -1
  37. package/dist/services/sprint-refinement-service.d.ts +162 -0
  38. package/dist/services/sprint-refinement-service.d.ts.map +1 -0
  39. package/dist/services/sprint-refinement-service.js +645 -0
  40. package/dist/services/sprint-refinement-service.js.map +1 -0
  41. package/dist/templates/sprints/refinement.md.hbs +94 -0
  42. package/dist/templates/sprints/sprint-tasks.md.hbs +16 -0
  43. package/dist/templates/sprints/sprint.md.hbs +17 -12
  44. package/dist/utils/constants.d.ts +2 -0
  45. package/dist/utils/constants.d.ts.map +1 -1
  46. package/dist/utils/constants.js +6 -1
  47. package/dist/utils/constants.js.map +1 -1
  48. package/docs/CLI.md +26 -2
  49. package/lib/host-packages/adapter-registry.json +1 -1
  50. package/lib/host-packages/capability-map.json +16 -0
  51. package/lib/host-packages/claude/openplanr/.openplanr-content.json +27 -7
  52. package/lib/host-packages/claude/openplanr/skills/design/scripts/runtime/packages/protocol/package.json +1 -1
  53. package/lib/host-packages/claude/openplanr/skills/design-loop/scripts/runtime/packages/protocol/package.json +1 -1
  54. package/lib/host-packages/claude/openplanr/skills/design-review/scripts/runtime/packages/protocol/package.json +1 -1
  55. package/lib/host-packages/claude/openplanr/skills/openplanr/SKILL.md +1 -0
  56. package/lib/host-packages/claude/openplanr/skills/plan/scripts/runtime/packages/protocol/package.json +1 -1
  57. package/lib/host-packages/claude/openplanr/skills/sprint/SKILL.md +181 -0
  58. package/lib/host-packages/claude/openplanr/skills/sprint/openplanr.skill.json +59 -0
  59. package/lib/host-packages/claude/openplanr/skills/sprint/references/refinement-contract.md +154 -0
  60. package/lib/host-packages/claude/openplanr/skills/sprint/references/sprint-formats.md +146 -0
  61. package/lib/host-packages/claude/openplanr/skills/sprint/schemas/refinement.schema.json +140 -0
  62. package/lib/host-packages/cursor/openplanr/.openplanr-content.json +24 -8
  63. package/lib/host-packages/cursor/openplanr/manifest.json +2 -1
  64. package/lib/host-packages/cursor/openplanr/rules/planr-design/scripts/runtime/packages/protocol/package.json +1 -1
  65. package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/scripts/runtime/packages/protocol/package.json +1 -1
  66. package/lib/host-packages/cursor/openplanr/rules/planr-design-review/scripts/runtime/packages/protocol/package.json +1 -1
  67. package/lib/host-packages/cursor/openplanr/rules/planr-openplanr.mdc +1 -0
  68. package/lib/host-packages/cursor/openplanr/rules/planr-plan/scripts/runtime/packages/protocol/package.json +1 -1
  69. package/lib/host-packages/cursor/openplanr/rules/planr-sprint/references/refinement-contract.md +154 -0
  70. package/lib/host-packages/cursor/openplanr/rules/planr-sprint/references/sprint-formats.md +146 -0
  71. package/lib/host-packages/cursor/openplanr/rules/planr-sprint/schemas/refinement.schema.json +140 -0
  72. package/lib/host-packages/cursor/openplanr/rules/planr-sprint.mdc +180 -0
  73. package/lib/host-packages/openai/openplanr/.openplanr-content.json +31 -7
  74. package/lib/host-packages/openai/openplanr/skills/design/scripts/runtime/packages/protocol/package.json +1 -1
  75. package/lib/host-packages/openai/openplanr/skills/design-loop/scripts/runtime/packages/protocol/package.json +1 -1
  76. package/lib/host-packages/openai/openplanr/skills/design-review/scripts/runtime/packages/protocol/package.json +1 -1
  77. package/lib/host-packages/openai/openplanr/skills/openplanr/SKILL.md +1 -0
  78. package/lib/host-packages/openai/openplanr/skills/plan/scripts/runtime/packages/protocol/package.json +1 -1
  79. package/lib/host-packages/openai/openplanr/skills/sprint/SKILL.md +181 -0
  80. package/lib/host-packages/openai/openplanr/skills/sprint/agents/openai.yaml +6 -0
  81. package/lib/host-packages/openai/openplanr/skills/sprint/openplanr.skill.json +59 -0
  82. package/lib/host-packages/openai/openplanr/skills/sprint/references/refinement-contract.md +154 -0
  83. package/lib/host-packages/openai/openplanr/skills/sprint/references/sprint-formats.md +146 -0
  84. package/lib/host-packages/openai/openplanr/skills/sprint/schemas/refinement.schema.json +140 -0
  85. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sprint-refinement-service.js","sourceRoot":"","sources":["../../src/services/sprint-refinement-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ # {{sprintId}} refinement · {{refinedAt}}
2
+
3
+ ## Inputs
4
+
5
+ - **Capacity:** {{inputs.capacity}}
6
+ - **Release cut:** {{inputs.releaseCut}}
7
+ - **Git revision:** {{inputs.gitRevision}}
8
+ - **Previous sprint:** {{inputs.previousSprintId}}
9
+ - **Operate cycle:** {{inputs.operateCycleId}}
10
+ - **Sources:** {{inputs.sources}}
11
+ - **Defaulted:** {{inputs.defaulted}}
12
+ {{#if inputs.notes}}
13
+ - **Notes:** {{inputs.notes}}
14
+ {{/if}}
15
+
16
+ ## Items
17
+
18
+ | ID | Score | Evidence date | Stale? | Blocked by | Effort | Bucket |
19
+ | --- | --- | --- | --- | --- | --- | --- |
20
+ {{#each items}}
21
+ | {{id}} | {{score}} | {{evidenceDate}} | {{stale}} | {{blockedBy}} | {{effort}} | {{bucket}} |
22
+ {{/each}}
23
+
24
+ ## Refuter verdicts
25
+
26
+ {{#if refuted}}
27
+ {{#each refuted}}
28
+ - **{{itemId}}** · {{lens}} · {{change}}
29
+ {{/each}}
30
+ {{else}}
31
+ _No pick was changed by a refuter._
32
+ {{/if}}
33
+
34
+ ## In progress
35
+ {{#if batches}}
36
+ {{#each batches}}
37
+
38
+ ### {{title}}{{#if effortDays}} · {{effortDays}}d{{/if}}
39
+
40
+ {{#each rows}}
41
+ - {{this}}
42
+ {{/each}}
43
+ {{/each}}
44
+ {{else}}
45
+
46
+ _Nothing selected._
47
+ {{/if}}
48
+
49
+ ## Plan next
50
+
51
+ {{#if planNext}}
52
+ {{#each planNext}}
53
+ - {{this}}
54
+ {{/each}}
55
+ {{else}}
56
+ _None._
57
+ {{/if}}
58
+
59
+ ## Blocked
60
+
61
+ {{#if blocked}}
62
+ {{#each blocked}}
63
+ - {{this}}
64
+ {{/each}}
65
+ {{else}}
66
+ _None._
67
+ {{/if}}
68
+
69
+ ## Close or demote
70
+
71
+ {{#if closeOrDemote}}
72
+ {{#each closeOrDemote}}
73
+ - {{this}}
74
+ {{/each}}
75
+ {{else}}
76
+ _None._
77
+ {{/if}}
78
+ {{#if leftovers}}
79
+
80
+ ## Leftovers
81
+
82
+ {{#each leftovers}}
83
+ - {{this}}
84
+ {{/each}}
85
+ {{/if}}
86
+ {{#if applied}}
87
+
88
+ ## Applied
89
+
90
+ - **At:** {{applied.at}}
91
+ {{#each applied.updates}}
92
+ - {{this}}
93
+ {{/each}}
94
+ {{/if}}
@@ -0,0 +1,16 @@
1
+ {{#if batches}}
2
+ {{#each batches}}
3
+ ### {{title}}{{#if effortDays}} · {{effortDays}}d{{/if}}
4
+
5
+ {{#each items}}
6
+ - [{{#if checked}}x{{else}} {{/if}}] **{{id}}** {{title}}{{#if effort}} · {{effort}}{{/if}}{{#if link}} · [view]({{link}}){{/if}}
7
+ {{/each}}
8
+
9
+ {{/each}}
10
+ {{else if taskIds}}
11
+ {{#each taskIds}}
12
+ - [ ] **{{this}}**
13
+ {{/each}}
14
+ {{else}}
15
+ _No items selected yet. Run `planr sprint refinement <id> --data <refinement.json>` to fill the sprint._
16
+ {{/if}}
@@ -5,6 +5,15 @@ startDate: "{{startDate}}"
5
5
  endDate: "{{endDate}}"
6
6
  duration: "{{duration}}"
7
7
  status: "{{status}}"
8
+ {{#if releaseCut}}
9
+ releaseCut: "{{releaseCut}}"
10
+ {{/if}}
11
+ {{#if capacityDays}}
12
+ capacityDays: {{capacityDays}}
13
+ {{/if}}
14
+ {{#if refinedAt}}
15
+ refinedAt: "{{refinedAt}}"
16
+ {{/if}}
8
17
  created: "{{date}}"
9
18
  updated: "{{date}}"
10
19
  taskIds: [{{#each taskIds}}"{{this}}"{{#unless @last}}, {{/unless}}{{/each}}]
@@ -18,6 +27,12 @@ taskIds: [{{#each taskIds}}"{{this}}"{{#unless @last}}, {{/unless}}{{/each}}]
18
27
  - **Start:** {{startDate}}
19
28
  - **End:** {{endDate}}
20
29
  - **Status:** {{uppercase status}}
30
+ {{#if releaseCut}}
31
+ - **Release cut:** {{releaseCut}}
32
+ {{/if}}
33
+ {{#if capacityDays}}
34
+ - **Capacity:** {{capacityDays}} engineer-days
35
+ {{/if}}
21
36
 
22
37
  {{#if goals}}
23
38
  ## Goals
@@ -29,17 +44,7 @@ taskIds: [{{#each taskIds}}"{{this}}"{{#unless @last}}, {{/unless}}{{/each}}]
29
44
 
30
45
  ## Tasks
31
46
 
32
- {{#if taskIds}}
33
- {{#each taskIds}}
34
- - [ ] {{this}}
35
- {{/each}}
36
- {{else}}
37
- _No tasks assigned yet. Run `planr sprint add <taskId>` to assign tasks._
38
- {{/if}}
47
+ {{tasksSection}}
39
48
 
40
49
  ## Retrospective
41
- _Complete this section when closing the sprint with `planr sprint close`._
42
-
43
- ---
44
- _View progress: `planr sprint status`_
45
- _Close sprint: `planr sprint close`_
50
+ _Complete this section when closing the sprint with `planr sprint close {{id}}`._
@@ -45,6 +45,8 @@ export declare const ID_PREFIXES: {
45
45
  readonly adr: "ADR";
46
46
  };
47
47
  export declare const VALID_STATUSES: Partial<Record<ArtifactType, readonly string[]>>;
48
+ /** True when `status` is allowed for `type`, or when the type has no enforced vocabulary. */
49
+ export declare function isValidStatus(type: ArtifactType, status: string): boolean;
48
50
  /**
49
51
  * Spec-driven mode (third planning posture) uses a richer status lifecycle
50
52
  * because each phase corresponds to a different role transition:
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAKvD,eAAO,MAAM,eAAe,uBAAuB,CAAC;AAEpD,eAAO,MAAM,iBAAiB,WAAW,CAAC;AAC1C,eAAO,MAAM,wBAAwB,kBAAkB,CAAC;AAExD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,0BAA0B,UAAU,CAAC;AAElD,eAAO,MAAM,aAAa;;;;;;;;;;CAUhB,CAAC;AAEX,eAAO,MAAM,WAAW;;;;;;;;;CASd,CAAC;AAEX,eAAO,MAAM,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC,CAQ3E,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,mBAAmB,2GAQtB,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,wEAAwE;AACxE,eAAO,MAAM,yBAAyB,yDAA0D,CAAC;AACjG,eAAO,MAAM,wBAAwB,wDAAyD,CAAC;AAE/F,wBAAgB,eAAe,IAAI,MAAM,CAExC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAKvD,eAAO,MAAM,eAAe,uBAAuB,CAAC;AAEpD,eAAO,MAAM,iBAAiB,WAAW,CAAC;AAC1C,eAAO,MAAM,wBAAwB,kBAAkB,CAAC;AAExD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,0BAA0B,UAAU,CAAC;AAElD,eAAO,MAAM,aAAa;;;;;;;;;;CAUhB,CAAC;AAEX,eAAO,MAAM,WAAW;;;;;;;;;CASd,CAAC;AAEX,eAAO,MAAM,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC,CAQ3E,CAAC;AAEF,6FAA6F;AAC7F,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAGzE;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,mBAAmB,2GAQtB,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,wEAAwE;AACxE,eAAO,MAAM,yBAAyB,yDAA0D,CAAC;AACjG,eAAO,MAAM,wBAAwB,wDAAyD,CAAC;AAE/F,wBAAgB,eAAe,IAAI,MAAM,CAExC"}
@@ -54,8 +54,13 @@ export const VALID_STATUSES = {
54
54
  task: ['pending', 'in-progress', 'done'],
55
55
  quick: ['pending', 'in-progress', 'done'],
56
56
  backlog: ['open', 'closed', 'promoted'],
57
- sprint: ['planning', 'active', 'completed'],
57
+ sprint: ['planned', 'active', 'closed'],
58
58
  };
59
+ /** True when `status` is allowed for `type`, or when the type has no enforced vocabulary. */
60
+ export function isValidStatus(type, status) {
61
+ const allowed = VALID_STATUSES[type];
62
+ return !allowed || allowed.includes(status);
63
+ }
59
64
  /**
60
65
  * Spec-driven mode (third planning posture) uses a richer status lifecycle
61
66
  * because each phase corresponds to a different role transition:
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,MAAM,CAAC,MAAM,eAAe,GAAG,oBAAoB,CAAC;AAEpD,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAC1C,MAAM,CAAC,MAAM,wBAAwB,GAAG,eAAe,CAAC;AAExD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAElD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,YAAY;CAChB,CAAC;AAEX,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,MAAM;IACf,KAAK,EAAE,IAAI;IACX,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;CACF,CAAC;AAEX,MAAM,CAAC,MAAM,cAAc,GAAqD;IAC9E,IAAI,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC;IAC5C,KAAK,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC;IACxC,KAAK,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC;IACvC,MAAM,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,CAAC;CAC5C,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,SAAS;IACT,SAAS;IACT,aAAa;IACb,YAAY;IACZ,oBAAoB;IACpB,aAAa;IACb,MAAM;CACE,CAAC;AAIX,wEAAwE;AACxE,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;AACjG,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;AAE/F,MAAM,UAAU,eAAe;IAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,MAAM,CAAC,MAAM,eAAe,GAAG,oBAAoB,CAAC;AAEpD,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAC1C,MAAM,CAAC,MAAM,wBAAwB,GAAG,eAAe,CAAC;AAExD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAElD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,YAAY;CAChB,CAAC;AAEX,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,MAAM;IACf,KAAK,EAAE,IAAI;IACX,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;CACF,CAAC;AAEX,MAAM,CAAC,MAAM,cAAc,GAAqD;IAC9E,IAAI,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC;IAC5C,KAAK,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC;IACxC,KAAK,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC;IACvC,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC;CACxC,CAAC;AAEF,6FAA6F;AAC7F,MAAM,UAAU,aAAa,CAAC,IAAkB,EAAE,MAAc;IAC9D,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,SAAS;IACT,SAAS;IACT,aAAa;IACb,YAAY;IACZ,oBAAoB;IACpB,aAAa;IACb,MAAM;CACE,CAAC;AAIX,wEAAwE;AACxE,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;AACjG,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;AAE/F,MAAM,UAAU,eAAe;IAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;AACpD,CAAC"}
package/docs/CLI.md CHANGED
@@ -144,7 +144,7 @@ Every planning type provides `list`, `show <id>`, and `update <id>`. Creation ac
144
144
  | Task | A title and exactly one of `--story <id>` or `--feature <id>` |
145
145
  | Quick task | A description or input file; optional `--epic <id>` |
146
146
  | Backlog item | A description; optional priority, tags, and epic |
147
- | Sprint | A title; duration defaults to `2w` |
147
+ | Sprint | A title; duration defaults to `2w`; JSON may add `status` (`planned`/`active`), `startDate`, `endDate`, `releaseCut`, `capacityDays`, `refinedAt` and `batches` |
148
148
 
149
149
  Use deterministic JSON when an agent or integration supplies complete fields:
150
150
 
@@ -156,6 +156,28 @@ planr task create --data - --json < task.json
156
156
 
157
157
  `planr update <ids...>` supports bulk status changes. `--all-done` and `--all-pending` also update canonical task checkboxes for task and quick-task artifacts. Use each command's `--help` output for its exact options.
158
158
 
159
+ ### `planr sprint` refinement
160
+
161
+ The `planr:sprint` skill judges every open item and selects a sprint; these commands store what it decides. Sprint statuses are `planned`, `active` and `closed`.
162
+
163
+ ```bash
164
+ planr sprint create --data sprint.json --json # name, releaseCut, capacityDays, optional batches
165
+ planr sprint refinement SPRINT-004 --data refinement.json # validate, store, fill the sprint body
166
+ planr sprint diff SPRINT-003 SPRINT-004 # what moved between two runs
167
+ planr sprint apply SPRINT-004 --dry-run # preview the status write-back
168
+ planr sprint apply SPRINT-004 --yes --commit # write it as one commit
169
+ planr sprint close SPRINT-004 # record leftovers for the next run
170
+ ```
171
+
172
+ | Command | Behaviour |
173
+ | --- | --- |
174
+ | `refinement <id> --data <path\|->` | Validates the refinement document (`schemaVersion: 1`, `sprintId`, `refinedAt`, `inputs`, `items[]`, `buckets{inProgress, planNext, blocked, closeOrDemote}`, `batches[]`, `refuted[]`), writes `.planr/sprints/<id>/refinement.json` and `refinement.md`, and rewrites the sprint's `## Tasks` as one checkbox per in-progress item grouped by batch (`- [ ] **BL-012** title · effort · [view](../backlog/…)`), keeping boxes that were already checked. Sets `taskIds`, `refinedAt`, `capacityDays` and `releaseCut` on the sprint. Refuses closed sprints. |
175
+ | `diff <from> <to>` | Compares two stored documents: bucket moves with score changes, added and removed items. |
176
+ | `apply <id>` | Writes each item's `targetStatus` and `targetPriority` (backlog only) and the `blockedBy` note of blocked items to the artifacts. Statuses must belong to the type's vocabulary unless `--force`. Needs `--yes` (or `--dry-run`); with `--commit` the touched files are committed as `chore(planr): refine backlog for <id>`. |
177
+ | `close <id>` | Sets `status: closed` and `closedAt`, and records `leftovers[]` (unchecked or unfinished `taskIds`) in `refinement.json` for the next run. |
178
+
179
+ Every command accepts `--json`. Failures use bounded codes such as `E_SPRINT_NOT_FOUND`, `E_SPRINT_REFINEMENT_INVALID` (with `$`-rooted diagnostics), `E_SPRINT_REFINEMENT_MISSING`, `E_SPRINT_APPLY_CONFIRMATION_REQUIRED`, `E_SPRINT_APPLY_STATUS_INVALID`, `E_SPRINT_CLOSED` and `E_SPRINT_ALREADY_CLOSED`. `planr status` lists the active sprint first with its release cut and checkbox progress, and `planr status --json` exposes it as `sprint`.
180
+
159
181
 
160
182
  ### `planr spec`
161
183
 
@@ -1182,7 +1204,9 @@ planr backlog update BL-001 --status closed
1182
1204
  planr sprint create "Sprint 1" --duration 2w
1183
1205
  planr sprint list
1184
1206
  planr sprint show SPRINT-001
1185
- planr sprint update SPRINT-001 --status closed
1207
+ planr sprint refinement SPRINT-001 --data refinement.json
1208
+ planr sprint apply SPRINT-001 --yes --commit
1209
+ planr sprint close SPRINT-001
1186
1210
 
1187
1211
  planr sync
1188
1212
  planr status
@@ -2,7 +2,7 @@
2
2
  "kind": "host-native-adapter-registry",
3
3
  "schemaVersion": "1.0.0",
4
4
  "protocolVersion": "1.8.0",
5
- "pipelineVersion": "0.45.1",
5
+ "pipelineVersion": "0.45.2",
6
6
  "pluginVersion": "0.1.0",
7
7
  "adapters": [
8
8
  {
@@ -422,6 +422,22 @@
422
422
  ],
423
423
  "deferTo": []
424
424
  },
425
+ {
426
+ "id": "planr-sprint",
427
+ "name": "sprint",
428
+ "family": "planning",
429
+ "description": "Refine every open backlog item against the code and the calendar, refute the picks, and select a sprint that fits capacity and the release cut. Use before a cut or sprint; not for decomposing one specification or reporting status.",
430
+ "useWhen": [
431
+ "Refine the open backlog and select what fits the next sprint or release cut",
432
+ "Judge which backlog items are stale, blocked, or ready and fit the sprint to capacity",
433
+ "Decide which open backlog items move to in progress before the release cut and which are dead"
434
+ ],
435
+ "notFor": [
436
+ "Decompose one specification into stories and tasks",
437
+ "Report delivery status without judging or selecting work"
438
+ ],
439
+ "deferTo": []
440
+ },
425
441
  {
426
442
  "id": "planr-status",
427
443
  "name": "status",
@@ -3,7 +3,7 @@
3
3
  "schemaVersion": "1.0.0",
4
4
  "protocolVersion": "1.8.0",
5
5
  "host": "claude-code",
6
- "skillCount": 26,
6
+ "skillCount": 27,
7
7
  "roleCount": 9,
8
8
  "files": [
9
9
  {
@@ -464,7 +464,7 @@
464
464
  },
465
465
  {
466
466
  "path": "skills/design-loop/scripts/runtime/packages/protocol/package.json",
467
- "digest": "sha256:9a11f3b5e52bb2bd3f2310a9cbc1276b62b1b08e401279769228d5bfd8567995"
467
+ "digest": "sha256:d3a009b9b304680df08d3ec30bccea5b0baf7444fee4f65e90708125535d8773"
468
468
  },
469
469
  {
470
470
  "path": "skills/design-loop/scripts/runtime/packages/protocol/registry/artifact-theme.json",
@@ -632,7 +632,7 @@
632
632
  },
633
633
  {
634
634
  "path": "skills/design-review/scripts/runtime/packages/protocol/package.json",
635
- "digest": "sha256:9a11f3b5e52bb2bd3f2310a9cbc1276b62b1b08e401279769228d5bfd8567995"
635
+ "digest": "sha256:d3a009b9b304680df08d3ec30bccea5b0baf7444fee4f65e90708125535d8773"
636
636
  },
637
637
  {
638
638
  "path": "skills/design-review/scripts/runtime/packages/protocol/registry/artifact-theme.json",
@@ -800,7 +800,7 @@
800
800
  },
801
801
  {
802
802
  "path": "skills/design/scripts/runtime/packages/protocol/package.json",
803
- "digest": "sha256:9a11f3b5e52bb2bd3f2310a9cbc1276b62b1b08e401279769228d5bfd8567995"
803
+ "digest": "sha256:d3a009b9b304680df08d3ec30bccea5b0baf7444fee4f65e90708125535d8773"
804
804
  },
805
805
  {
806
806
  "path": "skills/design/scripts/runtime/packages/protocol/registry/artifact-theme.json",
@@ -928,7 +928,7 @@
928
928
  },
929
929
  {
930
930
  "path": "skills/openplanr/SKILL.md",
931
- "digest": "sha256:0796e0cce4d8fdf6f5b8cca86ef7c96fd02150493b609d08e74bb78045fcb2dd"
931
+ "digest": "sha256:f1e2daabc532519e6e9b83e49bddae8948d234bdf1be0e858528c2d0ecf65bc5"
932
932
  },
933
933
  {
934
934
  "path": "skills/operate/openplanr.skill.json",
@@ -1028,7 +1028,7 @@
1028
1028
  },
1029
1029
  {
1030
1030
  "path": "skills/plan/scripts/runtime/packages/protocol/package.json",
1031
- "digest": "sha256:9a11f3b5e52bb2bd3f2310a9cbc1276b62b1b08e401279769228d5bfd8567995"
1031
+ "digest": "sha256:d3a009b9b304680df08d3ec30bccea5b0baf7444fee4f65e90708125535d8773"
1032
1032
  },
1033
1033
  {
1034
1034
  "path": "skills/plan/scripts/runtime/packages/protocol/registry/artifact-theme.json",
@@ -1162,6 +1162,26 @@
1162
1162
  "path": "skills/spec/SKILL.md",
1163
1163
  "digest": "sha256:a046aed2e39c309173c47f66ca9d6182ca2a7dc0d34b1a7cc04e4fae67dfeb27"
1164
1164
  },
1165
+ {
1166
+ "path": "skills/sprint/openplanr.skill.json",
1167
+ "digest": "sha256:8083ebeb2c89a73d127b99fc299e6ee4d2891b56740c4e266b52450f55a01794"
1168
+ },
1169
+ {
1170
+ "path": "skills/sprint/references/refinement-contract.md",
1171
+ "digest": "sha256:0e2e621c0aa735b756187f28310f265be6a0330c790ecf71e27c527bad13cdcd"
1172
+ },
1173
+ {
1174
+ "path": "skills/sprint/references/sprint-formats.md",
1175
+ "digest": "sha256:fc9620515dd2cfa1ecf9319c949bc491c620de9450e33f4e2ce08483023333c2"
1176
+ },
1177
+ {
1178
+ "path": "skills/sprint/schemas/refinement.schema.json",
1179
+ "digest": "sha256:591bcd9bb94bbcbae0e3494f2e7f42a7ea953c90076254c1b290fa399901b690"
1180
+ },
1181
+ {
1182
+ "path": "skills/sprint/SKILL.md",
1183
+ "digest": "sha256:8ffa44b0f3ce532cada1841ad781294c5b6c9c84c87caa9e4c8aa9f259946c9f"
1184
+ },
1165
1185
  {
1166
1186
  "path": "skills/status/openplanr.skill.json",
1167
1187
  "digest": "sha256:72b7c2e904df948b7a5e325d741db001083fe028dc1968341fc4870aefe04128"
@@ -1183,5 +1203,5 @@
1183
1203
  "digest": "sha256:53698324b62f43b672ce8fe1654c526c96fb202e313442f09c6fc1e72268677e"
1184
1204
  }
1185
1205
  ],
1186
- "contentDigest": "sha256:558c63f719ffa2fda80259fca6f072a0f51afab5e9b4a2c1dd931374bfe3ae61"
1206
+ "contentDigest": "sha256:a0cf89d83691088709f5b4b34a378713930ee04189caf1d727936f362718fcf8"
1187
1207
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openplanr/protocol",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "type": "module",
5
5
  "description": "Canonical OpenPlanr schemas, registries, typed errors, and portable contract validation",
6
6
  "license": "MIT",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openplanr/protocol",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "type": "module",
5
5
  "description": "Canonical OpenPlanr schemas, registries, typed errors, and portable contract validation",
6
6
  "license": "MIT",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openplanr/protocol",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "type": "module",
5
5
  "description": "Canonical OpenPlanr schemas, registries, typed errors, and portable contract validation",
6
6
  "license": "MIT",
@@ -27,6 +27,7 @@ Claude Code and `$planr:plan` in Codex). Do not perform the routed work here.
27
27
  | Create or check an architecture, process, sequence, or data diagram | `planr-diagram` |
28
28
  | Share, import, or export an HTML artifact review | `planr-artifact` |
29
29
  | Know what is done, pending, blocked, or next | `planr-status` |
30
+ | Refine the open backlog and select the sprint for the next release cut | `planr-sprint` |
30
31
  | See planning or Operate state in the browser | `planr-dashboard` |
31
32
  | Check artifacts for graph, status, or schema drift | `planr-sync` |
32
33
  | Judge release readiness or prepare a landing sequence | `planr-land` |
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openplanr/protocol",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "type": "module",
5
5
  "description": "Canonical OpenPlanr schemas, registries, typed errors, and portable contract validation",
6
6
  "license": "MIT",