@devflow-tools/delivery-line 0.18.19 → 0.18.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 (68) hide show
  1. package/dist/adapters/delivery-package.d.ts.map +1 -1
  2. package/dist/adapters/delivery-package.js +2 -1
  3. package/dist/adapters/delivery-package.js.map +1 -1
  4. package/dist/adapters/integration.d.ts +7 -0
  5. package/dist/adapters/integration.d.ts.map +1 -1
  6. package/dist/adapters/integration.js +11 -0
  7. package/dist/adapters/integration.js.map +1 -1
  8. package/dist/adapters/plugin-capability.d.ts +14 -0
  9. package/dist/adapters/plugin-capability.d.ts.map +1 -0
  10. package/dist/adapters/plugin-capability.js +61 -0
  11. package/dist/adapters/plugin-capability.js.map +1 -0
  12. package/dist/adapters/verification.d.ts +1 -0
  13. package/dist/adapters/verification.d.ts.map +1 -1
  14. package/dist/adapters/verification.js +60 -2
  15. package/dist/adapters/verification.js.map +1 -1
  16. package/dist/adapters/workflow-execution.d.ts +6 -0
  17. package/dist/adapters/workflow-execution.d.ts.map +1 -1
  18. package/dist/adapters/workflow-execution.js +61 -6
  19. package/dist/adapters/workflow-execution.js.map +1 -1
  20. package/dist/artifacts/artifact-contract.d.ts.map +1 -1
  21. package/dist/artifacts/artifact-contract.js +7 -6
  22. package/dist/artifacts/artifact-contract.js.map +1 -1
  23. package/dist/composition.d.ts +1 -1
  24. package/dist/composition.d.ts.map +1 -1
  25. package/dist/composition.js +18 -1
  26. package/dist/composition.js.map +1 -1
  27. package/dist/domain/plugin-capability.d.ts +33 -0
  28. package/dist/domain/plugin-capability.d.ts.map +1 -1
  29. package/dist/domain/plugin-capability.js +16 -0
  30. package/dist/domain/plugin-capability.js.map +1 -1
  31. package/dist/domain/types.d.ts +96 -2
  32. package/dist/domain/types.d.ts.map +1 -1
  33. package/dist/domain/types.js.map +1 -1
  34. package/dist/facade/delivery-line-facade.d.ts +8 -0
  35. package/dist/facade/delivery-line-facade.d.ts.map +1 -1
  36. package/dist/facade/delivery-line-facade.js +157 -27
  37. package/dist/facade/delivery-line-facade.js.map +1 -1
  38. package/dist/index.d.ts +2 -0
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +2 -0
  41. package/dist/index.js.map +1 -1
  42. package/dist/persistence/memory-store.js +1 -1
  43. package/dist/persistence/memory-store.js.map +1 -1
  44. package/dist/persistence/sqlite-store.js +1 -1
  45. package/dist/persistence/sqlite-store.js.map +1 -1
  46. package/dist/ports/index.d.ts +116 -3
  47. package/dist/ports/index.d.ts.map +1 -1
  48. package/dist/runtime/context-binder.d.ts +15 -0
  49. package/dist/runtime/context-binder.d.ts.map +1 -1
  50. package/dist/runtime/context-binder.js +26 -7
  51. package/dist/runtime/context-binder.js.map +1 -1
  52. package/dist/runtime/execution-coordinator.d.ts +12 -1
  53. package/dist/runtime/execution-coordinator.d.ts.map +1 -1
  54. package/dist/runtime/execution-coordinator.js +204 -46
  55. package/dist/runtime/execution-coordinator.js.map +1 -1
  56. package/dist/runtime/memory-writeback.d.ts +8 -0
  57. package/dist/runtime/memory-writeback.d.ts.map +1 -1
  58. package/dist/runtime/memory-writeback.js +12 -2
  59. package/dist/runtime/memory-writeback.js.map +1 -1
  60. package/dist/runtime/operation-journal.d.ts +1 -1
  61. package/dist/runtime/operation-journal.d.ts.map +1 -1
  62. package/dist/runtime/operation-journal.js +5 -1
  63. package/dist/runtime/operation-journal.js.map +1 -1
  64. package/dist/runtime/plan-compiler.d.ts +4 -0
  65. package/dist/runtime/plan-compiler.d.ts.map +1 -1
  66. package/dist/runtime/plan-compiler.js +15 -0
  67. package/dist/runtime/plan-compiler.js.map +1 -1
  68. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-package.d.ts","sourceRoot":"","sources":["../../src/adapters/delivery-package.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEnF;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAKrH;AAID,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAIpF;AAED,qBAAa,2BAA4B,YAAW,mBAAmB;IAC/D,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAK7E,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAOrE,MAAM,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;CAC3D"}
