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":"control-cli.js","sourceRoot":"","sources":["../../../taskflow-control/src/control-cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { AuthorizationAuthority, VerifiedContext } from "./authorization.ts";
2
+ import type { ProjectRegistry } from "./project-registry.ts";
3
+ import { type WebConsoleServer } from "./web-console.ts";
4
+ export interface AuthenticatedControlDispatcher {
5
+ dispatchAuthenticated(context: VerifiedContext, method: string, params: unknown): Promise<unknown>;
6
+ }
7
+ export interface ControlConsoleOptions {
8
+ host: AuthenticatedControlDispatcher;
9
+ authorization: AuthorizationAuthority;
10
+ registry: ProjectRegistry;
11
+ /** Issued by the trusted launcher before HTTP starts, never from a browser body. */
12
+ contexts: ReadonlyMap<string, VerifiedContext>;
13
+ port?: number;
14
+ sessionTtlMs?: number;
15
+ }
16
+ export declare function launchControlConsole(options: ControlConsoleOptions): Promise<WebConsoleServer>;
17
+ //# sourceMappingURL=control-console.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control-console.d.ts","sourceRoot":"","sources":["../../../taskflow-control/src/control-console.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAiD,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAExG,MAAM,WAAW,8BAA8B;IAC9C,qBAAqB,CAAC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACnG;AACD,MAAM,WAAW,qBAAqB;IACrC,IAAI,EAAE,8BAA8B,CAAC;IACrC,aAAa,EAAE,sBAAsB,CAAC;IACtC,QAAQ,EAAE,eAAe,CAAC;IAC1B,oFAAoF;IACpF,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAqDpG"}
@@ -0,0 +1,67 @@
1
+ /** Trusted local launcher bridge. All run/approval/evidence semantics stay in Host. */
2
+ import { ControlError } from "./errors.js";
3
+ import { startWebConsole } from "./web-console.js";
4
+ export async function launchControlConsole(options) {
5
+ const contexts = new Map(options.contexts);
6
+ if (contexts.size === 0)
7
+ throw new ControlError("TF_POLICY_DENIED", "console requires verified mounted-project contexts");
8
+ const validate = async (projectId, request) => {
9
+ const context = contexts.get(projectId);
10
+ if (!context)
11
+ throw new ControlError("TF_POLICY_DENIED", "project is not available to this console launcher");
12
+ const { store, projectRoot } = options.registry.resolve(projectId);
13
+ const header = store.header;
14
+ if (request.controlDomainId !== undefined && request.controlDomainId !== header.controlDomainId)
15
+ throw new ControlError("TF_POLICY_DENIED", "project domain does not match this mount");
16
+ await options.authorization.authorize(context, {
17
+ projectId, controlDomainId: header.controlDomainId, projectRoot,
18
+ operation: ["approval.decide", "approvals.stageEdit"].includes(request.operation) ? "submit" : "read",
19
+ ...(["approval.decide", "approvals.stageEdit"].includes(request.operation) ? { commandKind: "approval.decide" } : {}),
20
+ });
21
+ return context;
22
+ };
23
+ return startWebConsole({
24
+ port: options.port, sessionTtlMs: options.sessionTtlMs,
25
+ approvalEditWithArtifactRef: true, approvalOutputEdit: true,
26
+ async authorize(request) {
27
+ if (request.projectId !== undefined) {
28
+ const context = await validate(request.projectId, request);
29
+ return { call: (operation, params) => options.host.dispatchAuthenticated(context, operation, params) };
30
+ }
31
+ // A context never expands to other mounts. Global navigation aggregates
32
+ // project-scoped Host calls and filters denied projects at live policy.
33
+ const allowed = [];
34
+ for (const projectId of contexts.keys()) {
35
+ try {
36
+ allowed.push({ projectId, context: await validate(projectId, request) });
37
+ }
38
+ catch (error) {
39
+ if (!(error instanceof ControlError) || !["TF_POLICY_DENIED", "TF_AUTHORITY_REVOKED"].includes(error.code))
40
+ throw error;
41
+ }
42
+ }
43
+ if (allowed.length === 0)
44
+ throw new ControlError("TF_POLICY_DENIED", "no mounted project is currently authorized");
45
+ return { async call(operation, params) {
46
+ if (operation === "projects.list") {
47
+ const rows = [];
48
+ for (const entry of allowed) {
49
+ const result = await options.host.dispatchAuthenticated(entry.context, operation, { ...params, projectId: entry.projectId });
50
+ await validate(entry.projectId, request);
51
+ if (!Array.isArray(result))
52
+ throw new ControlError("TF_COMMAND_FAILED", "host project list is invalid");
53
+ rows.push(...result);
54
+ }
55
+ // Recheck every disclosed scope after the last Host await. Revocation
56
+ // refuses the whole response; it cannot return a cached earlier grant.
57
+ await Promise.all(allowed.map(entry => validate(entry.projectId, request)));
58
+ return rows;
59
+ }
60
+ if (operation !== "control.status")
61
+ throw new ControlError("TF_POLICY_DENIED", "project selection is required");
62
+ return options.host.dispatchAuthenticated(allowed[0].context, operation, params);
63
+ } };
64
+ },
65
+ });
66
+ }
67
+ //# sourceMappingURL=control-console.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control-console.js","sourceRoot":"","sources":["../../../taskflow-control/src/control-console.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * ControlHost — one control semantic in every mode (D18).
3
+ *
4
+ * Modes (P13 / RFC §5):
5
+ * - auto (default): ensure registry + project store; start or attach the user
6
+ * singleton multi-mount control (taskflowd OR embedded supervisor competing
7
+ * for the SAME lock + endpoint — D32). Control cannot run ⇒ fail closed.
8
+ * - coordinated: external control required; attach-only, down ⇒ fail closed.
9
+ * - standalone: explicit; in-process ControlHost, single-owner lease, no
10
+ * global concurrency claims.
11
+ *
12
+ * The host also enforces hello-before-RPC (P4) and fencing epoch checks
13
+ * (P16) on every dispatch, and accepts only a TE-backed ExecutionProvider as
14
+ * its execution authority (RFC §16 / P8).
15
+ */
16
+ import { ProjectRegistry } from "./project-registry.ts";
17
+ import { type HostRuntimeOptions } from "./host-runtime.ts";
18
+ import type { AuthorizationAuthority, VerifiedContext } from "./authorization.ts";
19
+ import { type HelloVerdict } from "./hello.ts";
20
+ import { type ControlMode } from "./modes.ts";
21
+ import { type ObservedProcessLike, type ProcessIdentityLike, type SingletonAcquireResult, type SingletonPaths } from "./singleton.ts";
22
+ import { type NegotiationHandshake } from "./schema/index.ts";
23
+ import type { ExecutionProvider } from "./te-provider.ts";
24
+ export interface ControlHostOptions {
25
+ registry?: ProjectRegistry;
26
+ authorization?: AuthorizationAuthority;
27
+ projectRoot?: string;
28
+ projectMounts?: {
29
+ storePath: string;
30
+ projectRoot: string;
31
+ }[];
32
+ trustedInProcessFeatures?: readonly string[];
33
+ maxActiveRuns?: number;
34
+ evidenceFactory?: HostRuntimeOptions["evidenceFactory"];
35
+ /** Default auto (fresh install, P13). */
36
+ mode?: ControlMode;
37
+ /** User control home (default `~/.taskflow/control`, TASKFLOW_HOME override). */
38
+ controlHome?: string;
39
+ /** Project ControlStore path (S3 opens it; standalone opens the same store). */
40
+ projectStorePath?: string;
41
+ /** The ONLY legal execution authority: TE-backed (see te-provider.ts). */
42
+ provider: ExecutionProvider;
43
+ holderId?: string;
44
+ processIdentity?: ProcessIdentityLike;
45
+ inspectProcess?: (pid: number) => ObservedProcessLike;
46
+ now?: () => number;
47
+ leaseTtlMs?: number;
48
+ singletonPaths?: SingletonPaths;
49
+ /** Server hello for the negotiation gate (defaults to this package's build). */
50
+ serverHello?: NegotiationHandshake;
51
+ /** Required features the host demands from clients (P4). */
52
+ requiredFeatures?: readonly string[];
53
+ /** Test seam: bypass the real singleton acquire. */
54
+ singletonOverride?: () => SingletonAcquireResult;
55
+ }
56
+ export type ControlHostState = "stopped" | "started" | "failed-closed";
57
+ export type ControlHostSingleton = "won" | "attached" | "standalone" | "none";
58
+ export interface ControlHostStatus {
59
+ mode: ControlMode;
60
+ state: ControlHostState;
61
+ singleton: ControlHostSingleton;
62
+ fencingEpoch: number;
63
+ holderId?: string;
64
+ endpoint?: string;
65
+ globalAuthority: boolean;
66
+ }
67
+ declare function defaultServerHello(): NegotiationHandshake;
68
+ export declare class ControlHost {
69
+ #private;
70
+ readonly mode: ControlMode;
71
+ readonly provider: ExecutionProvider;
72
+ readonly paths: SingletonPaths;
73
+ readonly now: () => number;
74
+ constructor(options: ControlHostOptions);
75
+ get state(): ControlHostState;
76
+ get status(): ControlHostStatus;
77
+ get greeted(): boolean;
78
+ hello(clientHello: unknown): HelloVerdict;
79
+ start(): Promise<ControlHostStatus>;
80
+ /**
81
+ * Hello-before-RPC dispatch. Every method call must follow a successful
82
+ * hello (P4) and carry a fencingEpoch >= the current lease epoch (P16).
83
+ *
84
+ * An ATTACHED host routes its RPCs over the Unix socket to the winner's
85
+ * control plane (its own hello happened on the wire at connect time).
86
+ */
87
+ dispatch<T>(method: string, params: unknown, context: {
88
+ fencingEpoch: number;
89
+ }): Promise<T>;
90
+ /** Renew the coordinator lease while held (best-effort; S3 wires the timer). */
91
+ renewLease(): void;
92
+ stop(): void;
93
+ dispatchAuthenticated<T = unknown>(context: VerifiedContext, method: string, params: unknown): Promise<T>;
94
+ }
95
+ export { CONTROL_MODE_ENV, resolveControlMode } from "./modes.ts";
96
+ export type { ControlMode } from "./modes.ts";
97
+ export { defaultServerHello };
98
+ //# sourceMappingURL=control-host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control-host.d.ts","sourceRoot":"","sources":["../../../taskflow-control/src/control-host.ts"],"names":[],"mappings":"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"}