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,143 @@
1
+ import { type CoordinatorLease, type CoordinatorCommandRecord, type ConcurrencyReservation, type CapacitySnapshot } from "../schema/coordinator.ts";
2
+ export interface CoordinatorIdentity {
3
+ principal: string;
4
+ ownerId: string;
5
+ operator: boolean;
6
+ }
7
+ export interface CoordinatorAdmissionProof {
8
+ reservationId: string;
9
+ projectId: string;
10
+ projectControlDomainId: string;
11
+ runId: string;
12
+ projectAdmitCommitSeq: number;
13
+ runVersion: number;
14
+ }
15
+ /** Read-only absence is informational and never authorizes capacity release. */
16
+ export interface CoordinatorAdmissionAbsence {
17
+ status: "not-admitted";
18
+ reservationId: string;
19
+ projectId: string;
20
+ projectControlDomainId: string;
21
+ runId: string;
22
+ runVersion: number;
23
+ }
24
+ export interface CoordinatorAbandonmentProof {
25
+ status: "abandoned";
26
+ reservationId: string;
27
+ projectId: string;
28
+ projectControlDomainId: string;
29
+ runId: string;
30
+ runVersion: number;
31
+ abandonmentCommitSeq: number;
32
+ }
33
+ export type CoordinatorAdmissionDecision = CoordinatorAdmissionProof | CoordinatorAbandonmentProof;
34
+ export type CoordinatorAdmissionObservation = CoordinatorAdmissionDecision | CoordinatorAdmissionAbsence | null;
35
+ export interface CoordinatorReleaseProof extends CoordinatorAdmissionProof {
36
+ proofId: string;
37
+ status: string;
38
+ stage: string;
39
+ requiresReadmission: boolean;
40
+ providerNoLiveProcessTree: boolean;
41
+ noAmbiguousJobs: boolean;
42
+ reconcileTimeoutOnly: boolean;
43
+ }
44
+ export type CoordinatorOperation = "dispatch" | "reserve" | "commit" | "renew" | "markOrphanSuspect" | "normalRelease" | "forceRelease" | "setMaxActiveRuns" | "readReservation" | "readCommand" | "snapshot";
45
+ /** Configured only by the trusted host service. Context is opaque service
46
+ * authority, never a wire-body principal or caller-supplied quiescence bool. */
47
+ export interface CoordinatorAuthority<Context> {
48
+ readLease(): CoordinatorLease | null | Promise<CoordinatorLease | null>;
49
+ authorize(context: Context, operation: CoordinatorOperation, reservation?: ConcurrencyReservation): CoordinatorIdentity | Promise<CoordinatorIdentity>;
50
+ readAdmission(reservation: ConcurrencyReservation): CoordinatorAdmissionObservation | Promise<CoordinatorAdmissionObservation>;
51
+ /** Explicit project journal CAS against the SAME writer fence as admission.
52
+ * Existing admission wins; otherwise durably tombstone this reservation.
53
+ * Omission is safe: expired reservations retain capacity until reconciled. */
54
+ abandonAdmissionIfAbsent?(reservation: ConcurrencyReservation): CoordinatorAdmissionDecision | Promise<CoordinatorAdmissionDecision>;
55
+ readRelease(reservation: ConcurrencyReservation): CoordinatorReleaseProof | Promise<CoordinatorReleaseProof>;
56
+ }
57
+ export interface CoordinatorStoreOptions<Context> {
58
+ initialMaxActiveRuns: number;
59
+ epoch: number;
60
+ holderId: string;
61
+ authority: CoordinatorAuthority<Context>;
62
+ }
63
+ export interface StoredReservation {
64
+ reservation: ConcurrencyReservation;
65
+ ownerId: string;
66
+ principal: string;
67
+ updatedAt: number;
68
+ admitRunVersion?: number;
69
+ releaseKind?: "normal" | "force";
70
+ releaseProofId?: string;
71
+ concurrencyGuarantee: "enforced" | "operator-overridden";
72
+ }
73
+ export type CoordinatorOperatorRequest = {
74
+ kind: "setMaxActiveRuns";
75
+ maxActiveRuns: number;
76
+ } | {
77
+ kind: "forceRelease";
78
+ reservationId: string;
79
+ riskAcknowledgement: true;
80
+ reason: string;
81
+ };
82
+ export interface StoredCoordinatorCommand {
83
+ /** New commands retain inspectable audit intent; legacy records remain readable. */
84
+ request?: CoordinatorOperatorRequest;
85
+ record: CoordinatorCommandRecord;
86
+ result: StoredReservation | number;
87
+ }
88
+ export interface CoordinatorSnapshot {
89
+ commitSeq: number;
90
+ fencingEpoch: number;
91
+ capacity: CapacitySnapshot;
92
+ concurrencyGuarantee: "enforced" | "operator-overridden";
93
+ reservations: StoredReservation[];
94
+ commands: StoredCoordinatorCommand[];
95
+ }
96
+ export declare const COORDINATOR_CRASH_ENV = "TASKFLOW_COORDINATOR_CRASH_AT";
97
+ export type CoordinatorCrashPoint = "before-state-write" | "after-state-write";
98
+ /** Read-only upgrade fence for homes predating coordinator-epoch.json. Never
99
+ * trust a bare epoch field: verify the complete ledger and its genesis binding. */
100
+ export declare function readDurableCoordinatorEpoch(directory: string): number;
101
+ export declare class UserCoordinatorStore<Context> {
102
+ #private;
103
+ readonly storePath: string;
104
+ constructor(directory: string, options: CoordinatorStoreOptions<Context>);
105
+ close(): void;
106
+ initialize(): Promise<void>;
107
+ snapshot(context: Context): Promise<CoordinatorSnapshot>;
108
+ readReservation(id: string, context: Context): Promise<StoredReservation | undefined>;
109
+ /** Hold the durable capacity fence through asynchronous preparation and the
110
+ * synchronous provider launch. Preparation must not launch work or re-enter
111
+ * this coordinator. The returned activation must not await: its project
112
+ * binding/auth checks and actual runtime activation occur in one JS turn. */
113
+ withDispatch<T>(id: string, context: Context, prepare: (row: StoredReservation) => Promise<() => T>): Promise<T>;
114
+ readCommand(id: string, context: Context): Promise<StoredCoordinatorCommand | undefined>;
115
+ reserve(input: {
116
+ reservationId?: string;
117
+ projectId: string;
118
+ projectControlDomainId: string;
119
+ runId: string;
120
+ ttlMs: number;
121
+ }, context: Context): Promise<StoredReservation>;
122
+ commit(id: string, input: {
123
+ projectAdmitCommitSeq: number;
124
+ attemptId?: string;
125
+ providerJobHandle?: string;
126
+ }, context: Context): Promise<StoredReservation>;
127
+ renew(id: string, input: {
128
+ ttlMs?: number;
129
+ }, context: Context): Promise<StoredReservation>;
130
+ markOrphanSuspect(id: string, context: Context): Promise<StoredReservation>;
131
+ normalRelease(id: string, context: Context): Promise<StoredReservation>;
132
+ forceRelease(id: string, input: {
133
+ commandId: string;
134
+ riskAcknowledgement: true;
135
+ reason: string;
136
+ }, context: Context): Promise<StoredReservation>;
137
+ setMaxActiveRuns(input: {
138
+ commandId: string;
139
+ maxActiveRuns: number;
140
+ }, context: Context): Promise<number>;
141
+ }
142
+ export declare function openCoordinatorStore<Context>(directory: string, options: CoordinatorStoreOptions<Context>): Promise<UserCoordinatorStore<Context>>;
143
+ //# sourceMappingURL=coordinator-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coordinator-store.d.ts","sourceRoot":"","sources":["../../../../taskflow-control/src/store/coordinator-store.ts"],"names":[],"mappings":"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"}