taskflow-mcp-core 0.3.0-beta.1.1 → 1.0.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 (185) hide show
  1. package/CONTROL_GUIDE.md +113 -0
  2. package/README.md +34 -25
  3. package/dist/control/admission-service.d.ts +15 -0
  4. package/dist/control/admission-service.d.ts.map +1 -0
  5. package/dist/control/admission-service.js +64 -0
  6. package/dist/control/admission-service.js.map +1 -0
  7. package/dist/control/approval-edits.d.ts +12 -0
  8. package/dist/control/approval-edits.d.ts.map +1 -0
  9. package/dist/control/approval-edits.js +66 -0
  10. package/dist/control/approval-edits.js.map +1 -0
  11. package/dist/control/approval-service.d.ts +173 -0
  12. package/dist/control/approval-service.d.ts.map +1 -0
  13. package/dist/control/approval-service.js +342 -0
  14. package/dist/control/approval-service.js.map +1 -0
  15. package/dist/control/authorization.d.ts +94 -0
  16. package/dist/control/authorization.d.ts.map +1 -0
  17. package/dist/control/authorization.js +302 -0
  18. package/dist/control/authorization.js.map +1 -0
  19. package/dist/control/control-cli.d.ts +3 -0
  20. package/dist/control/control-cli.d.ts.map +1 -0
  21. package/dist/control/control-cli.js +279 -0
  22. package/dist/control/control-cli.js.map +1 -0
  23. package/dist/control/control-console.d.ts +17 -0
  24. package/dist/control/control-console.d.ts.map +1 -0
  25. package/dist/control/control-console.js +67 -0
  26. package/dist/control/control-console.js.map +1 -0
  27. package/dist/control/control-host.d.ts +98 -0
  28. package/dist/control/control-host.d.ts.map +1 -0
  29. package/dist/control/control-host.js +459 -0
  30. package/dist/control/control-host.js.map +1 -0
  31. package/dist/control/control-mcp.d.ts +11 -0
  32. package/dist/control/control-mcp.d.ts.map +1 -0
  33. package/dist/control/control-mcp.js +78 -0
  34. package/dist/control/control-mcp.js.map +1 -0
  35. package/dist/control/errors.d.ts +44 -0
  36. package/dist/control/errors.d.ts.map +1 -0
  37. package/dist/control/errors.js +93 -0
  38. package/dist/control/errors.js.map +1 -0
  39. package/dist/control/hello.d.ts +39 -0
  40. package/dist/control/hello.d.ts.map +1 -0
  41. package/dist/control/hello.js +80 -0
  42. package/dist/control/hello.js.map +1 -0
  43. package/dist/control/host-runtime.d.ts +32 -0
  44. package/dist/control/host-runtime.d.ts.map +1 -0
  45. package/dist/control/host-runtime.js +542 -0
  46. package/dist/control/host-runtime.js.map +1 -0
  47. package/dist/control/index.d.ts +32 -0
  48. package/dist/control/index.d.ts.map +1 -0
  49. package/dist/control/index.js +32 -0
  50. package/dist/control/index.js.map +1 -0
  51. package/dist/control/legacy-conflict.d.ts +19 -0
  52. package/dist/control/legacy-conflict.d.ts.map +1 -0
  53. package/dist/control/legacy-conflict.js +176 -0
  54. package/dist/control/legacy-conflict.js.map +1 -0
  55. package/dist/control/local-bootstrap.d.ts +21 -0
  56. package/dist/control/local-bootstrap.d.ts.map +1 -0
  57. package/dist/control/local-bootstrap.js +224 -0
  58. package/dist/control/local-bootstrap.js.map +1 -0
  59. package/dist/control/modes.d.ts +60 -0
  60. package/dist/control/modes.d.ts.map +1 -0
  61. package/dist/control/modes.js +86 -0
  62. package/dist/control/modes.js.map +1 -0
  63. package/dist/control/project-admin-cli.d.ts +3 -0
  64. package/dist/control/project-admin-cli.d.ts.map +1 -0
  65. package/dist/control/project-admin-cli.js +155 -0
  66. package/dist/control/project-admin-cli.js.map +1 -0
  67. package/dist/control/project-registry.d.ts +20 -0
  68. package/dist/control/project-registry.d.ts.map +1 -0
  69. package/dist/control/project-registry.js +181 -0
  70. package/dist/control/project-registry.js.map +1 -0
  71. package/dist/control/runtime-checkpoint.d.ts +11 -0
  72. package/dist/control/runtime-checkpoint.d.ts.map +1 -0
  73. package/dist/control/runtime-checkpoint.js +39 -0
  74. package/dist/control/runtime-checkpoint.js.map +1 -0
  75. package/dist/control/runtime-provider.d.ts +100 -0
  76. package/dist/control/runtime-provider.d.ts.map +1 -0
  77. package/dist/control/runtime-provider.js +258 -0
  78. package/dist/control/runtime-provider.js.map +1 -0
  79. package/dist/control/schema/approval.d.ts +108 -0
  80. package/dist/control/schema/approval.d.ts.map +1 -0
  81. package/dist/control/schema/approval.js +65 -0
  82. package/dist/control/schema/approval.js.map +1 -0
  83. package/dist/control/schema/commands.d.ts +663 -0
  84. package/dist/control/schema/commands.d.ts.map +1 -0
  85. package/dist/control/schema/commands.js +147 -0
  86. package/dist/control/schema/commands.js.map +1 -0
  87. package/dist/control/schema/common.d.ts +24 -0
  88. package/dist/control/schema/common.d.ts.map +1 -0
  89. package/dist/control/schema/common.js +38 -0
  90. package/dist/control/schema/common.js.map +1 -0
  91. package/dist/control/schema/coordinator.d.ts +98 -0
  92. package/dist/control/schema/coordinator.d.ts.map +1 -0
  93. package/dist/control/schema/coordinator.js +87 -0
  94. package/dist/control/schema/coordinator.js.map +1 -0
  95. package/dist/control/schema/evidence.d.ts +140 -0
  96. package/dist/control/schema/evidence.d.ts.map +1 -0
  97. package/dist/control/schema/evidence.js +64 -0
  98. package/dist/control/schema/evidence.js.map +1 -0
  99. package/dist/control/schema/header.d.ts +79 -0
  100. package/dist/control/schema/header.d.ts.map +1 -0
  101. package/dist/control/schema/header.js +66 -0
  102. package/dist/control/schema/header.js.map +1 -0
  103. package/dist/control/schema/index.d.ts +31 -0
  104. package/dist/control/schema/index.d.ts.map +1 -0
  105. package/dist/control/schema/index.js +31 -0
  106. package/dist/control/schema/index.js.map +1 -0
  107. package/dist/control/schema/plan.d.ts +291 -0
  108. package/dist/control/schema/plan.d.ts.map +1 -0
  109. package/dist/control/schema/plan.js +80 -0
  110. package/dist/control/schema/plan.js.map +1 -0
  111. package/dist/control/schema/policy.d.ts +96 -0
  112. package/dist/control/schema/policy.d.ts.map +1 -0
  113. package/dist/control/schema/policy.js +73 -0
  114. package/dist/control/schema/policy.js.map +1 -0
  115. package/dist/control/schema/run.d.ts +61 -0
  116. package/dist/control/schema/run.d.ts.map +1 -0
  117. package/dist/control/schema/run.js +56 -0
  118. package/dist/control/schema/run.js.map +1 -0
  119. package/dist/control/schema/te-mirrors.d.ts +145 -0
  120. package/dist/control/schema/te-mirrors.d.ts.map +1 -0
  121. package/dist/control/schema/te-mirrors.js +145 -0
  122. package/dist/control/schema/te-mirrors.js.map +1 -0
  123. package/dist/control/schema/transport.d.ts +479 -0
  124. package/dist/control/schema/transport.d.ts.map +1 -0
  125. package/dist/control/schema/transport.js +181 -0
  126. package/dist/control/schema/transport.js.map +1 -0
  127. package/dist/control/singleton.d.ts +135 -0
  128. package/dist/control/singleton.d.ts.map +1 -0
  129. package/dist/control/singleton.js +607 -0
  130. package/dist/control/singleton.js.map +1 -0
  131. package/dist/control/store/coordinator-store.d.ts +143 -0
  132. package/dist/control/store/coordinator-store.d.ts.map +1 -0
  133. package/dist/control/store/coordinator-store.js +620 -0
  134. package/dist/control/store/coordinator-store.js.map +1 -0
  135. package/dist/control/store/evidence-adapter.d.ts +10 -0
  136. package/dist/control/store/evidence-adapter.d.ts.map +1 -0
  137. package/dist/control/store/evidence-adapter.js +114 -0
  138. package/dist/control/store/evidence-adapter.js.map +1 -0
  139. package/dist/control/store/evidence-explanation.d.ts +55 -0
  140. package/dist/control/store/evidence-explanation.d.ts.map +1 -0
  141. package/dist/control/store/evidence-explanation.js +50 -0
  142. package/dist/control/store/evidence-explanation.js.map +1 -0
  143. package/dist/control/store/evidence-store.d.ts +143 -0
  144. package/dist/control/store/evidence-store.d.ts.map +1 -0
  145. package/dist/control/store/evidence-store.js +437 -0
  146. package/dist/control/store/evidence-store.js.map +1 -0
  147. package/dist/control/store/index.d.ts +3 -0
  148. package/dist/control/store/index.d.ts.map +1 -0
  149. package/dist/control/store/index.js +2 -0
  150. package/dist/control/store/index.js.map +1 -0
  151. package/dist/control/store/journal.d.ts +270 -0
  152. package/dist/control/store/journal.d.ts.map +1 -0
  153. package/dist/control/store/journal.js +50 -0
  154. package/dist/control/store/journal.js.map +1 -0
  155. package/dist/control/store/project-lifecycle.d.ts +49 -0
  156. package/dist/control/store/project-lifecycle.d.ts.map +1 -0
  157. package/dist/control/store/project-lifecycle.js +288 -0
  158. package/dist/control/store/project-lifecycle.js.map +1 -0
  159. package/dist/control/store/store.d.ts +93 -0
  160. package/dist/control/store/store.d.ts.map +1 -0
  161. package/dist/control/store/store.js +873 -0
  162. package/dist/control/store/store.js.map +1 -0
  163. package/dist/control/te-provider.d.ts +86 -0
  164. package/dist/control/te-provider.d.ts.map +1 -0
  165. package/dist/control/te-provider.js +131 -0
  166. package/dist/control/te-provider.js.map +1 -0
  167. package/dist/control/uds.d.ts +114 -0
  168. package/dist/control/uds.d.ts.map +1 -0
  169. package/dist/control/uds.js +456 -0
  170. package/dist/control/uds.js.map +1 -0
  171. package/dist/control/web-console/view.d.ts +5 -0
  172. package/dist/control/web-console/view.d.ts.map +1 -0
  173. package/dist/control/web-console/view.js +122 -0
  174. package/dist/control/web-console/view.js.map +1 -0
  175. package/dist/control/web-console.d.ts +50 -0
  176. package/dist/control/web-console.d.ts.map +1 -0
  177. package/dist/control/web-console.js +317 -0
  178. package/dist/control/web-console.js.map +1 -0
  179. package/dist/mcp/jsonrpc.d.ts.map +1 -1
  180. package/dist/mcp/jsonrpc.js +12 -3
  181. package/dist/mcp/jsonrpc.js.map +1 -1
  182. package/dist/mcp/server.d.ts.map +1 -1
  183. package/dist/mcp/server.js +26 -17
  184. package/dist/mcp/server.js.map +1 -1
  185. package/package.json +13 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coordinator-store.js","sourceRoot":"","sources":["../../../../taskflow-control/src/store/coordinator-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { ControlStore } from "./store.ts";