1
+ {"version":3,"file":"delivery-package.d.ts","sourceRoot":"","sources":["../../src/adapters/delivery-package.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGnF;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAKrH;AAID,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAIpF;AAED,qBAAa,2BAA4B,YAAW,mBAAmB;IAC/D,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAK7E,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAOrE,MAAM,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;CAC3D"}
@@ -2,7 +2,8 @@ import { createHash } from 'node:crypto';
2
2
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
3
3
  import { dirname } from 'node:path';
4
4
  export function buildDeliveryManifest(record) {
5
- return { manifestVersion: 'delivery-line.v1', caseId: record.id, stage: record.stage, baseRef: record.baseRef, integrationRef: record.integrationRef, targetRef: record.targetRef, artifacts: record.artifacts, interaction: record.interaction?.summaries ?? [], tasks: record.tasks.map(task => ({ id: task.id, status: task.status, attempt: task.attempt, allowedFiles: task.allowedFiles, planHash: task.planHash, contextReceiptHash: task.contextReceiptHash, hostSelectionSnapshotHash: task.hostSelectionSnapshotHash, executionAuthority: task.executionAuthority, integratedRevision: task.integratedRevision, candidateHash: task.integratedRevision, handoff: task.handoff, mergeCommit: task.mergeCommit, worktreeCleanup: task.worktreeCleanup, evidence: task.evidence })), approvals: record.approvals, decisions: record.decisions, evidence: record.evidence, verificationEvidence: record.evidence.filter(item => item.kind === 'verification'), reviewEvidence: record.evidence.filter(item => item.kind === 'review'), recipients: record.recipients ?? [], knownLimits: record.knownLimits ?? [] };
5
+ const pluginReceipts = record.evidence.filter(item => item.kind === 'tool' && typeof item.metadata.pluginName === 'string');
6
+ return { manifestVersion: 'delivery-line.v1', caseId: record.id, stage: record.stage, baseRef: record.baseRef, integrationRef: record.integrationRef, targetRef: record.targetRef, stackFacts: record.stackFacts, artifacts: record.artifacts, interaction: record.interaction?.summaries ?? [], tasks: record.tasks.map(task => ({ id: task.id, status: task.status, attempt: task.attempt, allowedFiles: task.allowedFiles, planHash: task.planHash, contextReceiptHash: task.contextReceiptHash, hostSelectionSnapshotHash: task.hostSelectionSnapshotHash, executionAuthority: task.executionAuthority, integratedRevision: task.integratedRevision, candidateHash: task.integratedRevision, handoff: task.handoff, mergeCommit: task.mergeCommit, worktreeCleanup: task.worktreeCleanup, evidence: task.evidence })), approvals: record.approvals, decisions: record.decisions, evidence: record.evidence, pluginReceipts, reconciliationReceipts: record.evidence.filter(item => item.metadata.operationId || item.metadata.checkpoint), verificationEvidence: record.evidence.filter(item => item.kind === 'verification'), reviewEvidence: record.evidence.filter(item => item.kind === 'review'), lineage: record.lineage ?? { intent: record.artifacts.filter(item => item.type === 'intent').map(item => item.contentHash), spec: record.artifacts.filter(item => item.type === 'spec').map(item => item.contentHash), plan: record.artifacts.filter(item => item.type === 'plan').map(item => item.contentHash), stackFacts: record.stackFacts?.fingerprint, plugins: pluginReceipts.map(item => item.hash), candidates: record.tasks.map(task => task.handoff?.finalRevision), verification: record.evidence.filter(item => item.kind === 'verification').map(item => item.hash), review: record.evidence.filter(item => item.kind === 'review').map(item => item.hash), integration: record.integrationRevision }, recipients: record.recipients ?? [], knownLimits: record.knownLimits ?? [] };
6
7
  }
7
8
  export function exportDeliveryPackage(record, outputPath) {
8
9
  const content = renderDeliveryPackage(record);
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-package.js","sourceRoot":"","sources":["../../src/adapters/delivery-package.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery-package.js","sourceRoot":"","sources":["../../src/adapters/delivery-package.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,13 @@ export declare function freezeIntegration(input: IntegrationTarget & {
16
16
  baseRef: string;
17
17
  }): IntegrationSnapshot;
18
18
  export declare class GitIntegrationAdapter {
19
+ inspectAdmissionWorktree(input: {
20
+ projectRoot: string;
21
+ }): Promise<{
22
+ clean: boolean;
23
+ dirtyFiles: string[];
24
+ revision?: string;
25
+ }>;
19
26
  resolveRevision(input: {
20
27
  repositoryPath: string;
21
28
  revision: string;
@@ -1 +1 @@
1
- {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../src/adapters/integration.ts"],"names":[],"mappings":"AAGA,UAAU,iBAAiB;IAAG,cAAc,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAC;CAAE;AACrG,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAAG,oBAAoB,EAAE,MAAM,CAAC;IAAC,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;CAAE;AACvI,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;CAAE;AACrG,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAEtE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,mBAAmB,CAIrG;AAED,qBAAa,qBAAqB;IAC1B,eAAe,CAAC,KAAK,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAKrF,eAAe,CAAC,KAAK,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAcpI,SAAS,CAAC,KAAK,EAAE,kBAAkB,GAAG;QAAE,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,iBAAiB,EAAE,MAAM,CAAA;KAAE,CAAC;IA2BzG,OAAO,CAAC,KAAK,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,iBAAiB,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAOnJ"}
1
+ {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../src/adapters/integration.ts"],"names":[],"mappings":"AAGA,UAAU,iBAAiB;IAAG,cAAc,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAC;CAAE;AACrG,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAAG,oBAAoB,EAAE,MAAM,CAAC;IAAC,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;CAAE;AACvI,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;CAAE;AACrG,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAEtE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,mBAAmB,CAIrG;AAED,qBAAa,qBAAqB;IAC1B,wBAAwB,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAQ9H,eAAe,CAAC,KAAK,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAKrF,eAAe,CAAC,KAAK,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAcpI,SAAS,CAAC,KAAK,EAAE,kBAAkB,GAAG;QAAE,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,iBAAiB,EAAE,MAAM,CAAA;KAAE,CAAC;IA2BzG,OAAO,CAAC,KAAK,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,iBAAiB,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAOnJ"}
@@ -11,6 +11,17 @@ export function freezeIntegration(input) {
11
11
  return { ...input, frozenAt: Date.now() };
12
12
  }
13
13
  export class GitIntegrationAdapter {
14
+ async inspectAdmissionWorktree(input) {
15
+ try {
16
+ const output = execFileSync('git', ['-C', input.projectRoot, 'status', '--porcelain=v1', '-z'], { encoding: 'utf8' });
17
+ const dirtyFiles = output.split('\0').filter(Boolean).map(entry => entry.slice(3)).sort();
18
+ const revision = execFileSync('git', ['-C', input.projectRoot, 'rev-parse', 'HEAD'], { encoding: 'utf8' }).trim();
19
+ return { clean: dirtyFiles.length === 0, dirtyFiles, revision };
20
+ }
21
+ catch {
22
+ throw new DeliveryLineError('MISSING_PREREQUISITE', 'project worktree could not be inspected');
23
+ }
24
+ }
14
25
  async resolveRevision(input) {
15
26
  try {
16
27
  return execFileSync('git', ['-C', input.repositoryPath, 'rev-parse', '--verify', `${input.revision}^{commit}`], { encoding: 'utf8' }).trim();
@@ -1 +1 @@
1
- {"version":3,"file":"integration.js","sourceRoot":"","sources":["../../src/adapters/integration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integration.js","sourceRoot":"","sources":["../../src/adapters/integration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { DeliveryCapabilityPort } from '../ports/index.js';
2
+ export declare class SubprocessDeliveryCapabilityAdapter implements DeliveryCapabilityPort {
3
+ private readonly projectRoot;
4
+ constructor(projectRoot: string);
5
+ manifest(pluginName: string): Promise<{
6
+ pluginName: string;
7
+ version: string;
8
+ capability: string;
9
+ manifestHash: string;
10
+ }>;
11
+ run(input: Parameters<DeliveryCapabilityPort['run']>[0]): Promise<Awaited<ReturnType<DeliveryCapabilityPort['run']>>>;
12
+ private resolveManifest;
13
+ }
14
+ //# sourceMappingURL=plugin-capability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-capability.d.ts","sourceRoot":"","sources":["../../src/adapters/plugin-capability.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEhE,qBAAa,mCAAoC,YAAW,sBAAsB;IACpE,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,EAAE,MAAM;IAE1C,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAIxH,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAqB3H,OAAO,CAAC,eAAe;CAiBxB"}
@@ -0,0 +1,61 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { spawn } from 'node:child_process';
3
+ import { dirname, join, resolve } from 'node:path';
4
+ import { fileURLToPath } from 'node:url';
5
+ import { existsSync, readFileSync } from 'node:fs';
6
+ import { assertExecutableCapability, hashCapabilityManifest } from '../domain/plugin-capability.js';
7
+ export class SubprocessDeliveryCapabilityAdapter {
8
+ projectRoot;
9
+ constructor(projectRoot) {
10
+ this.projectRoot = projectRoot;
11
+ }
12
+ async manifest(pluginName) {
13
+ return this.resolveManifest(pluginName);
14
+ }
15
+ async run(input) {
16
+ const manifest = this.resolveManifest(input.pluginName);
17
+ if (manifest.manifestHash !== input.manifestHash || manifest.capability !== input.capability)
18
+ throw new Error('PLUGIN_MANIFEST_HASH_MISMATCH');
19
+ assertExecutableCapability(manifest);
20
+ const runner = manifest.runner;
21
+ const payload = JSON.stringify({ capability: input.capability, projectRoot: this.projectRoot, allowedFiles: input.allowedFiles, changedFiles: input.payload.changedFiles, input: input.payload });
22
+ const output = await new Promise((resolve, reject) => {
23
+ const child = spawn(runner.command, runner.args ?? [], { cwd: this.projectRoot, shell: false, stdio: ['pipe', 'pipe', 'pipe'], env: { PATH: process.env.PATH ?? '' } });
24
+ let stdout = '';
25
+ let stderr = '';
26
+ child.stdout.on('data', chunk => { if (stdout.length < 1_000_000)
27
+ stdout += chunk.toString(); });
28
+ child.stderr.on('data', chunk => { if (stderr.length < 100_000)
29
+ stderr += chunk.toString(); });
30
+ const timer = setTimeout(() => child.kill('SIGTERM'), runner.timeoutMs);
31
+ child.on('error', reject);
32
+ child.on('close', code => { clearTimeout(timer); code === 0 ? resolve(stdout) : reject(new Error(`PLUGIN_RUNNER_FAILED:${code}:${stderr.slice(0, 500)}`)); });
33
+ child.stdin.end(payload);
34
+ });
35
+ const parsed = JSON.parse(output);
36
+ if (!parsed.ok || !Array.isArray(parsed.changedFiles))
37
+ throw new Error('PLUGIN_RUNNER_RECEIPT_INVALID');
38
+ return { pluginVersion: manifest.version, manifestHash: manifest.manifestHash, changedFiles: parsed.changedFiles, outputHash: createHash('sha256').update(output).digest('hex'), verified: true };
39
+ }
40
+ resolveManifest(pluginName) {
41
+ const moduleDir = dirname(fileURLToPath(import.meta.url));
42
+ const segments = pluginName.split('/');
43
+ const suffix = pluginName.replace('@devflow-tools/plugin-', '');
44
+ const packageRoot = [
45
+ join(this.projectRoot, 'node_modules', ...segments),
46
+ resolve(moduleDir, '../../../../node_modules', ...segments),
47
+ resolve(moduleDir, '../../../../plugins', suffix),
48
+ ].find(path => existsSync(join(path, 'package.json')));
49
+ if (!packageRoot)
50
+ throw new Error(`PLUGIN_RUNNER_REQUIRED:${pluginName}`);
51
+ const runnerPath = join(packageRoot, 'scripts', 'run-capability.mjs');
52
+ if (!existsSync(runnerPath))
53
+ throw new Error(`PLUGIN_RUNNER_REQUIRED:${pluginName}`);
54
+ const packageManifest = JSON.parse(readFileSync(join(packageRoot, 'package.json'), 'utf8'));
55
+ if (typeof packageManifest.version !== 'string' || !packageManifest.version.trim())
56
+ throw new Error(`PLUGIN_VERSION_REQUIRED:${pluginName}`);
57
+ const unsigned = { pluginName, version: packageManifest.version, kind: 'runner', capability: 'verify-changed-files', inputSchema: {}, outputSchema: {}, runner: { command: process.execPath, args: [runnerPath], protocol: 'json-stdio', timeoutMs: 30_000 } };
58
+ return { ...unsigned, manifestHash: hashCapabilityManifest(unsigned) };
59
+ }
60
+ }
61
+ //# sourceMappingURL=plugin-capability.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-capability.js","sourceRoot":"","sources":["../../src/adapters/plugin-capability.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export interface VerificationInput {
9
9
  projectRoot: string;
10
10
  commit: string;
11
11
  commands: VerificationCommand[];
12
+ acceptanceCriteria?: string[];
12
13
  lockfileHash?: string;
13
14
  runtime?: string;
14
15
  toolVersion?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../src/adapters/verification.ts"],"names":[],"mappings":"AAKA,OAAO,EAAqB,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEjF,MAAM,WAAW,mBAAmB;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;AAC5F,MAAM,WAAW,iBAAiB;IAAG,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE;AAEjN,qBAAa,mBAAmB;IACxB,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,GAAG;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmB1I,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAWpE,OAAO,CAAC,GAAG;CAWZ"}
1
+ {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../src/adapters/verification.ts"],"names":[],"mappings":"AAKA,OAAO,EAAqB,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEjF,MAAM,WAAW,mBAAmB;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;AAC5F,MAAM,WAAW,iBAAiB;IAAG,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE;AAEhP,qBAAa,mBAAmB;IACxB,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,GAAG;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmB1I,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAYpE,OAAO,CAAC,GAAG;CAWZ"}
@@ -1,6 +1,6 @@
1
1
  import { createHash } from 'node:crypto';
2
2
  import { execFileSync, spawn } from 'node:child_process';
3
- import { mkdtempSync, rmSync } from 'node:fs';
3
+ import { mkdtempSync, readdirSync, readFileSync, rmSync, statSync } from 'node:fs';
4
4
  import { tmpdir } from 'node:os';
5
5
  import { join } from 'node:path';
6
6
  import { DeliveryLineError } from '../domain/types.js';
@@ -39,7 +39,8 @@ export class VerificationAdapter {
39
39
  const result = await this.run(input.projectRoot, command);
40
40
  results.push({ command: command.command, args: [...command.args], exitCode: result.exitCode, outputHash: result.outputHash });
41
41
  }
42
- return { id: `verification:${input.taskId ?? 'plan'}:${input.commit}`, taskId: input.taskId, commit: input.commit, lockfileHash: input.lockfileHash ?? 'unknown', runtime: input.runtime ?? process.version, toolVersion: input.toolVersion ?? 'delivery-line', environment: input.environment ?? process.env.NODE_ENV ?? 'unknown', commands: results, passed: results.every(result => result.exitCode === 0), createdAt: Date.now() };
42
+ const acceptanceCriteria = input.acceptanceCriteria?.map(criterion => evaluateCriterion(input.projectRoot, criterion));
43
+ return { id: `verification:${input.taskId ?? 'plan'}:${input.commit}`, taskId: input.taskId, commit: input.commit, lockfileHash: input.lockfileHash ?? 'unknown', runtime: input.runtime ?? process.version, toolVersion: input.toolVersion ?? 'delivery-line', environment: input.environment ?? process.env.NODE_ENV ?? 'unknown', commands: results, ...(acceptanceCriteria ? { acceptanceCriteria } : {}), passed: results.every(result => result.exitCode === 0) && (acceptanceCriteria?.every(item => item.passed) ?? true), createdAt: Date.now() };
43
44
  }
44
45
  run(cwd, command) {
45
46
  return new Promise(resolve => {
@@ -54,4 +55,61 @@ export class VerificationAdapter {
54
55
  });
55
56
  }
56
57
  }
58
+ function evaluateCriterion(projectRoot, criterion) {
59
+ const normalized = criterion.trim();
60
+ const fileMatch = /^(?:file|文件)\s+(.+?)\s+(exists|存在)$/iu.exec(normalized) ?? /^(?:file|文件)\s+(.+?)\s+(?:does\s+not\s+exist|不存在)$/iu.exec(normalized);
61
+ if (fileMatch) {
62
+ const relative = fileMatch[1].replace(/["'`]/g, '').trim();
63
+ const exists = statSafe(join(projectRoot, relative));
64
+ const negated = /does\s+not\s+exist|不存在/iu.test(normalized);
65
+ const passed = negated ? !exists : exists;
66
+ return { criterion, passed, evidence: `${relative}: ${exists ? 'exists' : 'missing'}` };
67
+ }
68
+ const textMatch = /^(?:contains|包含)(?:\s+exact\s+text)?\s+["“]?(.+?)["”]?$/iu.exec(normalized)
69
+ ?? /^renders(?:\s+the\s+exact\s+visible\s+text)?\s+["“]?(.+?)["”]?$/iu.exec(normalized);
70
+ const quoted = /["“]([^"”]+)["”]/u.exec(normalized)?.[1];
71
+ const expected = textMatch?.[1]?.trim() || quoted;
72
+ if (expected) {
73
+ const match = findText(projectRoot, expected);
74
+ return { criterion, passed: Boolean(match), evidence: match ? `matched ${match}` : `text not found: ${expected}` };
75
+ }
76
+ return { criterion, passed: false, evidence: 'criterion is not deterministically evaluable; express a file or exact text assertion' };
77
+ }
78
+ function statSafe(path) { try {
79
+ statSync(path);
80
+ return true;
81
+ }
82
+ catch {
83
+ return false;
84
+ } }
85
+ function findText(root, expected) {
86
+ const visit = (directory) => {
87
+ let entries;
88
+ try {
89
+ entries = readdirSync(directory, { withFileTypes: true });
90
+ }
91
+ catch {
92
+ return undefined;
93
+ }
94
+ for (const entry of entries) {
95
+ if (entry.name === '.git' || entry.name === 'node_modules' || entry.name === '.devflow')
96
+ continue;
97
+ const path = join(directory, entry.name);
98
+ if (entry.isDirectory()) {
99
+ const nested = visit(path);
100
+ if (nested)
101
+ return nested;
102
+ }
103
+ else {
104
+ try {
105
+ if (readFileSync(path, 'utf8').includes(expected))
106
+ return path;
107
+ }
108
+ catch { /* binary/unreadable */ }
109
+ }
110
+ }
111
+ return undefined;
112
+ };
113
+ return visit(root);
114
+ }
57
115
  //# sourceMappingURL=verification.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../src/adapters/verification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../src/adapters/verification.ts"],"names":[],"mappings":"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"}
@@ -114,6 +114,12 @@ export declare class HostWorkerExecutionAdapter implements ExecutionPort {
114
114
  cancelTask(input: {
115
115
  taskId: string;
116
116
  }): Promise<void>;
117
+ inspectWorker(input: {
118
+ caseId: string;
119
+ taskId: string;
120
+ operationId: string;
121
+ envelope: TaskEnvelope;
122
+ }): Promise<import('../ports/index.js').WorkerInspection>;
117
123
  getTaskExecution(taskId: string): {
118
124
  handoff: WorkerHandoff;
119
125
  worktreePath: string;
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-execution.d.ts","sourceRoot":"","sources":["../../src/adapters/workflow-execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-execution.d.ts","sourceRoot":"","sources":["../../src/adapters/workflow-execution.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,12 @@
1
- import { mkdirSync, writeFileSync, realpathSync } from 'node:fs';
1
+ import { mkdirSync, writeFileSync, realpathSync, existsSync, readFileSync } from 'node:fs';
2
2
  import { join } from 'node:path';
3
- import { cleanupManagedWorktree, createManagedWorktree, createWorkerArtifacts, launchWorker, verifyWorkerOutput, workerCoordinationRoot } from '@devflow-tools/workflow-engine';
3
+ import { cleanupManagedWorktree, createManagedWorktree, createWorkerArtifacts, launchWorker, preflightWorkerHost, readWorkerHandoff, verifyWorkerOutput, workerCoordinationRoot, writeJsonAtomic } from '@devflow-tools/workflow-engine';
4
+ function workerFailureError(failure) {
5
+ const error = new Error(`${failure.code}: ${failure.message}`);
6
+ Object.assign(error, failure);
7
+ error.message = `${failure.code}: ${failure.message}`;
8
+ return error;
9
+ }
4
10
  export class SerializedQueueRuntime {
5
11
  queue;
6
12
  create;
@@ -36,7 +42,7 @@ export class WorkflowExecutionAdapter {
36
42
  this.execution = execution;
37
43
  }
38
44
  start(task) {
39
- const envelope = { caseId: task.caseId, taskId: task.id, objective: task.title, inputArtifacts: [], allowedFiles: task.allowedFiles, dependencies: task.dependsOn, implementationSteps: task.expectedChanges, verification: { commands: task.verificationCommands.map(({ command, args }) => ({ command, args })), acceptanceCriteria: task.expectedChanges }, constraints: { testFirst: true, cannotEditTests: true, recursiveWorkers: false } };
45
+ const envelope = { caseId: task.caseId, taskId: task.id, objective: task.title, inputArtifacts: [], allowedFiles: task.allowedFiles, dependencies: task.dependsOn, implementationSteps: task.expectedChanges, nodes: task.planNodes, verification: { commands: task.verificationCommands.map(({ command, args }) => ({ command, args })), acceptanceCriteria: task.acceptanceCriteria }, constraints: { testFirst: true, cannotEditTests: true, recursiveWorkers: false } };
40
46
  return this.execution.startTask(envelope);
41
47
  }
42
48
  async enqueueMerge(input) {
@@ -57,7 +63,7 @@ export class WorkflowExecutionAdapter {
57
63
  return runtime.enqueueAndMerge({ task, projectRoot, worktreePath: worktree.path, baseRevision: worktree.baseRevision, verification });
58
64
  }
59
65
  toEnvelope(task, contextReceipt) {
60
- return { caseId: task.caseId, taskId: task.id, objective: task.title, inputArtifacts: [contextReceipt], allowedFiles: task.allowedFiles, dependencies: task.dependsOn, implementationSteps: task.expectedChanges, verification: { commands: task.verificationCommands.map(({ command, args }) => ({ command, args })), acceptanceCriteria: task.expectedChanges }, constraints: { testFirst: true, cannotEditTests: true, recursiveWorkers: false } };
66
+ return { caseId: task.caseId, taskId: task.id, objective: task.title, inputArtifacts: [contextReceipt], allowedFiles: task.allowedFiles, dependencies: task.dependsOn, implementationSteps: task.expectedChanges, nodes: task.planNodes, verification: { commands: task.verificationCommands.map(({ command, args }) => ({ command, args })), acceptanceCriteria: task.acceptanceCriteria }, constraints: { testFirst: true, cannotEditTests: true, recursiveWorkers: false } };
61
67
  }
62
68
  }
63
69
  /** Process-backed adapter used by the default composition when a host worker is available. */
@@ -78,12 +84,20 @@ export class HostWorkerExecutionAdapter {
78
84
  const managed = await createManagedWorktree({ projectRoot: this.canonicalProjectRoot, runId: input.caseId, stepId: input.taskId, baseRevision: input.baseRevision ?? 'HEAD', homeDir: this.canonicalHome, registered: true });
79
85
  const root = workerCoordinationRoot(`${input.caseId}-${input.taskId}`, this.canonicalHome);
80
86
  const paths = { root, taskFile: join(root, 'task.json'), handoffFile: join(root, 'handoff.json'), statusFile: join(root, 'status.json'), stdoutFile: join(root, 'stdout.log'), stderrFile: join(root, 'stderr.log') };
81
- const envelope = { workerId: input.taskId, runId: input.caseId, stepId: input.taskId, projectRoot: this.canonicalProjectRoot, worktreePath: managed.worktreePath, baseRevision: managed.baseRevision, contextReceipt: input.inputArtifacts[0] ?? '', allowedFiles: input.allowedFiles, requiredTools: [], task: { objective: input.objective, implementationSteps: input.implementationSteps }, verification: { commands: input.verification.commands, graders: [] }, constraints: { recursiveWorkers: false, maxContextCycles: 3 } };
87
+ const envelope = { workerId: input.taskId, runId: input.caseId, stepId: input.taskId, projectRoot: this.canonicalProjectRoot, worktreePath: managed.worktreePath, baseRevision: managed.baseRevision, contextReceipt: input.inputArtifacts[0] ?? '', allowedFiles: input.allowedFiles, requiredTools: [], task: { objective: input.objective, implementationSteps: input.implementationSteps }, verification: { commands: input.verification.commands, graders: [], acceptanceCriteria: input.verification.acceptanceCriteria }, constraints: { recursiveWorkers: false, maxContextCycles: 3 } };
82
88
  createWorkerArtifacts(paths, envelope);
83
- const launched = launchWorker(this.host, { workerId: input.taskId, runId: input.caseId, stepId: input.taskId, host: this.host.id === 'codex' ? 'codex' : this.host.id === 'claude-code' ? 'claude-code' : 'custom', worktreePath: managed.worktreePath, taskFile: paths.taskFile, handoffFile: paths.handoffFile, statusFile: paths.statusFile, sessionId: input.caseId, executionId: input.taskId, contextReceipt: envelope.contextReceipt, timeoutMs: 30 * 60_000 }, paths);
89
+ const launchRequest = { workerId: input.taskId, runId: input.caseId, stepId: input.taskId, host: this.host.id === 'codex' ? 'codex' : this.host.id === 'claude-code' ? 'claude-code' : 'custom', projectRoot: this.canonicalProjectRoot, homeDir: this.canonicalHome, worktreePath: managed.worktreePath, taskFile: paths.taskFile, handoffFile: paths.handoffFile, statusFile: paths.statusFile, sessionId: input.caseId, executionId: input.taskId, contextReceipt: envelope.contextReceipt, timeoutMs: 30 * 60_000 };
90
+ const preflight = await preflightWorkerHost(this.host, launchRequest);
91
+ if (!preflight.passed) {
92
+ writeJsonAtomic(paths.statusFile, { workerId: input.taskId, runId: input.caseId, stepId: input.taskId, worktreePath: managed.worktreePath, state: 'failed', failure: preflight.failure, updatedAt: Date.now() });
93
+ throw workerFailureError(preflight.failure);
94
+ }
95
+ const launched = launchWorker(this.host, launchRequest, paths);
84
96
  this.active.set(input.taskId, { cancel: launched.cancel, worktreePath: managed.worktreePath, branch: managed.branch });
85
97
  const result = await launched.completion;
86
98
  this.active.delete(input.taskId);
99
+ if (result.failure)
100
+ throw workerFailureError(result.failure);
87
101
  if (result.timedOut || result.cancelled || !result.handoff)
88
102
  throw new Error(result.timedOut ? 'WORKER_TIMED_OUT' : 'WORKER_HANDOFF_REQUIRED');
89
103
  if (result.handoff.hostStatus !== 'completed')
@@ -124,6 +138,47 @@ export class HostWorkerExecutionAdapter {
124
138
  };
125
139
  }
126
140
  async cancelTask(input) { this.active.get(input.taskId)?.cancel(); }
141
+ async inspectWorker(input) {
142
+ const root = workerCoordinationRoot(`${input.caseId}-${input.taskId}`, this.canonicalHome);
143
+ const statusPath = join(root, 'status.json');
144
+ const handoffPath = join(root, 'handoff.json');
145
+ if (!existsSync(statusPath))
146
+ return { status: 'unknown', details: { reason: 'status_missing', operationId: input.operationId } };
147
+ let status;
148
+ try {
149
+ status = JSON.parse(readFileSync(statusPath, 'utf8'));
150
+ }
151
+ catch {
152
+ return { status: 'unknown', details: { reason: 'status_invalid' } };
153
+ }
154
+ if (status.state === 'failed')
155
+ return { status: 'failed', failure: status.failure, details: status };
156
+ if (status.state === 'started' && typeof status.pid === 'number') {
157
+ try {
158
+ process.kill(status.pid, 0);
159
+ return { status: 'running', details: status };
160
+ }
161
+ catch { /* process exited; inspect handoff below */ }
162
+ }
163
+ if (existsSync(handoffPath)) {
164
+ try {
165
+ const handoff = readWorkerHandoff(handoffPath, { workerId: input.taskId, runId: input.caseId, stepId: input.taskId, contextReceipt: input.envelope.contextReceiptHash ?? '', worktreePath: String(status.worktreePath ?? '') });
166
+ if (handoff.hostStatus === 'completed') {
167
+ const worktreePath = String(status.worktreePath ?? '');
168
+ const verified = await verifyWorkerOutput({ workerId: input.taskId, projectRoot: this.canonicalProjectRoot, worktreePath, baseRevision: input.envelope.baseRevision ?? handoff.baseRevision, parentRevision: input.envelope.baseRevision ?? handoff.baseRevision, contextReceipt: input.envelope.contextReceiptHash ?? '', allowedFiles: input.envelope.allowedFiles, handoff, hostAction: { state: 'reported', report: { exitCode: Number(status.exitCode ?? 0), signal: status.signal } }, verificationCommands: input.envelope.verification.commands });
169
+ if (!verified.passed || verified.state !== 'merge_ready' || !verified.finalRevision || !verified.simulationHash)
170
+ return { status: 'failed', failure: { code: 'WORKER_VERIFICATION_FAILED', message: verified.reason ?? 'Recovered worker output failed verification', retryable: false }, details: status };
171
+ const result = { taskId: input.taskId, status: 'completed', worktreePath, commit: handoff.finalRevision, handoff: { finalRevision: handoff.finalRevision, changedFiles: handoff.changedFiles, durable: true }, workerVerification: { passed: true, state: 'merge_ready', finalRevision: verified.finalRevision, changedFiles: verified.changedFiles, graderReceipts: verified.graderReceipts, simulationHash: verified.simulationHash, parentRevision: verified.parentRevision } };
172
+ return { status: 'completed', handoff: result.handoff, result };
173
+ }
174
+ return { status: 'failed', failure: { code: `WORKER_${handoff.hostStatus.toUpperCase()}`, message: handoff.summary, retryable: handoff.hostStatus === 'timed_out' } };
175
+ }
176
+ catch {
177
+ return { status: 'unknown', details: { reason: 'handoff_invalid', status } };
178
+ }
179
+ }
180
+ return { status: status.state === 'completed' ? 'completed' : 'unknown', details: status };
181
+ }
127
182
  getTaskExecution(taskId) { return this.completed.get(taskId); }
128
183
  async cleanupTaskWorktree(input) {
129
184
  const completed = this.completed.get(input.taskId);
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-execution.js","sourceRoot":"","sources":["../../src/adapters/workflow-execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-execution.js","sourceRoot":"","sources":["../../src/adapters/workflow-execution.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"artifact-contract.d.ts","sourceRoot":"","sources":["../../src/artifacts/artifact-contract.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAUvE,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,EAAE,CAAC;IAAC,WAAW,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,IAAI,EAAE,KAAK,CAAC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAI1d;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAEjJ;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAcpE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAEhE;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE5D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAG1D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAI1D;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAA4B;AAExF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,KAAK,EAAE,QAAQ,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,MAAM,CAMT"}
1
+ {"version":3,"file":"artifact-contract.d.ts","sourceRoot":"","sources":["../../src/artifacts/artifact-contract.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAUvE,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,EAAE,CAAC;IAAC,WAAW,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,IAAI,EAAE,KAAK,CAAC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAI1d;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAEjJ;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAepE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAEhE;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE5D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAG1D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAI1D;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAA4B;AAExF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,KAAK,EAAE,QAAQ,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,MAAM,CAMT"}
@@ -10,10 +10,10 @@ function requireSection(content, heading) {
10
10
  export function renderIntentMarkdown(input) {
11
11
  const list = (items) => items.length > 0 ? items.map(item => `- ${item}`).join('\n') : '- None';
12
12
  const quality = input.contextQuality ? `- Blocking: ${input.contextQuality.blocking}\n- Availability: ${JSON.stringify(input.contextQuality.channelAvailability ?? {})}\n- Channels: ${JSON.stringify(input.contextQuality.channelStatus)}\n- Gaps: ${input.contextQuality.gaps.length > 0 ? input.contextQuality.gaps.map(gap => `${gap.channel}:${gap.reason} (${gap.resolver})`).join('; ') : 'None'}` : '- Not supplied';
13
- return `# Intent: ${input.title}\n\n## Problem\n${input.problem}\n\n## Proposed outcome\n${input.outcome}\n\n## Clarification answer\n${input.answer ?? input.outcome}\n\n## Affected users and systems\n${list(input.affectedSystems)}\n\n## Constraints\n${list(input.constraints)}\n\n## Success criteria\n${list(input.successCriteria)}\n\n## Context quality\n${quality}\n\n## Non-goals\n${list(input.nonGoals ?? [])}\n\n## Risks\n- Risks are reviewed during design and execution.\n\n## Open questions\n${list(input.openQuestions ?? [])}\n\n## Source\n- Delivery request: ${input.title}\n\n## Provenance\n- Author: ${input.actor.id}\n- Created: ${new Date(input.createdAt ?? Date.now()).toISOString()}\n`;
13
+ return `# Intent: ${input.title}\n\n## Problem\n${input.problem}\n\n## Current behavior\n${input.problem}\n\n## Proposed outcome\n${input.outcome}\n\n## Behavior delta\n${input.outcome}\n\n## Clarification answer\n${input.answer ?? input.outcome}\n\n## Affected users and systems\n${list(input.affectedSystems)}\n\n## Constraints\n${list(input.constraints)}\n\n## Success criteria\n${list(input.successCriteria)}\n\n## Failure conditions\n${list(input.successCriteria.map(item => `Failure if not satisfied: ${item}`))}\n\n## Verification\n${list(input.successCriteria)}\n\n## Context quality\n${quality}\n\n## Non-goals\n${list(input.nonGoals ?? [])}\n\n## Risks\n- Risks are reviewed during design and execution.\n\n## Open questions\n${list(input.openQuestions ?? [])}\n\n## Source\n- Delivery request: ${input.title}\n\n## Provenance\n- Author: ${input.actor.id}\n- Artifact version: 1\n- Created: ${new Date(input.createdAt ?? Date.now()).toISOString()}\n`;
14
14
  }
15
15
  export function renderSpecMarkdown(input) {
16
- return `# Spec: ${input.title}\n\n## Decision summary\nSelected design option: ${input.option}\n\n## Alternatives considered\n- The selected option was compared with the existing implementation and rejected alternatives during the design interaction.\n\n## Architecture and data flow\n- Implement the approved option within the current Delivery Line facade and adapters.\n\n## Interfaces and data flow\n- Inputs, context receipt, approvals, task envelopes, evidence, and integration revision remain explicitly bound.\n\n## Security and permissions\n- Preserve project-root, actor, session, execution, and artifact hash boundaries.\n\n## Compatibility\n- Existing project behavior remains unchanged outside the approved task scope.\n\n## Failure modes and recovery\n- Block on stale turns, missing prerequisites, unavailable providers, or conflicting revisions.\n\n## Observability\n- Record artifact, context receipt, approval, and evidence hashes in the event ledger.\n\n## Migration and rollback\n- Roll back by reverting the integration revision; retain all delivery artifacts and evidence.\n\n## Acceptance criteria\n- The selected option is implemented only after explicit spec and plan approval.\n\n## Context Receipt\n- Receipt: ${input.contextReceipt ?? 'not supplied'}\n\n## Provenance\n- Author: ${input.actor.id}\n- Created: ${new Date(input.createdAt ?? Date.now()).toISOString()}\n`;
16
+ return `# Spec: ${input.title}\n\n## Current implementation\n- The existing implementation remains authoritative until this spec is approved.\n\n## Decision summary\nSelected design option: ${input.option}\n\n## Behavior delta\n- Apply only the behavior explicitly described by the selected option.\n\n## Alternatives considered\n- The selected option was compared with the existing implementation and rejected alternatives during the design interaction.\n\n## Architecture and data flow\n- Implement the approved option within the current Delivery Line facade and adapters.\n\n## Interfaces and data flow\n- Inputs, context receipt, approvals, task envelopes, evidence, and integration revision remain explicitly bound.\n\n## Security and permissions\n- Preserve project-root, actor, session, execution, and artifact hash boundaries.\n\n## Compatibility\n- Existing project behavior remains unchanged outside the approved task scope.\n\n## Failure modes and recovery\n- Block on stale turns, missing prerequisites, unavailable providers, or conflicting revisions.\n\n## Failure conditions\n- Any missing required receipt, stale hash, or failed verification prevents delivery.\n\n## Verification commands\n- Commands are bound by the approved executable plan.\n\n## Observability\n- Record artifact, context receipt, approval, and evidence hashes in the event ledger.\n\n## Migration and rollback\n- Roll back by reverting the integration revision; retain all delivery artifacts and evidence.\n\n## Acceptance criteria\n- The selected option is implemented only after explicit spec and plan approval.\n\n## Inputs and version\n- Artifact version: 1\n- Context hash: ${input.contextReceipt ?? 'not supplied'}\n\n## Context Receipt\n- Receipt: ${input.contextReceipt ?? 'not supplied'}\n\n## Provenance\n- Author: ${input.actor.id}\n- Created: ${new Date(input.createdAt ?? Date.now()).toISOString()}\n`;
17
17
  }
18
18
  export function renderPlanMarkdown(plan) {
19
19
  const tasks = plan.tasks.map((task, index) => [
@@ -23,28 +23,29 @@ export function renderPlanMarkdown(plan) {
23
23
  `- Depends on: ${task.dependsOn.length > 0 ? task.dependsOn.join(', ') : 'None'}`,
24
24
  `- Implementation: ${task.implementationSteps.join('; ')}`,
25
25
  `- Verification: ${task.verificationCommands.map(command => `${command.command} ${command.args.join(' ')}`.trim()).join('; ')}`,
26
+ '- Review: independent review against the integrated candidate',
26
27
  `- Acceptance: ${task.acceptanceCriteria.join('; ')}`,
27
28
  `- Risk: ${task.risk}`,
28
29
  `- Rollback: ${task.rollback}`,
29
30
  ].join('\n')).join('\n\n');
30
31
  const machineHash = digest(renderPlanJson(plan));
31
- return `# Plan: ${plan.objective}\n\n## Non-goals\n${plan.nonGoals.length > 0 ? plan.nonGoals.map(item => `- ${item}`).join('\n') : '- None'}\n\n## Tasks\n${tasks}\n\n## Machine projection\n- File: plan.json\n- Canonical SHA-256: ${machineHash}\n`;
32
+ return `# Plan: ${plan.objective}\n\n## Input refs\n- Bound by plan hash and context receipt in every task envelope.\n\n## Execution policy\n- RED → GREEN → REFACTOR unless an approved waiver is present.\n- Independent verification, review, and revision-based rollback are mandatory.\n\n## Non-goals\n${plan.nonGoals.length > 0 ? plan.nonGoals.map(item => `- ${item}`).join('\n') : '- None'}\n\n## Tasks\n${tasks}\n\n## Machine projection\n- File: plan.json\n- Canonical SHA-256: ${machineHash}\n`;
32
33
  }
33
34
  export function renderPlanJson(plan) {
34
35
  return `${JSON.stringify(plan, null, 2)}\n`;
35
36
  }
36
37
  export function validateIntentMarkdown(content) {
37
- for (const section of ['Problem', 'Proposed outcome', 'Clarification answer', 'Affected users and systems', 'Constraints', 'Success criteria', 'Context quality', 'Non-goals', 'Risks', 'Open questions', 'Source', 'Provenance'])
38
+ for (const section of ['Problem', 'Current behavior', 'Proposed outcome', 'Behavior delta', 'Clarification answer', 'Affected users and systems', 'Constraints', 'Success criteria', 'Failure conditions', 'Verification', 'Context quality', 'Non-goals', 'Risks', 'Open questions', 'Source', 'Provenance'])
38
39
  requireSection(content, section);
39
40
  }
40
41
  export function validateSpecMarkdown(content) {
41
- for (const section of ['Decision summary', 'Alternatives considered', 'Architecture and data flow', 'Interfaces and data flow', 'Security and permissions', 'Compatibility', 'Failure modes and recovery', 'Observability', 'Migration and rollback', 'Acceptance criteria', 'Context Receipt', 'Provenance'])
42
+ for (const section of ['Current implementation', 'Decision summary', 'Behavior delta', 'Alternatives considered', 'Architecture and data flow', 'Interfaces and data flow', 'Security and permissions', 'Compatibility', 'Failure modes and recovery', 'Failure conditions', 'Verification commands', 'Observability', 'Migration and rollback', 'Acceptance criteria', 'Inputs and version', 'Context Receipt', 'Provenance'])
42
43
  requireSection(content, section);
43
44
  if (/^Selected design option:\s*$/m.test(content))
44
45
  throw new DeliveryLineError('MISSING_PREREQUISITE', 'spec decision summary must not be empty');
45
46
  }
46
47
  export function validatePlanMarkdown(content) {
47
- for (const section of ['Non-goals', 'Tasks', 'Machine projection'])
48
+ for (const section of ['Input refs', 'Execution policy', 'Non-goals', 'Tasks', 'Machine projection'])
48
49
  requireSection(content, section);
49
50
  if (!/### Task \d+:/.test(content))
50
51
  throw new DeliveryLineError('PLAN_NOT_EXECUTABLE', 'plan must contain at least one task');