@encore-os/eos-spec 0.4.0 → 0.5.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 (52) hide show
  1. package/dist/commands/audit.js +11 -3
  2. package/dist/commands/audit.js.map +1 -1
  3. package/dist/commands/complete.js +38 -13
  4. package/dist/commands/complete.js.map +1 -1
  5. package/dist/commands/conformance.js +27 -0
  6. package/dist/commands/conformance.js.map +1 -1
  7. package/dist/commands/next.d.ts +20 -4
  8. package/dist/commands/next.js +48 -13
  9. package/dist/commands/next.js.map +1 -1
  10. package/dist/commands/reconcile.d.ts +3 -10
  11. package/dist/commands/reconcile.js +6 -37
  12. package/dist/commands/reconcile.js.map +1 -1
  13. package/dist/commands/signoff.js +33 -5
  14. package/dist/commands/signoff.js.map +1 -1
  15. package/dist/index.d.ts +2 -1
  16. package/dist/index.js +14 -2
  17. package/dist/index.js.map +1 -1
  18. package/dist/lib/config.d.ts +0 -2
  19. package/dist/lib/config.js +0 -4
  20. package/dist/lib/config.js.map +1 -1
  21. package/dist/lib/embedding-store.d.ts +0 -2
  22. package/dist/lib/embedding-store.js +1 -1
  23. package/dist/lib/embedding-store.js.map +1 -1
  24. package/dist/lib/exec.d.ts +0 -2
  25. package/dist/lib/exec.js +1 -12
  26. package/dist/lib/exec.js.map +1 -1
  27. package/dist/lib/frontmatter.d.ts +5 -1
  28. package/dist/lib/frontmatter.js.map +1 -1
  29. package/dist/lib/next-action.d.ts +19 -2
  30. package/dist/lib/next-action.js +28 -6
  31. package/dist/lib/next-action.js.map +1 -1
  32. package/dist/lib/ollama-embed.d.ts +0 -9
  33. package/dist/lib/ollama-embed.js +0 -35
  34. package/dist/lib/ollama-embed.js.map +1 -1
  35. package/dist/lib/pipeline-config.js +40 -2
  36. package/dist/lib/pipeline-config.js.map +1 -1
  37. package/dist/lib/pipeline-map.d.ts +30 -0
  38. package/dist/lib/pipeline-map.js +86 -5
  39. package/dist/lib/pipeline-map.js.map +1 -1
  40. package/dist/lib/pipeline-schema.d.ts +25 -1
  41. package/dist/lib/pipeline-schema.js +3 -0
  42. package/dist/lib/pipeline-schema.js.map +1 -1
  43. package/dist/lib/predicate-registry.js +28 -1
  44. package/dist/lib/predicate-registry.js.map +1 -1
  45. package/dist/lib/reconcile-core.d.ts +26 -0
  46. package/dist/lib/reconcile-core.js +43 -0
  47. package/dist/lib/reconcile-core.js.map +1 -0
  48. package/dist/lib/spec-pure.js +44 -1
  49. package/dist/lib/spec-pure.js.map +1 -1
  50. package/dist/lib/specs.d.ts +17 -0
  51. package/dist/lib/specs.js.map +1 -1
  52. package/package.json +4 -4
