@zigrivers/scaffold 3.18.1 → 3.20.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 (99) hide show
  1. package/dist/cli/commands/adopt.d.ts.map +1 -1
  2. package/dist/cli/commands/adopt.js +6 -2
  3. package/dist/cli/commands/adopt.js.map +1 -1
  4. package/dist/cli/commands/complete.d.ts.map +1 -1
  5. package/dist/cli/commands/complete.js +1 -1
  6. package/dist/cli/commands/complete.js.map +1 -1
  7. package/dist/cli/commands/dashboard.d.ts.map +1 -1
  8. package/dist/cli/commands/dashboard.js +104 -26
  9. package/dist/cli/commands/dashboard.js.map +1 -1
  10. package/dist/cli/commands/dashboard.test.js +210 -0
  11. package/dist/cli/commands/dashboard.test.js.map +1 -1
  12. package/dist/cli/commands/info.d.ts.map +1 -1
  13. package/dist/cli/commands/info.js +2 -2
  14. package/dist/cli/commands/info.js.map +1 -1
  15. package/dist/cli/commands/next.d.ts.map +1 -1
  16. package/dist/cli/commands/next.js +7 -2
  17. package/dist/cli/commands/next.js.map +1 -1
  18. package/dist/cli/commands/next.test.js +95 -0
  19. package/dist/cli/commands/next.test.js.map +1 -1
  20. package/dist/cli/commands/reset.d.ts.map +1 -1
  21. package/dist/cli/commands/reset.js +1 -1
  22. package/dist/cli/commands/reset.js.map +1 -1
  23. package/dist/cli/commands/rework.d.ts.map +1 -1
  24. package/dist/cli/commands/rework.js +6 -1
  25. package/dist/cli/commands/rework.js.map +1 -1
  26. package/dist/cli/commands/run.d.ts.map +1 -1
  27. package/dist/cli/commands/run.js +1 -1
  28. package/dist/cli/commands/run.js.map +1 -1
  29. package/dist/cli/commands/skip.d.ts.map +1 -1
  30. package/dist/cli/commands/skip.js +1 -1
  31. package/dist/cli/commands/skip.js.map +1 -1
  32. package/dist/cli/commands/status.d.ts.map +1 -1
  33. package/dist/cli/commands/status.js +14 -5
  34. package/dist/cli/commands/status.js.map +1 -1
  35. package/dist/cli/commands/status.test.js +60 -0
  36. package/dist/cli/commands/status.test.js.map +1 -1
  37. package/dist/core/pipeline/graph-hash.d.ts +18 -0
  38. package/dist/core/pipeline/graph-hash.d.ts.map +1 -0
  39. package/dist/core/pipeline/graph-hash.js +35 -0
  40. package/dist/core/pipeline/graph-hash.js.map +1 -0
  41. package/dist/core/pipeline/graph-hash.test.d.ts +2 -0
  42. package/dist/core/pipeline/graph-hash.test.d.ts.map +1 -0
  43. package/dist/core/pipeline/graph-hash.test.js +107 -0
  44. package/dist/core/pipeline/graph-hash.test.js.map +1 -0
  45. package/dist/core/pipeline/read-eligible.d.ts +20 -0
  46. package/dist/core/pipeline/read-eligible.d.ts.map +1 -0
  47. package/dist/core/pipeline/read-eligible.js +28 -0
  48. package/dist/core/pipeline/read-eligible.js.map +1 -0
  49. package/dist/core/pipeline/read-eligible.test.d.ts +2 -0
  50. package/dist/core/pipeline/read-eligible.test.d.ts.map +1 -0
  51. package/dist/core/pipeline/read-eligible.test.js +99 -0
  52. package/dist/core/pipeline/read-eligible.test.js.map +1 -0
  53. package/dist/core/pipeline/resolver.d.ts.map +1 -1
  54. package/dist/core/pipeline/resolver.js +24 -1
  55. package/dist/core/pipeline/resolver.js.map +1 -1
  56. package/dist/core/pipeline/resolver.test.js +86 -0
  57. package/dist/core/pipeline/resolver.test.js.map +1 -1
  58. package/dist/core/pipeline/types.d.ts +5 -0
  59. package/dist/core/pipeline/types.d.ts.map +1 -1
  60. package/dist/dashboard/generator.d.ts +57 -0
  61. package/dist/dashboard/generator.d.ts.map +1 -1
  62. package/dist/dashboard/generator.js +125 -1
  63. package/dist/dashboard/generator.js.map +1 -1
  64. package/dist/dashboard/multi-service.test.d.ts +2 -0
  65. package/dist/dashboard/multi-service.test.d.ts.map +1 -0
  66. package/dist/dashboard/multi-service.test.js +535 -0
  67. package/dist/dashboard/multi-service.test.js.map +1 -0
  68. package/dist/dashboard/template.d.ts +2 -1
  69. package/dist/dashboard/template.d.ts.map +1 -1
  70. package/dist/dashboard/template.js +400 -0
  71. package/dist/dashboard/template.js.map +1 -1
  72. package/dist/e2e/eligible-cache.test.d.ts +2 -0
  73. package/dist/e2e/eligible-cache.test.d.ts.map +1 -0
  74. package/dist/e2e/eligible-cache.test.js +104 -0
  75. package/dist/e2e/eligible-cache.test.js.map +1 -0
  76. package/dist/state/root-counter-reader.d.ts +11 -0
  77. package/dist/state/root-counter-reader.d.ts.map +1 -0
  78. package/dist/state/root-counter-reader.js +25 -0
  79. package/dist/state/root-counter-reader.js.map +1 -0
  80. package/dist/state/root-counter-reader.test.d.ts +2 -0
  81. package/dist/state/root-counter-reader.test.d.ts.map +1 -0
  82. package/dist/state/root-counter-reader.test.js +43 -0
  83. package/dist/state/root-counter-reader.test.js.map +1 -0
  84. package/dist/state/state-manager.d.ts +23 -2
  85. package/dist/state/state-manager.d.ts.map +1 -1
  86. package/dist/state/state-manager.js +57 -5
  87. package/dist/state/state-manager.js.map +1 -1
  88. package/dist/state/state-manager.test.js +246 -1
  89. package/dist/state/state-manager.test.js.map +1 -1
  90. package/dist/types/state.d.ts +19 -0
  91. package/dist/types/state.d.ts.map +1 -1
  92. package/dist/types/state.test.d.ts +2 -0
  93. package/dist/types/state.test.d.ts.map +1 -0
  94. package/dist/types/state.test.js +40 -0
  95. package/dist/types/state.test.js.map +1 -0
  96. package/dist/wizard/wizard.d.ts.map +1 -1
  97. package/dist/wizard/wizard.js +3 -1
  98. package/dist/wizard/wizard.js.map +1 -1
  99. package/package.json +1 -1
