@agents-ensemble/core 0.21.0 → 0.22.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.
- package/assets/pi/pi-cli-env-wrapper.cmd +28 -0
- package/assets/pi/pi-cli-env-wrapper.sh +19 -0
- package/assets/pi/settings.json +4 -0
- package/dist/acp/acp-preset-bins.d.ts +3 -3
- package/dist/acp/acp-preset-bins.d.ts.map +1 -1
- package/dist/acp/acp-preset-bins.js +3 -3
- package/dist/acp/acp-preset-bins.js.map +1 -1
- package/dist/acp/index.d.ts +3 -1
- package/dist/acp/index.d.ts.map +1 -1
- package/dist/acp/index.js +2 -1
- package/dist/acp/index.js.map +1 -1
- package/dist/acp/pi-acp-wrapper.d.ts +3 -0
- package/dist/acp/pi-acp-wrapper.d.ts.map +1 -0
- package/dist/acp/pi-acp-wrapper.js +41 -0
- package/dist/acp/pi-acp-wrapper.js.map +1 -0
- package/dist/acp/pi-builtin-config.d.ts +10 -0
- package/dist/acp/pi-builtin-config.d.ts.map +1 -0
- package/dist/acp/pi-builtin-config.js +36 -0
- package/dist/acp/pi-builtin-config.js.map +1 -0
- package/dist/acp/pi-runtime.d.ts +23 -0
- package/dist/acp/pi-runtime.d.ts.map +1 -0
- package/dist/acp/pi-runtime.js +160 -0
- package/dist/acp/pi-runtime.js.map +1 -0
- package/dist/acp/pi-session-map.d.ts +36 -0
- package/dist/acp/pi-session-map.d.ts.map +1 -0
- package/dist/acp/pi-session-map.js +266 -0
- package/dist/acp/pi-session-map.js.map +1 -0
- package/dist/acp/resolve-acp-spawn.d.ts +9 -3
- package/dist/acp/resolve-acp-spawn.d.ts.map +1 -1
- package/dist/acp/resolve-acp-spawn.js +41 -9
- package/dist/acp/resolve-acp-spawn.js.map +1 -1
- package/dist/acp/resolve-bundled-acp-bin.d.ts +2 -2
- package/dist/acp/resolve-bundled-acp-bin.d.ts.map +1 -1
- package/dist/acp/resolve-bundled-acp-bin.js +4 -4
- package/dist/acp/resolve-bundled-acp-bin.js.map +1 -1
- package/dist/acp/validate-acp-preset-prerequisites.d.ts +1 -1
- package/dist/acp/validate-acp-preset-prerequisites.d.ts.map +1 -1
- package/dist/acp/validate-acp-preset-prerequisites.js +30 -10
- package/dist/acp/validate-acp-preset-prerequisites.js.map +1 -1
- package/dist/conductor/conductor-agent.d.ts +15 -3
- package/dist/conductor/conductor-agent.d.ts.map +1 -1
- package/dist/conductor/conductor-auth.d.ts +2 -3
- package/dist/conductor/conductor-auth.d.ts.map +1 -1
- package/dist/conductor/conductor-auth.js +5 -2
- package/dist/conductor/conductor-auth.js.map +1 -1
- package/dist/conductor/conductor-dispatch-lifecycle.d.ts +85 -0
- package/dist/conductor/conductor-dispatch-lifecycle.d.ts.map +1 -0
- package/dist/conductor/conductor-dispatch-lifecycle.js +190 -0
- package/dist/conductor/conductor-dispatch-lifecycle.js.map +1 -0
- package/dist/conductor/conductor-history.d.ts +6 -0
- package/dist/conductor/conductor-history.d.ts.map +1 -1
- package/dist/conductor/conductor-history.js +11 -6
- package/dist/conductor/conductor-history.js.map +1 -1
- package/dist/conductor/conductor-path-safety.d.ts +23 -0
- package/dist/conductor/conductor-path-safety.d.ts.map +1 -0
- package/dist/conductor/conductor-path-safety.js +319 -0
- package/dist/conductor/conductor-path-safety.js.map +1 -0
- package/dist/conductor/conductor-pi-auth.d.ts +57 -2
- package/dist/conductor/conductor-pi-auth.d.ts.map +1 -1
- package/dist/conductor/conductor-pi-auth.js +718 -40
- package/dist/conductor/conductor-pi-auth.js.map +1 -1
- package/dist/conductor/conductor-recovery-inbox.d.ts +73 -0
- package/dist/conductor/conductor-recovery-inbox.d.ts.map +1 -0
- package/dist/conductor/conductor-recovery-inbox.js +181 -0
- package/dist/conductor/conductor-recovery-inbox.js.map +1 -0
- package/dist/conductor/conductor-send-reconnect.d.ts +27 -5
- package/dist/conductor/conductor-send-reconnect.d.ts.map +1 -1
- package/dist/conductor/conductor-send-reconnect.js +88 -39
- package/dist/conductor/conductor-send-reconnect.js.map +1 -1
- package/dist/conductor/conductor-session-driver.d.ts +32 -7
- package/dist/conductor/conductor-session-driver.d.ts.map +1 -1
- package/dist/conductor/conductor-session-driver.js +474 -233
- package/dist/conductor/conductor-session-driver.js.map +1 -1
- package/dist/conductor/conductor-session.d.ts +2 -0
- package/dist/conductor/conductor-session.d.ts.map +1 -1
- package/dist/conductor/conductor-session.js +404 -156
- package/dist/conductor/conductor-session.js.map +1 -1
- package/dist/conductor/conductor-setup.d.ts +30 -0
- package/dist/conductor/conductor-setup.d.ts.map +1 -0
- package/dist/conductor/conductor-setup.js +243 -0
- package/dist/conductor/conductor-setup.js.map +1 -0
- package/dist/conductor/cursor-bootstrap-state.d.ts +9 -0
- package/dist/conductor/cursor-bootstrap-state.d.ts.map +1 -0
- package/dist/conductor/cursor-bootstrap-state.js +11 -0
- package/dist/conductor/cursor-bootstrap-state.js.map +1 -0
- package/dist/conductor/cursor-run-snapshots.d.ts +30 -0
- package/dist/conductor/cursor-run-snapshots.d.ts.map +1 -0
- package/dist/conductor/cursor-run-snapshots.js +120 -0
- package/dist/conductor/cursor-run-snapshots.js.map +1 -0
- package/dist/conductor/index.d.ts +15 -6
- package/dist/conductor/index.d.ts.map +1 -1
- package/dist/conductor/index.js +8 -4
- package/dist/conductor/index.js.map +1 -1
- package/dist/conductor/operator-command.d.ts +1 -1
- package/dist/conductor/operator-command.js +1 -1
- package/dist/conductor/operator-command.js.map +1 -1
- package/dist/conductor/operator-input-binding.d.ts +12 -0
- package/dist/conductor/operator-input-binding.d.ts.map +1 -1
- package/dist/conductor/pi-auth-recovery-snapshot-store.d.ts +4 -1
- package/dist/conductor/pi-auth-recovery-snapshot-store.d.ts.map +1 -1
- package/dist/conductor/pi-auth-recovery-snapshot-store.js +4 -1
- package/dist/conductor/pi-auth-recovery-snapshot-store.js.map +1 -1
- package/dist/conductor/pi-conductor-agent.d.ts +6 -3
- package/dist/conductor/pi-conductor-agent.d.ts.map +1 -1
- package/dist/conductor/pi-conductor-agent.js +272 -53
- package/dist/conductor/pi-conductor-agent.js.map +1 -1
- package/dist/conductor/pi-conductor-session-file.d.ts +13 -0
- package/dist/conductor/pi-conductor-session-file.d.ts.map +1 -0
- package/dist/conductor/pi-conductor-session-file.js +21 -0
- package/dist/conductor/pi-conductor-session-file.js.map +1 -0
- package/dist/conductor/pi-resource-loader.d.ts +6 -0
- package/dist/conductor/pi-resource-loader.d.ts.map +1 -1
- package/dist/conductor/pi-resource-loader.js +26 -12
- package/dist/conductor/pi-resource-loader.js.map +1 -1
- package/dist/conductor/pi-user-root-lock.d.ts +8 -0
- package/dist/conductor/pi-user-root-lock.d.ts.map +1 -0
- package/dist/conductor/pi-user-root-lock.js +53 -0
- package/dist/conductor/pi-user-root-lock.js.map +1 -0
- package/dist/conductor/recovery-inbox-command.d.ts +29 -0
- package/dist/conductor/recovery-inbox-command.d.ts.map +1 -0
- package/dist/conductor/recovery-inbox-command.js +248 -0
- package/dist/conductor/recovery-inbox-command.js.map +1 -0
- package/dist/conductor/session/events/session-event.d.ts +15 -2
- package/dist/conductor/session/events/session-event.d.ts.map +1 -1
- package/dist/conductor/session/events/session-log-event-groups.d.ts +1 -1
- package/dist/conductor/session/events/session-log-event-groups.d.ts.map +1 -1
- package/dist/conductor/session/events/session-log-event-groups.js +1 -0
- package/dist/conductor/session/events/session-log-event-groups.js.map +1 -1
- package/dist/conductor/session/events/session-log-event.d.ts +4 -0
- package/dist/conductor/session/events/session-log-event.d.ts.map +1 -1
- package/dist/conductor/session/format-session-event.js +25 -4
- package/dist/conductor/session/format-session-event.js.map +1 -1
- package/dist/conductor/session/select-dispatch-batch.d.ts +2 -0
- package/dist/conductor/session/select-dispatch-batch.d.ts.map +1 -1
- package/dist/conductor/session/select-dispatch-batch.js +31 -2
- package/dist/conductor/session/select-dispatch-batch.js.map +1 -1
- package/dist/conductor/session/session-event-queue.d.ts +5 -0
- package/dist/conductor/session/session-event-queue.d.ts.map +1 -1
- package/dist/conductor/session/session-event-queue.js +41 -4
- package/dist/conductor/session/session-event-queue.js.map +1 -1
- package/dist/conductor/session/session-event.d.ts +1 -1
- package/dist/conductor/session/session-event.d.ts.map +1 -1
- package/dist/conductor/session-policy.d.ts.map +1 -1
- package/dist/conductor/session-policy.js +4 -2
- package/dist/conductor/session-policy.js.map +1 -1
- package/dist/conductor/submit-operator-input.d.ts +3 -0
- package/dist/conductor/submit-operator-input.d.ts.map +1 -1
- package/dist/conductor/submit-operator-input.js +21 -0
- package/dist/conductor/submit-operator-input.js.map +1 -1
- package/dist/config/deep-merge.d.ts.map +1 -1
- package/dist/config/deep-merge.js +13 -3
- package/dist/config/deep-merge.js.map +1 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +1 -1
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/doctor-settings.d.ts +59 -0
- package/dist/config/doctor-settings.d.ts.map +1 -0
- package/dist/config/doctor-settings.js +343 -0
- package/dist/config/doctor-settings.js.map +1 -0
- package/dist/config/ensemble-config-digest.d.ts +2 -4
- package/dist/config/ensemble-config-digest.d.ts.map +1 -1
- package/dist/config/ensemble-config-digest.js +2 -4
- package/dist/config/ensemble-config-digest.js.map +1 -1
- package/dist/config/index.d.ts +3 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +1 -0
- package/dist/config/index.js.map +1 -1
- package/dist/config/load-ensemble-config.d.ts.map +1 -1
- package/dist/config/load-ensemble-config.js +8 -1
- package/dist/config/load-ensemble-config.js.map +1 -1
- package/dist/config/parse-config.d.ts.map +1 -1
- package/dist/config/parse-config.js +34 -14
- package/dist/config/parse-config.js.map +1 -1
- package/dist/config/resolve-settings.d.ts +3 -1
- package/dist/config/resolve-settings.d.ts.map +1 -1
- package/dist/config/resolve-settings.js +7 -4
- package/dist/config/resolve-settings.js.map +1 -1
- package/dist/config/types.d.ts +14 -5
- package/dist/config/types.d.ts.map +1 -1
- package/dist/dispatch/attach-worker.js +1 -1
- package/dist/dispatch/attach-worker.js.map +1 -1
- package/dist/dispatch/worker-acp-session.d.ts +21 -3
- package/dist/dispatch/worker-acp-session.d.ts.map +1 -1
- package/dist/dispatch/worker-acp-session.js +50 -13
- package/dist/dispatch/worker-acp-session.js.map +1 -1
- package/dist/ensemble-paths.d.ts +19 -19
- package/dist/ensemble-paths.d.ts.map +1 -1
- package/dist/ensemble-paths.js +40 -22
- package/dist/ensemble-paths.js.map +1 -1
- package/dist/issue/resolve-issue-url.d.ts +4 -0
- package/dist/issue/resolve-issue-url.d.ts.map +1 -1
- package/dist/issue/resolve-issue-url.js +2 -2
- package/dist/issue/resolve-issue-url.js.map +1 -1
- package/dist/operator-runtime.d.ts +17 -4
- package/dist/operator-runtime.d.ts.map +1 -1
- package/dist/operator-runtime.js +12 -3
- package/dist/operator-runtime.js.map +1 -1
- package/dist/profile/types.d.ts +4 -0
- package/dist/profile/types.d.ts.map +1 -1
- package/dist/profile/types.js +29 -12
- package/dist/profile/types.js.map +1 -1
- package/dist/representation/escape-terminal-control-characters.d.ts +9 -0
- package/dist/representation/escape-terminal-control-characters.d.ts.map +1 -0
- package/dist/representation/escape-terminal-control-characters.js +34 -0
- package/dist/representation/escape-terminal-control-characters.js.map +1 -0
- package/dist/representation/index.d.ts +1 -0
- package/dist/representation/index.d.ts.map +1 -1
- package/dist/representation/index.js +1 -0
- package/dist/representation/index.js.map +1 -1
- package/dist/runtime/types.d.ts +9 -0
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/runtime/worker-runtime.d.ts +14 -1
- package/dist/runtime/worker-runtime.d.ts.map +1 -1
- package/dist/runtime/worker-runtime.js +197 -50
- package/dist/runtime/worker-runtime.js.map +1 -1
- package/dist/runtime/worker-session.d.ts +2 -1
- package/dist/runtime/worker-session.d.ts.map +1 -1
- package/dist/runtime/worker-session.js +1 -0
- package/dist/runtime/worker-session.js.map +1 -1
- package/dist/session/export-session-bundle.d.ts +77 -0
- package/dist/session/export-session-bundle.d.ts.map +1 -0
- package/dist/session/export-session-bundle.js +640 -0
- package/dist/session/export-session-bundle.js.map +1 -0
- package/dist/session/index.d.ts +4 -3
- package/dist/session/index.d.ts.map +1 -1
- package/dist/session/index.js +2 -1
- package/dist/session/index.js.map +1 -1
- package/dist/session/open-question-control.d.ts +9 -0
- package/dist/session/open-question-control.d.ts.map +1 -1
- package/dist/session/open-question-control.js +26 -1
- package/dist/session/open-question-control.js.map +1 -1
- package/dist/session/open-questions-store.d.ts +1 -1
- package/dist/session/open-questions-store.d.ts.map +1 -1
- package/dist/session/open-questions-store.js +3 -6
- package/dist/session/open-questions-store.js.map +1 -1
- package/dist/session/persisted-file.d.ts +5 -0
- package/dist/session/persisted-file.d.ts.map +1 -0
- package/dist/session/persisted-file.js +56 -0
- package/dist/session/persisted-file.js.map +1 -0
- package/dist/session/session-resume-store.d.ts +77 -10
- package/dist/session/session-resume-store.d.ts.map +1 -1
- package/dist/session/session-resume-store.js +346 -83
- package/dist/session/session-resume-store.js.map +1 -1
- package/dist/session/session-snapshot-paths.d.ts +7 -1
- package/dist/session/session-snapshot-paths.d.ts.map +1 -1
- package/dist/session/session-snapshot-paths.js +29 -26
- package/dist/session/session-snapshot-paths.js.map +1 -1
- package/dist/session/session-state-store.d.ts +2 -2
- package/dist/session/session-state-store.d.ts.map +1 -1
- package/dist/session/session-state-store.js +5 -16
- package/dist/session/session-state-store.js.map +1 -1
- package/dist/session/tool-call-snapshot-history.d.ts +12 -1
- package/dist/session/tool-call-snapshot-history.d.ts.map +1 -1
- package/dist/session/tool-call-snapshot-history.js +75 -70
- package/dist/session/tool-call-snapshot-history.js.map +1 -1
- package/dist/session/worker-session-history.d.ts +13 -1
- package/dist/session/worker-session-history.d.ts.map +1 -1
- package/dist/session/worker-session-history.js +171 -50
- package/dist/session/worker-session-history.js.map +1 -1
- package/dist/workspace/index.d.ts +1 -1
- package/dist/workspace/index.d.ts.map +1 -1
- package/dist/worktree/worktree.d.ts +6 -1
- package/dist/worktree/worktree.d.ts.map +1 -1
- package/dist/worktree/worktree.js +123 -2
- package/dist/worktree/worktree.js.map +1 -1
- package/package.json +9 -4
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
import { constants, chmodSync, copyFileSync, existsSync, lstatSync, mkdirSync, readdirSync, } from 'node:fs';
|
|
2
|
+
import { execFileSync } from 'node:child_process';
|
|
3
|
+
import { dirname, isAbsolute, join, relative, resolve, sep, } from 'node:path';
|
|
4
|
+
const OWNER_ONLY_DIRECTORY_MODE = 0o700;
|
|
5
|
+
const OWNER_ONLY_FILE_MODE = 0o600;
|
|
6
|
+
const WINDOWS_OWNER_ONLY_ACL_SCRIPT = `
|
|
7
|
+
$ErrorActionPreference = 'Stop'
|
|
8
|
+
try {
|
|
9
|
+
$reader = [System.IO.StreamReader]::new(
|
|
10
|
+
[Console]::OpenStandardInput(),
|
|
11
|
+
[System.Text.UTF8Encoding]::new($false)
|
|
12
|
+
)
|
|
13
|
+
$paths = $reader.ReadToEnd() | ConvertFrom-Json
|
|
14
|
+
$identity = [System.Security.Principal.WindowsIdentity]::GetCurrent()
|
|
15
|
+
if ($null -eq $identity -or $null -eq $identity.User) {
|
|
16
|
+
throw 'Could not resolve the current Windows user SID.'
|
|
17
|
+
}
|
|
18
|
+
$sid = $identity.User
|
|
19
|
+
|
|
20
|
+
foreach ($path in $paths) {
|
|
21
|
+
if ([string]::IsNullOrWhiteSpace($path)) {
|
|
22
|
+
throw 'A builtin Pi storage path was empty.'
|
|
23
|
+
}
|
|
24
|
+
$item = Get-Item -LiteralPath $path -Force -ErrorAction Stop
|
|
25
|
+
if (($item.Attributes -band [System.IO.FileAttributes]::ReparsePoint) -ne 0) {
|
|
26
|
+
throw 'Builtin Pi storage cannot contain a reparse point.'
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
$ownerSid = '*' + $sid.Value
|
|
30
|
+
$icacls = Join-Path (Join-Path $env:SystemRoot 'System32') 'icacls.exe'
|
|
31
|
+
& $icacls $path /reset /Q
|
|
32
|
+
if ($LASTEXITCODE -ne 0) {
|
|
33
|
+
throw 'Could not reset the builtin Pi storage ACL.'
|
|
34
|
+
}
|
|
35
|
+
& $icacls $path /setowner $ownerSid /Q
|
|
36
|
+
if ($LASTEXITCODE -ne 0) {
|
|
37
|
+
throw 'Could not set the builtin Pi storage owner.'
|
|
38
|
+
}
|
|
39
|
+
& $icacls $path /inheritance:r /Q
|
|
40
|
+
if ($LASTEXITCODE -ne 0) {
|
|
41
|
+
throw 'Could not remove inherited builtin Pi storage ACL entries.'
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
$permission = if ($item.PSIsContainer) {
|
|
45
|
+
'{0}:(OI)(CI)F' -f $ownerSid
|
|
46
|
+
} else {
|
|
47
|
+
'{0}:F' -f $ownerSid
|
|
48
|
+
}
|
|
49
|
+
& $icacls $path /grant:r $permission /Q
|
|
50
|
+
if ($LASTEXITCODE -ne 0) {
|
|
51
|
+
throw 'Could not grant owner-only access to builtin Pi storage.'
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
$actual = $item.GetAccessControl()
|
|
55
|
+
$actualOwner = $actual.GetOwner(
|
|
56
|
+
[System.Security.Principal.SecurityIdentifier]
|
|
57
|
+
).Value
|
|
58
|
+
$inheritance = [System.Security.AccessControl.InheritanceFlags]::None
|
|
59
|
+
if ($item.PSIsContainer) {
|
|
60
|
+
$inheritance =
|
|
61
|
+
[System.Security.AccessControl.InheritanceFlags]::ContainerInherit -bor
|
|
62
|
+
[System.Security.AccessControl.InheritanceFlags]::ObjectInherit
|
|
63
|
+
}
|
|
64
|
+
$actualRules = @(
|
|
65
|
+
$actual.GetAccessRules(
|
|
66
|
+
$true,
|
|
67
|
+
$true,
|
|
68
|
+
[System.Security.Principal.SecurityIdentifier]
|
|
69
|
+
)
|
|
70
|
+
)
|
|
71
|
+
if (
|
|
72
|
+
-not $actual.AreAccessRulesProtected -or
|
|
73
|
+
$actualOwner -ne $sid.Value -or
|
|
74
|
+
$actualRules.Count -ne 1 -or
|
|
75
|
+
$actualRules[0].IdentityReference.Value -ne $sid.Value -or
|
|
76
|
+
$actualRules[0].AccessControlType -ne
|
|
77
|
+
[System.Security.AccessControl.AccessControlType]::Allow -or
|
|
78
|
+
$actualRules[0].FileSystemRights -ne
|
|
79
|
+
[System.Security.AccessControl.FileSystemRights]::FullControl -or
|
|
80
|
+
$actualRules[0].InheritanceFlags -ne $inheritance -or
|
|
81
|
+
$actualRules[0].PropagationFlags -ne
|
|
82
|
+
[System.Security.AccessControl.PropagationFlags]::None -or
|
|
83
|
+
$actualRules[0].IsInherited
|
|
84
|
+
) {
|
|
85
|
+
throw 'Builtin Pi storage ACL verification failed.'
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
} catch {
|
|
89
|
+
[Console]::Error.WriteLine($_.Exception.Message)
|
|
90
|
+
exit 1
|
|
91
|
+
}
|
|
92
|
+
`;
|
|
93
|
+
export function resolvePiAcpSessionMapPaths(homeDir, previousWorkerHome) {
|
|
94
|
+
const upstreamPath = join(homeDir, '.pi', 'pi-acp', 'session-map.json');
|
|
95
|
+
const legacyPath = join(homeDir, 'session-map.json');
|
|
96
|
+
const compatibilityPaths = [legacyPath];
|
|
97
|
+
if (previousWorkerHome) {
|
|
98
|
+
compatibilityPaths.push(join(previousWorkerHome, '.pi', 'pi-acp', 'session-map.json'), join(previousWorkerHome, 'session-map.json'));
|
|
99
|
+
}
|
|
100
|
+
return { upstreamPath, legacyPath, compatibilityPaths };
|
|
101
|
+
}
|
|
102
|
+
/** New files created by upstream Pi inherit this process umask on POSIX. */
|
|
103
|
+
export function setPrivatePiSessionStorageUmask(platform = process.platform) {
|
|
104
|
+
if (platform !== 'win32')
|
|
105
|
+
process.umask(0o077);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Prepare builtin Pi's issue-scoped storage, migrate an older shared map, and
|
|
109
|
+
* restrict existing map/transcript files before upstream code opens them.
|
|
110
|
+
*/
|
|
111
|
+
export function preparePiAcpSessionStorage(input, security = {}) {
|
|
112
|
+
const platform = security.platform ?? process.platform;
|
|
113
|
+
const applyWindowsOwnerOnlyAcl = security.applyWindowsOwnerOnlyAcl ?? setWindowsOwnerOnlyAcl;
|
|
114
|
+
// Protect the shared boundary without walking unrelated repository data.
|
|
115
|
+
ensureDirectory(input.workerStorageParent, platform);
|
|
116
|
+
if (platform === 'win32') {
|
|
117
|
+
applyWindowsOwnerOnlyAcl([input.workerStorageParent]);
|
|
118
|
+
}
|
|
119
|
+
ensureDirectory(input.workerStorageRoot, platform);
|
|
120
|
+
ensureDirectory(input.workerHome, platform);
|
|
121
|
+
ensureDirectory(input.sessionsDir, platform);
|
|
122
|
+
ensureDirectory(dirname(input.mapPaths.upstreamPath), platform);
|
|
123
|
+
if (platform !== 'win32') {
|
|
124
|
+
secureExistingTree(input.workerStorageRoot, platform);
|
|
125
|
+
if (input.legacyWorkerHome &&
|
|
126
|
+
!isWithin(input.workerStorageRoot, input.legacyWorkerHome)) {
|
|
127
|
+
secureExistingTree(input.legacyWorkerHome, platform);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
secureExistingTree(input.workerStorageRoot, platform, applyWindowsOwnerOnlyAcl);
|
|
132
|
+
if (input.legacyWorkerHome &&
|
|
133
|
+
!isWithin(input.workerStorageRoot, input.legacyWorkerHome)) {
|
|
134
|
+
secureExistingTree(input.legacyWorkerHome, platform, applyWindowsOwnerOnlyAcl);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
migrateLegacyPiAcpSessionMap(input.mapPaths);
|
|
138
|
+
secureExistingTree(input.workerStorageRoot, platform, applyWindowsOwnerOnlyAcl);
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Copy the first available old map into upstream pi-acp's HOME-based location.
|
|
142
|
+
* Sources remain intact so existing transcript paths and older readers work.
|
|
143
|
+
*/
|
|
144
|
+
export function migrateLegacyPiAcpSessionMap(paths) {
|
|
145
|
+
if (existsSync(paths.upstreamPath))
|
|
146
|
+
return false;
|
|
147
|
+
const sourcePath = paths.compatibilityPaths.find(existsSync);
|
|
148
|
+
if (!sourcePath)
|
|
149
|
+
return false;
|
|
150
|
+
mkdirSync(dirname(paths.upstreamPath), {
|
|
151
|
+
recursive: true,
|
|
152
|
+
mode: OWNER_ONLY_DIRECTORY_MODE,
|
|
153
|
+
});
|
|
154
|
+
try {
|
|
155
|
+
copyFileSync(sourcePath, paths.upstreamPath, constants.COPYFILE_EXCL);
|
|
156
|
+
if (process.platform !== 'win32') {
|
|
157
|
+
chmodSync(paths.upstreamPath, OWNER_ONLY_FILE_MODE);
|
|
158
|
+
}
|
|
159
|
+
return true;
|
|
160
|
+
}
|
|
161
|
+
catch (error) {
|
|
162
|
+
if (error &&
|
|
163
|
+
typeof error === 'object' &&
|
|
164
|
+
'code' in error &&
|
|
165
|
+
(error.code === 'EEXIST' || error.code === 'ENOENT')) {
|
|
166
|
+
return false;
|
|
167
|
+
}
|
|
168
|
+
throw error;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
function ensureDirectory(path, platform) {
|
|
172
|
+
mkdirSync(path, {
|
|
173
|
+
recursive: true,
|
|
174
|
+
mode: OWNER_ONLY_DIRECTORY_MODE,
|
|
175
|
+
});
|
|
176
|
+
const stats = lstatSync(path);
|
|
177
|
+
if (stats.isSymbolicLink() || !stats.isDirectory()) {
|
|
178
|
+
throw new Error('[acp] builtin Pi session storage must use regular directories without symbolic links.');
|
|
179
|
+
}
|
|
180
|
+
if (platform !== 'win32')
|
|
181
|
+
chmodSync(path, OWNER_ONLY_DIRECTORY_MODE);
|
|
182
|
+
}
|
|
183
|
+
function secureExistingTree(path, platform, applyWindowsOwnerOnlyAcl = setWindowsOwnerOnlyAcl) {
|
|
184
|
+
const stats = (() => {
|
|
185
|
+
try {
|
|
186
|
+
return lstatSync(path);
|
|
187
|
+
}
|
|
188
|
+
catch (error) {
|
|
189
|
+
if (isEnoent(error))
|
|
190
|
+
return undefined;
|
|
191
|
+
throw error;
|
|
192
|
+
}
|
|
193
|
+
})();
|
|
194
|
+
if (!stats)
|
|
195
|
+
return;
|
|
196
|
+
if (platform === 'win32') {
|
|
197
|
+
const paths = [];
|
|
198
|
+
collectExistingTree(path, paths);
|
|
199
|
+
applyWindowsOwnerOnlyAcl(paths);
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
securePosixTree(path, stats);
|
|
203
|
+
}
|
|
204
|
+
function securePosixTree(path, stats) {
|
|
205
|
+
if (stats.isSymbolicLink()) {
|
|
206
|
+
throw new Error('[acp] builtin Pi session storage contains a symbolic link; use regular files and directories.');
|
|
207
|
+
}
|
|
208
|
+
if (stats.isDirectory()) {
|
|
209
|
+
chmodSync(path, OWNER_ONLY_DIRECTORY_MODE);
|
|
210
|
+
for (const entry of readdirSync(path, { withFileTypes: true })) {
|
|
211
|
+
const childPath = join(path, entry.name);
|
|
212
|
+
securePosixTree(childPath, lstatSync(childPath));
|
|
213
|
+
}
|
|
214
|
+
return;
|
|
215
|
+
}
|
|
216
|
+
if (stats.isFile()) {
|
|
217
|
+
chmodSync(path, OWNER_ONLY_FILE_MODE);
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
throw new Error('[acp] builtin Pi session storage contains an unsupported file type.');
|
|
221
|
+
}
|
|
222
|
+
function collectExistingTree(path, paths) {
|
|
223
|
+
const stats = lstatSync(path);
|
|
224
|
+
if (stats.isSymbolicLink()) {
|
|
225
|
+
throw new Error('[acp] builtin Pi session storage contains a symbolic link; use regular files and directories.');
|
|
226
|
+
}
|
|
227
|
+
if (!stats.isDirectory() && !stats.isFile()) {
|
|
228
|
+
throw new Error('[acp] builtin Pi session storage contains an unsupported file type.');
|
|
229
|
+
}
|
|
230
|
+
paths.push(path);
|
|
231
|
+
if (!stats.isDirectory())
|
|
232
|
+
return;
|
|
233
|
+
for (const entry of readdirSync(path, { withFileTypes: true })) {
|
|
234
|
+
collectExistingTree(join(path, entry.name), paths);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
function setWindowsOwnerOnlyAcl(paths) {
|
|
238
|
+
if (paths.length === 0)
|
|
239
|
+
return;
|
|
240
|
+
execFileSync('powershell.exe', [
|
|
241
|
+
'-NoLogo',
|
|
242
|
+
'-NoProfile',
|
|
243
|
+
'-NonInteractive',
|
|
244
|
+
'-EncodedCommand',
|
|
245
|
+
Buffer.from(WINDOWS_OWNER_ONLY_ACL_SCRIPT, 'utf16le').toString('base64'),
|
|
246
|
+
], {
|
|
247
|
+
encoding: 'utf8',
|
|
248
|
+
input: JSON.stringify(paths),
|
|
249
|
+
maxBuffer: 16 * 1024 * 1024,
|
|
250
|
+
windowsHide: true,
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
function isWithin(root, candidate) {
|
|
254
|
+
const relativePath = relative(resolve(root), resolve(candidate));
|
|
255
|
+
return (relativePath === '' ||
|
|
256
|
+
(relativePath !== '..' &&
|
|
257
|
+
!relativePath.startsWith(`..${sep}`) &&
|
|
258
|
+
!isAbsolute(relativePath)));
|
|
259
|
+
}
|
|
260
|
+
function isEnoent(error) {
|
|
261
|
+
return Boolean(error &&
|
|
262
|
+
typeof error === 'object' &&
|
|
263
|
+
'code' in error &&
|
|
264
|
+
error.code === 'ENOENT');
|
|
265
|
+
}
|
|
266
|
+
//# sourceMappingURL=pi-session-map.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pi-session-map.js","sourceRoot":"","sources":["../../src/acp/pi-session-map.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import { type AcpAuthenticateStrategy } from './resolve-acp-auth.js';
|
|
|
4
4
|
import type { AcpModelTag, EnsembleConfig } from '../config/types.js';
|
|
5
5
|
/** Built-in ACP preset id(Phase 1)。拡張時は adapter / capability を別途追加可能。 */
|
|
6
6
|
export type BuiltinAcpPresetId = 'cursor' | 'claude' | 'codex' | 'pi';
|
|
7
|
+
export type PiAcpRuntimeMarker = 'builtin';
|
|
7
8
|
export type AcpPresetId = BuiltinAcpPresetId | 'custom';
|
|
8
9
|
export declare const ENSEMBLE_DEFAULT_ACP_CLI_ENV = "ENSEMBLE_DEFAULT_ACP_CLI";
|
|
9
10
|
/** spawn 解決結果。 */
|
|
@@ -12,8 +13,10 @@ export interface ResolvedAcpSpawn {
|
|
|
12
13
|
command: string;
|
|
13
14
|
args: string[];
|
|
14
15
|
env?: Record<string, string>;
|
|
16
|
+
/** Omitted means the legacy BYO Pi runtime. */
|
|
17
|
+
piRuntime?: PiAcpRuntimeMarker;
|
|
15
18
|
authenticate?: AcpAuthenticateStrategy;
|
|
16
|
-
/** Effective
|
|
19
|
+
/** Effective worker modelTag and environment-specific model ID. */
|
|
17
20
|
modelTag?: AcpModelTag;
|
|
18
21
|
model?: string;
|
|
19
22
|
reasoning?: string;
|
|
@@ -29,15 +32,17 @@ export interface ResolvedAcpSpawn {
|
|
|
29
32
|
}
|
|
30
33
|
/**
|
|
31
34
|
* Resume metadata. Model and environment fields are retained for diagnostics;
|
|
32
|
-
* compatibility checks compare
|
|
35
|
+
* compatibility checks also compare Pi runtime and, for custom, command/args.
|
|
33
36
|
*/
|
|
34
37
|
export interface AcpSpawnFingerprint {
|
|
35
38
|
preset: AcpPresetId;
|
|
36
39
|
command: string;
|
|
37
40
|
args: string[];
|
|
41
|
+
/** Omitted means BYO, including fingerprints written before this field existed. */
|
|
42
|
+
piRuntime?: PiAcpRuntimeMarker;
|
|
38
43
|
/** spawn env の canonical SHA-256。値そのものは保存しない。 */
|
|
39
44
|
envDigest?: string;
|
|
40
|
-
/** Worker
|
|
45
|
+
/** Worker modelTag used to resolve this process. */
|
|
41
46
|
modelTag?: AcpModelTag;
|
|
42
47
|
/** Resolved ACP model ID (model IDs are not credentials). */
|
|
43
48
|
model?: string;
|
|
@@ -71,6 +76,7 @@ export declare function resolveDefaultAcpSpawn(options?: DefaultAcpResolutionOpt
|
|
|
71
76
|
export declare function resolveWorkerAcpSpawn(input?: {
|
|
72
77
|
defaultOptions?: DefaultAcpResolutionOptions;
|
|
73
78
|
modelTag?: AcpModelTag;
|
|
79
|
+
onWarning?: (message: string) => void;
|
|
74
80
|
}): ResolvedAcpSpawn;
|
|
75
81
|
export declare function resolveWorkerAcpSpawns(input: {
|
|
76
82
|
workers: Array<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-acp-spawn.d.ts","sourceRoot":"","sources":["../../src/acp/resolve-acp-spawn.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAEV,WAAW,EACX,cAAc,EACf,MAAM,oBAAoB,CAAC;AAE5B,yEAAyE;AACzE,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"resolve-acp-spawn.d.ts","sourceRoot":"","sources":["../../src/acp/resolve-acp-spawn.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAEV,WAAW,EACX,cAAc,EACf,MAAM,oBAAoB,CAAC;AAE5B,yEAAyE;AACzE,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAC;AACtE,MAAM,MAAM,kBAAkB,GAAG,SAAS,CAAC;AAE3C,MAAM,MAAM,WAAW,GAAG,kBAAkB,GAAG,QAAQ,CAAC;AAExD,eAAO,MAAM,4BAA4B,6BAA6B,CAAC;AASvE,kBAAkB;AAClB,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,+CAA+C;IAC/C,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,YAAY,CAAC,EAAE,uBAAuB,CAAC;IACvC,mEAAmE;IACnE,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,8EAA8E;IAC9E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,gEAAgE;IAChE,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjD,2EAA2E;IAC3E,4BAA4B,CAAC,EAAE,8BAA8B,EAAE,CAAC;CACjE;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,mFAAmF;IACnF,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,8EAA8E;IAC9E,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,2BAA2B;IAC1C,8BAA8B;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mDAAmD;IACnD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAuBD,wBAAgB,uBAAuB,IAAI,kBAAkB,EAAE,CAE9D;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,kBAAkB,CAE/E;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,kBAAkB,GAAG,gBAAgB,CAQpF;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACjC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAUpC;AAuBD,wBAAgB,sBAAsB,CACpC,OAAO,GAAE,2BAAgC,GACxC,gBAAgB,CA0ClB;AAED,wBAAgB,qBAAqB,CAAC,KAAK,CAAC,EAAE;IAC5C,cAAc,CAAC,EAAE,2BAA2B,CAAC;IAC7C,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC,GAAG,gBAAgB,CAqEnB;AASD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,WAAW,CAAA;KAAE,CAAC,CAAC;IACzD,cAAc,CAAC,EAAE,2BAA2B,CAAC;CAC9C,GAAG,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAYhC;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,mBAAmB,CAiBhF;AAED,kFAAkF;AAClF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAO5E;AAQD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAU5E;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,IAAI,CAyBP;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,gBAAgB,EACvB,IAAI,CAAC,EAAE,sBAAsB,GAC5B,sBAAsB,CAsBxB"}
|
|
@@ -100,25 +100,48 @@ export function resolveDefaultAcpSpawn(options = {}) {
|
|
|
100
100
|
return withConfigAcpEnv(resolveBuiltinAcpPreset('cursor'), configEnv);
|
|
101
101
|
}
|
|
102
102
|
export function resolveWorkerAcpSpawn(input) {
|
|
103
|
-
const
|
|
103
|
+
const requestedModelTag = input?.modelTag;
|
|
104
|
+
const modelTag = requestedModelTag ?? 'default';
|
|
105
|
+
if (typeof modelTag !== 'string') {
|
|
106
|
+
throw new Error('ACP worker modelTag must be a string');
|
|
107
|
+
}
|
|
104
108
|
const spawn = resolveDefaultAcpSpawn(input?.defaultOptions);
|
|
105
109
|
const processEnv = input?.defaultOptions?.env ?? process.env;
|
|
106
110
|
const modelProvider = spawn.preset === 'codex'
|
|
107
111
|
? spawn.env?.MODEL_PROVIDER ?? processEnv.MODEL_PROVIDER
|
|
108
112
|
: undefined;
|
|
109
|
-
const
|
|
113
|
+
const spawnWithRuntime = spawn.preset === 'pi' &&
|
|
114
|
+
input?.defaultOptions?.config?.acp.pi?.runtime === 'builtin'
|
|
115
|
+
? { ...spawn, piRuntime: 'builtin' }
|
|
116
|
+
: spawn;
|
|
117
|
+
const spawnWithProviderFingerprint = spawnWithRuntime.preset === 'codex'
|
|
110
118
|
? {
|
|
111
|
-
...
|
|
119
|
+
...spawnWithRuntime,
|
|
112
120
|
modelProviderDigest: computeCodexModelProviderDigest(modelProvider),
|
|
113
121
|
}
|
|
114
|
-
:
|
|
115
|
-
const
|
|
122
|
+
: spawnWithRuntime;
|
|
123
|
+
const tags = input?.defaultOptions?.config?.acp.tags;
|
|
124
|
+
let mappingTag = modelTag;
|
|
125
|
+
let modelKey = getOwnRecordValue(tags, modelTag);
|
|
116
126
|
if (!modelKey) {
|
|
117
|
-
|
|
127
|
+
if (modelTag === 'default') {
|
|
128
|
+
if (requestedModelTag !== undefined) {
|
|
129
|
+
input?.onWarning?.('Worker modelTag "default" is not registered in acp.tags; using the ACP preset default model.');
|
|
130
|
+
}
|
|
131
|
+
return { ...spawnWithProviderFingerprint, modelTag };
|
|
132
|
+
}
|
|
133
|
+
modelKey = getOwnRecordValue(tags, 'default');
|
|
134
|
+
input?.onWarning?.(modelKey
|
|
135
|
+
? `Worker modelTag "${modelTag}" is not registered in acp.tags; resolving through acp.tags.default.`
|
|
136
|
+
: `Worker modelTag "${modelTag}" is not registered in acp.tags and acp.tags.default is not configured; using the ACP preset default model.`);
|
|
137
|
+
if (!modelKey) {
|
|
138
|
+
return { ...spawnWithProviderFingerprint, modelTag };
|
|
139
|
+
}
|
|
140
|
+
mappingTag = 'default';
|
|
118
141
|
}
|
|
119
|
-
const entry = input?.defaultOptions?.config?.acp.models
|
|
142
|
+
const entry = getOwnRecordValue(input?.defaultOptions?.config?.acp.models, modelKey);
|
|
120
143
|
if (!entry) {
|
|
121
|
-
throw new Error(`ACP model tag "${
|
|
144
|
+
throw new Error(`ACP model tag "${mappingTag}" references undefined acp.models key "${modelKey}"`);
|
|
122
145
|
}
|
|
123
146
|
const definition = typeof entry === 'string' ? { model: entry } : entry;
|
|
124
147
|
if (!definition.model) {
|
|
@@ -126,6 +149,9 @@ export function resolveWorkerAcpSpawn(input) {
|
|
|
126
149
|
}
|
|
127
150
|
return injectAcpModel(spawnWithProviderFingerprint, modelTag, definition, processEnv);
|
|
128
151
|
}
|
|
152
|
+
function getOwnRecordValue(record, key) {
|
|
153
|
+
return record && Object.hasOwn(record, key) ? record[key] : undefined;
|
|
154
|
+
}
|
|
129
155
|
export function resolveWorkerAcpSpawns(input) {
|
|
130
156
|
const result = new Map();
|
|
131
157
|
for (const worker of input.workers) {
|
|
@@ -141,6 +167,7 @@ export function acpSpawnFingerprint(spawn) {
|
|
|
141
167
|
preset: spawn.preset,
|
|
142
168
|
command: spawn.command,
|
|
143
169
|
args: [...spawn.args],
|
|
170
|
+
...(spawn.piRuntime !== undefined ? { piRuntime: spawn.piRuntime } : {}),
|
|
144
171
|
...(spawn.modelTag !== undefined ? { modelTag: spawn.modelTag } : {}),
|
|
145
172
|
...(spawn.model !== undefined ? { model: spawn.model } : {}),
|
|
146
173
|
...(spawn.reasoning !== undefined ? { reasoning: spawn.reasoning } : {}),
|
|
@@ -168,6 +195,7 @@ function computeCodexModelProviderDigest(modelProvider) {
|
|
|
168
195
|
export function formatAcpSpawnFingerprint(spawn) {
|
|
169
196
|
const args = spawn.args.length > 0 ? ` ${spawn.args.join(' ')}` : '';
|
|
170
197
|
const details = [
|
|
198
|
+
...(spawn.piRuntime !== undefined ? [`piRuntime=${spawn.piRuntime}`] : []),
|
|
171
199
|
...(spawn.modelTag !== undefined ? [`modelTag=${spawn.modelTag}`] : []),
|
|
172
200
|
...(spawn.model !== undefined ? [`model=${spawn.model}`] : []),
|
|
173
201
|
...(spawn.reasoning !== undefined ? [`reasoning=${spawn.reasoning}`] : []),
|
|
@@ -180,14 +208,18 @@ export function assertAcpSpawnMatchesResume(input) {
|
|
|
180
208
|
return;
|
|
181
209
|
const actual = input.actual;
|
|
182
210
|
const presetMismatch = input.expected.preset !== actual.preset;
|
|
211
|
+
const piRuntimeMismatch = input.expected.preset === 'pi' &&
|
|
212
|
+
actual.preset === 'pi' &&
|
|
213
|
+
(input.expected.piRuntime ?? 'byo') !== (actual.piRuntime ?? 'byo');
|
|
183
214
|
const customSpawnMismatch = input.expected.preset === 'custom' &&
|
|
184
215
|
(input.expected.command !== actual.command ||
|
|
185
216
|
!arraysEqual(input.expected.args, actual.args));
|
|
186
|
-
if (!presetMismatch && !customSpawnMismatch)
|
|
217
|
+
if (!presetMismatch && !piRuntimeMismatch && !customSpawnMismatch)
|
|
187
218
|
return;
|
|
188
219
|
const label = input.workerName ? `Worker "${input.workerName}"` : 'Worker';
|
|
189
220
|
const mismatchDetails = [
|
|
190
221
|
...(presetMismatch ? ['ACP preset differs'] : []),
|
|
222
|
+
...(piRuntimeMismatch ? ['Pi runtime differs'] : []),
|
|
191
223
|
...(customSpawnMismatch ? ['custom ACP command or arguments differ'] : []),
|
|
192
224
|
];
|
|
193
225
|
throw new Error(`${label} resume ACP spawn mismatch: saved resume store has ${formatAcpSpawnFingerprint(input.expected)}, current profile resolves to ${formatAcpSpawnFingerprint(actual)}${mismatchDetails.length > 0 ? `; ${mismatchDetails.join('; ')}` : ''}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-acp-spawn.js","sourceRoot":"","sources":["../../src/acp/resolve-acp-spawn.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resolve-acp-spawn.js","sourceRoot":"","sources":["../../src/acp/resolve-acp-spawn.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { BuiltinAcpPresetId } from './resolve-acp-spawn.js';
|
|
2
|
-
/** `@agents-ensemble/core`
|
|
2
|
+
/** `@agents-ensemble/core` dependency として同梱した adapter bin を解決。 */
|
|
3
3
|
export declare function resolveBundledAcpBin(preset: Exclude<BuiltinAcpPresetId, 'cursor'>, fromModuleUrl?: string | URL): string | undefined;
|
|
4
4
|
/** PATH 上の実行ファイルを探す。 */
|
|
5
5
|
export declare function resolveAcpBinFromPath(binName: string): string | undefined;
|
|
6
6
|
/**
|
|
7
7
|
* built-in preset の ACP bin を解決する。
|
|
8
|
-
* 順:
|
|
8
|
+
* 順: core dependency の同梱 bin → PATH 上の同名 bin。
|
|
9
9
|
*/
|
|
10
10
|
export declare function resolveAcpBin(preset: BuiltinAcpPresetId, fromModuleUrl?: string | URL): string | undefined;
|
|
11
11
|
//# sourceMappingURL=resolve-bundled-acp-bin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-bundled-acp-bin.d.ts","sourceRoot":"","sources":["../../src/acp/resolve-bundled-acp-bin.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAMjE,
|
|
1
|
+
{"version":3,"file":"resolve-bundled-acp-bin.d.ts","sourceRoot":"","sources":["../../src/acp/resolve-bundled-acp-bin.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAMjE,kEAAkE;AAClE,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,OAAO,CAAC,kBAAkB,EAAE,QAAQ,CAAC,EAC7C,aAAa,GAAE,MAAM,GAAG,GAAqB,GAC5C,MAAM,GAAG,SAAS,CAiCpB;AAED,wBAAwB;AACxB,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAezE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,kBAAkB,EAC1B,aAAa,GAAE,MAAM,GAAG,GAAqB,GAC5C,MAAM,GAAG,SAAS,CAWpB"}
|
|
@@ -2,12 +2,12 @@ import { accessSync, constants, existsSync } from 'node:fs';
|
|
|
2
2
|
import { execFileSync } from 'node:child_process';
|
|
3
3
|
import { createRequire } from 'node:module';
|
|
4
4
|
import { dirname, isAbsolute, join } from 'node:path';
|
|
5
|
-
import {
|
|
6
|
-
/** `@agents-ensemble/core`
|
|
5
|
+
import { ACP_PRESET_ADAPTER_PACKAGES, ACP_PRESET_BIN_NAMES, } from './acp-preset-bins.js';
|
|
6
|
+
/** `@agents-ensemble/core` dependency として同梱した adapter bin を解決。 */
|
|
7
7
|
export function resolveBundledAcpBin(preset, fromModuleUrl = import.meta.url) {
|
|
8
8
|
try {
|
|
9
9
|
const require = createRequire(fromModuleUrl);
|
|
10
|
-
const { packageName, binName } =
|
|
10
|
+
const { packageName, binName } = ACP_PRESET_ADAPTER_PACKAGES[preset];
|
|
11
11
|
const coreSearchPaths = require.resolve.paths('@agents-ensemble/core');
|
|
12
12
|
const corePackageDirectory = coreSearchPaths
|
|
13
13
|
?.map((nodeModulesPath) => join(nodeModulesPath, '@agents-ensemble', 'core'))
|
|
@@ -51,7 +51,7 @@ export function resolveAcpBinFromPath(binName) {
|
|
|
51
51
|
}
|
|
52
52
|
/**
|
|
53
53
|
* built-in preset の ACP bin を解決する。
|
|
54
|
-
* 順:
|
|
54
|
+
* 順: core dependency の同梱 bin → PATH 上の同名 bin。
|
|
55
55
|
*/
|
|
56
56
|
export function resolveAcpBin(preset, fromModuleUrl = import.meta.url) {
|
|
57
57
|
if (preset === 'cursor') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-bundled-acp-bin.js","sourceRoot":"","sources":["../../src/acp/resolve-bundled-acp-bin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEtD,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"resolve-bundled-acp-bin.js","sourceRoot":"","sources":["../../src/acp/resolve-bundled-acp-bin.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ export declare class AcpPresetPrerequisiteError extends Error {
|
|
|
5
5
|
/** preset 別の install 手順(CONDUCTOR_AUTH_HINT と同趣旨)。 */
|
|
6
6
|
export declare function formatAcpPresetInstallHint(preset: AcpPresetId): string;
|
|
7
7
|
export declare function formatAcpExternalCliInstallHint(preset: BuiltinAcpPresetId, cliName: string): string;
|
|
8
|
-
/** spawn 前に preset
|
|
8
|
+
/** spawn 前に preset 前提(同梱または PATH adapter / 外部 CLI)を検証する。 */
|
|
9
9
|
export declare function validateAcpPresetPrerequisites(spawn: ResolvedAcpSpawn, options?: {
|
|
10
10
|
fromModuleUrl?: string | URL;
|
|
11
11
|
}): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate-acp-preset-prerequisites.d.ts","sourceRoot":"","sources":["../../src/acp/validate-acp-preset-prerequisites.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"validate-acp-preset-prerequisites.d.ts","sourceRoot":"","sources":["../../src/acp/validate-acp-preset-prerequisites.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAoBhG,qBAAa,0BAA2B,SAAQ,KAAK;gBACvC,OAAO,EAAE,MAAM;CAI5B;AAED,sDAAsD;AACtD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CA2CtE;AAED,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,kBAAkB,EAC1B,OAAO,EAAE,MAAM,GACd,MAAM,CAaR;AA8CD,4DAA4D;AAC5D,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,gBAAgB,EACvB,OAAO,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GACzC,IAAI,CAqBN;AAED,4DAA4D;AAC5D,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,gBAAgB,EACvB,OAAO,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GACzC,gBAAgB,CA2BlB;AAED,uDAAuD;AACvD,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,gBAAgB,EACvB,OAAO,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GACzC,gBAAgB,CAGlB;AAED,6CAA6C;AAC7C,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAClC,OAAO,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GACzC,IAAI,CAUN"}
|