2
+ import { type EvidenceLedgerView, type EvidenceStore, type EvidenceStoreOptions } from "./evidence-store.ts";
3
+ export type ControlEvidenceOptions = Pick<EvidenceStoreOptions, "authorize" | "terminalEvidence" | "onDurabilityPoint">;
4
+ /** No cached projection or caller-selected anchor becomes an evidence authority. */
5
+ export declare function readControlEvidence(store: ControlStore): EvidenceLedgerView;
6
+ /** Use the project's existing writer exclusion for staging, issuance and reads. */
7
+ export declare function createControlEvidenceStore(store: ControlStore, options: ControlEvidenceOptions): Promise<EvidenceStore>;
8
+ /** Advance only the logical visibility floor; retained journal and blobs survive. */
9
+ export declare function compactControlEvidence(store: ControlStore, evidence: EvidenceStore, throughCommitSeq: number): Promise<void>;
10
+ //# sourceMappingURL=evidence-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evidence-adapter.d.ts","sourceRoot":"","sources":["../../../../taskflow-control/src/store/evidence-adapter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EACkC,KAAK,kBAAkB,EAC/D,KAAK,aAAa,EAAE,KAAK,oBAAoB,EAC7C,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,oBAAoB,EAAE,WAAW,GAAG,kBAAkB,GAAG,mBAAmB,CAAC,CAAC;AAYxH,oFAAoF;AACpF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,kBAAkB,CA2D3E;AAED,mFAAmF;AACnF,wBAAsB,0BAA0B,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,aAAa,CAAC,CAiB7H;AAED,qFAAqF;AACrF,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CASlI"}
@@ -0,0 +1,114 @@
1
+ /** Evidence derived exclusively from the validated ControlStore journal. */
2
+ import { canonicalJson } from "taskflow-core/flowir/hash";
3
+ import { ControlError } from "../errors.js";
4
+ import { ControlStore } from "./store.js";
5
+ import { JOURNAL_GENESIS, journalHash } from "./journal.js";
6
+ import { createEvidenceStore, evidenceEventHash, } from "./evidence-store.js";
7
+ function fail(message) {
8
+ throw new ControlError("TF_DURABILITY_FAILED", message, { recoveryAction: "operator", sideEffects: "unknown" });
9
+ }
10
+ function batchTip(batches) {
11
+ const last = batches.at(-1);
12
+ return { commitSeq: last?.commitSeq ?? 0,
13
+ hash: last ? last.recordKind === "lifecycle-batch" ? last.contentHash : journalHash(last) : JOURNAL_GENESIS };
14
+ }
15
+ /** No cached projection or caller-selected anchor becomes an evidence authority. */
16
+ export function readControlEvidence(store) {
17
+ const batches = store.readJournal();
18
+ const header = store.header;
19
+ const view = {
20
+ projectId: header.projectId, controlDomainId: header.controlDomainId,
21
+ directoryBinding: header.directoryBinding,
22
+ anchorHash: JOURNAL_GENESIS, tipHash: JOURNAL_GENESIS, tipCommitSeq: 0,
23
+ events: [], runs: {}, commands: {}, receipts: {},
24
+ };
25
+ const events = [];
26
+ const runs = {};
27
+ const commands = {};
28
+ const receipts = {};
29
+ for (const batch of batches) {
30
+ for (const event of batch.events) {
31
+ const hash = evidenceEventHash(view.tipHash, event);
32
+ events.push({ event, previousHash: view.tipHash, hash });
33
+ view.tipHash = hash;
34
+ }
35
+ view.tipCommitSeq = batch.commitSeq;
36
+ if (batch.command)
37
+ commands[batch.command.commandId] = {
38
+ ...(batch.command.responseArtifactRef ? { responseArtifactRef: batch.command.responseArtifactRef } : {}),
39
+ };
40
+ if (batch.recordKind !== "lifecycle-batch")
41
+ continue;
42
+ if (batch.evidenceMetadata) {
43
+ const metadata = batch.evidenceMetadata;
44
+ if (Object.hasOwn(runs, metadata.runId))
45
+ fail("run evidence metadata was committed more than once");
46
+ runs[metadata.runId] = { runId: metadata.runId, eventIds: [], artifactRefs: [],
47
+ buildInfo: metadata.buildInfo, assurance: metadata.assurance };
48
+ }
49
+ if (batch.receipt) {
50
+ if (!batch.receiptRef || !batch.manifestProofRef || Object.hasOwn(receipts, batch.receipt.runId))
51
+ fail("receipt issuance lacks unique atomic references");
52
+ receipts[batch.receipt.runId] = { receiptRef: batch.receiptRef, manifestProofRef: batch.manifestProofRef };
53
+ }
54
+ }
55
+ for (const run of Object.values(runs)) {
56
+ const state = store.readRun(run.runId);
57
+ if (!state)
58
+ fail("evidence metadata has no committed run");
59
+ run.boundPlanHash = state.boundPlanHash;
60
+ run.boundFragmentHash = state.boundFragmentHash;
61
+ const scoped = events.filter(({ event }) => event.correlationId === run.runId);
62
+ const terminal = scoped.findIndex(({ event }) => event.payload.kind === "run.terminal");
63
+ // Receipt issuance and later release snapshots must never change its manifest.
64
+ const manifest = terminal < 0 ? scoped : scoped.slice(0, terminal + 1);
65
+ run.eventIds = manifest.map(({ event }) => event.eventId);
66
+ const refs = [];
67
+ for (const { event } of manifest) {
68
+ if (event.payload.kind !== "artifact.recorded" || event.payload.runId !== run.runId)
69
+ continue;
70
+ const ref = event.payload.artifact;
71
+ if (!refs.some(candidate => canonicalJson(candidate) === canonicalJson(ref)))
72
+ refs.push(ref);
73
+ }
74
+ run.artifactRefs = refs;
75
+ if (terminal >= 0) {
76
+ const event = scoped[terminal].event;
77
+ if (event.payload.kind !== "run.terminal" || event.payload.status !== state.status || state.stage !== "terminal")
78
+ fail("terminal event differs from authoritative run state");
79
+ run.terminalEvidenceId = event.eventId;
80
+ }
81
+ }
82
+ return { ...view, events, runs, commands, receipts };
83
+ }
84
+ /** Use the project's existing writer exclusion for staging, issuance and reads. */
85
+ export async function createControlEvidenceStore(store, options) {
86
+ return createEvidenceStore({
87
+ ...options, storePath: store.storePath,
88
+ ledger: {
89
+ read: () => readControlEvidence(store),
90
+ withWriter: operation => store.withWriter(() => operation(readControlEvidence(store))),
91
+ async commitReceiptOnce(runId, prepared) {
92
+ const current = readControlEvidence(store);
93
+ if (prepared.expectedTip.commitSeq !== current.tipCommitSeq || prepared.expectedTip.hash !== current.tipHash) {
94
+ throw new ControlError("TF_STALE_VERSION", "evidence journal advanced before receipt issuance");
95
+ }
96
+ const tip = batchTip(store.readJournal());
97
+ store.appendReceipt(runId, { receipt: prepared.receipt, receiptRef: prepared.receiptRef,
98
+ manifestProofRef: prepared.manifestProofRef }, tip);
99
+ },
100
+ },
101
+ });
102
+ }
103
+ /** Advance only the logical visibility floor; retained journal and blobs survive. */
104
+ export async function compactControlEvidence(store, evidence, throughCommitSeq) {
105
+ await store.withWriter(async () => {
106
+ const prepared = await evidence.prepareCheckpoint(throughCommitSeq);
107
+ const current = readControlEvidence(store);
108
+ if (prepared.expectedTip.commitSeq !== current.tipCommitSeq || prepared.expectedTip.hash !== current.tipHash) {
109
+ throw new ControlError("TF_STALE_VERSION", "journal advanced before compaction checkpoint");
110
+ }
111
+ store.appendCheckpoint(throughCommitSeq, batchTip(store.readJournal()));
112
+ });
113
+ }
114
+ //# sourceMappingURL=evidence-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evidence-adapter.js","sourceRoot":"","sources":["../../../../taskflow-control/src/store/evidence-adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import type { RunState } from "taskflow-core";
2
+ import type { ControlStore } from "./store.ts";
3
+ import type { EvidenceStoreOptions } from "./evidence-store.ts";
4
+ export interface EvidenceDiagnostic {
5
+ runId: string;
6
+ projectId: string;
7
+ controlDomainId: string;
8
+ state: RunState;
9
+ controlDirectory: string;
10
+ projectRoot: string;
11
+ }
12
+ export interface EvidenceExplanationQuery {
13
+ effectId?: string;
14
+ phaseId?: string;
15
+ seeds?: string[];
16
+ }
17
+ export interface EvidenceExplanationOptions {
18
+ authorize: EvidenceStoreOptions["authorize"];
19
+ /** Trusted provider reader; callers cannot select a checkpoint or journal path. */
20
+ readDiagnostic(runId: string): EvidenceDiagnostic | undefined | Promise<EvidenceDiagnostic | undefined>;
21
+ }
22
+ export declare function explainControlEvidence(store: ControlStore, actor: unknown, runId: string, options: EvidenceExplanationOptions, query?: EvidenceExplanationQuery): Promise<{
23
+ runId: string;
24
+ projectId: string;
25
+ controlDomainId: string;
26
+ status: import("../index.ts").RunStatus;
27
+ stage: import("../index.ts").RunStage;
28
+ slot: import("../index.ts").RunSlotState;
29
+ needsOperator: boolean;
30
+ journalCommitSeq: number;
31
+ lifecycle: {
32
+ eventId: string;
33
+ commitSeq: number;
34
+ recordedAt: number;
35
+ payload: import("../index.ts").ControlEventPayload;
36
+ }[];
37
+ pendingApprovals: {
38
+ approvalRequestId: string;
39
+ nodeInstanceId: string;
40
+ deadline: number;
41
+ }[];
42
+ receiptIssued: boolean;
43
+ checkpoint: {
44
+ available: true;
45
+ updatedAt: number;
46
+ runtimeStatus: "blocked" | "completed" | "failed" | "paused" | "running";
47
+ stale: string | undefined;
48
+ effect?: import("taskflow-core").WhyEffectFromFlowResult | undefined;
49
+ reason?: undefined;
50
+ } | {
51
+ available: false;
52
+ reason: string;
53
+ };
54
+ }>;
55
+ //# sourceMappingURL=evidence-explanation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evidence-explanation.d.ts","sourceRoot":"","sources":["../../../../taskflow-control/src/store/evidence-explanation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,QAAQ,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACpB;AACD,MAAM,WAAW,wBAAwB;IAAG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE;AACnG,MAAM,WAAW,0BAA0B;IAC1C,SAAS,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAC7C,mFAAmF;IACnF,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;CACxG;AAED,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAC9F,OAAO,EAAE,0BAA0B,EAAE,KAAK,GAAE,wBAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CzE"}
@@ -0,0 +1,50 @@
1
+ /** Authorized diagnostics from the real project journal and TE checkpoint. */
2
+ import { formatWhyStale, readMapOf, declaredReadMapOfDef } from "taskflow-core/stale";
3
+ import { whyEffectFromDurableJournal } from "taskflow-core/effects/why";
4
+ import { ControlError } from "../errors.js";
5
+ export async function explainControlEvidence(store, actor, runId, options, query = {}) {
6
+ if (query.effectId !== undefined && (typeof query.effectId !== "string" || !query.effectId.trim())
7
+ || query.phaseId !== undefined && (typeof query.phaseId !== "string" || !query.phaseId.trim())
8
+ || query.seeds !== undefined && (!Array.isArray(query.seeds) || query.seeds.some(seed => typeof seed !== "string" || !seed.trim()))) {
9
+ throw new ControlError("TF_COMMAND_FAILED", "invalid evidence diagnostic selector");
10
+ }
11
+ return store.withWriter(async () => {
12
+ const header = store.header;
13
+ const authorize = async () => {
14
+ const auth = await options.authorize(actor, { projectId: header.projectId, controlDomainId: header.controlDomainId,
15
+ target: { kind: "run", id: runId } });
16
+ if (!auth?.principal || !/^[a-f0-9]{64}$/.test(auth.authorizationContextHash))
17
+ throw new ControlError("TF_POLICY_DENIED", "diagnostic authority unavailable");
18
+ };
19
+ await authorize();
20
+ const batches = store.readJournal();
21
+ const run = store.readRun(runId);
22
+ if (!run)
23
+ throw new ControlError("TF_POLICY_DENIED", "run is absent from this project");
24
+ const diagnostic = await options.readDiagnostic(runId);
25
+ if (diagnostic && (diagnostic.runId !== runId || diagnostic.state.runId !== runId
26
+ || diagnostic.projectId !== header.projectId || diagnostic.controlDomainId !== header.controlDomainId)) {
27
+ throw new ControlError("TF_DURABILITY_FAILED", "runtime checkpoint identity differs from the project journal");
28
+ }
29
+ const stale = diagnostic ? formatWhyStale(runId, diagnostic.state.flowName, readMapOf(diagnostic.state.phases), query.seeds ?? [], declaredReadMapOfDef(diagnostic.state.def)) : undefined;
30
+ const effect = query.effectId && diagnostic ? await whyEffectFromDurableJournal({ flow: diagnostic.state.def,
31
+ runId, effectId: query.effectId, phaseId: query.phaseId, workspaceRoot: diagnostic.projectRoot,
32
+ controlDirectory: diagnostic.controlDirectory }) : undefined;
33
+ await authorize();
34
+ // Validate authoritative bytes again after the asynchronous TE journal read.
35
+ store.readJournal();
36
+ const events = batches.flatMap(batch => batch.events).filter(event => event.correlationId === runId);
37
+ return {
38
+ runId, projectId: header.projectId, controlDomainId: header.controlDomainId,
39
+ status: run.status, stage: run.stage, slot: run.slot, needsOperator: run.needsOperator,
40
+ journalCommitSeq: store.commitSeq,
41
+ lifecycle: events.map(event => ({ eventId: event.eventId, commitSeq: event.commitSeq, recordedAt: event.recordedAt, payload: event.payload })),
42
+ pendingApprovals: store.listApprovals().filter(approval => approval.runId === runId && approval.status === "pending")
43
+ .map(approval => ({ approvalRequestId: approval.approvalRequestId, nodeInstanceId: approval.nodeInstanceId, deadline: approval.deadline })),
44
+ receiptIssued: batches.some(batch => batch.recordKind === "lifecycle-batch" && batch.receipt?.runId === runId),
45
+ checkpoint: diagnostic ? { available: true, updatedAt: diagnostic.state.updatedAt, runtimeStatus: diagnostic.state.status, stale,
46
+ ...(effect ? { effect } : {}) } : { available: false, reason: "provider has no durable checkpoint for this run" },
47
+ };
48
+ });
49
+ }
50
+ //# sourceMappingURL=evidence-explanation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evidence-explanation.js","sourceRoot":"","sources":["../../../../taskflow-control/src/store/evidence-explanation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,143 @@
1
+ import { type ArtifactRef, type ControlEvent, type Receipt, type ReceiptAssurance, type BuildInfoWire } from "../schema/index.ts";
2
+ export interface EvidenceChainEntry {
3
+ event: ControlEvent;
4
+ previousHash: string;
5
+ hash: string;
6
+ }
7
+ /** Committed projection; the adapter must derive it from its validated ledger. */
8
+ export interface EvidenceRun {
9
+ runId: string;
10
+ eventIds: readonly string[];
11
+ boundPlanHash?: string;
12
+ boundFragmentHash?: string;
13
+ artifactRefs: readonly ArtifactRef[];
14
+ assurance: ReceiptAssurance;
15
+ buildInfo: BuildInfoWire;
16
+ /** Durable TE evidence reference, resolved by the required trusted reader. */
17
+ terminalEvidenceId?: string;
18
+ }
19
+ export interface IssuedEvidenceReceipt {
20
+ receiptRef: ArtifactRef;
21
+ manifestProofRef: ArtifactRef;
22
+ }
23
+ /**
24
+ * All projections (runs/commands/receipts) must be derived by the owner's
25
+ * validated journal reader. Hash checking below detects changed chain bytes;
26
+ * it does not turn an untrusted caller-supplied anchor into a trust root.
27
+ */
28
+ export interface EvidenceLedgerView {
29
+ projectId: string;
30
+ controlDomainId: string;
31
+ directoryBinding: {
32
+ canonicalPath: string;
33
+ device: string;
34
+ inode: string;
35
+ };
36
+ anchorHash: string;
37
+ tipHash: string;
38
+ tipCommitSeq: number;
39
+ events: readonly EvidenceChainEntry[];
40
+ runs: Readonly<Record<string, EvidenceRun>>;
41
+ commands: Readonly<Record<string, {
42
+ responseArtifactRef?: ArtifactRef;
43
+ }>>;
44
+ receipts: Readonly<Record<string, IssuedEvidenceReceipt>>;
45
+ }
46
+ export interface EvidenceStoreOptions {
47
+ storePath: string;
48
+ ledger: {
49
+ read(): EvidenceLedgerView | Promise<EvidenceLedgerView>;
50
+ /**
51
+ * Hold the SAME writer fence until the returned operation Promise settles,
52
+ * including disclosures. ALL journal/projection mutations must use this
53
+ * fence; reads within it must not recursively acquire it. Authorization
54
+ * must evaluate current policy at completion, not return a cached grant.
55
+ */
56
+ withWriter<T>(operation: (view: EvidenceLedgerView) => Promise<T>): Promise<T>;
57
+ /** Atomic journal marker + tip CAS, called INSIDE the existing writer fence. */
58
+ commitReceiptOnce(runId: string, prepared: PreparedEvidenceReceipt): Promise<void>;
59
+ };
60
+ /** Resolve an authenticated transport actor and recheck CURRENT policy. */
61
+ authorize(actor: unknown, scope: {
62
+ projectId: string;
63
+ controlDomainId: string;
64
+ target: {
65
+ kind: "run" | "command";
66
+ id: string;
67
+ };
68
+ artifactRef?: ArtifactRef;
69
+ }): {
70
+ principal: string;
71
+ authorizationContextHash: string;
72
+ } | Promise<{
73
+ principal: string;
74
+ authorizationContextHash: string;
75
+ }>;
76
+ terminalEvidence: {
77
+ /** Must reject live processes/jobs, ambiguous jobs and pending/dirty intents. */
78
+ verify(project: {
79
+ projectId: string;
80
+ controlDomainId: string;
81
+ }, runId: string, evidenceId: string): TerminalEvidenceObservation | Promise<TerminalEvidenceObservation>;
82
+ };
83
+ /** Optional fault observer; never supplies authority. */
84
+ onDurabilityPoint?: (point: "file-fsynced" | "file-published") => void;
85
+ }
86
+ export interface TerminalEvidenceObservation {
87
+ terminalStatus: "completed" | "failed" | "blocked" | "cancelled";
88
+ terminalEventId: string;
89
+ evidenceCommit: string;
90
+ providerOutcome: "completed" | "failed" | "operator-intervened";
91
+ }
92
+ export interface PreparedEvidenceReceipt extends IssuedEvidenceReceipt {
93
+ receipt: Receipt;
94
+ expectedTip: {
95
+ commitSeq: number;
96
+ hash: string;
97
+ };
98
+ }
99
+ export declare function evidenceEventHash(previousHash: string, event: ControlEvent): string;
100
+ /** Resolve committed run artifacts without inventing Receipt metadata for live runs.
101
+ * Callers outside EvidenceStore must supply the validated owner ledger view. */
102
+ export declare function evidenceRunArtifactRefs(view: EvidenceLedgerView, runId: string): readonly ArtifactRef[];
103
+ /** Logical compaction only. No method in this class deletes journal or blobs. */
104
+ export declare class EvidenceStore {
105
+ #private;
106
+ private constructor();
107
+ static open(options: EvidenceStoreOptions): Promise<EvidenceStore>;
108
+ stageArtifact(bytes: Uint8Array, metadata: Omit<ArtifactRef, "digest" | "size">): Promise<ArtifactRef>;
109
+ /** Owner must call under its commit fence before acknowledging acceptance. */
110
+ assertDurableReferences(refs: readonly ArtifactRef[]): Promise<void>;
111
+ /** Internal preparation only; its blobs remain unreachable until committed. */
112
+ prepareFinalReceipt(runId: string): Promise<PreparedEvidenceReceipt>;
113
+ /** Trusted control service entry. Holds the owner fence through commit-once. */
114
+ issueFinalReceipt(runId: string): Promise<Receipt>;
115
+ readArtifact(actor: unknown, target: {
116
+ kind: "run" | "command";
117
+ id: string;
118
+ }, ref: ArtifactRef): Promise<Buffer>;
119
+ readReceipt(actor: unknown, runId: string): Promise<{
120
+ receipt: Receipt;
121
+ verification: {
122
+ artifactIntegrity: "verified" | "unknown";
123
+ };
124
+ }>;
125
+ prepareCheckpoint(throughCommitSeq: number): Promise<{
126
+ eventPayload: {
127
+ kind: "compaction.checkpoint";
128
+ throughCommitSeq: number;
129
+ };
130
+ expectedTip: {
131
+ commitSeq: number;
132
+ hash: string;
133
+ };
134
+ }>;
135
+ checkCursor(cursor: {
136
+ nextCommitSeq: number;
137
+ leaseExpiresAt: number;
138
+ }, now: number): Promise<{
139
+ minAvailableCommitSeq: number;
140
+ }>;
141
+ }
142
+ export declare function createEvidenceStore(options: EvidenceStoreOptions): Promise<EvidenceStore>;
143
+ //# sourceMappingURL=evidence-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evidence-store.d.ts","sourceRoot":"","sources":["../../../../taskflow-control/src/store/evidence-store.ts"],"names":[],"mappings":"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"}