@xioflow/kernel 0.4.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +95 -3
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +94 -0
- package/dist/cli.js.map +1 -0
- package/dist/driver/node-driver.d.ts.map +1 -1
- package/dist/driver/node-driver.js +1 -30
- package/dist/driver/node-driver.js.map +1 -1
- package/dist/driver/reaper-driver.d.ts +62 -0
- package/dist/driver/reaper-driver.d.ts.map +1 -0
- package/dist/driver/reaper-driver.js +371 -0
- package/dist/driver/reaper-driver.js.map +1 -0
- package/dist/driver/spawn-support.d.ts +4 -0
- package/dist/driver/spawn-support.d.ts.map +1 -0
- package/dist/driver/spawn-support.js +31 -0
- package/dist/driver/spawn-support.js.map +1 -0
- package/dist/driver/types.d.ts +6 -2
- package/dist/driver/types.d.ts.map +1 -1
- package/dist/fault/crashpoint.d.ts +8 -0
- package/dist/fault/crashpoint.d.ts.map +1 -0
- package/dist/fault/crashpoint.js +37 -0
- package/dist/fault/crashpoint.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp/server.d.ts +49 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +233 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/tools.d.ts +32 -0
- package/dist/mcp/tools.d.ts.map +1 -0
- package/dist/mcp/tools.js +255 -0
- package/dist/mcp/tools.js.map +1 -0
- package/dist/native/darwin-arm64/xioflow-reaper +0 -0
- package/dist/native/darwin-x64/xioflow-reaper +0 -0
- package/dist/native/linux-arm64/xioflow-reaper +0 -0
- package/dist/native/linux-x64/xioflow-reaper +0 -0
- package/dist/otel/otlp.d.ts +37 -0
- package/dist/otel/otlp.d.ts.map +1 -0
- package/dist/otel/otlp.js +224 -0
- package/dist/otel/otlp.js.map +1 -0
- package/dist/recovery/engine.d.ts.map +1 -1
- package/dist/recovery/engine.js +2 -0
- package/dist/recovery/engine.js.map +1 -1
- package/dist/snapshot/git-shadow.d.ts +8 -0
- package/dist/snapshot/git-shadow.d.ts.map +1 -1
- package/dist/snapshot/git-shadow.js +24 -19
- package/dist/snapshot/git-shadow.js.map +1 -1
- package/dist/store/sqlite.d.ts.map +1 -1
- package/dist/store/sqlite.js +5 -0
- package/dist/store/sqlite.js.map +1 -1
- package/dist/supervisor/admission.d.ts +26 -0
- package/dist/supervisor/admission.d.ts.map +1 -0
- package/dist/supervisor/admission.js +98 -0
- package/dist/supervisor/admission.js.map +1 -0
- package/dist/supervisor/finalize.d.ts +21 -0
- package/dist/supervisor/finalize.d.ts.map +1 -0
- package/dist/supervisor/finalize.js +66 -0
- package/dist/supervisor/finalize.js.map +1 -0
- package/dist/supervisor/fingerprint.d.ts +8 -0
- package/dist/supervisor/fingerprint.d.ts.map +1 -0
- package/dist/supervisor/fingerprint.js +54 -0
- package/dist/supervisor/fingerprint.js.map +1 -0
- package/dist/supervisor/process-monitor.d.ts +9 -0
- package/dist/supervisor/process-monitor.d.ts.map +1 -0
- package/dist/supervisor/process-monitor.js +230 -0
- package/dist/supervisor/process-monitor.js.map +1 -0
- package/dist/supervisor/process-output.d.ts +27 -0
- package/dist/supervisor/process-output.d.ts.map +1 -0
- package/dist/supervisor/process-output.js +102 -0
- package/dist/supervisor/process-output.js.map +1 -0
- package/dist/supervisor/process-run.d.ts +30 -0
- package/dist/supervisor/process-run.d.ts.map +1 -0
- package/dist/supervisor/process-run.js +191 -0
- package/dist/supervisor/process-run.js.map +1 -0
- package/dist/supervisor/replay.d.ts +14 -0
- package/dist/supervisor/replay.d.ts.map +1 -0
- package/dist/supervisor/replay.js +70 -0
- package/dist/supervisor/replay.js.map +1 -0
- package/dist/supervisor/rollback.d.ts +8 -0
- package/dist/supervisor/rollback.d.ts.map +1 -0
- package/dist/supervisor/rollback.js +161 -0
- package/dist/supervisor/rollback.js.map +1 -0
- package/dist/supervisor/snapshot-ops.d.ts +36 -0
- package/dist/supervisor/snapshot-ops.d.ts.map +1 -0
- package/dist/supervisor/snapshot-ops.js +243 -0
- package/dist/supervisor/snapshot-ops.js.map +1 -0
- package/dist/supervisor/supervisor.d.ts +26 -51
- package/dist/supervisor/supervisor.d.ts.map +1 -1
- package/dist/supervisor/supervisor.js +112 -1158
- package/dist/supervisor/supervisor.js.map +1 -1
- package/dist/supervisor/types.d.ts +64 -0
- package/dist/supervisor/types.d.ts.map +1 -0
- package/dist/supervisor/types.js +2 -0
- package/dist/supervisor/types.js.map +1 -0
- package/dist/testing/contract-suite.d.ts.map +1 -1
- package/dist/testing/contract-suite.js +49 -10
- package/dist/testing/contract-suite.js.map +1 -1
- package/dist/types.d.ts +6 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/workspace/read-tracking.d.ts +23 -0
- package/dist/workspace/read-tracking.d.ts.map +1 -0
- package/dist/workspace/read-tracking.js +66 -0
- package/dist/workspace/read-tracking.js.map +1 -0
- package/dist/workspace/transactions.d.ts +89 -0
- package/dist/workspace/transactions.d.ts.map +1 -0
- package/dist/workspace/transactions.js +277 -0
- package/dist/workspace/transactions.js.map +1 -0
- package/package.json +8 -2
|
@@ -1,54 +1,10 @@
|
|
|
1
1
|
import { ExecutionDomain } from '../domain.js';
|
|
2
|
-
import { PlatformDriver,
|
|
3
|
-
import { ProcessOperationResult, TerminationReason,
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
command: StructuredCommand;
|
|
9
|
-
requiredResources?: string[];
|
|
10
|
-
mutationRoots?: string[];
|
|
11
|
-
capabilityId?: string;
|
|
12
|
-
confinement?: boolean | string;
|
|
13
|
-
confinementDriver?: ConfinementDriver;
|
|
14
|
-
timeoutMs?: number;
|
|
15
|
-
inputFingerprint?: string;
|
|
16
|
-
maxOutputBytes?: number;
|
|
17
|
-
drainTimeoutMs?: number;
|
|
18
|
-
resourceBudget?: ResourceBudget;
|
|
19
|
-
waitTimeoutMs?: number;
|
|
20
|
-
artifactsDir?: string;
|
|
21
|
-
abortSignal?: AbortSignal;
|
|
22
|
-
/**
|
|
23
|
-
* 流式投影:每个 stdout/stderr chunk 原样转发,不做缓冲或截断。
|
|
24
|
-
* 回调抛错不会中断排空,首个错误以 result.streamCallbackError 记录。
|
|
25
|
-
*/
|
|
26
|
-
onStreamChunk?: (stream: 'stdout' | 'stderr', chunk: Buffer) => void;
|
|
27
|
-
}
|
|
28
|
-
export interface CaptureSnapshotOptions {
|
|
29
|
-
runId: string;
|
|
30
|
-
opId: string;
|
|
31
|
-
roots?: string[];
|
|
32
|
-
capabilityId?: string;
|
|
33
|
-
includeIgnored?: boolean;
|
|
34
|
-
maxTreeSizeBytes?: number;
|
|
35
|
-
timeoutMs?: number;
|
|
36
|
-
}
|
|
37
|
-
export interface RollbackOptions {
|
|
38
|
-
runId: string;
|
|
39
|
-
opId: string;
|
|
40
|
-
snapshotId: string;
|
|
41
|
-
roots?: string[];
|
|
42
|
-
capabilityId?: string;
|
|
43
|
-
force?: boolean;
|
|
44
|
-
timeoutMs?: number;
|
|
45
|
-
}
|
|
46
|
-
export declare function normalizeResourceName(res: string): string;
|
|
47
|
-
/**
|
|
48
|
-
* 规范化计算完整输入的 SHA-256 指纹 (ARCHITECTURE §2 / P0-12)
|
|
49
|
-
* 覆盖 execPath, args, cwd, 键排序的 envWhiteList, inheritEnv, sha256(stdin), 排序后的 requiredResources, timeoutMs, resourceBudget.
|
|
50
|
-
*/
|
|
51
|
-
export declare function computeInputFingerprint(options: ExecuteProcessOptions): string;
|
|
2
|
+
import { PlatformDriver, StopProcessResult } from '../driver/types.js';
|
|
3
|
+
import { ProcessOperationResult, TerminationReason, ServiceSpec, ServiceHandle, SnapshotDriver, SnapshotOperationResult, RollbackOperationResult, ConfinementDriver } from '../types.js';
|
|
4
|
+
import { CommitResult, TransactionEffects, WorkspaceTransaction } from '../workspace/transactions.js';
|
|
5
|
+
import { CaptureSnapshotOptions, ExecuteProcessOptions, RollbackOptions } from './types.js';
|
|
6
|
+
export type { ExecuteProcessOptions, CaptureSnapshotOptions, RollbackOptions } from './types.js';
|
|
7
|
+
export { normalizeResourceName, computeInputFingerprint } from './fingerprint.js';
|
|
52
8
|
export declare class ProcessSupervisor {
|
|
53
9
|
private readonly domain;
|
|
54
10
|
private readonly driver;
|
|
@@ -56,6 +12,7 @@ export declare class ProcessSupervisor {
|
|
|
56
12
|
private serviceSupervisor;
|
|
57
13
|
private snapshotDriver;
|
|
58
14
|
private confinementDriver?;
|
|
15
|
+
private transactions?;
|
|
59
16
|
constructor(domain: ExecutionDomain, driver?: PlatformDriver, snapshotDriver?: SnapshotDriver, confinementDriver?: ConfinementDriver);
|
|
60
17
|
getDomain(): ExecutionDomain;
|
|
61
18
|
getDriver(): PlatformDriver;
|
|
@@ -63,6 +20,7 @@ export declare class ProcessSupervisor {
|
|
|
63
20
|
setConfinementDriver(driver: ConfinementDriver): void;
|
|
64
21
|
getConfinementDriver(): ConfinementDriver | undefined;
|
|
65
22
|
startService(spec: ServiceSpec): Promise<ServiceHandle>;
|
|
23
|
+
private get snapshotContext();
|
|
66
24
|
/**
|
|
67
25
|
* 快照捕获协议 (ARCHITECTURE §3.5 / 契约 #32, #53)
|
|
68
26
|
*/
|
|
@@ -91,17 +49,33 @@ export declare class ProcessSupervisor {
|
|
|
91
49
|
pruneSnapshots(snapshotIds: string[], options?: {
|
|
92
50
|
runId?: string;
|
|
93
51
|
}): Promise<string[]>;
|
|
52
|
+
/**
|
|
53
|
+
* 工作区事务(ARCHITECTURE §3.9):在主工作区的基线快照上 materialize 出独立 fork,
|
|
54
|
+
* agent 以 `forkRoot` 为 cwd 工作;commit 时按读写集做乐观并发校验,无冲突才把写集应用回主工作区。
|
|
55
|
+
*/
|
|
56
|
+
beginWorkspaceTransaction(options: {
|
|
57
|
+
txId: string;
|
|
58
|
+
runId: string;
|
|
59
|
+
root: string;
|
|
60
|
+
forkPath: string;
|
|
61
|
+
}): Promise<WorkspaceTransaction>;
|
|
62
|
+
inspectWorkspaceTransaction(txId: string): Promise<TransactionEffects>;
|
|
63
|
+
commitWorkspaceTransaction(txId: string): Promise<CommitResult>;
|
|
64
|
+
abortWorkspaceTransaction(txId: string, reason?: string): Promise<void>;
|
|
65
|
+
private workspaceTransactions;
|
|
94
66
|
/**
|
|
95
67
|
* 启动协议:准入检查 -> 先持久化意图 -> 请求驱动启动 -> 登记身份并转 active -> 监督运行 -> 记录结果
|
|
96
68
|
*/
|
|
97
69
|
executeProcess(options: ExecuteProcessOptions): Promise<ProcessOperationResult>;
|
|
70
|
+
private get runContext();
|
|
71
|
+
/** 登记在飞状态;abortSignal 触发即走取消流水线(已中止则在启动前取消)。 */
|
|
72
|
+
private trackOperation;
|
|
98
73
|
/**
|
|
99
74
|
* 停止确认流水线 (Stopping Pipeline)
|
|
100
75
|
*/
|
|
101
76
|
cancelOperation(opId: string, graceMs?: number): Promise<StopProcessResult>;
|
|
102
77
|
handleStopPipeline(opId: string, reason: TerminationReason, graceMs: number): Promise<StopProcessResult>;
|
|
103
78
|
private ensureActiveOperation;
|
|
104
|
-
private handlePreSpawnCancellation;
|
|
105
79
|
pruneArtifacts(filter?: {
|
|
106
80
|
olderThanMs?: number;
|
|
107
81
|
prefix?: string;
|
|
@@ -109,6 +83,7 @@ export declare class ProcessSupervisor {
|
|
|
109
83
|
deleted: string[];
|
|
110
84
|
retained: string[];
|
|
111
85
|
};
|
|
86
|
+
/** 保留原签名:共享契约与单写者测试直接调用它验证「重复终结必须抛错」。 */
|
|
112
87
|
private finalizeOperation;
|
|
113
88
|
}
|
|
114
89
|
//# sourceMappingURL=supervisor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../src/supervisor/supervisor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../src/supervisor/supervisor.ts"],"names":[],"mappings":"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"}
|