@@ -6,13 +6,34 @@ export declare class StateManager {
6
6
  private computeEligible;
7
7
  private configProvider?;
8
8
  private globalSteps?;
9
+ /**
10
+ * Pipeline-graph hash for the manager's scope. If omitted, saveState writes
11
+ * `next_eligible_hash: undefined`, which consumers treat as invalid cache
12
+ * (live recompute). Legacy-safe default.
13
+ */
14
+ private pipelineHash?;
9
15
  private statePath;
10
16
  private pathResolver;
11
- constructor(projectRoot: string, computeEligible: (steps: Record<string, StepStateEntry>) => string[], configProvider?: (() => {
17
+ /**
18
+ * Captured during service-mode loadState. Used by saveState to stamp
19
+ * next_eligible_root_counter TOCTOU-safely (spec §3). `undefined` = never
20
+ * loaded; `null` = loaded but root file had no save_counter (legacy).
21
+ */
22
+ private loadedRootCounter;
23
+ constructor(projectRoot: string, computeEligible: (steps: Record<string, StepStateEntry>, options?: {
24
+ scope?: 'global' | 'service';
25
+ globalSteps?: Set<string>;
26
+ }) => string[], configProvider?: (() => {
12
27
  project?: {
13
28
  services?: unknown[];
14
29
  };
15
- } | undefined) | undefined, pathResolver?: StatePathResolver, globalSteps?: Set<string> | undefined);
30
+ } | undefined) | undefined, pathResolver?: StatePathResolver, globalSteps?: Set<string> | undefined,
31
+ /**
32
+ * Pipeline-graph hash for the manager's scope. If omitted, saveState writes
33
+ * `next_eligible_hash: undefined`, which consumers treat as invalid cache
34
+ * (live recompute). Legacy-safe default.
35
+ */
36
+ pipelineHash?: string | undefined);
16
37
  /** Load and validate state.json from disk. Throws ScaffoldError on schema mismatch. */
17
38
  loadState(): PipelineState;
18
39
  /** Atomically persist state to disk (write tmp + rename). */
@@ -1 +1 @@
1
- {"version":3,"file":"state-manager.d.ts","sourceRoot":"","sources":["../../src/state/state-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAChH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAKtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAK5D,qBAAa,YAAY;IAKrB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,cAAc,CAAC;IAEvB,OAAO,CAAC,WAAW,CAAC;IARtB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,YAAY,CAAmB;gBAG7B,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,KAAK,MAAM,EAAE,EACpE,cAAc,CAAC,GAAE,MAAM;QAAE,OAAO,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAA;SAAE,CAAA;KAAE,GAAG,SAAS,aAAA,EACjF,YAAY,CAAC,EAAE,iBAAiB,EACxB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,YAAA;IAMnC,uFAAuF;IACvF,SAAS,IAAI,aAAa;IAmD1B,6DAA6D;IAC7D,SAAS,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAerC,0EAA0E;IAC1E,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAoBhD,uEAAuE;IACvE,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI;IAoB5F,4DAA4D;IAC5D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAUlE,uEAAuE;IACvE,eAAe,IAAI,IAAI;IAMvB,6EAA6E;IAC7E,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAKnD;;;;;;;OAOG;IACH,qBAAqB,CACnB,aAAa,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,GAC3E,OAAO;IAwBV;;;OAGG;IACH,eAAe,CAAC,OAAO,EAAE;QACvB,YAAY,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;QACzD,eAAe,EAAE,MAAM,CAAA;QACvB,WAAW,EAAE,MAAM,CAAA;QACnB,QAAQ,EAAE,YAAY,GAAG,YAAY,GAAG,cAAc,CAAA;QAGtD,MAAM,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE;gBAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAA;aAAE,CAAA;SAAE,CAAA;KAChD,GAAG,IAAI;IA8BR;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CACtB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,iBAAiB,EAC/B,cAAc,CAAC,EAAE,MAAM;QAAE,OAAO,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAA;SAAE,CAAA;KAAE,GAAG,SAAS,GACxE,aAAa;CAmCjB;AAGD,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAA"}
1
+ {"version":3,"file":"state-manager.d.ts","sourceRoot":"","sources":["../../src/state/state-manager.ts"],"names":[],"mappings":"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"}
@@ -10,13 +10,27 @@ export class StateManager {
10
10
  computeEligible;
11
11
  configProvider;
12
12
  globalSteps;
13
+ pipelineHash;
13
14
  statePath;
14
15
  pathResolver;
15
- constructor(projectRoot, computeEligible, configProvider, pathResolver, globalSteps) {
16
+ /**
17
+ * Captured during service-mode loadState. Used by saveState to stamp
18
+ * next_eligible_root_counter TOCTOU-safely (spec §3). `undefined` = never
19
+ * loaded; `null` = loaded but root file had no save_counter (legacy).
20
+ */
21
+ loadedRootCounter = undefined;
22
+ constructor(projectRoot, computeEligible, configProvider, pathResolver, globalSteps,
23
+ /**
24
+ * Pipeline-graph hash for the manager's scope. If omitted, saveState writes
25
+ * `next_eligible_hash: undefined`, which consumers treat as invalid cache
26
+ * (live recompute). Legacy-safe default.
27
+ */
28
+ pipelineHash) {
16
29
  this.projectRoot = projectRoot;
17
30
  this.computeEligible = computeEligible;
18
31
  this.configProvider = configProvider;
19
32
  this.globalSteps = globalSteps;
33
+ this.pipelineHash = pipelineHash;
20
34
  this.pathResolver = pathResolver ?? new StatePathResolver(projectRoot);
21
35
  this.statePath = this.pathResolver.statePath;
22
36
  }
@@ -62,20 +76,58 @@ export class StateManager {
62
76
  const globalState = globalParsed;
63
77
  // Merge: global steps as base, service steps override
64
78
  state.steps = { ...globalState.steps, ...state.steps };
79
+ // Capture root's save_counter at the SAME read moment (TOCTOU-safe, spec §3)
80
+ this.loadedRootCounter =
81
+ typeof globalParsed['save_counter'] === 'number'
82
+ ? globalParsed['save_counter']
83
+ : null;
84
+ }
85
+ else {
86
+ // Root state file missing — treat as legacy (null counter)
87
+ this.loadedRootCounter = null;
65
88
  }
66
89
  }
67
90
  return state;
68
91
  }
69
92
  /** Atomically persist state to disk (write tmp + rename). */
70
93
  saveState(state) {
71
- state.next_eligible = this.computeEligible(state.steps);
94
+ const isService = this.pathResolver.isServiceScoped && this.globalSteps;
95
+ const scopeOptions = isService
96
+ ? { scope: 'service', globalSteps: this.globalSteps }
97
+ : undefined;
98
+ // FIXES ORIGINAL P0: compute with proper scope so service state only caches
99
+ // service-eligible steps.
100
+ state.next_eligible = this.computeEligible(state.steps, scopeOptions);
101
+ state.next_eligible_hash = this.pipelineHash;
102
+ if (isService) {
103
+ // Cross-file invalidation stamp: capture root counter at load time,
104
+ // reuse at save time (TOCTOU-safe per spec §3). Only stamp when a concrete
105
+ // counter value was captured; under strict `exactOptionalPropertyTypes`,
106
+ // omitting the key (via delete) is safer than assigning `undefined`.
107
+ if (typeof this.loadedRootCounter === 'number') {
108
+ state.next_eligible_root_counter = this.loadedRootCounter;
109
+ }
110
+ else {
111
+ delete state.next_eligible_root_counter;
112
+ }
113
+ // Spec §1 exclusivity: service saves must NEVER write save_counter on
114
+ // their own state. Strip any leftover (e.g. from a previously-polluted
115
+ // file) before persisting.
116
+ delete state.save_counter;
117
+ }
118
+ else {
119
+ // Root state: bump the monotonic counter.
120
+ state.save_counter = (state.save_counter ?? 0) + 1;
121
+ // Spec §1 exclusivity: root state doesn't carry next_eligible_root_counter.
122
+ delete state.next_eligible_root_counter;
123
+ }
124
+ // Existing global-step stripping for service-mode persisted steps
72
125
  let stateToWrite = state;
73
- if (this.pathResolver.isServiceScoped && this.globalSteps) {
126
+ if (isService) {
74
127
  const filteredSteps = {};
75
128
  for (const [name, entry] of Object.entries(state.steps)) {
76
- if (!this.globalSteps.has(name)) {
129
+ if (!this.globalSteps.has(name))
77
130
  filteredSteps[name] = entry;
78
- }
79
131
  }
80
132
  stateToWrite = { ...state, steps: filteredSteps };
81
133
  }
@@ -1 +1 @@
1
- {"version":3,"file":"state-manager.js","sourceRoot":"","sources":["../../src/state/state-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state-manager.js","sourceRoot":"","sources":["../../src/state/state-manager.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import fs from 'node:fs';
2
2
  import os from 'node:os';
3
3
  import path from 'node:path';
4
4
  import crypto from 'node:crypto';
5
- import { describe, it, expect, afterEach } from 'vitest';
5
+ import { describe, it, expect, afterEach, beforeEach, vi } from 'vitest';
6
6
  import { StateManager } from './state-manager.js';
7
7
  import { StatePathResolver } from './state-path-resolver.js';
8
8
  const tmpDirs = [];
@@ -594,5 +594,250 @@ describe('StateManager', () => {
594
594
  expect(state.steps['testing-strategy']).toBeUndefined();
595
595
  });
596
596
  });
597
+ describe('StateManager — pipelineHash + loadedRootCounter (Eligible-Cache v2)', () => {
598
+ it('constructor accepts optional pipelineHash parameter', () => {
599
+ const sm = new StateManager('/fake/project', (_steps, _opts) => [], () => undefined, new StatePathResolver('/fake/project'), undefined, 'test-hash-abc');
600
+ expect(sm).toBeDefined();
601
+ });
602
+ it('service-mode loadState captures root save_counter into loadedRootCounter', () => {
603
+ const tmpRoot = fs.mkdtempSync(path.join(os.tmpdir(), 'sm-capture-'));
604
+ try {
605
+ fs.mkdirSync(path.join(tmpRoot, '.scaffold', 'services', 'api'), { recursive: true });
606
+ fs.writeFileSync(path.join(tmpRoot, '.scaffold', 'state.json'), JSON.stringify({
607
+ 'schema-version': 3,
608
+ 'scaffold-version': '1.0.0',
609
+ init_methodology: 'deep',
610
+ config_methodology: 'deep',
611
+ 'init-mode': 'greenfield',
612
+ created: '2026-04-20T00:00:00.000Z',
613
+ in_progress: null,
614
+ steps: {},
615
+ next_eligible: [],
616
+ 'extra-steps': [],
617
+ save_counter: 7,
618
+ }));
619
+ fs.writeFileSync(path.join(tmpRoot, '.scaffold', 'services', 'api', 'state.json'), JSON.stringify({
620
+ 'schema-version': 3,
621
+ 'scaffold-version': '1.0.0',
622
+ init_methodology: 'deep',
623
+ config_methodology: 'deep',
624
+ 'init-mode': 'greenfield',
625
+ created: '2026-04-20T00:00:00.000Z',
626
+ in_progress: null,
627
+ steps: {},
628
+ next_eligible: [],
629
+ 'extra-steps': [],
630
+ }));
631
+ const sm = new StateManager(tmpRoot, (_s, _o) => [], () => undefined, new StatePathResolver(tmpRoot, 'api'), new Set(), 'test-hash');
632
+ sm.loadState();
633
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
634
+ expect(sm.loadedRootCounter).toBe(7);
635
+ }
636
+ finally {
637
+ fs.rmSync(tmpRoot, { recursive: true, force: true });
638
+ }
639
+ });
640
+ it('service-mode loadState sets loadedRootCounter to null when root is missing save_counter', () => {
641
+ const tmpRoot = fs.mkdtempSync(path.join(os.tmpdir(), 'sm-capture-null-'));
642
+ try {
643
+ fs.mkdirSync(path.join(tmpRoot, '.scaffold', 'services', 'api'), { recursive: true });
644
+ fs.writeFileSync(path.join(tmpRoot, '.scaffold', 'state.json'), JSON.stringify({
645
+ 'schema-version': 3,
646
+ 'scaffold-version': '1.0.0',
647
+ init_methodology: 'deep',
648
+ config_methodology: 'deep',
649
+ 'init-mode': 'greenfield',
650
+ created: '2026-04-20T00:00:00.000Z',
651
+ in_progress: null,
652
+ steps: {},
653
+ next_eligible: [],
654
+ 'extra-steps': [],
655
+ }));
656
+ fs.writeFileSync(path.join(tmpRoot, '.scaffold', 'services', 'api', 'state.json'), JSON.stringify({
657
+ 'schema-version': 3,
658
+ 'scaffold-version': '1.0.0',
659
+ init_methodology: 'deep',
660
+ config_methodology: 'deep',
661
+ 'init-mode': 'greenfield',
662
+ created: '2026-04-20T00:00:00.000Z',
663
+ in_progress: null,
664
+ steps: {},
665
+ next_eligible: [],
666
+ 'extra-steps': [],
667
+ }));
668
+ const sm = new StateManager(tmpRoot, (_s, _o) => [], () => undefined, new StatePathResolver(tmpRoot, 'api'), new Set(), 'test-hash');
669
+ sm.loadState();
670
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
671
+ expect(sm.loadedRootCounter).toBeNull();
672
+ }
673
+ finally {
674
+ fs.rmSync(tmpRoot, { recursive: true, force: true });
675
+ }
676
+ });
677
+ });
678
+ });
679
+ describe('StateManager.saveState — scope-correct eligibility + cache counters', () => {
680
+ let tmpRoot;
681
+ beforeEach(() => {
682
+ tmpRoot = fs.mkdtempSync(path.join(os.tmpdir(), 'sm-save-'));
683
+ fs.mkdirSync(path.join(tmpRoot, '.scaffold'), { recursive: true });
684
+ });
685
+ afterEach(() => {
686
+ fs.rmSync(tmpRoot, { recursive: true, force: true });
687
+ });
688
+ it('root-mode saveState bumps save_counter + stamps next_eligible_hash', () => {
689
+ const computeEligible = vi.fn(() => ['a', 'b']);
690
+ const sm = new StateManager(tmpRoot, computeEligible, () => undefined, new StatePathResolver(tmpRoot), undefined, 'pipeline-hash-v1');
691
+ const state = {
692
+ 'schema-version': 3,
693
+ 'scaffold-version': '1.0.0',
694
+ init_methodology: 'deep',
695
+ config_methodology: 'deep',
696
+ 'init-mode': 'greenfield',
697
+ created: '2026-04-20T00:00:00.000Z',
698
+ in_progress: null,
699
+ steps: {},
700
+ next_eligible: [],
701
+ 'extra-steps': [],
702
+ };
703
+ sm.saveState(state);
704
+ const written = JSON.parse(fs.readFileSync(path.join(tmpRoot, '.scaffold', 'state.json'), 'utf8'));
705
+ expect(written.save_counter).toBe(1);
706
+ expect(written.next_eligible_hash).toBe('pipeline-hash-v1');
707
+ expect(written.next_eligible).toEqual(['a', 'b']);
708
+ expect(written.next_eligible_root_counter).toBeUndefined(); // root state — no root-counter stamp
709
+ });
710
+ it('root-mode saveState increments save_counter on each save (monotonic)', () => {
711
+ const sm = new StateManager(tmpRoot, () => [], () => undefined, new StatePathResolver(tmpRoot), undefined, 'hash');
712
+ const state = {
713
+ 'schema-version': 3,
714
+ 'scaffold-version': '1.0.0',
715
+ init_methodology: 'deep',
716
+ config_methodology: 'deep',
717
+ 'init-mode': 'greenfield',
718
+ created: '2026-04-20T00:00:00.000Z',
719
+ in_progress: null,
720
+ steps: {},
721
+ next_eligible: [],
722
+ 'extra-steps': [],
723
+ };
724
+ sm.saveState(state);
725
+ sm.saveState(state);
726
+ sm.saveState(state);
727
+ const written = JSON.parse(fs.readFileSync(path.join(tmpRoot, '.scaffold', 'state.json'), 'utf8'));
728
+ expect(written.save_counter).toBe(3);
729
+ });
730
+ it('service-mode saveState passes {scope: "service", globalSteps} to computeEligible', () => {
731
+ fs.mkdirSync(path.join(tmpRoot, '.scaffold', 'services', 'api'), { recursive: true });
732
+ fs.writeFileSync(path.join(tmpRoot, '.scaffold', 'state.json'), JSON.stringify({
733
+ 'schema-version': 3, 'scaffold-version': '1.0.0',
734
+ init_methodology: 'deep', config_methodology: 'deep',
735
+ 'init-mode': 'greenfield', created: '2026-04-20T00:00:00.000Z',
736
+ in_progress: null, steps: {}, next_eligible: [], 'extra-steps': [],
737
+ save_counter: 10,
738
+ }));
739
+ fs.writeFileSync(path.join(tmpRoot, '.scaffold', 'services', 'api', 'state.json'), JSON.stringify({
740
+ 'schema-version': 3, 'scaffold-version': '1.0.0',
741
+ init_methodology: 'deep', config_methodology: 'deep',
742
+ 'init-mode': 'greenfield', created: '2026-04-20T00:00:00.000Z',
743
+ in_progress: null, steps: {}, next_eligible: [], 'extra-steps': [],
744
+ }));
745
+ const globalSteps = new Set(['global-a']);
746
+ const computeEligible = vi.fn((_steps, _opts) => ['svc-b']);
747
+ const sm = new StateManager(tmpRoot, computeEligible, () => undefined, new StatePathResolver(tmpRoot, 'api'), globalSteps, 'svc-hash');
748
+ sm.loadState(); // populate loadedRootCounter
749
+ sm.saveState({
750
+ 'schema-version': 3, 'scaffold-version': '1.0.0',
751
+ init_methodology: 'deep', config_methodology: 'deep',
752
+ 'init-mode': 'greenfield', created: '2026-04-20T00:00:00.000Z',
753
+ in_progress: null, steps: { 'svc-a': { status: 'pending', source: 'pipeline', produces: [] } },
754
+ next_eligible: [], 'extra-steps': [],
755
+ });
756
+ expect(computeEligible).toHaveBeenCalled();
757
+ const call = computeEligible.mock.calls[0];
758
+ expect(call[1]).toEqual({ scope: 'service', globalSteps });
759
+ });
760
+ it('service-mode saveState stamps next_eligible_root_counter from loadedRootCounter', () => {
761
+ fs.mkdirSync(path.join(tmpRoot, '.scaffold', 'services', 'api'), { recursive: true });
762
+ fs.writeFileSync(path.join(tmpRoot, '.scaffold', 'state.json'), JSON.stringify({
763
+ 'schema-version': 3, 'scaffold-version': '1.0.0',
764
+ init_methodology: 'deep', config_methodology: 'deep',
765
+ 'init-mode': 'greenfield', created: '2026-04-20T00:00:00.000Z',
766
+ in_progress: null, steps: {}, next_eligible: [], 'extra-steps': [],
767
+ save_counter: 42,
768
+ }));
769
+ fs.writeFileSync(path.join(tmpRoot, '.scaffold', 'services', 'api', 'state.json'), JSON.stringify({
770
+ 'schema-version': 3, 'scaffold-version': '1.0.0',
771
+ init_methodology: 'deep', config_methodology: 'deep',
772
+ 'init-mode': 'greenfield', created: '2026-04-20T00:00:00.000Z',
773
+ in_progress: null, steps: {}, next_eligible: [], 'extra-steps': [],
774
+ }));
775
+ const sm = new StateManager(tmpRoot, () => [], () => undefined, new StatePathResolver(tmpRoot, 'api'), new Set(), 'svc-hash');
776
+ sm.loadState(); // captures root counter = 42
777
+ sm.saveState({
778
+ 'schema-version': 3, 'scaffold-version': '1.0.0',
779
+ init_methodology: 'deep', config_methodology: 'deep',
780
+ 'init-mode': 'greenfield', created: '2026-04-20T00:00:00.000Z',
781
+ in_progress: null, steps: {}, next_eligible: [], 'extra-steps': [],
782
+ });
783
+ const written = JSON.parse(fs.readFileSync(path.join(tmpRoot, '.scaffold', 'services', 'api', 'state.json'), 'utf8'));
784
+ expect(written.next_eligible_root_counter).toBe(42);
785
+ expect(written.next_eligible_hash).toBe('svc-hash');
786
+ expect(written.save_counter).toBeUndefined(); // service state — no own counter
787
+ });
788
+ it('omitted pipelineHash produces next_eligible_hash: undefined (legacy-safe)', () => {
789
+ const sm = new StateManager(tmpRoot, () => [], () => undefined, new StatePathResolver(tmpRoot), undefined);
790
+ sm.saveState({
791
+ 'schema-version': 3, 'scaffold-version': '1.0.0',
792
+ init_methodology: 'deep', config_methodology: 'deep',
793
+ 'init-mode': 'greenfield', created: '2026-04-20T00:00:00.000Z',
794
+ in_progress: null, steps: {}, next_eligible: [], 'extra-steps': [],
795
+ });
796
+ const written = JSON.parse(fs.readFileSync(path.join(tmpRoot, '.scaffold', 'state.json'), 'utf8'));
797
+ expect(written.next_eligible_hash).toBeUndefined();
798
+ expect(written.save_counter).toBe(1); // counter still bumps
799
+ });
800
+ it('service-mode saveState deletes save_counter if present on state (spec §1 exclusivity — Codex MMR)', () => {
801
+ fs.mkdirSync(path.join(tmpRoot, '.scaffold', 'services', 'api'), { recursive: true });
802
+ fs.writeFileSync(path.join(tmpRoot, '.scaffold', 'state.json'), JSON.stringify({
803
+ 'schema-version': 3, 'scaffold-version': '1.0.0',
804
+ init_methodology: 'deep', config_methodology: 'deep',
805
+ 'init-mode': 'greenfield', created: '2026-04-20T00:00:00.000Z',
806
+ in_progress: null, steps: {}, next_eligible: [], 'extra-steps': [],
807
+ save_counter: 5,
808
+ }));
809
+ fs.writeFileSync(path.join(tmpRoot, '.scaffold', 'services', 'api', 'state.json'), JSON.stringify({
810
+ 'schema-version': 3, 'scaffold-version': '1.0.0',
811
+ init_methodology: 'deep', config_methodology: 'deep',
812
+ 'init-mode': 'greenfield', created: '2026-04-20T00:00:00.000Z',
813
+ in_progress: null, steps: {}, next_eligible: [], 'extra-steps': [],
814
+ }));
815
+ const sm = new StateManager(tmpRoot, () => [], () => undefined, new StatePathResolver(tmpRoot, 'api'), new Set(), 'svc-hash');
816
+ sm.loadState();
817
+ sm.saveState({
818
+ 'schema-version': 3, 'scaffold-version': '1.0.0',
819
+ init_methodology: 'deep', config_methodology: 'deep',
820
+ 'init-mode': 'greenfield', created: '2026-04-20T00:00:00.000Z',
821
+ in_progress: null, steps: {}, next_eligible: [], 'extra-steps': [],
822
+ // Polluted input — simulates a file written by a bug elsewhere.
823
+ save_counter: 999,
824
+ });
825
+ const written = JSON.parse(fs.readFileSync(path.join(tmpRoot, '.scaffold', 'services', 'api', 'state.json'), 'utf8'));
826
+ expect(written.save_counter).toBeUndefined(); // service must never write this
827
+ });
828
+ // eslint-disable-next-line max-len
829
+ it('root-mode saveState deletes next_eligible_root_counter if present on state (spec §1 exclusivity — Codex MMR)', () => {
830
+ const sm = new StateManager(tmpRoot, () => [], () => undefined, new StatePathResolver(tmpRoot), undefined, 'root-hash');
831
+ sm.saveState({
832
+ 'schema-version': 3, 'scaffold-version': '1.0.0',
833
+ init_methodology: 'deep', config_methodology: 'deep',
834
+ 'init-mode': 'greenfield', created: '2026-04-20T00:00:00.000Z',
835
+ in_progress: null, steps: {}, next_eligible: [], 'extra-steps': [],
836
+ // Polluted input — simulates a previously-buggy write.
837
+ next_eligible_root_counter: 77,
838
+ });
839
+ const written = JSON.parse(fs.readFileSync(path.join(tmpRoot, '.scaffold', 'state.json'), 'utf8'));
840
+ expect(written.next_eligible_root_counter).toBeUndefined(); // root must never write this
841
+ });
597
842
  });
598
843
  //# sourceMappingURL=state-manager.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"state-manager.test.js","sourceRoot":"","sources":["../../src/state/state-manager.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state-manager.test.js","sourceRoot":"","sources":["../../src/state/state-manager.test.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,25 @@ export interface PipelineState {
44
44
  in_progress: InProgressRecord | null;
45
45
  steps: Record<string, StepStateEntry>;
46
46
  next_eligible: string[];
47
+ /**
48
+ * Monotonic counter bumped on every root-state saveState. Used by service
49
+ * state files to detect when root has mutated since the service cached
50
+ * next_eligible. Present only in root state (service state files never
51
+ * carry a save_counter of their own). Absent on legacy files.
52
+ */
53
+ save_counter?: number;
54
+ /**
55
+ * Pipeline-graph hash recorded when `next_eligible` was written. Absent on
56
+ * legacy files → treated as "always stale" on read → triggers live recompute.
57
+ */
58
+ next_eligible_hash?: string;
59
+ /**
60
+ * SERVICE state only: root state's save_counter at cache-write time. If this
61
+ * no longer matches the current root save_counter, the service cache is
62
+ * invalidated (root mutation invalidates service eligibility because service
63
+ * steps depend on global step completion through the merged state view).
64
+ */
65
+ next_eligible_root_counter?: number;
47
66
  'extra-steps': ExtraStepEntry[];
48
67
  }
49
68
  //# sourceMappingURL=state.d.ts.map