@slope-dev/slope 1.60.0 → 1.62.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 (135) hide show
  1. package/README.md +6 -0
  2. package/dist/cli/commands/agent.js +2 -2
  3. package/dist/cli/commands/agent.js.map +1 -1
  4. package/dist/cli/commands/commit-ready.js +1 -1
  5. package/dist/cli/commands/commit-ready.js.map +1 -1
  6. package/dist/cli/commands/next.d.ts +1 -1
  7. package/dist/cli/commands/next.d.ts.map +1 -1
  8. package/dist/cli/commands/next.js +31 -2
  9. package/dist/cli/commands/next.js.map +1 -1
  10. package/dist/cli/commands/now.d.ts +3 -0
  11. package/dist/cli/commands/now.d.ts.map +1 -1
  12. package/dist/cli/commands/now.js +14 -2
  13. package/dist/cli/commands/now.js.map +1 -1
  14. package/dist/cli/commands/pr.d.ts +11 -3
  15. package/dist/cli/commands/pr.d.ts.map +1 -1
  16. package/dist/cli/commands/pr.js +81 -31
  17. package/dist/cli/commands/pr.js.map +1 -1
  18. package/dist/cli/commands/review-run.d.ts +40 -6
  19. package/dist/cli/commands/review-run.d.ts.map +1 -1
  20. package/dist/cli/commands/review-run.js +235 -105
  21. package/dist/cli/commands/review-run.js.map +1 -1
  22. package/dist/cli/commands/review-state.d.ts.map +1 -1
  23. package/dist/cli/commands/review-state.js +61 -7
  24. package/dist/cli/commands/review-state.js.map +1 -1
  25. package/dist/cli/commands/review.d.ts +9 -1
  26. package/dist/cli/commands/review.d.ts.map +1 -1
  27. package/dist/cli/commands/review.js +67 -39
  28. package/dist/cli/commands/review.js.map +1 -1
  29. package/dist/cli/commands/roadmap.d.ts.map +1 -1
  30. package/dist/cli/commands/roadmap.js +364 -5
  31. package/dist/cli/commands/roadmap.js.map +1 -1
  32. package/dist/cli/commands/sprint.d.ts.map +1 -1
  33. package/dist/cli/commands/sprint.js +353 -54
  34. package/dist/cli/commands/sprint.js.map +1 -1
  35. package/dist/cli/guards/claim-required.d.ts.map +1 -1
  36. package/dist/cli/guards/claim-required.js +19 -4
  37. package/dist/cli/guards/claim-required.js.map +1 -1
  38. package/dist/cli/guards/next-action.js +1 -1
  39. package/dist/cli/guards/next-action.js.map +1 -1
  40. package/dist/cli/guards/phase-boundary.d.ts.map +1 -1
  41. package/dist/cli/guards/phase-boundary.js +8 -2
  42. package/dist/cli/guards/phase-boundary.js.map +1 -1
  43. package/dist/cli/guards/post-push.js +2 -2
  44. package/dist/cli/guards/post-push.js.map +1 -1
  45. package/dist/cli/guards/review-tier.d.ts.map +1 -1
  46. package/dist/cli/guards/review-tier.js +2 -3
  47. package/dist/cli/guards/review-tier.js.map +1 -1
  48. package/dist/cli/guards/roadmap-edit-shipped.d.ts.map +1 -1
  49. package/dist/cli/guards/roadmap-edit-shipped.js +143 -7
  50. package/dist/cli/guards/roadmap-edit-shipped.js.map +1 -1
  51. package/dist/cli/guards/scope-drift.d.ts.map +1 -1
  52. package/dist/cli/guards/scope-drift.js +8 -2
  53. package/dist/cli/guards/scope-drift.js.map +1 -1
  54. package/dist/cli/guards/session-briefing.js +6 -2
  55. package/dist/cli/guards/session-briefing.js.map +1 -1
  56. package/dist/cli/guards/sprint-completion.d.ts.map +1 -1
  57. package/dist/cli/guards/sprint-completion.js +94 -18
  58. package/dist/cli/guards/sprint-completion.js.map +1 -1
  59. package/dist/cli/index.js +4 -2
  60. package/dist/cli/index.js.map +1 -1
  61. package/dist/cli/registry.d.ts.map +1 -1
  62. package/dist/cli/registry.js +31 -0
  63. package/dist/cli/registry.js.map +1 -1
  64. package/dist/cli/review-diff.d.ts +72 -0
  65. package/dist/cli/review-diff.d.ts.map +1 -0
  66. package/dist/cli/review-diff.js +416 -0
  67. package/dist/cli/review-diff.js.map +1 -0
  68. package/dist/cli/roadmap-source-migration.d.ts +113 -0
  69. package/dist/cli/roadmap-source-migration.d.ts.map +1 -0
  70. package/dist/cli/roadmap-source-migration.js +721 -0
  71. package/dist/cli/roadmap-source-migration.js.map +1 -0
  72. package/dist/cli/roadmap-source-store.d.ts +44 -0
  73. package/dist/cli/roadmap-source-store.d.ts.map +1 -0
  74. package/dist/cli/roadmap-source-store.js +307 -0
  75. package/dist/cli/roadmap-source-store.js.map +1 -0
  76. package/dist/cli/sprint-inference.js +1 -1
  77. package/dist/cli/sprint-inference.js.map +1 -1
  78. package/dist/cli/sprint-rollover.d.ts +102 -0
  79. package/dist/cli/sprint-rollover.d.ts.map +1 -0
  80. package/dist/cli/sprint-rollover.js +558 -0
  81. package/dist/cli/sprint-rollover.js.map +1 -0
  82. package/dist/cli/sprint-state.d.ts +72 -1
  83. package/dist/cli/sprint-state.d.ts.map +1 -1
  84. package/dist/cli/sprint-state.js +203 -5
  85. package/dist/cli/sprint-state.js.map +1 -1
  86. package/dist/cli/template-generator.d.ts.map +1 -1
  87. package/dist/cli/template-generator.js +45 -32
  88. package/dist/cli/template-generator.js.map +1 -1
  89. package/dist/cli/workflow-resync.d.ts.map +1 -1
  90. package/dist/cli/workflow-resync.js +9 -8
  91. package/dist/cli/workflow-resync.js.map +1 -1
  92. package/dist/core/briefing.d.ts.map +1 -1
  93. package/dist/core/briefing.js +254 -14
  94. package/dist/core/briefing.js.map +1 -1
  95. package/dist/core/builder.d.ts +16 -2
  96. package/dist/core/builder.d.ts.map +1 -1
  97. package/dist/core/builder.js +82 -5
  98. package/dist/core/builder.js.map +1 -1
  99. package/dist/core/index.d.ts +9 -3
  100. package/dist/core/index.d.ts.map +1 -1
  101. package/dist/core/index.js +4 -1
  102. package/dist/core/index.js.map +1 -1
  103. package/dist/core/roadmap-focus.d.ts +101 -0
  104. package/dist/core/roadmap-focus.d.ts.map +1 -0
  105. package/dist/core/roadmap-focus.js +293 -0
  106. package/dist/core/roadmap-focus.js.map +1 -0
  107. package/dist/core/roadmap-migration.d.ts +101 -0
  108. package/dist/core/roadmap-migration.d.ts.map +1 -0
  109. package/dist/core/roadmap-migration.js +630 -0
  110. package/dist/core/roadmap-migration.js.map +1 -0
  111. package/dist/core/roadmap-sources.d.ts +52 -0
  112. package/dist/core/roadmap-sources.d.ts.map +1 -0
  113. package/dist/core/roadmap-sources.js +487 -0
  114. package/dist/core/roadmap-sources.js.map +1 -0
  115. package/dist/core/roadmap.d.ts +25 -1
  116. package/dist/core/roadmap.d.ts.map +1 -1
  117. package/dist/core/roadmap.js +62 -45
  118. package/dist/core/roadmap.js.map +1 -1
  119. package/dist/core/workflow-engine.d.ts.map +1 -1
  120. package/dist/core/workflow-engine.js +17 -2
  121. package/dist/core/workflow-engine.js.map +1 -1
  122. package/dist/mcp/registry.d.ts +1 -1
  123. package/dist/mcp/registry.d.ts.map +1 -1
  124. package/dist/mcp/registry.js +5 -4
  125. package/dist/mcp/registry.js.map +1 -1
  126. package/package.json +1 -1
  127. package/src/core/workflows/sprint-standard.yaml +1 -1
  128. package/templates/claude-code/CLAUDE.md +3 -1
  129. package/templates/claude-code/commands/start-sprint.md +9 -5
  130. package/templates/claude-code/rules/sprint-checklist.md +13 -10
  131. package/templates/codex/plugins/slope/.codex-plugin/plugin.json +1 -1
  132. package/templates/codex/plugins/slope/skills/slope-sprint/SKILL.md +5 -4
  133. package/templates/cursor/rules/slope-sprint-checklist.mdc +11 -8
  134. package/templates/generic/SLOPE-CHECKLIST.md +10 -7
  135. package/templates/pi/skills/start-sprint.md +9 -5
