@tokenfactory/acc-runner 0.44.7 → 0.44.9
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 +38 -0
- package/dist/attachments/codex-stage.d.ts +11 -0
- package/dist/attachments/codex-stage.d.ts.map +1 -0
- package/dist/attachments/codex-stage.js +82 -0
- package/dist/attachments/codex-stage.js.map +1 -0
- package/dist/attachments/fetch-attachment.d.ts +17 -0
- package/dist/attachments/fetch-attachment.d.ts.map +1 -1
- package/dist/attachments/fetch-attachment.js +134 -6
- package/dist/attachments/fetch-attachment.js.map +1 -1
- package/dist/attachments/index.d.ts +2 -1
- package/dist/attachments/index.d.ts.map +1 -1
- package/dist/attachments/index.js +2 -1
- package/dist/attachments/index.js.map +1 -1
- package/dist/build-info.generated.d.ts +1 -1
- package/dist/build-info.generated.js +2 -2
- package/dist/commit-sha.d.ts +31 -0
- package/dist/commit-sha.d.ts.map +1 -0
- package/dist/commit-sha.js +31 -0
- package/dist/commit-sha.js.map +1 -0
- package/dist/companion-run.d.ts.map +1 -1
- package/dist/companion-run.js +14 -1
- package/dist/companion-run.js.map +1 -1
- package/dist/doctor.d.ts +16 -0
- package/dist/doctor.d.ts.map +1 -1
- package/dist/doctor.js +107 -0
- package/dist/doctor.js.map +1 -1
- package/dist/engines/codex-chat.d.ts +24 -4
- package/dist/engines/codex-chat.d.ts.map +1 -1
- package/dist/engines/codex-chat.js +102 -20
- package/dist/engines/codex-chat.js.map +1 -1
- package/dist/login.d.ts.map +1 -1
- package/dist/login.js +7 -1
- package/dist/login.js.map +1 -1
- package/dist/machine-console/index.d.ts +37 -0
- package/dist/machine-console/index.d.ts.map +1 -0
- package/dist/machine-console/index.js +263 -0
- package/dist/machine-console/index.js.map +1 -0
- package/dist/machine-console/policy.d.ts +16 -0
- package/dist/machine-console/policy.d.ts.map +1 -0
- package/dist/machine-console/policy.js +83 -0
- package/dist/machine-console/policy.js.map +1 -0
- package/dist/machine-console/redact.d.ts +12 -0
- package/dist/machine-console/redact.d.ts.map +1 -0
- package/dist/machine-console/redact.js +48 -0
- package/dist/machine-console/redact.js.map +1 -0
- package/dist/machine-console/transport.d.ts +57 -0
- package/dist/machine-console/transport.d.ts.map +1 -0
- package/dist/machine-console/transport.js +170 -0
- package/dist/machine-console/transport.js.map +1 -0
- package/dist/mcp-spawn.d.ts +2 -1
- package/dist/mcp-spawn.d.ts.map +1 -1
- package/dist/mcp-spawn.js +2 -2
- package/dist/mcp-spawn.js.map +1 -1
- package/dist/preview-environments/control-plane.d.ts +11 -0
- package/dist/preview-environments/control-plane.d.ts.map +1 -0
- package/dist/preview-environments/control-plane.js +49 -0
- package/dist/preview-environments/control-plane.js.map +1 -0
- package/dist/preview-environments/http-provider.d.ts +13 -0
- package/dist/preview-environments/http-provider.d.ts.map +1 -0
- package/dist/preview-environments/http-provider.js +64 -0
- package/dist/preview-environments/http-provider.js.map +1 -0
- package/dist/preview-environments/profiles.d.ts +6 -0
- package/dist/preview-environments/profiles.d.ts.map +1 -0
- package/dist/preview-environments/profiles.js +34 -0
- package/dist/preview-environments/profiles.js.map +1 -0
- package/dist/preview-environments/safety.d.ts +7 -0
- package/dist/preview-environments/safety.d.ts.map +1 -0
- package/dist/preview-environments/safety.js +47 -0
- package/dist/preview-environments/safety.js.map +1 -0
- package/dist/preview-environments/service.d.ts +36 -0
- package/dist/preview-environments/service.d.ts.map +1 -0
- package/dist/preview-environments/service.js +149 -0
- package/dist/preview-environments/service.js.map +1 -0
- package/dist/preview-environments/types.d.ts +60 -0
- package/dist/preview-environments/types.d.ts.map +1 -0
- package/dist/preview-environments/types.js +2 -0
- package/dist/preview-environments/types.js.map +1 -0
- package/dist/production-migrations/command.d.ts +3 -0
- package/dist/production-migrations/command.d.ts.map +1 -0
- package/dist/production-migrations/command.js +21 -0
- package/dist/production-migrations/command.js.map +1 -0
- package/dist/production-migrations/executor.d.ts +59 -0
- package/dist/production-migrations/executor.d.ts.map +1 -0
- package/dist/production-migrations/executor.js +161 -0
- package/dist/production-migrations/executor.js.map +1 -0
- package/dist/production-migrations/pg-target.d.ts +22 -0
- package/dist/production-migrations/pg-target.d.ts.map +1 -0
- package/dist/production-migrations/pg-target.js +87 -0
- package/dist/production-migrations/pg-target.js.map +1 -0
- package/dist/production-migrations/profiles.d.ts +5 -0
- package/dist/production-migrations/profiles.d.ts.map +1 -0
- package/dist/production-migrations/profiles.js +39 -0
- package/dist/production-migrations/profiles.js.map +1 -0
- package/dist/production-migrations/service.d.ts +39 -0
- package/dist/production-migrations/service.d.ts.map +1 -0
- package/dist/production-migrations/service.js +166 -0
- package/dist/production-migrations/service.js.map +1 -0
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +17 -0
- package/dist/program.js.map +1 -1
- package/dist/runtime/worktree.d.ts.map +1 -1
- package/dist/runtime/worktree.js +23 -1
- package/dist/runtime/worktree.js.map +1 -1
- package/dist/secure-execution/auto-lease.d.ts +57 -0
- package/dist/secure-execution/auto-lease.d.ts.map +1 -0
- package/dist/secure-execution/auto-lease.js +116 -0
- package/dist/secure-execution/auto-lease.js.map +1 -0
- package/dist/secure-execution/command-policy.d.ts +5 -0
- package/dist/secure-execution/command-policy.d.ts.map +1 -0
- package/dist/secure-execution/command-policy.js +95 -0
- package/dist/secure-execution/command-policy.js.map +1 -0
- package/dist/secure-execution/confinement.d.ts +3 -0
- package/dist/secure-execution/confinement.d.ts.map +1 -0
- package/dist/secure-execution/confinement.js +18 -0
- package/dist/secure-execution/confinement.js.map +1 -0
- package/dist/secure-execution/engine.d.ts +24 -0
- package/dist/secure-execution/engine.d.ts.map +1 -0
- package/dist/secure-execution/engine.js +272 -0
- package/dist/secure-execution/engine.js.map +1 -0
- package/dist/secure-execution/index.d.ts +7 -0
- package/dist/secure-execution/index.d.ts.map +1 -0
- package/dist/secure-execution/index.js +6 -0
- package/dist/secure-execution/index.js.map +1 -0
- package/dist/secure-execution/node-pty.d.ts +11 -0
- package/dist/secure-execution/node-pty.d.ts.map +1 -0
- package/dist/secure-execution/node-pty.js +27 -0
- package/dist/secure-execution/node-pty.js.map +1 -0
- package/dist/secure-execution/types.d.ts +176 -0
- package/dist/secure-execution/types.d.ts.map +1 -0
- package/dist/secure-execution/types.js +2 -0
- package/dist/secure-execution/types.js.map +1 -0
- package/dist/staging-migrations/command.d.ts +2 -0
- package/dist/staging-migrations/command.d.ts.map +1 -0
- package/dist/staging-migrations/command.js +58 -0
- package/dist/staging-migrations/command.js.map +1 -0
- package/dist/staging-migrations/executor.d.ts +49 -0
- package/dist/staging-migrations/executor.d.ts.map +1 -0
- package/dist/staging-migrations/executor.js +125 -0
- package/dist/staging-migrations/executor.js.map +1 -0
- package/dist/staging-migrations/pg-target.d.ts +20 -0
- package/dist/staging-migrations/pg-target.d.ts.map +1 -0
- package/dist/staging-migrations/pg-target.js +63 -0
- package/dist/staging-migrations/pg-target.js.map +1 -0
- package/dist/staging-migrations/profiles.d.ts +5 -0
- package/dist/staging-migrations/profiles.d.ts.map +1 -0
- package/dist/staging-migrations/profiles.js +31 -0
- package/dist/staging-migrations/profiles.js.map +1 -0
- package/dist/staging-migrations/service.d.ts +40 -0
- package/dist/staging-migrations/service.d.ts.map +1 -0
- package/dist/staging-migrations/service.js +157 -0
- package/dist/staging-migrations/service.js.map +1 -0
- package/dist/supervisor.d.ts +15 -0
- package/dist/supervisor.d.ts.map +1 -0
- package/dist/supervisor.js +54 -0
- package/dist/supervisor.js.map +1 -0
- package/dist/terminal/http-carrier.d.ts +17 -0
- package/dist/terminal/http-carrier.d.ts.map +1 -0
- package/dist/terminal/http-carrier.js +39 -0
- package/dist/terminal/http-carrier.js.map +1 -0
- package/dist/terminal/pty-adapter.d.ts +88 -0
- package/dist/terminal/pty-adapter.d.ts.map +1 -0
- package/dist/terminal/pty-adapter.js +252 -0
- package/dist/terminal/pty-adapter.js.map +1 -0
- package/dist/terminal/transport-contract.d.ts +115 -0
- package/dist/terminal/transport-contract.d.ts.map +1 -0
- package/dist/terminal/transport-contract.js +2 -0
- package/dist/terminal/transport-contract.js.map +1 -0
- package/dist/terminal/transport.d.ts +32 -0
- package/dist/terminal/transport.d.ts.map +1 -0
- package/dist/terminal/transport.js +208 -0
- package/dist/terminal/transport.js.map +1 -0
- package/dist/watch-chat/wire.d.ts.map +1 -1
- package/dist/watch-chat/wire.js +14 -1
- package/dist/watch-chat/wire.js.map +1 -1
- package/dist/watch.d.ts +3 -0
- package/dist/watch.d.ts.map +1 -1
- package/dist/watch.js +57 -0
- package/dist/watch.js.map +1 -1
- package/package.json +6 -1
- package/scripts/com.tokenfactory.acc-runner-dedicated.plist +64 -0
- package/scripts/com.tokenfactory.acc-runner.plist +90 -0
- package/scripts/gen-build-info.d.mts +3 -0
- package/scripts/gen-build-info.mjs +72 -0
- package/scripts/install-launchd.sh +235 -0
- package/scripts/setup-dedicated-runner-darwin.sh +75 -0
- package/scripts/setup-dedicated-runner-linux.sh +173 -0
- package/scripts/uninstall-launchd.sh +67 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/machine-console/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MA-1 runner-side command policy.
|
|
3
|
+
*
|
|
4
|
+
* The database classifies a request before dispatch. This is the second gate,
|
|
5
|
+
* beside the process that would execute it: a stale or compromised caller does
|
|
6
|
+
* not get a general-purpose shell merely by labelling a command "read".
|
|
7
|
+
* Interactive shell syntax belongs to the later, approval-backed PTY phase.
|
|
8
|
+
*/
|
|
9
|
+
export type MachineCommandClassification = "read" | "write" | "destructive";
|
|
10
|
+
export interface MachineCommandPolicyResult {
|
|
11
|
+
allowed: boolean;
|
|
12
|
+
reason?: string;
|
|
13
|
+
}
|
|
14
|
+
/** Fail-closed validation for a command claimed from the control plane. */
|
|
15
|
+
export declare function validateMachineCommand(command: string, classification: MachineCommandClassification): MachineCommandPolicyResult;
|
|
16
|
+
//# sourceMappingURL=policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/machine-console/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,4BAA4B,GAAG,MAAM,GAAG,OAAO,GAAG,aAAa,CAAC;AAE5E,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA6CD,2EAA2E;AAC3E,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,4BAA4B,GAC3C,0BAA0B,CAmC5B"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MA-1 runner-side command policy.
|
|
3
|
+
*
|
|
4
|
+
* The database classifies a request before dispatch. This is the second gate,
|
|
5
|
+
* beside the process that would execute it: a stale or compromised caller does
|
|
6
|
+
* not get a general-purpose shell merely by labelling a command "read".
|
|
7
|
+
* Interactive shell syntax belongs to the later, approval-backed PTY phase.
|
|
8
|
+
*/
|
|
9
|
+
const READ_COMMANDS = new Set([
|
|
10
|
+
"pwd", "ls", "rg", "grep", "cat", "head", "tail",
|
|
11
|
+
"wc", "stat", "file", "diff", "jq", "git",
|
|
12
|
+
]);
|
|
13
|
+
const WRITE_COMMANDS = new Set([
|
|
14
|
+
...READ_COMMANDS,
|
|
15
|
+
"pnpm", "npm", "yarn", "bun", "cargo", "go",
|
|
16
|
+
]);
|
|
17
|
+
const READ_GIT_SUBCOMMANDS = new Set([
|
|
18
|
+
"status", "diff", "log", "show", "branch", "rev-parse", "ls-files",
|
|
19
|
+
"grep", "describe", "tag", "blame", "shortlog",
|
|
20
|
+
]);
|
|
21
|
+
const WRITE_GIT_SUBCOMMANDS = new Set([
|
|
22
|
+
...READ_GIT_SUBCOMMANDS,
|
|
23
|
+
"add", "commit", "checkout", "switch", "restore", "stash", "merge", "rebase",
|
|
24
|
+
]);
|
|
25
|
+
const FORBIDDEN_SHAPES = [
|
|
26
|
+
[/\0|[\r\n]/, "commands must be a single line"],
|
|
27
|
+
[/[;&|<>`]/, "shell chaining, pipes, redirects, and substitutions are disabled"],
|
|
28
|
+
[/\$\(|\$\{|\$[A-Za-z_]/, "environment and command expansion are disabled"],
|
|
29
|
+
[/(^|\s)(sudo|doas|su)(\s|$)/i, "privilege escalation is forbidden"],
|
|
30
|
+
[/(^|\s)(env|printenv|set)(\s|$)/i, "environment inspection is forbidden"],
|
|
31
|
+
[/(^|\s)(rm|rmdir|shred|mkfs|mount|umount|dd|kill|pkill|systemctl|service|reboot|shutdown)(\s|$)/i,
|
|
32
|
+
"destructive or host-control commands require the future approval lane"],
|
|
33
|
+
[/(^|\s)(bash|sh|zsh|fish|dash|cmd|powershell|pwsh)(\s|$)/i,
|
|
34
|
+
"nested shells are forbidden"],
|
|
35
|
+
[/(^|[\s"'])\.\.([/\\]|$)/, "paths may not escape the served repository"],
|
|
36
|
+
[/(^|[\s"'])~([/\\]|$)/, "home-directory paths are forbidden"],
|
|
37
|
+
[/(^|[\s"'])\/(?!\/)/, "absolute filesystem paths are forbidden"],
|
|
38
|
+
[/(^|\s)(\/proc\/[^\s]*environ|\.ssh\/|\.aws\/|\.config\/gh\/|\.npmrc)(\s|$)/i,
|
|
39
|
+
"credential-bearing paths are forbidden"],
|
|
40
|
+
[/\bgit\s+(clean|reset\s+--hard|config\s+--global|config\s+--system)\b/i,
|
|
41
|
+
"destructive or machine-global git operations require approval"],
|
|
42
|
+
];
|
|
43
|
+
function words(command) {
|
|
44
|
+
return command.trim().split(/\s+/).filter(Boolean);
|
|
45
|
+
}
|
|
46
|
+
/** Fail-closed validation for a command claimed from the control plane. */
|
|
47
|
+
export function validateMachineCommand(command, classification) {
|
|
48
|
+
const trimmed = command.trim();
|
|
49
|
+
if (!trimmed || trimmed.length > 16_384) {
|
|
50
|
+
return { allowed: false, reason: "command must contain 1..16384 characters" };
|
|
51
|
+
}
|
|
52
|
+
if (classification === "destructive") {
|
|
53
|
+
return { allowed: false, reason: "destructive commands require explicit ACC approval" };
|
|
54
|
+
}
|
|
55
|
+
for (const [shape, reason] of FORBIDDEN_SHAPES) {
|
|
56
|
+
if (shape.test(trimmed))
|
|
57
|
+
return { allowed: false, reason };
|
|
58
|
+
}
|
|
59
|
+
const argv = words(trimmed);
|
|
60
|
+
const executable = argv[0]?.toLowerCase();
|
|
61
|
+
const allowed = classification === "read" ? READ_COMMANDS : WRITE_COMMANDS;
|
|
62
|
+
if (!executable || !allowed.has(executable)) {
|
|
63
|
+
return { allowed: false, reason: `${executable || "command"} is not in the bounded command allowlist` };
|
|
64
|
+
}
|
|
65
|
+
if (executable === "git") {
|
|
66
|
+
const subcommand = argv[1]?.toLowerCase();
|
|
67
|
+
const gitCommands = classification === "read" ? READ_GIT_SUBCOMMANDS : WRITE_GIT_SUBCOMMANDS;
|
|
68
|
+
if (!subcommand || !gitCommands.has(subcommand)) {
|
|
69
|
+
return {
|
|
70
|
+
allowed: false,
|
|
71
|
+
reason: `git ${subcommand || "<missing>"} is outside the ${classification} command allowlist`,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if (["pnpm", "npm", "yarn", "bun"].includes(executable)) {
|
|
76
|
+
const action = argv[1]?.toLowerCase() ?? "";
|
|
77
|
+
if (["exec", "dlx", "x", "add", "remove", "install", "uninstall", "config", "publish"].includes(action)) {
|
|
78
|
+
return { allowed: false, reason: `${executable} ${action} is outside the bounded script runner` };
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return { allowed: true };
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=policy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/machine-console/policy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare function redactMachineOutput(value: string): string;
|
|
2
|
+
/**
|
|
3
|
+
* Holds the final token between chunks so a credential split across stdout
|
|
4
|
+
* events is never emitted half-redacted. Output is bounded elsewhere, making
|
|
5
|
+
* retaining one unusually long token safe.
|
|
6
|
+
*/
|
|
7
|
+
export declare class StreamingMachineRedactor {
|
|
8
|
+
private pending;
|
|
9
|
+
push(value: string): string;
|
|
10
|
+
finish(): string;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=redact.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redact.d.ts","sourceRoot":"","sources":["../../src/machine-console/redact.ts"],"names":[],"mappings":"AAgBA,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIzD;AAED;;;;GAIG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,OAAO,CAAM;IAErB,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAY3B,MAAM,IAAI,MAAM;CAKjB"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/** Runner-side streaming redaction. The database repeats the high-confidence gate. */
|
|
2
|
+
const SECRET_PATTERNS = [
|
|
3
|
+
[/sk-ant-[A-Za-z0-9_-]{16,}/g, "[REDACTED_ANTHROPIC_KEY]"],
|
|
4
|
+
[/sk-[A-Za-z0-9_-]{20,}/g, "[REDACTED_OPENAI_KEY]"],
|
|
5
|
+
[/github_pat_[A-Za-z0-9_]{20,}/g, "[REDACTED_GITHUB_TOKEN]"],
|
|
6
|
+
[/gh[posru]_[A-Za-z0-9]{16,}/g, "[REDACTED_GITHUB_TOKEN]"],
|
|
7
|
+
[/AKIA[0-9A-Z]{16}/g, "[REDACTED_AWS_KEY]"],
|
|
8
|
+
[/AIza[0-9A-Za-z_-]{30,}/g, "[REDACTED_GOOGLE_KEY]"],
|
|
9
|
+
[/eyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]*/g, "[REDACTED_JWT]"],
|
|
10
|
+
[/-----BEGIN [A-Z ]*PRIVATE KEY-----[\s\S]*?-----END [A-Z ]*PRIVATE KEY-----/g,
|
|
11
|
+
"[REDACTED_PRIVATE_KEY]"],
|
|
12
|
+
[/\b(API_KEY|ACCESS_TOKEN|AUTH_TOKEN|PASSWORD|SECRET)\s*=\s*[^\s]+/gi,
|
|
13
|
+
"$1=[REDACTED]"],
|
|
14
|
+
[/:\/\/[^/\s]+:[^/\s@]+@/g, "://[REDACTED]@"],
|
|
15
|
+
];
|
|
16
|
+
export function redactMachineOutput(value) {
|
|
17
|
+
let out = value;
|
|
18
|
+
for (const [pattern, replacement] of SECRET_PATTERNS)
|
|
19
|
+
out = out.replace(pattern, replacement);
|
|
20
|
+
return out;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Holds the final token between chunks so a credential split across stdout
|
|
24
|
+
* events is never emitted half-redacted. Output is bounded elsewhere, making
|
|
25
|
+
* retaining one unusually long token safe.
|
|
26
|
+
*/
|
|
27
|
+
export class StreamingMachineRedactor {
|
|
28
|
+
pending = "";
|
|
29
|
+
push(value) {
|
|
30
|
+
this.pending += value;
|
|
31
|
+
if (this.pending.length <= 2048)
|
|
32
|
+
return "";
|
|
33
|
+
const boundary = this.pending.lastIndexOf(" ", this.pending.length - 2048);
|
|
34
|
+
const newline = this.pending.lastIndexOf("\n", this.pending.length - 2048);
|
|
35
|
+
const cut = Math.max(boundary, newline);
|
|
36
|
+
if (cut < 0)
|
|
37
|
+
return "";
|
|
38
|
+
const ready = this.pending.slice(0, cut + 1);
|
|
39
|
+
this.pending = this.pending.slice(cut + 1);
|
|
40
|
+
return redactMachineOutput(ready);
|
|
41
|
+
}
|
|
42
|
+
finish() {
|
|
43
|
+
const out = redactMachineOutput(this.pending);
|
|
44
|
+
this.pending = "";
|
|
45
|
+
return out;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=redact.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redact.js","sourceRoot":"","sources":["../../src/machine-console/redact.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,MAAM,eAAe,GAA4B;IAC/C,CAAC,4BAA4B,EAAE,0BAA0B,CAAC;IAC1D,CAAC,wBAAwB,EAAE,uBAAuB,CAAC;IACnD,CAAC,+BAA+B,EAAE,yBAAyB,CAAC;IAC5D,CAAC,6BAA6B,EAAE,yBAAyB,CAAC;IAC1D,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;IAC3C,CAAC,yBAAyB,EAAE,uBAAuB,CAAC;IACpD,CAAC,4DAA4D,EAAE,gBAAgB,CAAC;IAChF,CAAC,6EAA6E;QAC5E,wBAAwB,CAAC;IAC3B,CAAC,oEAAoE;QACnE,eAAe,CAAC;IAClB,CAAC,yBAAyB,EAAE,gBAAgB,CAAC;CAC9C,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,KAAK,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,eAAe;QAAE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC9F,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,wBAAwB;IAC3B,OAAO,GAAG,EAAE,CAAC;IAErB,IAAI,CAAC,KAAa;QAChB,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC;QACtB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI;YAAE,OAAO,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;QAC3E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACxC,IAAI,GAAG,GAAG,CAAC;YAAE,OAAO,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAC3C,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,MAAM;QACJ,MAAM,GAAG,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,OAAO,GAAG,CAAC;IACb,CAAC;CACF"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { RunnerSupabaseClient } from "../supabase.js";
|
|
2
|
+
import type { MachineCommandClassification } from "./policy.js";
|
|
3
|
+
export type MachineCommandStream = "stdout" | "stderr" | "system";
|
|
4
|
+
export type MachineCommandRunnerStatus = "running" | "cancel_requested" | "succeeded" | "failed" | "cancelled" | "expired";
|
|
5
|
+
export type MachineCommandCompletionStatus = Extract<MachineCommandRunnerStatus, "succeeded" | "failed" | "cancelled" | "expired">;
|
|
6
|
+
export interface ClaimedMachineCommand {
|
|
7
|
+
command_id: string;
|
|
8
|
+
session_id: string;
|
|
9
|
+
project_id: string;
|
|
10
|
+
repo: string;
|
|
11
|
+
command_text: string;
|
|
12
|
+
classification: MachineCommandClassification;
|
|
13
|
+
expires_at: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Opaque capability returned only after the runner-scoped claim RPC succeeds.
|
|
17
|
+
* Every later transport operation requires this exact object, preventing a
|
|
18
|
+
* command id from another session from being mixed into the active execution.
|
|
19
|
+
*/
|
|
20
|
+
export interface MachineCommandLease {
|
|
21
|
+
readonly command: ClaimedMachineCommand;
|
|
22
|
+
}
|
|
23
|
+
export type MachineCommandTransportErrorCode = "authorization_failed" | "transport_unavailable" | "invalid_claim" | "invalid_lease" | "invalid_status" | "invalid_output";
|
|
24
|
+
export declare class MachineCommandTransportError extends Error {
|
|
25
|
+
readonly code: MachineCommandTransportErrorCode;
|
|
26
|
+
constructor(code: MachineCommandTransportErrorCode, message: string);
|
|
27
|
+
}
|
|
28
|
+
export interface MachineCommandTransport {
|
|
29
|
+
claim(): Promise<MachineCommandLease | null>;
|
|
30
|
+
append(lease: MachineCommandLease, stream: MachineCommandStream, content: string): Promise<void>;
|
|
31
|
+
status(lease: MachineCommandLease): Promise<MachineCommandRunnerStatus>;
|
|
32
|
+
complete(lease: MachineCommandLease, status: MachineCommandCompletionStatus, exitCode: number | null): Promise<void>;
|
|
33
|
+
refreshClient(client: RunnerSupabaseClient): void;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Runner-side adapter for the existing machine-session RPC transport.
|
|
37
|
+
*
|
|
38
|
+
* The database remains the authorization authority. This adapter adds a local
|
|
39
|
+
* fail-closed boundary: malformed claims never reach spawn, leases are bound to
|
|
40
|
+
* the exact claimed command/session pair, and output sequence numbers are owned
|
|
41
|
+
* by the transport rather than by event callbacks.
|
|
42
|
+
*/
|
|
43
|
+
export declare class SupabaseMachineCommandTransport implements MachineCommandTransport {
|
|
44
|
+
private readonly runnerId;
|
|
45
|
+
private client;
|
|
46
|
+
private readonly leases;
|
|
47
|
+
private readonly recentClaimIds;
|
|
48
|
+
private readonly recentClaimOrder;
|
|
49
|
+
constructor(client: RunnerSupabaseClient, runnerId: string);
|
|
50
|
+
refreshClient(client: RunnerSupabaseClient): void;
|
|
51
|
+
claim(): Promise<MachineCommandLease | null>;
|
|
52
|
+
append(lease: MachineCommandLease, stream: MachineCommandStream, content: string): Promise<void>;
|
|
53
|
+
status(lease: MachineCommandLease): Promise<MachineCommandRunnerStatus>;
|
|
54
|
+
complete(lease: MachineCommandLease, status: MachineCommandCompletionStatus, exitCode: number | null): Promise<void>;
|
|
55
|
+
private requireLease;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=transport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/machine-console/transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAEhE,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAClE,MAAM,MAAM,0BAA0B,GAClC,SAAS,GACT,kBAAkB,GAClB,WAAW,GACX,QAAQ,GACR,WAAW,GACX,SAAS,CAAC;AACd,MAAM,MAAM,8BAA8B,GAAG,OAAO,CAClD,0BAA0B,EAC1B,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CACjD,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,4BAA4B,CAAC;IAC7C,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;CACzC;AAED,MAAM,MAAM,gCAAgC,GACxC,sBAAsB,GACtB,uBAAuB,GACvB,eAAe,GACf,eAAe,GACf,gBAAgB,GAChB,gBAAgB,CAAC;AAErB,qBAAa,4BAA6B,SAAQ,KAAK;IAEnD,QAAQ,CAAC,IAAI,EAAE,gCAAgC;gBAAtC,IAAI,EAAE,gCAAgC,EAC/C,OAAO,EAAE,MAAM;CAKlB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,IAAI,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjG,MAAM,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACxE,QAAQ,CACN,KAAK,EAAE,mBAAmB,EAC1B,MAAM,EAAE,8BAA8B,EACtC,QAAQ,EAAE,MAAM,GAAG,IAAI,GACtB,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,aAAa,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAAC;CACnD;AA+DD;;;;;;;GAOG;AACH,qBAAa,+BAAgC,YAAW,uBAAuB;IAQ3E,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAP3B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkD;IACzE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IACpD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgB;gBAG/C,MAAM,EAAE,oBAAoB,EACX,QAAQ,EAAE,MAAM;IAMnC,aAAa,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI;IAI3C,KAAK,IAAI,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IA4B5C,MAAM,CAAC,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBhG,MAAM,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAcvE,QAAQ,CACZ,KAAK,EAAE,mBAAmB,EAC1B,MAAM,EAAE,8BAA8B,EACtC,QAAQ,EAAE,MAAM,GAAG,IAAI,GACtB,OAAO,CAAC,IAAI,CAAC;IAahB,OAAO,CAAC,YAAY;CAOrB"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
export class MachineCommandTransportError extends Error {
|
|
2
|
+
code;
|
|
3
|
+
constructor(code, message) {
|
|
4
|
+
super(message);
|
|
5
|
+
this.code = code;
|
|
6
|
+
this.name = "MachineCommandTransportError";
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
const UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
|
|
10
|
+
const REPO = /^[^/\s]+\/[^/\s]+$/;
|
|
11
|
+
const STATUSES = new Set([
|
|
12
|
+
"running",
|
|
13
|
+
"cancel_requested",
|
|
14
|
+
"succeeded",
|
|
15
|
+
"failed",
|
|
16
|
+
"cancelled",
|
|
17
|
+
"expired",
|
|
18
|
+
]);
|
|
19
|
+
const MAX_COMMAND_CHARACTERS = 16_384;
|
|
20
|
+
const MAX_OUTPUT_CHUNK_BYTES = 64 * 1024;
|
|
21
|
+
const MAX_RECENT_CLAIMS = 1_024;
|
|
22
|
+
function rpcError(operation, error) {
|
|
23
|
+
const detail = `${error?.code ?? ""} ${error?.message ?? ""}`;
|
|
24
|
+
const denied = /42501|unauthori[sz]ed|permission|forbidden|target_unavailable|jwt/i.test(detail);
|
|
25
|
+
return new MachineCommandTransportError(denied ? "authorization_failed" : "transport_unavailable", denied
|
|
26
|
+
? `Machine command ${operation} was not authorized.`
|
|
27
|
+
: `Machine command ${operation} transport is unavailable.`);
|
|
28
|
+
}
|
|
29
|
+
function invalidClaim(message) {
|
|
30
|
+
throw new MachineCommandTransportError("invalid_claim", message);
|
|
31
|
+
}
|
|
32
|
+
function parseClaim(value) {
|
|
33
|
+
if (!value || typeof value !== "object")
|
|
34
|
+
invalidClaim("Runner claim payload must be an object.");
|
|
35
|
+
const row = value;
|
|
36
|
+
for (const key of ["command_id", "session_id", "project_id"]) {
|
|
37
|
+
if (typeof row[key] !== "string" || !UUID.test(row[key]))
|
|
38
|
+
invalidClaim(`Runner claim has an invalid ${key}.`);
|
|
39
|
+
}
|
|
40
|
+
if (typeof row.repo !== "string" || !REPO.test(row.repo) || row.repo !== row.repo.toLowerCase()) {
|
|
41
|
+
invalidClaim("Runner claim has an invalid repository scope.");
|
|
42
|
+
}
|
|
43
|
+
if (typeof row.command_text !== "string"
|
|
44
|
+
|| row.command_text.length < 1
|
|
45
|
+
|| row.command_text.length > MAX_COMMAND_CHARACTERS) {
|
|
46
|
+
invalidClaim("Runner claim has an invalid bounded command.");
|
|
47
|
+
}
|
|
48
|
+
if (row.classification !== "read" && row.classification !== "write" && row.classification !== "destructive") {
|
|
49
|
+
invalidClaim("Runner claim has an invalid command classification.");
|
|
50
|
+
}
|
|
51
|
+
if (typeof row.expires_at !== "string" || !Number.isFinite(Date.parse(row.expires_at))) {
|
|
52
|
+
invalidClaim("Runner claim has an invalid expiry.");
|
|
53
|
+
}
|
|
54
|
+
return row;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Runner-side adapter for the existing machine-session RPC transport.
|
|
58
|
+
*
|
|
59
|
+
* The database remains the authorization authority. This adapter adds a local
|
|
60
|
+
* fail-closed boundary: malformed claims never reach spawn, leases are bound to
|
|
61
|
+
* the exact claimed command/session pair, and output sequence numbers are owned
|
|
62
|
+
* by the transport rather than by event callbacks.
|
|
63
|
+
*/
|
|
64
|
+
export class SupabaseMachineCommandTransport {
|
|
65
|
+
runnerId;
|
|
66
|
+
client;
|
|
67
|
+
leases = new WeakMap();
|
|
68
|
+
recentClaimIds = new Set();
|
|
69
|
+
recentClaimOrder = [];
|
|
70
|
+
constructor(client, runnerId) {
|
|
71
|
+
this.runnerId = runnerId;
|
|
72
|
+
this.client = client;
|
|
73
|
+
if (!runnerId.trim())
|
|
74
|
+
throw new Error("runnerId is required");
|
|
75
|
+
}
|
|
76
|
+
refreshClient(client) {
|
|
77
|
+
this.client = client;
|
|
78
|
+
}
|
|
79
|
+
async claim() {
|
|
80
|
+
const { data, error } = await this.client.rpc("claim_machine_command", {
|
|
81
|
+
p_runner_id: this.runnerId,
|
|
82
|
+
});
|
|
83
|
+
if (error)
|
|
84
|
+
throw rpcError("claim", error);
|
|
85
|
+
if (!Array.isArray(data))
|
|
86
|
+
invalidClaim("Runner claim response must be an array.");
|
|
87
|
+
if (data.length === 0)
|
|
88
|
+
return null;
|
|
89
|
+
if (data.length !== 1)
|
|
90
|
+
invalidClaim("Runner claim response returned more than one command.");
|
|
91
|
+
const command = parseClaim(data[0]);
|
|
92
|
+
if (this.recentClaimIds.has(command.command_id)) {
|
|
93
|
+
invalidClaim("Runner claim replayed a command already seen by this process.");
|
|
94
|
+
}
|
|
95
|
+
this.recentClaimIds.add(command.command_id);
|
|
96
|
+
this.recentClaimOrder.push(command.command_id);
|
|
97
|
+
if (this.recentClaimOrder.length > MAX_RECENT_CLAIMS) {
|
|
98
|
+
const oldest = this.recentClaimOrder.shift();
|
|
99
|
+
if (oldest)
|
|
100
|
+
this.recentClaimIds.delete(oldest);
|
|
101
|
+
}
|
|
102
|
+
const lease = Object.freeze({ command: Object.freeze(command) });
|
|
103
|
+
this.leases.set(lease, {
|
|
104
|
+
commandId: command.command_id,
|
|
105
|
+
sessionId: command.session_id,
|
|
106
|
+
nextOutputSequence: 0,
|
|
107
|
+
settled: false,
|
|
108
|
+
});
|
|
109
|
+
return lease;
|
|
110
|
+
}
|
|
111
|
+
async append(lease, stream, content) {
|
|
112
|
+
const state = this.requireLease(lease);
|
|
113
|
+
if (state.settled)
|
|
114
|
+
throw new MachineCommandTransportError("invalid_lease", "Machine command lease is already settled.");
|
|
115
|
+
if (stream !== "stdout" && stream !== "stderr" && stream !== "system") {
|
|
116
|
+
throw new MachineCommandTransportError("invalid_output", "Machine command output stream is invalid.");
|
|
117
|
+
}
|
|
118
|
+
if (Buffer.byteLength(content) > MAX_OUTPUT_CHUNK_BYTES) {
|
|
119
|
+
throw new MachineCommandTransportError("invalid_output", "Machine command output chunk exceeds 64 KiB.");
|
|
120
|
+
}
|
|
121
|
+
const sequence = state.nextOutputSequence;
|
|
122
|
+
const { error } = await this.client.rpc("append_machine_output", {
|
|
123
|
+
p_command_id: state.commandId,
|
|
124
|
+
p_sequence_no: sequence,
|
|
125
|
+
p_stream: stream,
|
|
126
|
+
p_content: content,
|
|
127
|
+
p_runner_id: this.runnerId,
|
|
128
|
+
});
|
|
129
|
+
if (error)
|
|
130
|
+
throw rpcError("output", error);
|
|
131
|
+
state.nextOutputSequence = sequence + 1;
|
|
132
|
+
}
|
|
133
|
+
async status(lease) {
|
|
134
|
+
const state = this.requireLease(lease);
|
|
135
|
+
if (state.settled)
|
|
136
|
+
throw new MachineCommandTransportError("invalid_lease", "Machine command lease is already settled.");
|
|
137
|
+
const { data, error } = await this.client.rpc("machine_command_status_for_runner", {
|
|
138
|
+
p_command_id: state.commandId,
|
|
139
|
+
p_runner_id: this.runnerId,
|
|
140
|
+
});
|
|
141
|
+
if (error)
|
|
142
|
+
throw rpcError("status", error);
|
|
143
|
+
if (typeof data !== "string" || !STATUSES.has(data)) {
|
|
144
|
+
throw new MachineCommandTransportError("invalid_status", "Machine command status response is invalid.");
|
|
145
|
+
}
|
|
146
|
+
return data;
|
|
147
|
+
}
|
|
148
|
+
async complete(lease, status, exitCode) {
|
|
149
|
+
const state = this.requireLease(lease);
|
|
150
|
+
if (state.settled)
|
|
151
|
+
throw new MachineCommandTransportError("invalid_lease", "Machine command lease is already settled.");
|
|
152
|
+
const { error } = await this.client.rpc("complete_machine_command", {
|
|
153
|
+
p_command_id: state.commandId,
|
|
154
|
+
p_status: status,
|
|
155
|
+
p_exit_code: exitCode,
|
|
156
|
+
p_runner_id: this.runnerId,
|
|
157
|
+
});
|
|
158
|
+
if (error)
|
|
159
|
+
throw rpcError("completion", error);
|
|
160
|
+
state.settled = true;
|
|
161
|
+
}
|
|
162
|
+
requireLease(lease) {
|
|
163
|
+
const state = this.leases.get(lease);
|
|
164
|
+
if (!state || lease.command.command_id !== state.commandId || lease.command.session_id !== state.sessionId) {
|
|
165
|
+
throw new MachineCommandTransportError("invalid_lease", "Machine command lease does not belong to this transport.");
|
|
166
|
+
}
|
|
167
|
+
return state;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
//# sourceMappingURL=transport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/machine-console/transport.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp-spawn.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export declare const ACC_MCP_KEY = "acc";
|
|
2
|
-
export declare const
|
|
2
|
+
export declare const MCP_CONFIG_FILENAME = ".mcp.json";
|
|
3
|
+
export declare const ACC_MCP_PACKAGE_SPEC = "@tokenfactory/acc-mcp-server@0.6.3";
|
|
3
4
|
/** Env var acc-mcp-server reads the per-turn delegation JWT from (see cli.ts). */
|
|
4
5
|
export declare const ACC_MCP_DELEGATION_TOKEN_ENV = "ACC_MCP_DELEGATION_TOKEN";
|
|
5
6
|
/** Env var acc-mcp-server (future-facing) reads the calling agent's id from. */
|
package/dist/mcp-spawn.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-spawn.d.ts","sourceRoot":"","sources":["../src/mcp-spawn.ts"],"names":[],"mappings":"AAmCA,eAAO,MAAM,WAAW,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-spawn.d.ts","sourceRoot":"","sources":["../src/mcp-spawn.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp-spawn.js
CHANGED
|
@@ -33,8 +33,8 @@ import { promises as fs } from "node:fs";
|
|
|
33
33
|
import path from "node:path";
|
|
34
34
|
import { execa } from "execa";
|
|
35
35
|
export const ACC_MCP_KEY = "acc";
|
|
36
|
-
const MCP_CONFIG_FILENAME = ".mcp.json";
|
|
37
|
-
export const ACC_MCP_PACKAGE_SPEC = "@tokenfactory/acc-mcp-server@0.6.
|
|
36
|
+
export const MCP_CONFIG_FILENAME = ".mcp.json";
|
|
37
|
+
export const ACC_MCP_PACKAGE_SPEC = "@tokenfactory/acc-mcp-server@0.6.3";
|
|
38
38
|
const ACC_MCP_BIN = "acc-mcp-server";
|
|
39
39
|
/** Env var acc-mcp-server reads the per-turn delegation JWT from (see cli.ts). */
|
|
40
40
|
export const ACC_MCP_DELEGATION_TOKEN_ENV = "ACC_MCP_DELEGATION_TOKEN";
|
package/dist/mcp-spawn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-spawn.js","sourceRoot":"","sources":["../src/mcp-spawn.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAE9B,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC;AACjC,MAAM,mBAAmB,GAAG,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-spawn.js","sourceRoot":"","sources":["../src/mcp-spawn.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { PreviewControlPlane, PreviewEnvironmentLease } from "./types.js";
|
|
2
|
+
export declare class SupabasePreviewControlPlane implements PreviewControlPlane {
|
|
3
|
+
private readonly client;
|
|
4
|
+
constructor(url: string, serviceRoleKey: string);
|
|
5
|
+
listCandidates(limit: number): Promise<PreviewEnvironmentLease[]>;
|
|
6
|
+
recordObservation(input: Parameters<PreviewControlPlane["recordObservation"]>[0]): Promise<{
|
|
7
|
+
idempotent_replay?: boolean;
|
|
8
|
+
}>;
|
|
9
|
+
audit(verb: string, environmentId: string, payload: Record<string, unknown>): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=control-plane.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"control-plane.d.ts","sourceRoot":"","sources":["../../src/preview-environments/control-plane.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAE/E,qBAAa,2BAA4B,YAAW,mBAAmB;IACrE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAEZ,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;IAQzC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAWjE,iBAAiB,CAAC,KAAK,EAAE,UAAU,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;4BAYvC,OAAO;;IAGhD,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CASlG"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { createClient } from "@supabase/supabase-js";
|
|
2
|
+
export class SupabasePreviewControlPlane {
|
|
3
|
+
client;
|
|
4
|
+
constructor(url, serviceRoleKey) {
|
|
5
|
+
if (!url || !serviceRoleKey)
|
|
6
|
+
throw new Error("preview_control_plane_credentials_missing");
|
|
7
|
+
this.client = createClient(url, serviceRoleKey, {
|
|
8
|
+
db: { schema: "acc" },
|
|
9
|
+
auth: { persistSession: false, autoRefreshToken: false },
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
async listCandidates(limit) {
|
|
13
|
+
const { data, error } = await this.client
|
|
14
|
+
.from("preview_environments")
|
|
15
|
+
.select("id,org_id,project_id,repo,pull_request_number,head_sha,provider,provider_credential_profile_ref,deployment_identity_sha,provider_deployment_id,desired_state,observed_state,generation,lease_expires_at,updated_at")
|
|
16
|
+
.neq("observed_state", "archived")
|
|
17
|
+
.order("updated_at", { ascending: true })
|
|
18
|
+
.limit(limit);
|
|
19
|
+
if (error)
|
|
20
|
+
throw new Error(`preview_candidate_read_failed:${error.code ?? "unknown"}`);
|
|
21
|
+
return (data ?? []);
|
|
22
|
+
}
|
|
23
|
+
async recordObservation(input) {
|
|
24
|
+
const { data, error } = await this.client.rpc("record_preview_environment_observation", {
|
|
25
|
+
p_environment_id: input.environmentId,
|
|
26
|
+
p_generation: input.generation,
|
|
27
|
+
p_observed_state: input.observedState,
|
|
28
|
+
p_provider_deployment_id: input.providerDeploymentId,
|
|
29
|
+
p_preview_url: input.previewUrl ?? null,
|
|
30
|
+
p_provider_receipt_sha: input.providerReceiptSha,
|
|
31
|
+
p_failure_code: input.failureCode ?? null,
|
|
32
|
+
p_idempotency_key: input.idempotencyKey,
|
|
33
|
+
});
|
|
34
|
+
if (error)
|
|
35
|
+
throw new Error(`preview_observation_failed:${error.code ?? "unknown"}`);
|
|
36
|
+
return (data ?? {});
|
|
37
|
+
}
|
|
38
|
+
async audit(verb, environmentId, payload) {
|
|
39
|
+
const { error } = await this.client.rpc("log_activity", {
|
|
40
|
+
p_verb: verb,
|
|
41
|
+
p_target_id: environmentId,
|
|
42
|
+
p_target_type: "preview_environment",
|
|
43
|
+
p_payload: payload,
|
|
44
|
+
});
|
|
45
|
+
if (error)
|
|
46
|
+
throw new Error(`preview_audit_failed:${error.code ?? "unknown"}`);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=control-plane.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"control-plane.js","sourceRoot":"","sources":["../../src/preview-environments/control-plane.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGrD,MAAM,OAAO,2BAA2B;IACrB,MAAM,CAAC;IAExB,YAAY,GAAW,EAAE,cAAsB;QAC7C,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC1F,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,cAAc,EAAE;YAC9C,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;YACrB,IAAI,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE;SACzD,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,KAAa;QAChC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM;aACtC,IAAI,CAAC,sBAAsB,CAAC;aAC5B,MAAM,CAAC,oNAAoN,CAAC;aAC5N,GAAG,CAAC,gBAAgB,EAAE,UAAU,CAAC;aACjC,KAAK,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;aACxC,KAAK,CAAC,KAAK,CAAC,CAAC;QAChB,IAAI,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;QACvF,OAAO,CAAC,IAAI,IAAI,EAAE,CAA8B,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,KAA8D;QACpF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wCAAwC,EAAE;YACtF,gBAAgB,EAAE,KAAK,CAAC,aAAa;YACrC,YAAY,EAAE,KAAK,CAAC,UAAU;YAC9B,gBAAgB,EAAE,KAAK,CAAC,aAAa;YACrC,wBAAwB,EAAE,KAAK,CAAC,oBAAoB;YACpD,aAAa,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI;YACvC,sBAAsB,EAAE,KAAK,CAAC,kBAAkB;YAChD,cAAc,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;YACzC,iBAAiB,EAAE,KAAK,CAAC,cAAc;SACxC,CAAC,CAAC;QACH,IAAI,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,KAAK,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;QACpF,OAAO,CAAC,IAAI,IAAI,EAAE,CAAoC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,IAAY,EAAE,aAAqB,EAAE,OAAgC;QAC/E,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE;YACtD,MAAM,EAAE,IAAI;YACZ,WAAW,EAAE,aAAa;YAC1B,aAAa,EAAE,qBAAqB;YACpC,SAAS,EAAE,OAAO;SACnB,CAAC,CAAC;QACH,IAAI,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;IAChF,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { PreviewProviderAdapter, PreviewProviderRequest, PreviewProviderResult } from "./types.js";
|
|
2
|
+
export interface HttpPreviewProviderOptions {
|
|
3
|
+
endpoint: string;
|
|
4
|
+
token: string;
|
|
5
|
+
fetchImpl?: typeof fetch;
|
|
6
|
+
}
|
|
7
|
+
export declare class HttpPreviewProvider implements PreviewProviderAdapter {
|
|
8
|
+
private readonly options;
|
|
9
|
+
private readonly fetchImpl;
|
|
10
|
+
constructor(options: HttpPreviewProviderOptions);
|
|
11
|
+
execute(request: PreviewProviderRequest): Promise<PreviewProviderResult>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=http-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-provider.d.ts","sourceRoot":"","sources":["../../src/preview-environments/http-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AASD,qBAAa,mBAAoB,YAAW,sBAAsB;IAGpD,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;gBAEZ,OAAO,EAAE,0BAA0B;IAQ1D,OAAO,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAyC/E"}
|