musubix3 0.1.20 → 0.1.21

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 (63) hide show
  1. package/.github/plugin/marketplace.json +2 -2
  2. package/.github/skills/sdd-change/SKILL.md +28 -45
  3. package/CHANGELOG.md +88 -0
  4. package/README-ja.md +103 -3
  5. package/README.md +113 -3
  6. package/dist/packages/analysis/src/approval.d.ts +51 -0
  7. package/dist/packages/analysis/src/approval.js +341 -2
  8. package/dist/packages/analysis/src/approval.js.map +1 -1
  9. package/dist/packages/analysis/src/attestation.js +4 -0
  10. package/dist/packages/analysis/src/attestation.js.map +1 -1
  11. package/dist/packages/analysis/src/change-evidence.d.ts +56 -13
  12. package/dist/packages/analysis/src/change-evidence.js +142 -81
  13. package/dist/packages/analysis/src/change-evidence.js.map +1 -1
  14. package/dist/packages/analysis/src/change-waiver.d.ts +37 -13
  15. package/dist/packages/analysis/src/change-waiver.js +425 -174
  16. package/dist/packages/analysis/src/change-waiver.js.map +1 -1
  17. package/dist/packages/analysis/src/change.d.ts +1 -0
  18. package/dist/packages/analysis/src/change.js +176 -23
  19. package/dist/packages/analysis/src/change.js.map +1 -1
  20. package/dist/packages/analysis/src/evidence-merge-guard.d.ts +5 -0
  21. package/dist/packages/analysis/src/evidence-merge-guard.js +15 -0
  22. package/dist/packages/analysis/src/evidence-merge-guard.js.map +1 -1
  23. package/dist/packages/analysis/src/evidence-merge.d.ts +2 -0
  24. package/dist/packages/analysis/src/evidence-merge.js +173 -38
  25. package/dist/packages/analysis/src/evidence-merge.js.map +1 -1
  26. package/dist/packages/analysis/src/evidence-writer-lock.d.ts +9 -2
  27. package/dist/packages/analysis/src/evidence-writer-lock.js +75 -21
  28. package/dist/packages/analysis/src/evidence-writer-lock.js.map +1 -1
  29. package/dist/packages/analysis/src/files.js +5 -0
  30. package/dist/packages/analysis/src/files.js.map +1 -1
  31. package/dist/packages/analysis/src/gate.d.ts +1 -1
  32. package/dist/packages/analysis/src/gate.js +17 -4
  33. package/dist/packages/analysis/src/gate.js.map +1 -1
  34. package/dist/packages/analysis/src/index.d.ts +1 -0
  35. package/dist/packages/analysis/src/index.js +1 -0
  36. package/dist/packages/analysis/src/index.js.map +1 -1
  37. package/dist/packages/analysis/src/order.d.ts +16 -1
  38. package/dist/packages/analysis/src/order.js +6 -0
  39. package/dist/packages/analysis/src/order.js.map +1 -1
  40. package/dist/packages/analysis/src/quality-refresh.d.ts +18 -0
  41. package/dist/packages/analysis/src/quality-refresh.js +312 -0
  42. package/dist/packages/analysis/src/quality-refresh.js.map +1 -0
  43. package/dist/packages/analysis/src/tdd.d.ts +84 -3
  44. package/dist/packages/analysis/src/tdd.js +589 -50
  45. package/dist/packages/analysis/src/tdd.js.map +1 -1
  46. package/dist/packages/analysis/src/trace.d.ts +24 -0
  47. package/dist/packages/analysis/src/trace.js +95 -3
  48. package/dist/packages/analysis/src/trace.js.map +1 -1
  49. package/dist/packages/analysis/src/workflow-waiver.d.ts +6 -2
  50. package/dist/packages/analysis/src/workflow-waiver.js +9 -5
  51. package/dist/packages/analysis/src/workflow-waiver.js.map +1 -1
  52. package/dist/packages/analysis/src/workflow.d.ts +1 -1
  53. package/dist/packages/analysis/src/workflow.js +4 -4
  54. package/dist/packages/analysis/src/workflow.js.map +1 -1
  55. package/dist/packages/cli/src/install.js +27 -4
  56. package/dist/packages/cli/src/install.js.map +1 -1
  57. package/dist/packages/cli/src/main.js +77 -18
  58. package/dist/packages/cli/src/main.js.map +1 -1
  59. package/dist/packages/domain/src/design.js +8 -1
  60. package/dist/packages/domain/src/design.js.map +1 -1
  61. package/dist/packages/domain/src/types.d.ts +1 -0
  62. package/package.json +7 -2
  63. package/plugin.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"attestation.js","sourceRoot":"","sources":["../../../../packages/analysis/src/attestation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attestation.js","sourceRoot":"","sources":["../../../../packages/analysis/src/attestation.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import type { TddCycle, TddEvidence } from './tdd.js';
2
1
  export declare const changePhases: readonly ["impact", "requirements", "design", "red", "implementation", "green", "quality"];
3
2
  export type ChangePhase = typeof changePhases[number];
4
3
  export interface ChangeFingerprints {
@@ -31,9 +30,10 @@ export interface ChangeRecord {
31
30
  requirementIds: string[];
32
31
  phases: Partial<Record<ChangePhase, ChangePhaseEvidence>>;
33
32
  tddBatches?: ChangeTddBatch[];
33
+ qualityHistory?: ChangePhaseEvidence[];
34
34
  }
35
35
  export interface ChangeEvidence {
36
- schemaVersion: 1;
36
+ schemaVersion: 1 | 2;
37
37
  changes: ChangeRecord[];
38
38
  }
39
39
  export interface ChangeCompleteness {
@@ -45,6 +45,14 @@ export interface ChangeCompleteness {
45
45
  valid: boolean;
46
46
  }
47
47
  export declare function loadChangeEvidence(root: string): Promise<ChangeEvidence | null>;
48
+ /** @id CODE-CHANGE-QUALITY-REFRESH-001
49
+ * @implements REQ-CHANGE-QUALITY-REFRESH-001 REQ-CHANGE-QUALITY-REFRESH-003
50
+ * @design DES-CHANGE-QUALITY-REFRESH-001
51
+ */
52
+ export declare function qualityLineage(change: ChangeRecord): ChangePhaseEvidence[];
53
+ export declare function qualityIdentity(ordinal: number): string;
54
+ export declare function qualityPayloadForIdentity(change: ChangeRecord, identity: string): ChangePhaseEvidence | undefined;
55
+ export declare function qualityOrderIdentity(change: ChangeRecord, checkpoint: ChangePhaseEvidence): string;
48
56
  /** @id CODE-CHANGE-REQUIREMENT-BATCHES-001
49
57
  * @implements REQ-CHANGE-REQUIREMENT-BATCHES-001 REQ-CHANGE-REQUIREMENT-BATCHES-003 REQ-CHANGE-REQUIREMENT-BATCHES-004
50
58
  * @design DES-CHANGE-REQUIREMENT-BATCHES-001
@@ -55,16 +63,29 @@ export declare function effectiveBatches(change: ChangeRecord): ChangeTddBatch[]
55
63
  * @design DES-CHANGE-REQUIREMENT-BATCHES-002
56
64
  */
57
65
  export declare function batchFor(batches: ChangeTddBatch[], requirementId: string): ChangeTddBatch | undefined;
66
+ /** @id CODE-TDD-GREEN-REQUIREMENT-SCOPING-002
67
+ * @implements REQ-TDD-GREEN-REQUIREMENT-SCOPING-003
68
+ * @design DES-TDD-GREEN-REQUIREMENT-SCOPING-002
69
+ * Fail-fast precondition for `tdd red`/`tdd green`, checked by
70
+ * `runTddPhaseUnlocked` (`tdd.ts`) before any side effect. Both phases first
71
+ * share the same "does any candidate change have `phases.design` recorded"
72
+ * check; only once a design-satisfied candidate exists does `green` go on to
73
+ * distinguish a missing `implementation` from a missing `red`. This mirrors
74
+ * `change.ts`'s own `recordChangePhaseUnlocked` phase-precedence rules
75
+ * (`design` before `red` before `implementation` before `green`) so the
76
+ * reported `missingPhase` always names a `change-record` command `change.ts`
77
+ * would itself currently accept.
78
+ */
79
+ export declare function changeRecordPhasePrecondition(evidence: ChangeEvidence | null, phase: 'red' | 'green', requirementId: string): {
80
+ satisfied: boolean;
81
+ changeId?: string;
82
+ missingPhase?: 'design' | 'red' | 'implementation';
83
+ };
58
84
  export declare function currentRequirementIdsForBatch(batches: ChangeTddBatch[], batch: ChangeTddBatch, requirementIds: string[]): string[];
59
85
  export declare function currentTddOrderWindow(change: ChangeRecord, requirementId: string): {
60
86
  after: number;
61
87
  through: number;
62
88
  } | undefined;
63
- /** @id CODE-CHANGE-REQUIREMENT-BATCHES-004
64
- * @implements REQ-CHANGE-REQUIREMENT-BATCHES-005
65
- * @design DES-CHANGE-REQUIREMENT-BATCHES-002
66
- */
67
- export declare function voidedCycleOrdersInCurrentWindow(change: ChangeRecord, requirementId: string, tdd: TddEvidence | null, validlyVoided: ReadonlySet<TddCycle>): number[];
68
89
  /** @id CODE-CHANGE-EVIDENCE-WAIVER-014
69
90
  * @implements REQ-CHANGE-EVIDENCE-WAIVER-016
70
91
  * @design DES-CHANGE-EVIDENCE-WAIVER-001
@@ -78,12 +99,11 @@ export declare function batchKey(requirementIds: string[]): string;
78
99
  * @design DES-CHANGE-EVIDENCE-WAIVER-001
79
100
  */
80
101
  export declare function batchForKey(batches: ChangeTddBatch[], key: string): ChangeTddBatch | undefined;
102
+ export declare function batchesForKey<T extends {
103
+ requirementIds: string[];
104
+ }>(batches: T[], key: string): T[];
81
105
  export declare function requirementsUnchangedCondition(change: ChangeRecord): boolean;
82
106
  export declare function designUnchangedCondition(change: ChangeRecord): boolean;
83
- export declare function hasValidTddCycle(change: ChangeRecord, requirementId: string, tdd: TddEvidence | null, validlyVoided?: ReadonlySet<TddCycle>): boolean;
84
- export declare function redUnprovenCondition(change: ChangeRecord, requirementId: string, tdd: TddEvidence | null, validlyVoided?: ReadonlySet<TddCycle>): boolean;
85
- export declare function greenUnprovenCondition(change: ChangeRecord, requirementId: string, tdd: TddEvidence | null, validlyVoided?: ReadonlySet<TddCycle>): boolean;
86
- export declare function completenessTddUnsatisfiedCondition(change: ChangeRecord, requirementId: string, tdd: TddEvidence | null, validlyVoided?: ReadonlySet<TddCycle>): boolean;
87
107
  /** @id CODE-CHANGE-EVIDENCE-WAIVER-016
88
108
  * @implements REQ-CHANGE-EVIDENCE-WAIVER-002
89
109
  * @design DES-CHANGE-EVIDENCE-WAIVER-001
@@ -97,9 +117,32 @@ export declare function completenessTddUnsatisfiedCondition(change: ChangeRecord
97
117
  export declare function recordMissingCondition(root: string, evidence: ChangeEvidence | null, changeId: string): Promise<boolean>;
98
118
  export declare function phaseMissingCondition(change: ChangeRecord, phaseName: string): boolean;
99
119
  export declare function orderMigrationRequiredPhaseCondition(change: ChangeRecord, phaseName: string): boolean;
100
- export declare function orderMigrationRequiredBatchCondition(change: ChangeRecord, batchPhaseName: string, key: string): boolean;
101
- export declare function orderMigrationRequiredRequirementCondition(change: ChangeRecord, requirementId: string, tdd: TddEvidence | null, validlyVoided?: ReadonlySet<TddCycle>): boolean;
120
+ /** @id CODE-CHANGE-EVIDENCE-WAIVER-022
121
+ * @implements REQ-CHANGE-EVIDENCE-WAIVER-011
122
+ * @design DES-CHANGE-EVIDENCE-WAIVER-004
123
+ */
124
+ type BatchOrderState = Pick<ChangeTddBatch, 'requirementIds'> & Partial<Record<'red' | 'implementation' | 'green', {
125
+ order?: number;
126
+ }>>;
127
+ export declare function orderMigrationRequiredBatchItemCondition(batch: BatchOrderState, batchPhaseName: string): boolean;
128
+ export declare function orderMigrationRequiredBatchCondition(change: Pick<ChangeRecord, 'changeId' | 'requirementIds' | 'phases'> & {
129
+ tddBatches?: BatchOrderState[];
130
+ }, batchPhaseName: string, key: string): boolean;
131
+ /** @id CODE-CHANGE-EVIDENCE-WAIVER-024
132
+ * @implements REQ-CHANGE-EVIDENCE-WAIVER-017
133
+ * @design DES-CHANGE-EVIDENCE-WAIVER-004
134
+ * Pure re-derivations of `CHANGE_PHASE_ORDER`'s six transition conditions
135
+ * (GitHub Issue #56), mirroring `orderMigrationRequiredPhaseCondition`'s/
136
+ * `orderMigrationRequiredBatchCondition`'s shape so `evaluateWaiverCondition`
137
+ * never duplicates `change.ts`'s emission-site comparisons.
138
+ */
139
+ export declare function phaseOrderPhaseCondition(change: ChangeRecord, phaseName: string): boolean;
140
+ export declare function phaseOrderBatchItemCondition(change: Pick<ChangeRecord, 'phases'>, batch: BatchOrderState, batchPhaseName: string): boolean;
141
+ export declare function phaseOrderBatchCondition(change: Pick<ChangeRecord, 'changeId' | 'requirementIds' | 'phases'> & {
142
+ tddBatches?: BatchOrderState[];
143
+ }, batchPhaseName: string, key: string): boolean;
102
144
  export declare function testsUnchangedCondition(change: ChangeRecord, batch: ChangeTddBatch): boolean;
103
145
  export declare function implementationUnchangedCondition(batch: ChangeTddBatch): boolean;
104
146
  export declare function relevantImplementationUnchangedCondition(batch: ChangeTddBatch, requirementId: string): boolean;
105
147
  export declare function testChangedAfterRedCondition(batch: ChangeTddBatch): boolean;
148
+ export {};
@@ -9,10 +9,41 @@ export async function loadChangeEvidence(root) {
9
9
  if (!await exists(within(root, path)))
10
10
  return null;
11
11
  const value = JSON.parse(await readText(root, path));
12
- if (value.schemaVersion !== 1 || !Array.isArray(value.changes))
12
+ if (!Number.isInteger(value.schemaVersion) || value.schemaVersion < 1 || !Array.isArray(value.changes)) {
13
13
  throw new Error('Invalid change chronology evidence.');
14
+ }
15
+ if (value.schemaVersion > 2) {
16
+ throw new Error(`CHANGE_EVIDENCE_SCHEMA_UNSUPPORTED: schema version ${value.schemaVersion} is not supported.`);
17
+ }
14
18
  return value;
15
19
  }
20
+ /** @id CODE-CHANGE-QUALITY-REFRESH-001
21
+ * @implements REQ-CHANGE-QUALITY-REFRESH-001 REQ-CHANGE-QUALITY-REFRESH-003
22
+ * @design DES-CHANGE-QUALITY-REFRESH-001
23
+ */
24
+ export function qualityLineage(change) {
25
+ const quality = change.phases.quality;
26
+ return [...(change.qualityHistory ?? []), ...(quality ? [quality] : [])];
27
+ }
28
+ export function qualityIdentity(ordinal) {
29
+ if (!Number.isInteger(ordinal) || ordinal < 1)
30
+ throw new Error('Quality ordinal must be a positive integer.');
31
+ return ordinal === 1 ? 'quality' : `quality:${ordinal}`;
32
+ }
33
+ export function qualityPayloadForIdentity(change, identity) {
34
+ const match = /^quality(?::([1-9]\d*))?$/.exec(identity);
35
+ if (!match)
36
+ return undefined;
37
+ const ordinal = match[1] === undefined ? 1 : Number(match[1]);
38
+ const lineage = qualityLineage(change);
39
+ return lineage[ordinal - 1];
40
+ }
41
+ export function qualityOrderIdentity(change, checkpoint) {
42
+ const index = qualityLineage(change).findIndex((entry) => entry === checkpoint);
43
+ if (index < 0)
44
+ throw new Error('Quality checkpoint is not part of the supplied change lineage.');
45
+ return qualityIdentity(index + 1);
46
+ }
16
47
  /** @id CODE-CHANGE-REQUIREMENT-BATCHES-001
17
48
  * @implements REQ-CHANGE-REQUIREMENT-BATCHES-001 REQ-CHANGE-REQUIREMENT-BATCHES-003 REQ-CHANGE-REQUIREMENT-BATCHES-004
18
49
  * @design DES-CHANGE-REQUIREMENT-BATCHES-001
@@ -42,6 +73,44 @@ export function batchFor(batches, requirementId) {
42
73
  return applicable[0];
43
74
  return ordered.reduce((selected, batch) => batch.red.order >= selected.red.order ? batch : selected);
44
75
  }
76
+ /** @id CODE-TDD-GREEN-REQUIREMENT-SCOPING-002
77
+ * @implements REQ-TDD-GREEN-REQUIREMENT-SCOPING-003
78
+ * @design DES-TDD-GREEN-REQUIREMENT-SCOPING-002
79
+ * Fail-fast precondition for `tdd red`/`tdd green`, checked by
80
+ * `runTddPhaseUnlocked` (`tdd.ts`) before any side effect. Both phases first
81
+ * share the same "does any candidate change have `phases.design` recorded"
82
+ * check; only once a design-satisfied candidate exists does `green` go on to
83
+ * distinguish a missing `implementation` from a missing `red`. This mirrors
84
+ * `change.ts`'s own `recordChangePhaseUnlocked` phase-precedence rules
85
+ * (`design` before `red` before `implementation` before `green`) so the
86
+ * reported `missingPhase` always names a `change-record` command `change.ts`
87
+ * would itself currently accept.
88
+ */
89
+ export function changeRecordPhasePrecondition(evidence, phase, requirementId) {
90
+ const candidates = (evidence?.changes ?? []).filter((change) => change.requirementIds.includes(requirementId));
91
+ const designSatisfied = candidates.filter((change) => change.phases.design);
92
+ if (!designSatisfied.length) {
93
+ return {
94
+ satisfied: false,
95
+ missingPhase: 'design',
96
+ ...(candidates[0] ? { changeId: candidates[0].changeId } : {}),
97
+ };
98
+ }
99
+ if (phase === 'red')
100
+ return { satisfied: true };
101
+ const batchesByChange = designSatisfied.map((change) => ({
102
+ change,
103
+ batch: batchFor(effectiveBatches(change), requirementId),
104
+ }));
105
+ if (batchesByChange.some(({ batch }) => batch?.red && batch.implementation)) {
106
+ return { satisfied: true };
107
+ }
108
+ const withRed = batchesByChange.find(({ batch }) => batch?.red);
109
+ if (withRed) {
110
+ return { satisfied: false, changeId: withRed.change.changeId, missingPhase: 'implementation' };
111
+ }
112
+ return { satisfied: false, changeId: designSatisfied[0].changeId, missingPhase: 'red' };
113
+ }
45
114
  export function currentRequirementIdsForBatch(batches, batch, requirementIds) {
46
115
  // `batch` must be an element of `batches`; callers intentionally share one
47
116
  // effectiveBatches() result so duplicate batch keys remain distinguishable.
@@ -64,46 +133,6 @@ export function currentTddOrderWindow(change, requirementId) {
64
133
  through: currentRedOrder,
65
134
  };
66
135
  }
67
- /** @id CODE-CHANGE-REQUIREMENT-BATCHES-004
68
- * @implements REQ-CHANGE-REQUIREMENT-BATCHES-005
69
- * @design DES-CHANGE-REQUIREMENT-BATCHES-002
70
- */
71
- export function voidedCycleOrdersInCurrentWindow(change, requirementId, tdd, validlyVoided) {
72
- const window = currentTddOrderWindow(change, requirementId);
73
- if (!window)
74
- return [];
75
- return (tdd?.cycles ?? [])
76
- .filter((cycle) => cycle.requirementId === requirementId
77
- && validlyVoided.has(cycle)
78
- && Number.isInteger(cycle.red.order)
79
- && cycle.red.order > window.after
80
- && cycle.red.order <= window.through
81
- && Number.isInteger(cycle.void?.order))
82
- .map((cycle) => cycle.void.order)
83
- .sort((a, b) => a - b);
84
- }
85
- function currentTddCycle(change, requirementId, tdd, validlyVoided) {
86
- const window = currentTddOrderWindow(change, requirementId);
87
- if (!window)
88
- return undefined;
89
- return (tdd?.cycles ?? [])
90
- .filter((cycle) => cycle.requirementId === requirementId
91
- && !validlyVoided.has(cycle)
92
- && Number.isInteger(cycle.red.order)
93
- && cycle.red.order > window.after
94
- && cycle.red.order <= window.through)
95
- .reduce((selected, cycle) => !selected || cycle.red.order >= selected.red.order ? cycle : selected, undefined);
96
- }
97
- function tddCyclesInCurrentWindow(change, requirementId, tdd, validlyVoided) {
98
- const window = currentTddOrderWindow(change, requirementId);
99
- if (!window)
100
- return [];
101
- return (tdd?.cycles ?? []).filter((cycle) => cycle.requirementId === requirementId
102
- && !validlyVoided.has(cycle)
103
- && Number.isInteger(cycle.red.order)
104
- && cycle.red.order > window.after
105
- && cycle.red.order <= window.through);
106
- }
107
136
  /** @id CODE-CHANGE-EVIDENCE-WAIVER-014
108
137
  * @implements REQ-CHANGE-EVIDENCE-WAIVER-016
109
138
  * @design DES-CHANGE-EVIDENCE-WAIVER-001
@@ -121,6 +150,9 @@ export function batchKey(requirementIds) {
121
150
  export function batchForKey(batches, key) {
122
151
  return batches.find((batch) => batchKey(batch.requirementIds) === key);
123
152
  }
153
+ export function batchesForKey(batches, key) {
154
+ return batches.filter((batch) => batchKey(batch.requirementIds) === key);
155
+ }
124
156
  // Pure, side-effect-free re-derivations of the exact "would this diagnostic
125
157
  // currently fire" conditions used by change.ts's validators. Kept here (with
126
158
  // no dependency on change.ts or change-waiver.ts) so change-waiver.ts can
@@ -137,31 +169,6 @@ export function designUnchangedCondition(change) {
137
169
  const design = change.phases.design;
138
170
  return !!requirements && !!design && requirements.fingerprints.design === design.fingerprints.design;
139
171
  }
140
- export function hasValidTddCycle(change, requirementId, tdd, validlyVoided = new Set()) {
141
- const batch = batchFor(effectiveBatches(change), requirementId);
142
- const implementation = batch?.implementation;
143
- const green = batch?.green;
144
- return tddCyclesInCurrentWindow(change, requirementId, tdd, validlyVoided).some((cycle) => !!implementation
145
- && green
146
- && Number.isInteger(implementation.order)
147
- && Number.isInteger(green.order)
148
- && Number.isInteger(cycle.green?.order)
149
- && cycle.red.valid
150
- && cycle.green?.valid
151
- && cycle.green.order > implementation.order
152
- && cycle.green.order <= green.order);
153
- }
154
- export function redUnprovenCondition(change, requirementId, tdd, validlyVoided = new Set()) {
155
- const batch = batchFor(effectiveBatches(change), requirementId);
156
- return !!batch?.red && !hasValidTddCycle(change, requirementId, tdd, validlyVoided);
157
- }
158
- export function greenUnprovenCondition(change, requirementId, tdd, validlyVoided = new Set()) {
159
- const batch = batchFor(effectiveBatches(change), requirementId);
160
- return !!batch?.green && !hasValidTddCycle(change, requirementId, tdd, validlyVoided);
161
- }
162
- export function completenessTddUnsatisfiedCondition(change, requirementId, tdd, validlyVoided = new Set()) {
163
- return !hasValidTddCycle(change, requirementId, tdd, validlyVoided);
164
- }
165
172
  const tddBatchPhaseNames = ['red', 'implementation', 'green'];
166
173
  /** @id CODE-CHANGE-EVIDENCE-WAIVER-016
167
174
  * @implements REQ-CHANGE-EVIDENCE-WAIVER-002
@@ -191,23 +198,77 @@ export function orderMigrationRequiredPhaseCondition(change, phaseName) {
191
198
  const item = change.phases[phaseName];
192
199
  return !!item && !Number.isInteger(item.order);
193
200
  }
194
- export function orderMigrationRequiredBatchCondition(change, batchPhaseName, key) {
195
- const batch = batchForKey(effectiveBatches(change), key);
196
- const item = batch?.[batchPhaseName];
201
+ export function orderMigrationRequiredBatchItemCondition(batch, batchPhaseName) {
202
+ const item = batch[batchPhaseName];
197
203
  return !!item && !Number.isInteger(item.order);
198
204
  }
199
- export function orderMigrationRequiredRequirementCondition(change, requirementId, tdd, validlyVoided = new Set()) {
200
- const batch = batchFor(effectiveBatches(change), requirementId);
201
- if (!batch?.red)
202
- return false;
203
- const cycles = (tdd?.cycles ?? []).filter((cycle) => cycle.requirementId === requirementId && !validlyVoided.has(cycle));
204
- if (cycles.some((cycle) => !Number.isInteger(cycle.red.order)))
205
- return true;
206
- const window = currentTddOrderWindow(change, requirementId);
207
- if (!window)
208
- return false;
209
- const current = currentTddCycle(change, requirementId, tdd, validlyVoided);
210
- return !!current && !Number.isInteger(current.green?.order);
205
+ export function orderMigrationRequiredBatchCondition(change, batchPhaseName, key) {
206
+ const batches = [...(change.tddBatches ?? [])];
207
+ if (change.phases.red || change.phases.implementation || change.phases.green) {
208
+ const legacyBatch = {
209
+ requirementIds: [...change.requirementIds],
210
+ ...(change.phases.red ? { red: change.phases.red } : {}),
211
+ ...(change.phases.implementation ? { implementation: change.phases.implementation } : {}),
212
+ ...(change.phases.green ? { green: change.phases.green } : {}),
213
+ };
214
+ batches.unshift(legacyBatch);
215
+ }
216
+ return batchesForKey(batches, key)
217
+ .some((batch) => orderMigrationRequiredBatchItemCondition(batch, batchPhaseName));
218
+ }
219
+ /** @id CODE-CHANGE-EVIDENCE-WAIVER-024
220
+ * @implements REQ-CHANGE-EVIDENCE-WAIVER-017
221
+ * @design DES-CHANGE-EVIDENCE-WAIVER-004
222
+ * Pure re-derivations of `CHANGE_PHASE_ORDER`'s six transition conditions
223
+ * (GitHub Issue #56), mirroring `orderMigrationRequiredPhaseCondition`'s/
224
+ * `orderMigrationRequiredBatchCondition`'s shape so `evaluateWaiverCondition`
225
+ * never duplicates `change.ts`'s emission-site comparisons.
226
+ */
227
+ export function phaseOrderPhaseCondition(change, phaseName) {
228
+ if (phaseName === 'requirements') {
229
+ const requirements = change.phases.requirements;
230
+ const impact = change.phases.impact;
231
+ return requirements?.order !== undefined && impact?.order !== undefined && requirements.order <= impact.order;
232
+ }
233
+ if (phaseName === 'design') {
234
+ const design = change.phases.design;
235
+ const requirements = change.phases.requirements;
236
+ return design?.order !== undefined && requirements?.order !== undefined && design.order <= requirements.order;
237
+ }
238
+ return false;
239
+ }
240
+ export function phaseOrderBatchItemCondition(change, batch, batchPhaseName) {
241
+ if (batchPhaseName === 'red') {
242
+ const design = change.phases.design;
243
+ return batch.red?.order !== undefined && design?.order !== undefined && batch.red.order <= design.order;
244
+ }
245
+ if (batchPhaseName === 'implementation') {
246
+ return batch.implementation?.order !== undefined && batch.red?.order !== undefined
247
+ && batch.implementation.order <= batch.red.order;
248
+ }
249
+ if (batchPhaseName === 'green') {
250
+ return batch.green?.order !== undefined && batch.implementation?.order !== undefined
251
+ && batch.green.order <= batch.implementation.order;
252
+ }
253
+ if (batchPhaseName === 'quality') {
254
+ const quality = change.phases.quality;
255
+ return quality?.order !== undefined && batch.green?.order !== undefined && quality.order <= batch.green.order;
256
+ }
257
+ return false;
258
+ }
259
+ export function phaseOrderBatchCondition(change, batchPhaseName, key) {
260
+ const batches = [...(change.tddBatches ?? [])];
261
+ if (change.phases.red || change.phases.implementation || change.phases.green) {
262
+ const legacyBatch = {
263
+ requirementIds: [...change.requirementIds],
264
+ ...(change.phases.red ? { red: change.phases.red } : {}),
265
+ ...(change.phases.implementation ? { implementation: change.phases.implementation } : {}),
266
+ ...(change.phases.green ? { green: change.phases.green } : {}),
267
+ };
268
+ batches.unshift(legacyBatch);
269
+ }
270
+ return batchesForKey(batches, key)
271
+ .some((batch) => phaseOrderBatchItemCondition(change, batch, batchPhaseName));
211
272
  }
212
273
  export function testsUnchangedCondition(change, batch) {
213
274
  const design = change.phases.design;
@@ -1 +1 @@
1
- {"version":3,"file":"change-evidence.js","sourceRoot":"","sources":["../../../../packages/analysis/src/change-evidence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"change-evidence.js","sourceRoot":"","sources":["../../../../packages/analysis/src/change-evidence.ts"],"names":[],"mappings":"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"}