@@ -23,9 +23,17 @@ export function buildAuditRow(spec, backlinkedIds) {
23
23
  const backlinked = backlinkedIds.size > 0 ? '✅' : '❌';
24
24
  const e2eListed = spec.signals.hasGeneratedTests ? '✅' : '❌';
25
25
  const prodReady = acValidated === '✅' && e2eListed === '✅' ? '✅' : '❌';
26
- const note = handClosedUnbacked
27
- ? `${ac.handClosed} hand_closed AC(s) without a "## Verification" section`
28
- : undefined;
26
+ const notes = [];
27
+ if (handClosedUnbacked)
28
+ notes.push(`${ac.handClosed} hand_closed AC(s) without a "## Verification" section`);
29
+ // WEB-51 (warn-first): a UI-bearing spec at a done status should carry a `proof:`
30
+ // demo-proof artifact (a recorded walkthrough). Surfaced as a note; does NOT gate
31
+ // prodReady — a later change can promote this to a hard gate for UI specs.
32
+ const isDone = spec.status === 'complete' || spec.status === 'implemented';
33
+ if (isDone && spec.signals.isUiBearing && !spec.signals.hasProofArtifact) {
34
+ notes.push('UI spec at a done status with no demo proof (`proof:` artifact) — record one via the demo lane (WEB-51)');
35
+ }
36
+ const note = notes.length > 0 ? notes.join('; ') : undefined;
29
37
  return {
30
38
  id: spec.id,
31
39
  status: spec.status ?? 'unknown',
@@ -1 +1 @@
1
- {"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/commands/audit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/commands/audit.ts"],"names":[],"mappings":"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"}
@@ -18,29 +18,54 @@ export function registerComplete(program) {
18
18
  .option('--include-deferred', 'Include deferred items in audit', false)
19
19
  .option('--archive', 'After audit passes, move spec/plan/tasks to specs/{core}/archive/', false)
20
20
  .option('--strict', 'Fail when coherence warnings are present', false)
21
- .option('--no-ui-gate', 'Skip the UI-evidence completion check (docshots + heal sign-off)')
22
- .option('--signoff', 'Acknowledge the UI-evidence gate (equivalent to --no-ui-gate for this run)', false)
21
+ .option('--enforce', 'BLOCK completion (non-zero exit) when a UI-bearing spec lacks docshots + heal sign-off; only a dated `ui-gate-waived` marker escapes (--no-ui-gate/--signoff do NOT bypass under --enforce)', false)
22
+ .option('--no-ui-gate', 'Skip the UI-evidence completion WARNING (ignored under --enforce)')
23
+ .option('--signoff', 'Acknowledge the UI-evidence warning (equivalent to --no-ui-gate for this run; ignored under --enforce)', false)
23
24
  .action(async (options, cmd) => {
24
25
  const global = getGlobalOptions(cmd);
25
26
  const repoRoot = getRepoRoot(global.repoRoot);
26
- // C1 inline UI-evidence gate: warn at completion time when a UI-bearing
27
- // spec lacks docshots + a heal sign-off. Warn-first (never refuses) the
28
- // non-bypassable enforcement is the corpus invariant (spec:registry:check).
29
- // commander maps `--no-ui-gate` to options.uiGate === false.
30
- if (options.spec && options.uiGate !== false && !options.signoff) {
27
+ // Phase 2 (Finding B item 1): the UI-evidence gate. A UI-bearing spec must carry
28
+ // docshots + a heal sign-off (or a dated `ui-gate-waived` marker) to complete.
29
+ // DEFAULT (no --enforce): WARN-only, back-compat. `--no-ui-gate`/`--signoff`
30
+ // suppress the warning. (commander maps `--no-ui-gate` to options.uiGate === false.)
31
+ // • --enforce: BLOCK emit the error path with a non-zero exit and DO NOT run
32
+ // the audit/registry write. The blanket `--no-ui-gate`/`--signoff` bypass is
33
+ // INTENTIONALLY ignored; the ONLY escape is a dated `ui-gate-waived` marker,
34
+ // which `uiEvidenceGate` already honors via the hasUiGateWaiver short-circuit.
35
+ // • The `!isUiBearing` short-circuit is preserved inside uiEvidenceGate, so
36
+ // backend/data specs always pass — even under --enforce.
37
+ if (options.spec && (options.enforce || (options.uiGate !== false && !options.signoff))) {
38
+ let verdictReason = null;
31
39
  try {
32
40
  const spec = findSpec(repoRoot, String(options.spec));
33
41
  if (spec) {
34
42
  const verdict = uiEvidenceGate(spec);
35
- if (!verdict.ok) {
36
- const allow = loadEnforcementAllowlist(repoRoot);
37
- const blocked = allow.block.includes(spec.core);
38
- emitContinuing(global, `complete: ui-evidence ${blocked ? 'GATE' : 'warning'} — ${verdict.reason}`);
39
- }
43
+ if (!verdict.ok)
44
+ verdictReason = verdict.reason;
40
45
  }
41
46
  }
42
47
  catch {
43
- // fail-open: a gate must never make `complete` unusable.
48
+ // fail-open ONLY in warn mode: a gate must never make a non-enforced
49
+ // `complete` unusable. Under --enforce a lookup failure leaves verdictReason
50
+ // null (we cannot prove a violation), so it does not spuriously block.
51
+ }
52
+ if (verdictReason) {
53
+ if (options.enforce) {
54
+ emit(global, {
55
+ ok: false,
56
+ error: {
57
+ code: ErrorCode.VALIDATION_FAILED,
58
+ message: `complete: ui-evidence gate failed — ${verdictReason}`,
59
+ },
60
+ data: { uiEvidence: { ok: false, reason: verdictReason } },
61
+ text: `complete: BLOCKED by --enforce — ${verdictReason}`,
62
+ exitCode: 1,
63
+ });
64
+ return;
65
+ }
66
+ const allow = loadEnforcementAllowlist(repoRoot);
67
+ const blocked = allow.block.includes(String(options.spec).toUpperCase().split('-')[0]?.toLowerCase() ?? '');
68
+ emitContinuing(global, `complete: ui-evidence ${blocked ? 'GATE' : 'warning'} — ${verdictReason}`);
44
69
  }
45
70
  }
46
71
  const args = ['node', 'scripts/audit/audit-spec-completion.js'];
@@ -1 +1 @@
1
- {"version":3,"file":"complete.js","sourceRoot":"","sources":["../../src/commands/complete.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"complete.js","sourceRoot":"","sources":["../../src/commands/complete.ts"],"names":[],"mappings":"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"}
@@ -99,6 +99,33 @@ export function runConformanceChecks() {
99
99
  }
100
100
  return `${cases.length} stage decisions correct (stub→tasks_generated + regulated honest-cap)`;
101
101
  });
102
+ // Issue #12 — the encoreos healthcare-domain divergences folded into the engine,
103
+ // config-driven. Proven against the PUBLISHED artifact so a consumer-adoption /
104
+ // pack-smoke run catches a regression in either fold.
105
+ guard('navigator:compliance-gating', () => {
106
+ const e1 = buildPipeline(ENCORE1_PIPELINE_SCHEMA, DEFAULT_PREDICATES);
107
+ // A PHI-bearing spec in a NON-regulated core (#1372): the compliance gate applies.
108
+ const phi = navSpec('fw', '---\nid: XX-1\ncore: fw\ntags:\n - phi\n---\n<!-- validated: 2026-01-01 -->\n<!-- spec-reviewed: 2026-01-01 -->\n');
109
+ if (!phi.signals.isSensitive)
110
+ throw new Error('expected PHI-tagged fw spec to be sensitive');
111
+ if (e1.computeStage(phi) !== 'reviewed') {
112
+ throw new Error(`PHI-bearing fw spec should hold at reviewed pending compliance, got ${e1.computeStage(phi)}`);
113
+ }
114
+ // Builder has no compliance stage — the widening cannot leak into it.
115
+ if (BUILDER_PIPELINE_SCHEMA.statusOrder.includes('compliance_reviewed')) {
116
+ throw new Error('builder layout must not carry a compliance_reviewed status');
117
+ }
118
+ return 'compliance gate widened to PHI-bearing (encore1), builder layout has no compliance stage';
119
+ });
120
+ guard('navigator:supersession', () => {
121
+ const e1 = buildPipeline(ENCORE1_PIPELINE_SCHEMA, DEFAULT_PREDICATES);
122
+ if (!e1.supersedeSoftGates)
123
+ throw new Error('encore1 layout should set supersedeSoftGates');
124
+ if (buildPipeline(BUILDER_PIPELINE_SCHEMA, DEFAULT_PREDICATES).supersedeSoftGates) {
125
+ throw new Error('builder layout must not supersede soft gates');
126
+ }
127
+ return 'encore1 supersedes soft gates (#1593); builder does not';
128
+ });
102
129
  return checks;
103
130
  }
104
131
  export function registerConformance(program) {
@@ -1 +1 @@
1
- {"version":3,"file":"conformance.js","sourceRoot":"","sources":["../../src/commands/conformance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conformance.js","sourceRoot":"","sources":["../../src/commands/conformance.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,10 @@ import { type BlockerRef, type Readiness } from '../lib/blockers.js';
3
3
  import { type ActorType } from '../lib/pipeline-map.js';
4
4
  import { type SessionState } from '../lib/session-state.js';
5
5
  import { type SpecFile } from '../lib/specs.js';
6
+ /** Build an advisory when an early-stage spec references tables that already exist
7
+ * in a migration — the signal that it may duplicate an existing feature. Exported
8
+ * for direct unit coverage of the early-stage gate + formatting. */
9
+ export declare function landscapeAdvisory(repoRoot: string, spec: SpecFile, migrationsRelDir?: string): string;
6
10
  export type NextAction = {
7
11
  type: string;
8
12
  specId: string;
@@ -11,14 +15,25 @@ export type NextAction = {
11
15
  actorType: ActorType;
12
16
  invocation: string;
13
17
  optional?: boolean;
18
+ /** Phase 1: a strictOnly parity gate (Finding A) is unmet under `next --strict` —
19
+ * rendered as a BLOCKING action (the gate must be satisfied before advancing).
20
+ * Only ever set when the navigator was invoked with `{ strict: true }`. */
21
+ blocking?: boolean;
14
22
  /** Disagreement between pipeline_status and on-disk artifacts, if any. */
15
23
  note?: string;
16
24
  /** Set for the implement/complete tail. */
17
25
  taskHint?: string;
18
26
  };
27
+ /** Options that shape the navigator recommendation. `strict` opts the Phase 1
28
+ * parity gates (Finding A: research-before-review, revalidate-after-review,
29
+ * compliance-for-sensitive) into the walk as BLOCKING; default keeps the bare-CLI
30
+ * behavior unchanged (those `strictOnly` stages are skipped). */
31
+ export type RecommendOptions = {
32
+ strict?: boolean;
33
+ };
19
34
  /** Disagreement between later artifacts and the first incomplete required gate
20
- * (e.g. tasks exist but validate-spec was never run). Optional and not-applicable
21
- * transitions never count, so only real out-of-order gaps are flagged. */
35
+ * (e.g. tasks exist but validate-spec was never run). Optional, strictOnly, and
36
+ * not-applicable transitions never count, so only real out-of-order gaps are flagged. */
22
37
  export declare function computeOutOfOrder(spec: SpecFile): string | undefined;
23
38
  /** Human-output blocker lines for `next --spec`: open blockers and unresolvable
24
39
  * (likely typo'd) blocked_by references. Cleared (complete) blockers are omitted. */
@@ -39,8 +54,9 @@ export declare function pickCorePick(repoRoot: string, ordered: Readiness[], opt
39
54
  }): Readiness | null;
40
55
  export declare function registerNext(program: Command): void;
41
56
  /** Walk the SSOT pipeline; return the first applicable, not-done transition, else the implement/complete tail.
42
- * An active session (STATE.md) on this spec short-circuits to resuming the in-progress task. */
43
- export declare function recommendAction(spec: SpecFile, session?: SessionState | null, repoRoot?: string): NextAction;
57
+ * An active session (STATE.md) on this spec short-circuits to resuming the in-progress task.
58
+ * `opts.strict` opts the Phase 1 `strictOnly` parity gates into the walk as BLOCKING. */
59
+ export declare function recommendAction(spec: SpecFile, session?: SessionState | null, repoRoot?: string, opts?: RecommendOptions): NextAction;
44
60
  /** True when TASKS.md carries at least one status marker we know how to read —
45
61
  * a GitHub checkbox (`[ ]`/`[x]`) or a ballot-box glyph (☐/☑/☒). Used to
46
62
  * distinguish "genuinely all complete" from "format we cannot parse". */
@@ -5,7 +5,8 @@ import { activeClaims, addClaim, DEFAULT_TTL_MINUTES, readClaims, withClaimLock
5
5
  import { findExistingTableReferences } from '../lib/coherence.js';
6
6
  import { resolveDiscoveryPaths } from '../lib/config.js';
7
7
  import { ErrorCode, emit, getGlobalOptions } from '../lib/output.js';
8
- import { computeStage, PIPELINE } from '../lib/pipeline-map.js';
8
+ import { shippedAction } from '../lib/next-action.js';
9
+ import { computeStage, isComplianceGated, isSupersededGate, PIPELINE, stageApplies, } from '../lib/pipeline-map.js';
9
10
  import { getRepoRoot } from '../lib/repo.js';
10
11
  import { readSessionState } from '../lib/session-state.js';
11
12
  import { isClaimedCompleteUnverified } from '../lib/spec-debt.js';
@@ -15,8 +16,9 @@ import { withEventLog } from '../lib/with-event-log.js';
15
16
  * "already-implemented table" advisory is actionable rather than noise. */
16
17
  const EARLY_STAGES = new Set([undefined, 'stub', 'clarified', 'validated']);
17
18
  /** Build an advisory when an early-stage spec references tables that already exist
18
- * in a migration — the signal that it may duplicate an existing feature. */
19
- function landscapeAdvisory(repoRoot, spec, migrationsRelDir) {
19
+ * in a migration — the signal that it may duplicate an existing feature. Exported
20
+ * for direct unit coverage of the early-stage gate + formatting. */
21
+ export function landscapeAdvisory(repoRoot, spec, migrationsRelDir) {
20
22
  if (!EARLY_STAGES.has(spec.signals.pipelineStatus))
21
23
  return '';
22
24
  const existing = findExistingTableReferences(repoRoot, spec.id, spec.core, migrationsRelDir);
@@ -27,10 +29,10 @@ function landscapeAdvisory(repoRoot, spec, migrationsRelDir) {
27
29
  return `\n\n⚠ landscape: ${existing.length} referenced table(s) already exist in migrations — confirm you're EXTENDING the owning spec, not duplicating it:\n${shown.join('\n')}${more}`;
28
30
  }
29
31
  /** Disagreement between later artifacts and the first incomplete required gate
30
- * (e.g. tasks exist but validate-spec was never run). Optional and not-applicable
31
- * transitions never count, so only real out-of-order gaps are flagged. */
32
+ * (e.g. tasks exist but validate-spec was never run). Optional, strictOnly, and
33
+ * not-applicable transitions never count, so only real out-of-order gaps are flagged. */
32
34
  export function computeOutOfOrder(spec) {
33
- const applicable = PIPELINE.filter((t) => !t.optional && !(t.regulatedOnly && !spec.signals.isRegulated));
35
+ const applicable = PIPELINE.filter((t) => !t.optional && !t.strictOnly && stageApplies(t, spec));
34
36
  const firstNotDone = applicable.findIndex((t) => !t.isDone(spec));
35
37
  const laterDone = firstNotDone >= 0 ? applicable.slice(firstNotDone + 1).find((t) => t.isDone(spec)) : undefined;
36
38
  return firstNotDone >= 0 && laterDone
@@ -82,10 +84,12 @@ export function registerNext(program) {
82
84
  .option('--spec <id>', 'Single spec id (preferred)')
83
85
  .option('--claim', 'Atomically reserve the returned core-pick (parallel-agent lease)', false)
84
86
  .option('--include-claimed', 'Include specs already claimed by another worktree', false)
87
+ .option('--strict', 'Enforce the Phase 1 mid-pipeline parity gates (research-before-review, revalidate-after-review, compliance-for-sensitive) as BLOCKING', false)
85
88
  .action(withEventLog('next', async (options, cmd) => {
86
89
  const global = getGlobalOptions(cmd);
87
90
  const repoRoot = getRepoRoot(global.repoRoot);
88
91
  const session = readSessionState(repoRoot);
92
+ const strict = Boolean(options.strict);
89
93
  if (options.spec) {
90
94
  const spec = findSpec(repoRoot, options.spec);
91
95
  if (!spec) {
@@ -101,7 +105,7 @@ export function registerNext(program) {
101
105
  text,
102
106
  });
103
107
  }
104
- const action = recommendAction(spec, session, repoRoot);
108
+ const action = recommendAction(spec, session, repoRoot, { strict });
105
109
  const outOfOrder = computeOutOfOrder(spec);
106
110
  // Blockers resolve against the WHOLE corpus — a blocker may live in any core.
107
111
  const [readiness] = computeReadiness([spec], listSpecs(repoRoot));
@@ -150,7 +154,7 @@ export function registerNext(program) {
150
154
  });
151
155
  }
152
156
  const first = choice.spec;
153
- const action = recommendAction(first, session, repoRoot);
157
+ const action = recommendAction(first, session, repoRoot, { strict });
154
158
  const readyCount = ordered.filter((r) => r.ready).length;
155
159
  if (!choice.ready) {
156
160
  const open = unclearedBlockers(choice)
@@ -174,8 +178,19 @@ export function registerNext(program) {
174
178
  }));
175
179
  }
176
180
  /** Walk the SSOT pipeline; return the first applicable, not-done transition, else the implement/complete tail.
177
- * An active session (STATE.md) on this spec short-circuits to resuming the in-progress task. */
178
- export function recommendAction(spec, session, repoRoot) {
181
+ * An active session (STATE.md) on this spec short-circuits to resuming the in-progress task.
182
+ * `opts.strict` opts the Phase 1 `strictOnly` parity gates into the walk as BLOCKING. */
183
+ export function recommendAction(spec, session, repoRoot, opts) {
184
+ const strict = Boolean(opts?.strict);
185
+ // A shipped spec (status:complete/implemented) is terminal: the lifecycle status
186
+ // overrides the artifact pipeline for an explicit `--spec` query, so the navigator
187
+ // never nags about gates an already-merged feature skipped. This mirrors the pure
188
+ // navigator (`recommendActionPure`) FIRST-LINE behavior byte-for-byte — without it,
189
+ // `next --spec <shipped>` walked the pipeline while Spec Studio returned `shipped`
190
+ // (pure↔CLI divergence on 171/871 corpus specs). The corpus-level pick already
191
+ // filters complete specs, so this only affects the explicit `--spec` path.
192
+ if (isCompleteStatus(spec.status))
193
+ return shippedAction(spec);
179
194
  if (session && session.specId.toUpperCase() === spec.id.toUpperCase()) {
180
195
  return {
181
196
  type: 'implement',
@@ -187,7 +202,9 @@ export function recommendAction(spec, session, repoRoot) {
187
202
  };
188
203
  }
189
204
  // Derived from artifacts only — mirror the same predicates the PIPELINE uses for isDone.
190
- const reviewStagesDone = spec.signals.isRegulated ? spec.signals.hasComplianceSignoff : spec.signals.hasSpecReview;
205
+ // A compliance-gated spec (regulated OR PHI-bearing, #1372) clears its review stage
206
+ // only with a compliance sign-off; everything else with a spec-review.
207
+ const reviewStagesDone = isComplianceGated(spec) ? spec.signals.hasComplianceSignoff : spec.signals.hasSpecReview;
191
208
  if (reviewStagesDone && !spec.signals.hasUserStories && !spec.signals.hasAcceptanceCriteria) {
192
209
  return {
193
210
  type: 'backfill-frontmatter',
@@ -201,12 +218,23 @@ export function recommendAction(spec, session, repoRoot) {
201
218
  for (const t of PIPELINE) {
202
219
  if (t.optional)
203
220
  continue; // advisories never block; surfaced separately
204
- if (t.regulatedOnly && !spec.signals.isRegulated)
221
+ // Phase 1 parity gates only participate under `--strict`. Default `next` is
222
+ // unchanged (the bare CLI keeps its prior recommendations); under `--strict`
223
+ // an unmet strictOnly gate returns a BLOCKING action.
224
+ if (t.strictOnly && !strict)
225
+ continue;
226
+ if (!stageApplies(t, spec))
205
227
  continue;
206
228
  // Artifacts are the single source of truth. `pipeline_status` is derived/cached
207
229
  // (see eos-spec reconcile) and is intentionally NOT consulted here.
208
230
  if (t.isDone(spec))
209
231
  continue;
232
+ // #1593 supersession: a soft early gate whose completesStatus already ranks
233
+ // below the computed stage (a later artifact exists) is treated as satisfied —
234
+ // the navigator routes to the real remaining work, not back to the early gap.
235
+ // The gap is still surfaced as an `outOfOrder` note, never silently dropped.
236
+ if (isSupersededGate(t, spec))
237
+ continue;
210
238
  return {
211
239
  type: t.id,
212
240
  specId: spec.id,
@@ -214,6 +242,7 @@ export function recommendAction(spec, session, repoRoot) {
214
242
  actor: t.actor,
215
243
  actorType: t.actorType,
216
244
  invocation: t.invocation(spec.id),
245
+ ...(t.strictOnly ? { blocking: true } : {}),
217
246
  };
218
247
  }
219
248
  return implementOrComplete(spec, repoRoot);
@@ -339,7 +368,13 @@ export function findIncompleteTaskHint(text) {
339
368
  return null;
340
369
  }
341
370
  function formatAction(specId, action) {
342
- const gate = action.actorType === 'human-gate' || action.actorType === 'agent' ? ' [human-gate]' : '';
371
+ // A strictOnly parity gate (under --strict) is BLOCKING it must be satisfied
372
+ // before advancing. That marker takes precedence over the human-gate label.
373
+ const gate = action.blocking
374
+ ? ' [BLOCKING]'
375
+ : action.actorType === 'human-gate' || action.actorType === 'agent'
376
+ ? ' [human-gate]'
377
+ : '';
343
378
  const hint = action.taskHint ? `\n hint: ${action.taskHint}` : '';
344
379
  const note = action.note ? `\n note: ${action.note}` : '';
345
380
  return `next [${specId}] → ${action.type}${gate}: ${action.reason}\n ▶ run: ${action.invocation}${hint}${note}`;
@@ -1 +1 @@
1
- {"version":3,"file":"next.js","sourceRoot":"","sources":["../../src/commands/next.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"next.js","sourceRoot":"","sources":["../../src/commands/next.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,7 @@
1
1
  import type { Command } from 'commander';
2
- export type ReconcileDirection = 'ok' | 'lagging' | 'overstated';
3
- /** Classify frontmatter status vs the artifact-derived stage. */
4
- export declare function classify(written: string | undefined, computed: string | undefined): ReconcileDirection;
5
- export type ReconcileRow = {
6
- id: string;
7
- core: string;
8
- written?: string;
9
- computed?: string;
10
- direction: ReconcileDirection;
11
- };
2
+ import { type ReconcileRow } from '../lib/reconcile-core.js';
3
+ export { classify } from '../lib/reconcile-core.js';
4
+ export type { ReconcileDirection, ReconcileRow } from '../lib/reconcile-core.js';
12
5
  /** Human-output scope label: `--spec` wins over `--core`; `--changed` → 'changed'; default `all`. */
13
6
  export declare function reconcileScopeLabel(opts: {
14
7
  spec?: string;
@@ -1,18 +1,13 @@
1
1
  import { execSync } from 'node:child_process';
2
- import { existsSync, readFileSync, writeFileSync } from 'node:fs';
3
- import { isAbsolute, join } from 'node:path';
4
- import { resolveTasksArtifact, setPipelineStatus, setTasksArtifact } from '../lib/frontmatter.js';
5
2
  import { ErrorCode, emit, getGlobalOptions } from '../lib/output.js';
6
- import { computeStage, rank } from '../lib/pipeline-map.js';
3
+ // The per-spec recompute+write lives in lib/reconcile-core.ts so the `signoff
4
+ // --reconcile` post-step shares ONE implementation (no divergence). The command
5
+ // re-exports the types/`classify` from there so existing importers are unchanged.
6
+ import { reconcileSpec } from '../lib/reconcile-core.js';
7
7
  import { getRepoRoot } from '../lib/repo.js';
8
8
  import { extractSpecId, listSpecs } from '../lib/specs.js';
9
9
  import { withEventLog } from '../lib/with-event-log.js';
10
- /** Classify frontmatter status vs the artifact-derived stage. */
11
- export function classify(written, computed) {
12
- if (written === computed)
13
- return 'ok';
14
- return rank(computed) > rank(written) ? 'lagging' : 'overstated';
15
- }
10
+ export { classify } from '../lib/reconcile-core.js';
16
11
  /** Human-output scope label: `--spec` wins over `--core`; `--changed` → 'changed'; default `all`. */
17
12
  export function reconcileScopeLabel(opts) {
18
13
  if (opts.spec)
@@ -137,33 +132,7 @@ export function registerReconcile(program) {
137
132
  if (options.spec) {
138
133
  specs = specs.filter((s) => s.id.toUpperCase() === String(options.spec).toUpperCase());
139
134
  }
140
- const rows = specs.map((spec) => {
141
- const computed = computeStage(spec);
142
- const written = spec.signals.pipelineStatus;
143
- const direction = classify(written, computed);
144
- if (options.write && computed) {
145
- const original = readFileSync(spec.path, 'utf8');
146
- let text = original;
147
- if (direction !== 'ok')
148
- text = setPipelineStatus(text, computed);
149
- // Materialize artifacts.tasks alongside pipeline_status so a spec that
150
- // reaches tasks_generated satisfies the pipeline-status validator
151
- // (pipeline/missing-tasks-artifact) without hand-editing (#997 Bug 2).
152
- // Non-destructive: a VALID existing pointer (canonical or not — many
153
- // specs use `<id>-credentialing-compliance-TASKS.md` etc.) is preserved.
154
- // Only an absent or stale (dangling) pointer is set to the canonical
155
- // path, and only when that canonical file actually exists (#16).
156
- if (spec.hasTasks) {
157
- const fileExists = (rel) => existsSync(isAbsolute(rel) ? rel : join(repoRoot, rel));
158
- const next = resolveTasksArtifact(text, `specs/${spec.core}/tasks/${spec.id}-TASKS.md`, fileExists);
159
- if (next)
160
- text = setTasksArtifact(text, next);
161
- }
162
- if (text !== original)
163
- writeFileSync(spec.path, text, 'utf8');
164
- }
165
- return { id: spec.id, core: spec.core, written, computed, direction };
166
- });
135
+ const rows = specs.map((spec) => reconcileSpec(repoRoot, spec, Boolean(options.write)));
167
136
  const diverged = rows.filter((r) => r.direction !== 'ok');
168
137
  const overstated = diverged.filter((r) => r.direction === 'overstated');
169
138
  emit(global, {
@@ -1 +1 @@
1
- {"version":3,"file":"reconcile.js","sourceRoot":"","sources":["../../src/commands/reconcile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reconcile.js","sourceRoot":"","sources":["../../src/commands/reconcile.ts"],"names":[],"mappings":"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"}