@@ -4,8 +4,21 @@ export type SprintPhase = typeof SPRINT_PHASES[number];
4
4
  /** Gate names that must be completed before PR */
5
5
  export type GateName = 'tests' | 'code_review' | 'architect_review' | 'scorecard' | 'review_md';
6
6
  export type ReviewGateName = Extract<GateName, 'code_review' | 'architect_review'>;
7
- export type ReviewGateProvenance = 'pending' | 'self_review' | 'independent_review' | 'manual_override' | 'pr_review';
7
+ export type ReviewGateProvenance = 'pending' | 'self_review' | 'independent_review' | 'independent_review_waived' | 'manual_override' | 'pr_review';
8
8
  export type ReviewGateCompletionProvenance = Exclude<ReviewGateProvenance, 'pending'>;
9
+ export type ReviewGatePriority = 'required' | 'recommended' | 'optional' | 'unspecified';
10
+ export interface ReviewGateRequirement {
11
+ priority: ReviewGatePriority;
12
+ reason?: string;
13
+ source?: string;
14
+ updated_at?: string;
15
+ }
16
+ export interface ReviewGateRequirementInput {
17
+ gate: ReviewGateName;
18
+ priority: Exclude<ReviewGatePriority, 'unspecified'>;
19
+ reason?: string;
20
+ source?: string;
21
+ }
9
22
  export interface ReviewGateState {
10
23
  provenance: ReviewGateProvenance;
11
24
  evidence: string[];
@@ -28,17 +41,53 @@ export interface SprintState {
28
41
  phase: SprintPhase;
29
42
  gates: Record<GateName, boolean>;
30
43
  review_gates: Record<ReviewGateName, ReviewGateState>;
44
+ review_requirements?: Record<ReviewGateName, ReviewGateRequirement>;
31
45
  started_at: string;
32
46
  updated_at: string;
47
+ rollover?: SprintRolloverLineage;
33
48
  }
49
+ export interface SprintRolloverLineage {
50
+ transition_id: string;
51
+ from_sprint: number;
52
+ audit_path: string;
53
+ recorded_at: string;
54
+ forced: boolean;
55
+ reason?: string;
56
+ }
57
+ export type SprintStateLoadResult = {
58
+ status: 'missing';
59
+ } | {
60
+ status: 'corrupt';
61
+ path: string;
62
+ } | {
63
+ status: 'valid';
64
+ state: SprintState;
65
+ };
66
+ export type SprintStateInitializationResult = {
67
+ status: 'created';
68
+ state: SprintState;
69
+ } | {
70
+ status: 'existing';
71
+ state: SprintState;
72
+ } | {
73
+ status: 'corrupt';
74
+ path: string;
75
+ };
34
76
  /** Validate a user-provided sprint lifecycle phase. */
35
77
  export declare function isSprintPhase(value: string): value is SprintPhase;
36
78
  export declare function isReviewGateName(value: string): value is ReviewGateName;
37
79
  export declare function createDefaultReviewGates(): Record<ReviewGateName, ReviewGateState>;
80
+ export declare function createDefaultReviewRequirements(): Record<ReviewGateName, ReviewGateRequirement>;
38
81
  export declare function validateReviewGateCompletion(input: ReviewGateCompletionInput | undefined): string | null;
39
82
  export declare function isReviewGateSatisfied(state: SprintState, gate: ReviewGateName): boolean;
83
+ export declare function isRequiredReviewGate(state: SprintState, gate: ReviewGateName): boolean;
84
+ export declare function waivedReviewGateNames(state: SprintState): ReviewGateName[];
40
85
  /** Load sprint state from .slope/sprint-state.json. Returns null if missing or malformed. */
41
86
  export declare function loadSprintState(cwd: string): SprintState | null;
87
+ /** Strict persisted-state shape used at mutation and rollover trust boundaries. */
88
+ export declare function isValidSprintStateEvidence(value: unknown): value is SprintState;
89
+ /** Distinguish absent local state from corrupt evidence that must fail closed. */
90
+ export declare function loadSprintStateResult(cwd: string): SprintStateLoadResult;
42
91
  /** True when sprint-state represents an active workflow sprint. */
43
92
  export declare function isActiveSprintState(state: SprintState | null): state is SprintState;
44
93
  /** Save sprint state atomically via unique tmp + rename. */
@@ -47,8 +96,30 @@ export declare function saveSprintState(cwd: string, state: SprintState): void;
47
96
  export declare function mutateSprintState(cwd: string, mutator: (state: SprintState) => boolean): SprintState | null;
48
97
  /** Update a single gate and save. Returns false when a review gate lacks required provenance. */
49
98
  export declare function updateGate(cwd: string, gate: GateName, value: boolean, options?: UpdateGateOptions): boolean;
99
+ /** Create sprint state only when the tracked local slot is truly absent. */
100
+ export declare function initializeSprintState(cwd: string, state: SprintState): SprintStateInitializationResult;
101
+ export interface SprintStateReplacement {
102
+ previous: SprintState;
103
+ current: SprintState;
104
+ replaced: boolean;
105
+ }
106
+ /**
107
+ * Replace sprint state while holding the same lock used by ordinary mutations.
108
+ * The replacer may persist prerequisite audit evidence before returning the
109
+ * new state. Returning null leaves the current state untouched.
110
+ */
111
+ export declare function replaceSprintState(cwd: string, replacer: (state: SprintState) => SprintState | null): SprintStateReplacement | null;
112
+ /** Persist review priorities inferred by `slope review recommend` for the matching active sprint. */
113
+ export declare function updateReviewRequirements(cwd: string, sprint: number, inputs: ReviewGateRequirementInput[]): boolean;
50
114
  /** Update the current sprint lifecycle phase. */
51
115
  export declare function updateSprintPhase(cwd: string, phase: SprintPhase): SprintState | null;
116
+ export interface ConditionalSprintPhaseUpdate {
117
+ state: SprintState | null;
118
+ matched: boolean;
119
+ changed: boolean;
120
+ }
121
+ /** Update phase only if the state still represents the observed sprint. */
122
+ export declare function updateSprintPhaseForSprint(cwd: string, expectedSprint: number, phase: SprintPhase): ConditionalSprintPhaseUpdate;
52
123
  /** Check if all gates are true. */
53
124
  export declare function isSprintComplete(state: SprintState): boolean;
54
125
  /** Return machine-readable names of incomplete gates. */
@@ -1 +1 @@
1
- {"version":3,"file":"sprint-state.d.ts","sourceRoot":"","sources":["../../src/cli/sprint-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sprint-state.d.ts","sourceRoot":"","sources":["../../src/cli/sprint-state.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { readFileSync, existsSync, unlinkSync } from 'node:fs';
2
- import { join } from 'node:path';
2
+ import { isAbsolute, join } from 'node:path';
3
3
  import { atomicWriteFileSync, withFileLockSync } from './atomic-write.js';
4
4
  /** Sprint lifecycle phases */
5
5
  export const SPRINT_PHASES = ['planning', 'reviewing', 'implementing', 'scoring', 'complete'];
@@ -18,6 +18,7 @@ const REVIEW_GATE_PROVENANCES = [
18
18
  'pending',
19
19
  'self_review',
20
20
  'independent_review',
21
+ 'independent_review_waived',
21
22
  'manual_override',
22
23
  'pr_review',
23
24
  ];
@@ -37,6 +38,15 @@ export function createDefaultReviewGates() {
37
38
  architect_review: createDefaultReviewGateState(),
38
39
  };
39
40
  }
41
+ function createDefaultReviewGateRequirement() {
42
+ return { priority: 'unspecified' };
43
+ }
44
+ export function createDefaultReviewRequirements() {
45
+ return {
46
+ code_review: createDefaultReviewGateRequirement(),
47
+ architect_review: createDefaultReviewGateRequirement(),
48
+ };
49
+ }
40
50
  function normalizeReviewGateState(raw) {
41
51
  if (!raw || typeof raw !== 'object')
42
52
  return createDefaultReviewGateState();
@@ -63,6 +73,30 @@ function normalizeReviewGates(raw) {
63
73
  }
64
74
  return reviewGates;
65
75
  }
76
+ function normalizeReviewGateRequirement(raw) {
77
+ if (!raw || typeof raw !== 'object')
78
+ return createDefaultReviewGateRequirement();
79
+ const obj = raw;
80
+ const priority = obj.priority === 'required' || obj.priority === 'recommended' || obj.priority === 'optional'
81
+ ? obj.priority
82
+ : 'unspecified';
83
+ return {
84
+ priority,
85
+ ...(typeof obj.reason === 'string' ? { reason: obj.reason } : {}),
86
+ ...(typeof obj.source === 'string' ? { source: obj.source } : {}),
87
+ ...(typeof obj.updated_at === 'string' ? { updated_at: obj.updated_at } : {}),
88
+ };
89
+ }
90
+ function normalizeReviewRequirements(raw) {
91
+ const requirements = createDefaultReviewRequirements();
92
+ if (!raw || typeof raw !== 'object')
93
+ return requirements;
94
+ const obj = raw;
95
+ for (const gate of REVIEW_GATES) {
96
+ requirements[gate] = normalizeReviewGateRequirement(obj[gate]);
97
+ }
98
+ return requirements;
99
+ }
66
100
  function cleanEvidence(evidence) {
67
101
  return (evidence ?? []).map(item => item.trim()).filter(Boolean);
68
102
  }
@@ -88,6 +122,10 @@ export function validateReviewGateCompletion(input) {
88
122
  if (!notes)
89
123
  return 'self-review gates require --reason=<why-self-review-is-acceptable>';
90
124
  return null;
125
+ case 'independent_review_waived':
126
+ if (!notes)
127
+ return 'independent-review waivers require --reason=<why-the-downgrade-is-accepted>';
128
+ return null;
91
129
  case 'manual_override':
92
130
  if (!notes)
93
131
  return 'manual review overrides require --override=<reason>';
@@ -122,6 +160,12 @@ export function isReviewGateSatisfied(state, gate) {
122
160
  notes: review.notes,
123
161
  }) === null;
124
162
  }
163
+ export function isRequiredReviewGate(state, gate) {
164
+ return state.review_requirements?.[gate]?.priority === 'required';
165
+ }
166
+ export function waivedReviewGateNames(state) {
167
+ return REVIEW_GATES.filter(gate => state.gates[gate] === true && state.review_gates?.[gate]?.provenance === 'independent_review_waived');
168
+ }
125
169
  /** Load sprint state from .slope/sprint-state.json. Returns null if missing or malformed. */
126
170
  export function loadSprintState(cwd) {
127
171
  const statePath = join(cwd, SPRINT_STATE_FILE);
@@ -142,12 +186,85 @@ export function loadSprintState(cwd) {
142
186
  return {
143
187
  ...raw,
144
188
  review_gates: normalizeReviewGates(raw.review_gates),
189
+ review_requirements: normalizeReviewRequirements(raw.review_requirements),
145
190
  };
146
191
  }
147
192
  catch {
148
193
  return null;
149
194
  }
150
195
  }
196
+ function validOptionalString(value) {
197
+ return value === undefined || typeof value === 'string';
198
+ }
199
+ function validEvidenceTimestamp(value) {
200
+ return typeof value === 'string' && value.length > 0 && Number.isFinite(Date.parse(value));
201
+ }
202
+ /** Strict persisted-state shape used at mutation and rollover trust boundaries. */
203
+ export function isValidSprintStateEvidence(value) {
204
+ if (!value || typeof value !== 'object' || Array.isArray(value))
205
+ return false;
206
+ const state = value;
207
+ if (typeof state.sprint !== 'number' || !Number.isFinite(state.sprint) || state.sprint <= 0
208
+ || typeof state.phase !== 'string' || !isSprintPhase(state.phase)
209
+ || !validEvidenceTimestamp(state.started_at) || !validEvidenceTimestamp(state.updated_at)
210
+ || !state.gates || typeof state.gates !== 'object')
211
+ return false;
212
+ if (!ALL_GATES.every(gate => typeof state.gates?.[gate] === 'boolean'))
213
+ return false;
214
+ if (state.review_gates !== undefined) {
215
+ if (!state.review_gates || typeof state.review_gates !== 'object')
216
+ return false;
217
+ for (const gate of REVIEW_GATES) {
218
+ const review = state.review_gates[gate];
219
+ if (!review || typeof review !== 'object'
220
+ || !REVIEW_GATE_PROVENANCES.includes(review.provenance)
221
+ || !Array.isArray(review.evidence) || review.evidence.some(item => typeof item !== 'string')
222
+ || !validOptionalString(review.reviewer) || !validOptionalString(review.notes)
223
+ || (review.updated_at !== undefined && !validEvidenceTimestamp(review.updated_at)))
224
+ return false;
225
+ }
226
+ }
227
+ if (state.review_requirements !== undefined) {
228
+ if (!state.review_requirements || typeof state.review_requirements !== 'object')
229
+ return false;
230
+ for (const gate of REVIEW_GATES) {
231
+ const requirement = state.review_requirements[gate];
232
+ if (!requirement || typeof requirement !== 'object'
233
+ || !['required', 'recommended', 'optional', 'unspecified'].includes(requirement.priority)
234
+ || !validOptionalString(requirement.reason) || !validOptionalString(requirement.source)
235
+ || (requirement.updated_at !== undefined && !validEvidenceTimestamp(requirement.updated_at)))
236
+ return false;
237
+ }
238
+ }
239
+ if (state.rollover !== undefined) {
240
+ const lineage = state.rollover;
241
+ const portablePath = typeof lineage.audit_path === 'string' ? lineage.audit_path.replaceAll('\\', '/') : '';
242
+ if (typeof lineage.transition_id !== 'string' || !/^[a-f0-9]{16}$/.test(lineage.transition_id)
243
+ || typeof lineage.from_sprint !== 'number' || !Number.isFinite(lineage.from_sprint) || lineage.from_sprint <= 0
244
+ || !portablePath || isAbsolute(portablePath) || portablePath.split('/').includes('..')
245
+ || !validEvidenceTimestamp(lineage.recorded_at)
246
+ || typeof lineage.forced !== 'boolean'
247
+ || !validOptionalString(lineage.reason))
248
+ return false;
249
+ }
250
+ return true;
251
+ }
252
+ /** Distinguish absent local state from corrupt evidence that must fail closed. */
253
+ export function loadSprintStateResult(cwd) {
254
+ const path = sprintStatePath(cwd);
255
+ if (!existsSync(path))
256
+ return { status: 'missing' };
257
+ try {
258
+ const raw = JSON.parse(readFileSync(path, 'utf8'));
259
+ if (!isValidSprintStateEvidence(raw))
260
+ return { status: 'corrupt', path };
261
+ }
262
+ catch {
263
+ return { status: 'corrupt', path };
264
+ }
265
+ const state = loadSprintState(cwd);
266
+ return state ? { status: 'valid', state } : { status: 'corrupt', path };
267
+ }
151
268
  /** True when sprint-state represents an active workflow sprint. */
152
269
  export function isActiveSprintState(state) {
153
270
  return Boolean(state && state.phase !== 'complete' && !isSprintComplete(state));
@@ -155,8 +272,9 @@ export function isActiveSprintState(state) {
155
272
  function sprintStatePath(cwd) {
156
273
  return join(cwd, SPRINT_STATE_FILE);
157
274
  }
158
- function saveSprintStateUnlocked(filePath, state) {
159
- state.updated_at = new Date().toISOString();
275
+ function saveSprintStateUnlocked(filePath, state, touchUpdatedAt = true) {
276
+ if (touchUpdatedAt)
277
+ state.updated_at = new Date().toISOString();
160
278
  atomicWriteFileSync(filePath, JSON.stringify(state, null, 2) + '\n');
161
279
  }
162
280
  /** Save sprint state atomically via unique tmp + rename. */
@@ -168,9 +286,10 @@ export function saveSprintState(cwd, state) {
168
286
  export function mutateSprintState(cwd, mutator) {
169
287
  const filePath = sprintStatePath(cwd);
170
288
  return withFileLockSync(filePath, () => {
171
- const state = loadSprintState(cwd);
172
- if (!state)
289
+ const loaded = loadSprintStateResult(cwd);
290
+ if (loaded.status !== 'valid')
173
291
  return null;
292
+ const state = loaded.state;
174
293
  if (mutator(state)) {
175
294
  saveSprintStateUnlocked(filePath, state);
176
295
  }
@@ -190,6 +309,12 @@ export function updateGate(cwd, gate, value, options = {}) {
190
309
  return true;
191
310
  }
192
311
  else {
312
+ const required = current.review_requirements?.[gate]?.priority === 'required';
313
+ const provenance = options.review?.provenance;
314
+ if (required && (provenance === 'self_review' || provenance === 'manual_override'))
315
+ return false;
316
+ if (!required && provenance === 'independent_review_waived')
317
+ return false;
193
318
  const review = createReviewGateCompletionState(options.review);
194
319
  if (!review)
195
320
  return false;
@@ -205,6 +330,62 @@ export function updateGate(cwd, gate, value, options = {}) {
205
330
  });
206
331
  return Boolean(state && updated);
207
332
  }
333
+ /** Create sprint state only when the tracked local slot is truly absent. */
334
+ export function initializeSprintState(cwd, state) {
335
+ const filePath = sprintStatePath(cwd);
336
+ return withFileLockSync(filePath, () => {
337
+ const loaded = loadSprintStateResult(cwd);
338
+ if (loaded.status === 'valid')
339
+ return { status: 'existing', state: loaded.state };
340
+ if (loaded.status === 'corrupt')
341
+ return loaded;
342
+ saveSprintStateUnlocked(filePath, state, false);
343
+ return { status: 'created', state };
344
+ });
345
+ }
346
+ /**
347
+ * Replace sprint state while holding the same lock used by ordinary mutations.
348
+ * The replacer may persist prerequisite audit evidence before returning the
349
+ * new state. Returning null leaves the current state untouched.
350
+ */
351
+ export function replaceSprintState(cwd, replacer) {
352
+ const filePath = sprintStatePath(cwd);
353
+ return withFileLockSync(filePath, () => {
354
+ const loaded = loadSprintStateResult(cwd);
355
+ if (loaded.status !== 'valid') {
356
+ if (loaded.status === 'corrupt')
357
+ throw new Error(`Sprint state is corrupt and was preserved at ${filePath}.`);
358
+ return null;
359
+ }
360
+ const previous = loaded.state;
361
+ const next = replacer(previous);
362
+ if (!next)
363
+ return { previous, current: previous, replaced: false };
364
+ saveSprintStateUnlocked(filePath, next, false);
365
+ return { previous, current: next, replaced: true };
366
+ });
367
+ }
368
+ /** Persist review priorities inferred by `slope review recommend` for the matching active sprint. */
369
+ export function updateReviewRequirements(cwd, sprint, inputs) {
370
+ let updated = false;
371
+ const state = mutateSprintState(cwd, current => {
372
+ if (current.sprint !== sprint)
373
+ return false;
374
+ current.review_requirements ??= createDefaultReviewRequirements();
375
+ const now = new Date().toISOString();
376
+ for (const input of inputs) {
377
+ current.review_requirements[input.gate] = {
378
+ priority: input.priority,
379
+ ...(input.reason?.trim() ? { reason: input.reason.trim() } : {}),
380
+ source: input.source?.trim() || 'review_recommend',
381
+ updated_at: now,
382
+ };
383
+ }
384
+ updated = true;
385
+ return true;
386
+ });
387
+ return Boolean(state && updated);
388
+ }
208
389
  /** Update the current sprint lifecycle phase. */
209
390
  export function updateSprintPhase(cwd, phase) {
210
391
  return mutateSprintState(cwd, state => {
@@ -212,6 +393,22 @@ export function updateSprintPhase(cwd, phase) {
212
393
  return true;
213
394
  });
214
395
  }
396
+ /** Update phase only if the state still represents the observed sprint. */
397
+ export function updateSprintPhaseForSprint(cwd, expectedSprint, phase) {
398
+ let matched = false;
399
+ let changed = false;
400
+ const state = mutateSprintState(cwd, current => {
401
+ if (current.sprint !== expectedSprint)
402
+ return false;
403
+ matched = true;
404
+ if (current.phase === phase)
405
+ return false;
406
+ current.phase = phase;
407
+ changed = true;
408
+ return true;
409
+ });
410
+ return { state, matched, changed };
411
+ }
215
412
  /** Check if all gates are true. */
216
413
  export function isSprintComplete(state) {
217
414
  return ALL_GATES.every(g => {
@@ -243,6 +440,7 @@ export function createSprintState(sprint, phase = 'planning') {
243
440
  review_md: false,
244
441
  },
245
442
  review_gates: createDefaultReviewGates(),
443
+ review_requirements: createDefaultReviewRequirements(),
246
444
  started_at: now,
247
445
  updated_at: now,
248
446
  };
@@ -1 +1 @@
1
- {"version":3,"file":"sprint-state.js","sourceRoot":"","sources":["../../src/cli/sprint-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sprint-state.js","sourceRoot":"","sources":["../../src/cli/sprint-state.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"template-generator.d.ts","sourceRoot":"","sources":["../../src/cli/template-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAmB3D,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAyCpE;AAID,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAuErE;AAID,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAwCtE;AAID,wBAAgB,kBAAkB,IAAI,MAAM,CAyC3C;AAID,wBAAgB,2BAA2B,IAAI,MAAM,CA+BpD;AAED,wBAAgB,iCAAiC,IAAI,MAAM,CAmC1D;AAID,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CA8D9D;AAID,wBAAgB,sBAAsB,IAAI,MAAM,CAuD/C;AAID,wBAAgB,6BAA6B,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAuD3E;AAED,wBAAgB,8BAA8B,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAyC5E;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAmCjD;AAID,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,GAAE,QAAQ,GAAG,UAAqB,GAAG,MAAM,CAqD5G;AAID,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAmCtE"}
1
+ {"version":3,"file":"template-generator.d.ts","sourceRoot":"","sources":["../../src/cli/template-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAmB3D,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CA2CpE;AAID,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAyErE;AAID,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAwCtE;AAID,wBAAgB,kBAAkB,IAAI,MAAM,CAyC3C;AAID,wBAAgB,2BAA2B,IAAI,MAAM,CA+BpD;AAED,wBAAgB,iCAAiC,IAAI,MAAM,CAmC1D;AAID,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAgE9D;AAID,wBAAgB,sBAAsB,IAAI,MAAM,CAuD/C;AAID,wBAAgB,6BAA6B,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CA0D3E;AAED,wBAAgB,8BAA8B,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAyC5E;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAmCjD;AAID,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,GAAE,QAAQ,GAAG,UAAqB,GAAG,MAAM,CAuD5G;AAID,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAqCtE"}