specrails-core 5.1.1 → 5.2.1

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.
@@ -102,6 +102,8 @@ export function validatePipelineContext(input) {
102
102
  fail('Invalid acceptance criteria');
103
103
  return { id: spec.id, title: spec.title, description: spec.description, ...(spec.repositoryIds ? { repositoryIds: spec.repositoryIds } : {}), ...(spec.acceptanceCriteria ? { acceptanceCriteria: spec.acceptanceCriteria } : {}) };
104
104
  });
105
+ if (!specs.length || new Set(specs.map(spec => String(spec.id))).size !== specs.length)
106
+ fail('Frozen scope needs unique nonempty specs');
105
107
  const backlogRoot = directory(data.backlogRoot);
106
108
  const backlogPath = data.backlogPath === undefined ? path.join(backlogRoot, '.specrails', 'local-tickets.json') : String(data.backlogPath);
107
109
  if (!path.isAbsolute(backlogPath) || !within(backlogRoot, path.resolve(backlogPath)))
@@ -359,6 +361,101 @@ function taskGate(state) {
359
361
  if (!/^\s*-\s+\[x\]/m.test(tasks) || /^\s*-\s+\[ \]/m.test(tasks))
360
362
  fail('Required implementation tasks remain incomplete');
361
363
  }
364
+ /** Stable indices refer to the frozen scope, never to rewritten design text.
365
+ * When no explicit AC list exists, the frozen description is the requirement. */
366
+ function frozenCriteria(context) {
367
+ return context.specs.flatMap(spec => (spec.acceptanceCriteria?.length ? spec.acceptanceCriteria : [spec.description || spec.title])
368
+ .map((requirement, criterionIndex) => ({ specId: String(spec.id), criterionIndex, requirement })));
369
+ }
370
+ function nonempty(value) { return typeof value === 'string' && value.trim().length > 0; }
371
+ function evidence(value) { return Array.isArray(value) && value.length > 0 && value.every(nonempty); }
372
+ function acceptanceReport(context, input) {
373
+ const report = object(input);
374
+ const expected = frozenCriteria(context);
375
+ if (!Array.isArray(report.criteria) || report.criteria.length !== expected.length)
376
+ fail('Acceptance must cover every frozen requirement exactly once');
377
+ const seen = new Set();
378
+ const criteria = report.criteria.map((raw) => {
379
+ const row = object(raw);
380
+ const match = expected.find(item => item.specId === row.specId && item.criterionIndex === row.criterionIndex);
381
+ const key = String(row.specId) + ':' + String(row.criterionIndex);
382
+ if (!match || match.requirement !== row.requirement || seen.has(key))
383
+ fail('Acceptance requirement differs from frozen scope or is duplicated');
384
+ seen.add(key);
385
+ if (!['met', 'exception', 'blocked', 'pending'].includes(String(row.status)) || !evidence(row.evidence))
386
+ fail('Acceptance needs a valid status and concrete evidence for every requirement');
387
+ let exception;
388
+ if (row.status === 'exception') {
389
+ const entry = object(row.exception);
390
+ if (!nonempty(entry.reason) || !nonempty(entry.impact) || typeof entry.material !== 'boolean'
391
+ || !['reviewer', 'user', 'host'].includes(String(entry.acceptedBy)) || !nonempty(entry.approvalEvidence))
392
+ fail('Exception needs reason, impact and recorded acceptance');
393
+ if (entry.material && entry.acceptedBy === 'reviewer')
394
+ fail('Material scope exceptions require user or host acceptance');
395
+ exception = entry;
396
+ }
397
+ else if (row.exception !== undefined)
398
+ fail('Exception details require exception status');
399
+ return { ...match, status: row.status, evidence: row.evidence, ...(exception ? { exception } : {}) };
400
+ });
401
+ if (!Array.isArray(report.checks) || !Array.isArray(report.findings) || !report.findings.every(nonempty))
402
+ fail('Acceptance needs checks and findings arrays');
403
+ const checks = report.checks.map((raw) => {
404
+ const check = object(raw);
405
+ if (!nonempty(check.name) || !['passed', 'failed', 'unavailable'].includes(String(check.status)) || typeof check.required !== 'boolean'
406
+ || !evidence(check.evidence) || !nonempty(check.scope) || !nonempty(check.limitations))
407
+ fail('Check needs status, evidence, measurement scope and limitations');
408
+ return { name: check.name, status: check.status, required: check.required, evidence: check.evidence, scope: check.scope, limitations: check.limitations };
409
+ });
410
+ return { criteria, checks, findings: report.findings };
411
+ }
412
+ function inspectAcceptance(state) {
413
+ const receipt = state.acceptance;
414
+ if (!receipt)
415
+ return { valid: false, status: 'pending', reasons: ['No acceptance evidence'] };
416
+ const reasons = [];
417
+ try {
418
+ acceptanceReport(state.context, receipt);
419
+ }
420
+ catch (error) {
421
+ return { valid: false, status: 'blocked', reasons: [error instanceof Error ? error.message : String(error)] };
422
+ }
423
+ if (receipt.scopeHash !== state.scopeHash || receipt.candidateHash !== fingerprintCandidate(state) || receipt.artifactHash !== artifactFingerprint(state))
424
+ reasons.push('Acceptance evidence is stale');
425
+ for (const row of receipt.criteria ?? [])
426
+ if (row.status === 'blocked' || row.status === 'pending')
427
+ reasons.push('Unresolved requirement: ' + row.requirement);
428
+ for (const check of receipt.checks ?? [])
429
+ if (check.required && check.status !== 'passed')
430
+ reasons.push('Required check did not pass: ' + check.name);
431
+ const exceptions = receipt.criteria?.some(row => row.status === 'exception') || receipt.checks?.some(check => check.status !== 'passed');
432
+ return { valid: reasons.length === 0, status: reasons.length ? 'blocked' : exceptions ? 'with-exceptions' : 'verified', reasons, receipt };
433
+ }
434
+ function acceptanceGate(state) {
435
+ const acceptance = inspectAcceptance(state);
436
+ if (!acceptance.valid)
437
+ fail('Acceptance blocked: ' + acceptance.reasons.join('; '));
438
+ }
439
+ export function recordAcceptance(contextInput, input) {
440
+ const context = validatePipelineContext(contextInput);
441
+ const report = acceptanceReport(context, input);
442
+ return locked(context, () => {
443
+ const state = readState(context);
444
+ if (state.phases.developer.status !== 'done' || state.phases.archive.status === 'done')
445
+ fail('Record acceptance after development and before archive');
446
+ state.acceptance = { ...report, scopeHash: state.scopeHash, candidateHash: fingerprintCandidate(state), artifactHash: artifactFingerprint(state), recordedAt: new Date().toISOString() };
447
+ // Replacing even just an exception decision requires a new review/approval.
448
+ for (const phase of PHASES.slice(2)) {
449
+ if (phase === 'reviewer' && state.phases[phase].status === 'running')
450
+ continue;
451
+ const { durationMs, attempts } = state.phases[phase];
452
+ state.phases[phase] = { status: 'pending', durationMs, attempts };
453
+ }
454
+ state.archiveApproval = undefined;
455
+ saveState(state);
456
+ return state;
457
+ });
458
+ }
362
459
  export function checkArchive(contextInput) {
363
460
  const context = validatePipelineContext(contextInput);
364
461
  return locked(context, () => {
@@ -377,7 +474,8 @@ export function checkArchive(contextInput) {
377
474
  fail('Architecture artifacts changed after design approval');
378
475
  taskGate(state);
379
476
  confidenceGate(state);
380
- state.archiveApproval = { candidateHash: fingerprintCandidate(state), artifactHash: artifactFingerprint(state), confidenceHash: digest(readFileSync(path.join(activeArtifactPath(state), 'confidence-score.json'))) };
477
+ acceptanceGate(state);
478
+ state.archiveApproval = { candidateHash: fingerprintCandidate(state), artifactHash: artifactFingerprint(state), confidenceHash: digest(readFileSync(path.join(activeArtifactPath(state), 'confidence-score.json'))), acceptanceHash: digest(canonical(state.acceptance)) };
381
479
  saveState(state);
382
480
  return state;
383
481
  });
@@ -399,6 +497,13 @@ export function transitionPipeline(contextInput, phase, status, reason) {
399
497
  if (before.some((p) => !['done', 'skipped'].includes(state.phases[p].status)))
400
498
  fail('A required earlier phase is incomplete');
401
499
  }
500
+ const previous = state.phases[phase];
501
+ const now = new Date().toISOString();
502
+ const timing = { attempts: previous.attempts ?? 0, durationMs: previous.durationMs ?? 0 };
503
+ if (previous.status === 'running' && previous.startedAt)
504
+ timing.durationMs += Math.max(0, Date.parse(now) - Date.parse(previous.startedAt));
505
+ if (status === 'running' && previous.status !== 'running')
506
+ timing.attempts += 1;
402
507
  if (status === 'done') {
403
508
  if (phase === 'architect') {
404
509
  const root = activeArtifactPath(state);
@@ -420,8 +525,10 @@ export function transitionPipeline(contextInput, phase, status, reason) {
420
525
  if (!verification.valid)
421
526
  fail('Fresh full verification required: ' + verification.reasons.join('; '));
422
527
  }
423
- if (phase === 'reviewer')
528
+ if (phase === 'reviewer') {
424
529
  confidenceGate(state);
530
+ acceptanceGate(state);
531
+ }
425
532
  if (phase === 'archive') {
426
533
  const archiveRoot = path.join(context.artifactRoot, 'openspec', 'changes', 'archive');
427
534
  const candidates = existsSync(archiveRoot) ? readdirSync(archiveRoot).filter((name) => name.endsWith('-' + state.change)) : [];
@@ -432,13 +539,13 @@ export function transitionPipeline(contextInput, phase, status, reason) {
432
539
  taskGate(state);
433
540
  confidenceGate(state);
434
541
  const approval = state.archiveApproval;
435
- if (!approval || approval.candidateHash !== fingerprintCandidate(state) || approval.artifactHash !== artifactFingerprint(state) || approval.confidenceHash !== digest(readFileSync(path.join(activeArtifactPath(state), 'confidence-score.json'))))
542
+ if (!approval || approval.acceptanceHash !== digest(canonical(state.acceptance)) || approval.candidateHash !== fingerprintCandidate(state) || approval.artifactHash !== artifactFingerprint(state) || approval.confidenceHash !== digest(readFileSync(path.join(activeArtifactPath(state), 'confidence-score.json'))))
436
543
  fail('Archive was not authorized for this exact reviewed candidate');
437
544
  }
438
- state.phases[phase] = { status, candidateHash: fingerprintCandidate(state), artifactHash: artifactFingerprint(state), completedAt: new Date().toISOString() };
545
+ state.phases[phase] = { ...timing, status, candidateHash: fingerprintCandidate(state), artifactHash: artifactFingerprint(state), completedAt: new Date().toISOString() };
439
546
  }
440
547
  else {
441
- state.phases[phase] = { status, ...(reason ? { reason } : {}) };
548
+ state.phases[phase] = { ...timing, status, ...(status === 'running' ? { startedAt: now } : {}), ...(reason ? { reason } : {}) };
442
549
  if (status === 'running')
443
550
  for (const later of PHASES.slice(PHASES.indexOf(phase) + 1))
444
551
  state.phases[later] = { status: 'pending' };
@@ -474,7 +581,19 @@ export function inspectPipeline(contextInput) {
474
581
  }
475
582
  if (!verification.valid && state.phases.developer.status === 'done' && (resumePhase === null || ['archive', 'ship', 'ci'].includes(resumePhase)))
476
583
  resumePhase = 'reviewer';
477
- return { schemaVersion: 1, runId: context.runId, change: state.change, context, stateDir: pipelineStateDirectory(context), resumePhase, phases: state.phases, verification };
584
+ const acceptance = inspectAcceptance(state);
585
+ if (!acceptance.valid && state.phases.reviewer.status === 'done' && (resumePhase === null || ['archive', 'ship', 'ci'].includes(resumePhase)))
586
+ resumePhase = 'reviewer';
587
+ const reviewed = state.phases.reviewer.status === 'done';
588
+ const completion = {
589
+ implementation: state.phases.developer.status === 'done' && state.phases.architect.artifactHash === artifactFingerprint(state)
590
+ && (state.phases.developer.candidateHash === candidate || (reviewed && state.phases.reviewer.candidateHash === candidate)) ? 'complete' : 'incomplete',
591
+ validation: !verification.valid ? 'blocked' : !reviewed ? 'pending' : acceptance.status,
592
+ archive: state.phases.archive.status,
593
+ delivery: context.ownership.git === 'host' ? 'pending-host' : state.phases.ship.status === 'done' && state.phases.ci.status === 'done' ? 'complete' : 'pending',
594
+ reasons: [...verification.reasons, ...acceptance.reasons],
595
+ };
596
+ return { schemaVersion: 1, runId: context.runId, change: state.change, context, stateDir: pipelineStateDirectory(context), resumePhase, phases: state.phases, verification, acceptance, completion };
478
597
  }
479
598
  function validateCommand(context, raw) {
480
599
  const command = object(raw);
@@ -766,6 +885,11 @@ export async function runPipelineCommand(flags, positionals) {
766
885
  case 'phase':
767
886
  result = transitionPipeline(context, String(flags.phase), String(flags.status), typeof flags.reason === 'string' ? flags.reason : undefined);
768
887
  break;
888
+ case 'acceptance':
889
+ if (typeof flags.request !== 'string')
890
+ fail('Provide --request with acceptance evidence JSON');
891
+ result = recordAcceptance(context, readJson(flags.request));
892
+ break;
769
893
  case 'archive-check':
770
894
  result = checkArchive(context);
771
895
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline-state.js","sourceRoot":"","sources":["../../../src/installer/runtime/pipeline-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeline-state.js","sourceRoot":"","sources":["../../../src/installer/runtime/pipeline-state.ts"],"names":[],"mappings":"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"}
@@ -51,3 +51,46 @@ make paid model calls or claim identical behavior across every native CLI releas
51
51
 
52
52
  See [Core installation and update consistency](core-updates.md) for version
53
53
  selection, rollback and Desktop integration.
54
+
55
+
56
+ ## Acceptance evidence and completion
57
+
58
+
59
+ After development, normal review MUST write `stateDir/acceptance.json` and run
60
+ `acceptance --request <absolute-path>` before `phase --phase reviewer --status done`.
61
+ The request is `{criteria: [...], checks: [...], findings: [...]}`:
62
+ - Each criterion has `specId` (string), `criterionIndex` (zero-based), `requirement`
63
+ (exact frozen text), `status` (`met`, `exception`, `blocked`, `pending`) and a
64
+ nonempty `evidence` array of concrete code/test/capture references and observations.
65
+ Cover every frozen acceptance criterion once. If a spec has no explicit criteria,
66
+ use its complete frozen description (or title if empty) at index 0.
67
+ - An `exception` MUST include `{reason, impact, material, acceptedBy, approvalEvidence}`.
68
+ `acceptedBy` is `reviewer`, `user`, or `host`. Material scope changes require actual
69
+ user/host authorization; do not invent approval or label material changes minor.
70
+ Previously authorized decisions need no new confirmation. Unresolved requirements
71
+ remain `blocked` or `pending`, never `met` through a rewritten interpretation.
72
+ - Each check has `{name, status, required, evidence, scope, limitations}`; status is
73
+ `passed`, `failed`, or `unavailable`. Include required and supplementary checks from
74
+ the design. Record the original required classification; never downgrade a failed
75
+ check to make the gate pass. For benchmarks state what is measured and excluded:
76
+ a Node microbenchmark does not establish browser Canvas/GPU/frame performance.
77
+ - `findings` lists concrete review conclusions, risks and resolutions; use an empty
78
+ array only when no findings remain. Numeric confidence cannot replace this report.
79
+
80
+ The runtime binds this evidence to frozen scope, source and design. Missing/stale
81
+ acceptance or unresolved requirements/required checks block review and archive.
82
+ Accepted exceptions and supplementary failures produce `with-exceptions` validation.
83
+ Replacing the report requires review and archive authorization again; a green command
84
+ receipt alone is insufficient. Evidence references and approval attribution remain
85
+ reviewer assertions, not independently authenticated proof of human approval.
86
+
87
+ Keep operational completion notes, check requests and reports in `stateDir` from
88
+ start to finish. Run scoped checks for repairs and one final full verification after
89
+ all edits. Reuse that full receipt while runtime status says it is valid and its
90
+ commands cover required checks. New prose/phase handoffs alone do not warrant reruns.
91
+
92
+ End with ONE concise summary from runtime `status.completion`: implementation,
93
+ validation (including exceptions), archive, delivery, and evidence references.
94
+ Host-owned delivery stays `pending-host`; do not call uncommitted files "landed".
95
+ Report phase durations/attempts from `status.phases`; report per-phase cost only when
96
+ provider telemetry attributes it, otherwise unavailable. Do not invent cost splits.
@@ -259,12 +259,15 @@
259
259
  "status",
260
260
  "phase",
261
261
  "verify",
262
+ "acceptance",
262
263
  "archive-check",
263
264
  "preview",
264
265
  "apply-preview"
265
266
  ],
266
267
  "statePath": "<backlogRoot>/.specrails/pipeline/<runId>/state.json",
267
268
  "verification": "Successful argv-based commands captured by the runtime, bound to frozen scope, candidate files and relevant execution environment. Unknown or stale evidence cannot pass archive.",
268
- "hostOwnership": "Host worktrees are used directly; host git/backlog are not mutated by Core delivery."
269
+ "hostOwnership": "Host worktrees are used directly; host git/backlog are not mutated by Core delivery.",
270
+ "acceptance": "acceptance --request JSON records every exact frozen requirement, evidence, exception authority, check scope/limitations and findings. Required by reviewer done/archive-check; bound to scope, candidate and design.",
271
+ "completion": "status.completion separates implementation, validation (verified|with-exceptions|pending|blocked), archive and delivery (pending-host|complete|pending); status.phases includes observed durationMs and attempts."
269
272
  }
270
273
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specrails-core",
3
- "version": "5.1.1",
3
+ "version": "5.2.1",
4
4
  "description": "Provider-independent AI agent workflow system for Claude Code, Codex, Gemini CLI, and Kimi Code",
5
5
  "type": "module",
6
6
  "bin": {
@@ -313,3 +313,12 @@ This is non-negotiable for code-navigation work: plugin authors choose tools bec
313
313
  - Is this a symbol/reference/definition lookup? → MCP tool, not `Grep`/`Read`.
314
314
  - Am I about to read a file just to edit one function? → MCP tool, not `Read` + `Edit`.
315
315
  - No documented MCP tool fits the current need? → built-in, document why in your reasoning.
316
+
317
+
318
+ ## Acceptance and measurement plan
319
+
320
+ Map frozen requirements to behavioral evidence before implementation. Declare required
321
+ and supplementary checks and their measurement scope/limitations. Visual work needs
322
+ real rendered evidence at supported viewports and peak effect states; browser frame
323
+ performance needs browser measurements. Flag contradictory requirements and material
324
+ scope interpretations explicitly; do not weaken frozen acceptance text in the design.
@@ -272,3 +272,12 @@ Guidelines:
272
272
  ## MEMORY.md
273
273
 
274
274
  Your MEMORY.md is currently empty.
275
+
276
+
277
+ ## Verification evidence handoff
278
+
279
+ Keep operational notes and check requests under runtime `stateDir`, outside the design
280
+ artifacts. Supply evidence per frozen requirement and report failed/unavailable checks.
281
+ Declare benchmark scope and exclusions; Node timings do not prove browser frame time.
282
+ Use scoped checks during repairs and one final full receipt, reused while valid.
283
+ Return a concise handoff; the coordinator owns the single final run summary.
@@ -369,3 +369,14 @@ This is non-negotiable for code-navigation work: plugin authors choose tools bec
369
369
  - Is this a symbol/reference/definition lookup? → MCP tool, not `Grep`/`Read`.
370
370
  - Am I about to read a file just to edit one function? → MCP tool, not `Read` + `Edit`.
371
371
  - No documented MCP tool fits the current need? → built-in, document why in your reasoning.
372
+
373
+
374
+ ## Structured acceptance handoff
375
+
376
+ Follow the executable pipeline acceptance contract. Return a `stateDir/acceptance.json`
377
+ request covering every frozen requirement with evidence, explicit exceptions, required
378
+ and supplementary checks (including benchmark scope/limitations), and concrete findings.
379
+ Have the coordinator record it with `acceptance --request` before reviewer done and
380
+ archive-check. Inspect visual evidence at supported viewports and extreme states for
381
+ visual changes. A confidence score or checked tasks cannot substitute for acceptance.
382
+ Do not self-authorize material scope changes; cite actual existing user/host decisions.
@@ -312,3 +312,12 @@ state is corrupt, etc.), instead reply with:
312
312
 
313
313
  and end your turn. Do not invent fake plans or empty OpenSpec
314
314
  packages to keep the pipeline moving.
315
+
316
+
317
+ ## Acceptance and measurement plan
318
+
319
+ Map frozen requirements to behavioral evidence before implementation. Declare required
320
+ and supplementary checks and their measurement scope/limitations. Visual work needs
321
+ real rendered evidence at supported viewports and peak effect states; browser frame
322
+ performance needs browser measurements. Flag contradictory requirements and material
323
+ scope interpretations explicitly; do not weaken frozen acceptance text in the design.
@@ -205,3 +205,12 @@ no executable behaviour to test), reply with:
205
205
 
206
206
  and end your turn. Do not invent half-implementations or
207
207
  skip the RED step to pretend a task was completed.
208
+
209
+
210
+ ## Verification evidence handoff
211
+
212
+ Keep operational notes and check requests under runtime `stateDir`, outside the design
213
+ artifacts. Supply evidence per frozen requirement and report failed/unavailable checks.
214
+ Declare benchmark scope and exclusions; Node timings do not prove browser frame time.
215
+ Use scoped checks during repairs and one final full receipt, reused while valid.
216
+ Return a concise handoff; the coordinator owns the single final run summary.
@@ -289,3 +289,14 @@ Verdict: <"clean" | "fix needed: <one-sentence>" | "blocked: <reason>">
289
289
  Then end your turn. The orchestrator decides whether to spawn
290
290
  a second developer pass (if "fix needed") or to close the
291
291
  ticket (if "clean").
292
+
293
+
294
+ ## Structured acceptance handoff
295
+
296
+ Follow the executable pipeline acceptance contract. Return a `stateDir/acceptance.json`
297
+ request covering every frozen requirement with evidence, explicit exceptions, required
298
+ and supplementary checks (including benchmark scope/limitations), and concrete findings.
299
+ Have the coordinator record it with `acceptance --request` before reviewer done and
300
+ archive-check. Inspect visual evidence at supported viewports and extreme states for
301
+ visual changes. A confidence score or checked tasks cannot substitute for acceptance.
302
+ Do not self-authorize material scope changes; cite actual existing user/host decisions.
@@ -247,3 +247,45 @@ Only Core-owned backlog can close after all required delivery succeeds. First co
247
247
  ## Completion
248
248
 
249
249
  Report run/change, frozen tickets/roots, phase statuses, actual receipt commands, acceptance, confidence, archive and per-repository delivery. Distinguish reused evidence, newly executed checks and gaps. Keep failure excerpts bounded and refer to durable receipts. Missing workers, failed gates or incomplete required repositories stay blocked/failed, never falsely complete.
250
+
251
+
252
+ ### Acceptance evidence and completion
253
+
254
+ After development, normal review MUST write `stateDir/acceptance.json` and run
255
+ `acceptance --request <absolute-path>` before `phase --phase reviewer --status done`.
256
+ The request is `{criteria: [...], checks: [...], findings: [...]}`:
257
+ - Each criterion has `specId` (string), `criterionIndex` (zero-based), `requirement`
258
+ (exact frozen text), `status` (`met`, `exception`, `blocked`, `pending`) and a
259
+ nonempty `evidence` array of concrete code/test/capture references and observations.
260
+ Cover every frozen acceptance criterion once. If a spec has no explicit criteria,
261
+ use its complete frozen description (or title if empty) at index 0.
262
+ - An `exception` MUST include `{reason, impact, material, acceptedBy, approvalEvidence}`.
263
+ `acceptedBy` is `reviewer`, `user`, or `host`. Material scope changes require actual
264
+ user/host authorization; do not invent approval or label material changes minor.
265
+ Previously authorized decisions need no new confirmation. Unresolved requirements
266
+ remain `blocked` or `pending`, never `met` through a rewritten interpretation.
267
+ - Each check has `{name, status, required, evidence, scope, limitations}`; status is
268
+ `passed`, `failed`, or `unavailable`. Include required and supplementary checks from
269
+ the design. Record the original required classification; never downgrade a failed
270
+ check to make the gate pass. For benchmarks state what is measured and excluded:
271
+ a Node microbenchmark does not establish browser Canvas/GPU/frame performance.
272
+ - `findings` lists concrete review conclusions, risks and resolutions; use an empty
273
+ array only when no findings remain. Numeric confidence cannot replace this report.
274
+
275
+ The runtime binds this evidence to frozen scope, source and design. Missing/stale
276
+ acceptance or unresolved requirements/required checks block review and archive.
277
+ Accepted exceptions and supplementary failures produce `with-exceptions` validation.
278
+ Replacing the report requires review and archive authorization again; a green command
279
+ receipt alone is insufficient. Evidence references and approval attribution remain
280
+ reviewer assertions, not independently authenticated proof of human approval.
281
+
282
+ Keep operational completion notes, check requests and reports in `stateDir` from
283
+ start to finish. Run scoped checks for repairs and one final full verification after
284
+ all edits. Reuse that full receipt while runtime status says it is valid and its
285
+ commands cover required checks. New prose/phase handoffs alone do not warrant reruns.
286
+
287
+ End with ONE concise summary from runtime `status.completion`: implementation,
288
+ validation (including exceptions), archive, delivery, and evidence references.
289
+ Host-owned delivery stays `pending-host`; do not call uncommitted files "landed".
290
+ Report phase durations/attempts from `status.phases`; report per-phase cost only when
291
+ provider telemetry attributes it, otherwise unavailable. Do not invent cost splits.
@@ -53,3 +53,45 @@ verification block success. Record reviewer done after semantic review, then run
53
53
  `archive-check`. ONLY a successful gate authorizes reviewer archive-only execution.
54
54
  Verify the archive exists and the active change is gone before recording archive
55
55
  done. Never archive inside an ordinary review before the combined gates run.
56
+
57
+
58
+ ### Acceptance evidence and completion
59
+
60
+ After development, normal review MUST write `stateDir/acceptance.json` and run
61
+ `acceptance --request <absolute-path>` before `phase --phase reviewer --status done`.
62
+ The request is `{criteria: [...], checks: [...], findings: [...]}`:
63
+ - Each criterion has `specId` (string), `criterionIndex` (zero-based), `requirement`
64
+ (exact frozen text), `status` (`met`, `exception`, `blocked`, `pending`) and a
65
+ nonempty `evidence` array of concrete code/test/capture references and observations.
66
+ Cover every frozen acceptance criterion once. If a spec has no explicit criteria,
67
+ use its complete frozen description (or title if empty) at index 0.
68
+ - An `exception` MUST include `{reason, impact, material, acceptedBy, approvalEvidence}`.
69
+ `acceptedBy` is `reviewer`, `user`, or `host`. Material scope changes require actual
70
+ user/host authorization; do not invent approval or label material changes minor.
71
+ Previously authorized decisions need no new confirmation. Unresolved requirements
72
+ remain `blocked` or `pending`, never `met` through a rewritten interpretation.
73
+ - Each check has `{name, status, required, evidence, scope, limitations}`; status is
74
+ `passed`, `failed`, or `unavailable`. Include required and supplementary checks from
75
+ the design. Record the original required classification; never downgrade a failed
76
+ check to make the gate pass. For benchmarks state what is measured and excluded:
77
+ a Node microbenchmark does not establish browser Canvas/GPU/frame performance.
78
+ - `findings` lists concrete review conclusions, risks and resolutions; use an empty
79
+ array only when no findings remain. Numeric confidence cannot replace this report.
80
+
81
+ The runtime binds this evidence to frozen scope, source and design. Missing/stale
82
+ acceptance or unresolved requirements/required checks block review and archive.
83
+ Accepted exceptions and supplementary failures produce `with-exceptions` validation.
84
+ Replacing the report requires review and archive authorization again; a green command
85
+ receipt alone is insufficient. Evidence references and approval attribution remain
86
+ reviewer assertions, not independently authenticated proof of human approval.
87
+
88
+ Keep operational completion notes, check requests and reports in `stateDir` from
89
+ start to finish. Run scoped checks for repairs and one final full verification after
90
+ all edits. Reuse that full receipt while runtime status says it is valid and its
91
+ commands cover required checks. New prose/phase handoffs alone do not warrant reruns.
92
+
93
+ End with ONE concise summary from runtime `status.completion`: implementation,
94
+ validation (including exceptions), archive, delivery, and evidence references.
95
+ Host-owned delivery stays `pending-host`; do not call uncommitted files "landed".
96
+ Report phase durations/attempts from `status.phases`; report per-phase cost only when
97
+ provider telemetry attributes it, otherwise unavailable. Do not invent cost splits.