instar 1.3.342 → 1.3.344

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/dist/commands/init.d.ts +4 -4
  2. package/dist/commands/init.d.ts.map +1 -1
  3. package/dist/commands/init.js.map +1 -1
  4. package/dist/commands/server.d.ts.map +1 -1
  5. package/dist/commands/server.js +47 -0
  6. package/dist/commands/server.js.map +1 -1
  7. package/dist/commands/setup.d.ts +1 -1
  8. package/dist/commands/setup.d.ts.map +1 -1
  9. package/dist/commands/setup.js.map +1 -1
  10. package/dist/core/Config.d.ts +12 -3
  11. package/dist/core/Config.d.ts.map +1 -1
  12. package/dist/core/Config.js +40 -6
  13. package/dist/core/Config.js.map +1 -1
  14. package/dist/core/FrameworkSessionStore.d.ts +1 -1
  15. package/dist/core/FrameworkSessionStore.d.ts.map +1 -1
  16. package/dist/core/PiCliIntelligenceProvider.d.ts +52 -0
  17. package/dist/core/PiCliIntelligenceProvider.d.ts.map +1 -0
  18. package/dist/core/PiCliIntelligenceProvider.js +71 -0
  19. package/dist/core/PiCliIntelligenceProvider.js.map +1 -0
  20. package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
  21. package/dist/core/PostUpdateMigrator.js +14 -0
  22. package/dist/core/PostUpdateMigrator.js.map +1 -1
  23. package/dist/core/PreCompactionFlush.d.ts +1 -1
  24. package/dist/core/PreCompactionFlush.d.ts.map +1 -1
  25. package/dist/core/ResumeValidator.d.ts +1 -1
  26. package/dist/core/ResumeValidator.d.ts.map +1 -1
  27. package/dist/core/SessionManager.d.ts.map +1 -1
  28. package/dist/core/SessionManager.js +35 -1
  29. package/dist/core/SessionManager.js.map +1 -1
  30. package/dist/core/TopicFrameworksStore.d.ts.map +1 -1
  31. package/dist/core/TopicFrameworksStore.js +3 -0
  32. package/dist/core/TopicFrameworksStore.js.map +1 -1
  33. package/dist/core/frameworkInjectionProcesses.d.ts.map +1 -1
  34. package/dist/core/frameworkInjectionProcesses.js +4 -0
  35. package/dist/core/frameworkInjectionProcesses.js.map +1 -1
  36. package/dist/core/frameworkSessionLaunch.d.ts +8 -0
  37. package/dist/core/frameworkSessionLaunch.d.ts.map +1 -1
  38. package/dist/core/frameworkSessionLaunch.js +73 -0
  39. package/dist/core/frameworkSessionLaunch.js.map +1 -1
  40. package/dist/core/intelligenceProviderFactory.d.ts +15 -1
  41. package/dist/core/intelligenceProviderFactory.d.ts.map +1 -1
  42. package/dist/core/intelligenceProviderFactory.js +39 -1
  43. package/dist/core/intelligenceProviderFactory.js.map +1 -1
  44. package/dist/core/types.d.ts +18 -7
  45. package/dist/core/types.d.ts.map +1 -1
  46. package/dist/core/types.js.map +1 -1
  47. package/dist/messaging/shared/telegramRelayPrompt.d.ts +1 -1
  48. package/dist/messaging/shared/telegramRelayPrompt.d.ts.map +1 -1
  49. package/dist/monitoring/SessionReaper.d.ts +1 -1
  50. package/dist/monitoring/SessionReaper.d.ts.map +1 -1
  51. package/dist/monitoring/SessionReaper.js.map +1 -1
  52. package/dist/monitoring/frameworkActivitySignals.d.ts.map +1 -1
  53. package/dist/monitoring/frameworkActivitySignals.js +21 -0
  54. package/dist/monitoring/frameworkActivitySignals.js.map +1 -1
  55. package/dist/monitoring/frameworkProcessSignals.d.ts.map +1 -1
  56. package/dist/monitoring/frameworkProcessSignals.js +22 -0
  57. package/dist/monitoring/frameworkProcessSignals.js.map +1 -1
  58. package/dist/providers/adapters/pi-cli/capabilities.d.ts +31 -0
  59. package/dist/providers/adapters/pi-cli/capabilities.d.ts.map +1 -0
  60. package/dist/providers/adapters/pi-cli/capabilities.js +40 -0
  61. package/dist/providers/adapters/pi-cli/capabilities.js.map +1 -0
  62. package/dist/providers/adapters/pi-cli/config.d.ts +65 -0
  63. package/dist/providers/adapters/pi-cli/config.d.ts.map +1 -0
  64. package/dist/providers/adapters/pi-cli/config.js +43 -0
  65. package/dist/providers/adapters/pi-cli/config.js.map +1 -0
  66. package/dist/providers/adapters/pi-cli/control/piHardKill.d.ts +19 -0
  67. package/dist/providers/adapters/pi-cli/control/piHardKill.d.ts.map +1 -0
  68. package/dist/providers/adapters/pi-cli/control/piHardKill.js +67 -0
  69. package/dist/providers/adapters/pi-cli/control/piHardKill.js.map +1 -0
  70. package/dist/providers/adapters/pi-cli/errors.d.ts +43 -0
  71. package/dist/providers/adapters/pi-cli/errors.d.ts.map +1 -0
  72. package/dist/providers/adapters/pi-cli/errors.js +71 -0
  73. package/dist/providers/adapters/pi-cli/errors.js.map +1 -0
  74. package/dist/providers/adapters/pi-cli/index.d.ts +39 -0
  75. package/dist/providers/adapters/pi-cli/index.d.ts.map +1 -0
  76. package/dist/providers/adapters/pi-cli/index.js +69 -0
  77. package/dist/providers/adapters/pi-cli/index.js.map +1 -0
  78. package/dist/providers/adapters/pi-cli/observability/sessionId.d.ts +27 -0
  79. package/dist/providers/adapters/pi-cli/observability/sessionId.d.ts.map +1 -0
  80. package/dist/providers/adapters/pi-cli/observability/sessionId.js +53 -0
  81. package/dist/providers/adapters/pi-cli/observability/sessionId.js.map +1 -0
  82. package/dist/providers/adapters/pi-cli/policy.d.ts +44 -0
  83. package/dist/providers/adapters/pi-cli/policy.d.ts.map +1 -0
  84. package/dist/providers/adapters/pi-cli/policy.js +74 -0
  85. package/dist/providers/adapters/pi-cli/policy.js.map +1 -0
  86. package/dist/providers/adapters/pi-cli/transport/agenticSessionRpc.d.ts +34 -0
  87. package/dist/providers/adapters/pi-cli/transport/agenticSessionRpc.d.ts.map +1 -0
  88. package/dist/providers/adapters/pi-cli/transport/agenticSessionRpc.js +194 -0
  89. package/dist/providers/adapters/pi-cli/transport/agenticSessionRpc.js.map +1 -0
  90. package/dist/providers/adapters/pi-cli/transport/oneShotCompletion.d.ts +33 -0
  91. package/dist/providers/adapters/pi-cli/transport/oneShotCompletion.d.ts.map +1 -0
  92. package/dist/providers/adapters/pi-cli/transport/oneShotCompletion.js +166 -0
  93. package/dist/providers/adapters/pi-cli/transport/oneShotCompletion.js.map +1 -0
  94. package/dist/providers/adapters/pi-cli/transport/piSpawn.d.ts +87 -0
  95. package/dist/providers/adapters/pi-cli/transport/piSpawn.d.ts.map +1 -0
  96. package/dist/providers/adapters/pi-cli/transport/piSpawn.js +242 -0
  97. package/dist/providers/adapters/pi-cli/transport/piSpawn.js.map +1 -0
  98. package/dist/providers/adapters/pi-cli/transport/rpcClient.d.ts +103 -0
  99. package/dist/providers/adapters/pi-cli/transport/rpcClient.d.ts.map +1 -0
  100. package/dist/providers/adapters/pi-cli/transport/rpcClient.js +238 -0
  101. package/dist/providers/adapters/pi-cli/transport/rpcClient.js.map +1 -0
  102. package/dist/providers/bootRegistration.d.ts +38 -0
  103. package/dist/providers/bootRegistration.d.ts.map +1 -1
  104. package/dist/providers/bootRegistration.js +52 -0
  105. package/dist/providers/bootRegistration.js.map +1 -1
  106. package/dist/providers/parity/rules/skillParityRule.d.ts.map +1 -1
  107. package/dist/providers/parity/rules/skillParityRule.js +6 -0
  108. package/dist/providers/parity/rules/skillParityRule.js.map +1 -1
  109. package/dist/redteam/ScenarioPack.d.ts +161 -0
  110. package/dist/redteam/ScenarioPack.d.ts.map +1 -0
  111. package/dist/redteam/ScenarioPack.js +200 -0
  112. package/dist/redteam/ScenarioPack.js.map +1 -0
  113. package/dist/scaffold/templates.js +1 -1
  114. package/package.json +1 -1
  115. package/src/data/builtin-manifest.json +20 -20
  116. package/src/scaffold/templates.ts +1 -1
  117. package/upgrades/1.3.343.md +49 -0
  118. package/upgrades/1.3.344.md +46 -0
  119. package/upgrades/side-effects/pi-harness-integration.md +82 -0
  120. package/upgrades/side-effects/redteam-harness-phase1-core.md +53 -0
@@ -0,0 +1,238 @@
1
+ /**
2
+ * PiRpcClient — typed client for pi's RPC mode (`pi --mode rpc`).
3
+ *
4
+ * Protocol (verified hands-on in the P0.1 eval, pi 0.78.1, and per upstream
5
+ * docs/rpc.md):
6
+ * - Commands: one JSON object per line on stdin.
7
+ * - Responses: `{"type":"response","command":…,"success":…,"id":…}` lines on
8
+ * stdout, correlated by the optional `id` we attach to every command.
9
+ * - Events: every other stdout line is an agent event (agent_start,
10
+ * turn_start, message_update, tool_execution_start|update|end, turn_end,
11
+ * agent_end, …), streamed asynchronously.
12
+ *
13
+ * FRAMING IS STRICT LF JSONL: split records on `\n` ONLY (tolerating a
14
+ * trailing `\r`). Node's `readline` is NOT protocol-compliant — it also
15
+ * splits on U+2028/U+2029, which are valid INSIDE JSON strings; using it
16
+ * would corrupt any record whose payload contains those code points. The
17
+ * splitter below buffers manually and is exported for direct unit testing.
18
+ *
19
+ * The subscription guard (policy.ts) is enforced by CALLERS at session/call
20
+ * construction — this client is the dumb pipe.
21
+ */
22
+ import { spawn } from 'node:child_process';
23
+ import { UnexpectedError } from '../../../errors.js';
24
+ import { PI_CLI_ID } from '../errors.js';
25
+ import { buildPiChildEnv } from './piSpawn.js';
26
+ /**
27
+ * Strict-LF JSONL splitter. Feed raw chunks; complete lines invoke `onLine`
28
+ * with the line content (trailing `\r` stripped, empty lines skipped).
29
+ * Returns a function to flush the trailing partial line (used at stream end).
30
+ *
31
+ * Exported for unit tests — the U+2028/U+2029-inside-string case is pinned
32
+ * there so a refactor to `readline` (which would break it) fails loudly.
33
+ */
34
+ export function createStrictLfSplitter(onLine) {
35
+ let buffer = '';
36
+ return {
37
+ push(chunk) {
38
+ buffer += chunk;
39
+ let idx = buffer.indexOf('\n');
40
+ while (idx !== -1) {
41
+ let line = buffer.slice(0, idx);
42
+ buffer = buffer.slice(idx + 1);
43
+ if (line.endsWith('\r'))
44
+ line = line.slice(0, -1);
45
+ if (line.length > 0)
46
+ onLine(line);
47
+ idx = buffer.indexOf('\n');
48
+ }
49
+ },
50
+ flush() {
51
+ let line = buffer;
52
+ buffer = '';
53
+ if (line.endsWith('\r'))
54
+ line = line.slice(0, -1);
55
+ if (line.length > 0)
56
+ onLine(line);
57
+ },
58
+ };
59
+ }
60
+ const DEFAULT_REQUEST_TIMEOUT_MS = 30_000;
61
+ const CLOSE_GRACE_MS = 3_000;
62
+ /**
63
+ * One spawned `pi --mode rpc` process. Create with `PiRpcClient.spawn()`,
64
+ * drive with the typed command methods, consume `events()`, then `close()`.
65
+ */
66
+ export class PiRpcClient {
67
+ child;
68
+ pending = new Map();
69
+ eventQueue = [];
70
+ eventWaiter = null;
71
+ closed = false;
72
+ exited = false;
73
+ nextId = 1;
74
+ static spawn(options) {
75
+ const argv = ['--mode', 'rpc', '--offline'];
76
+ if (options.noSession)
77
+ argv.push('--no-session');
78
+ if (options.sessionDir)
79
+ argv.push('--session-dir', options.sessionDir);
80
+ if (options.sessionId)
81
+ argv.push('--session-id', options.sessionId);
82
+ if (options.model)
83
+ argv.push('--model', options.model);
84
+ const child = spawn(options.binaryPath, argv, {
85
+ cwd: options.cwd,
86
+ env: { ...buildPiChildEnv(), ...(options.envOverrides ?? {}) },
87
+ stdio: ['pipe', 'pipe', 'pipe'],
88
+ });
89
+ return new PiRpcClient(child);
90
+ }
91
+ constructor(child) {
92
+ this.child = child;
93
+ const splitter = createStrictLfSplitter((line) => this.onLine(line));
94
+ child.stdout.setEncoding('utf8');
95
+ child.stdout.on('data', (chunk) => splitter.push(chunk));
96
+ child.stdout.on('end', () => splitter.flush());
97
+ child.on('exit', () => {
98
+ this.exited = true;
99
+ // Fail every pending request loudly rather than hanging its caller.
100
+ for (const [id, entry] of this.pending) {
101
+ clearTimeout(entry.timer);
102
+ entry.resolve({ id, type: 'response', command: 'unknown', success: false, error: 'pi process exited' });
103
+ }
104
+ this.pending.clear();
105
+ this.wakeEventWaiter();
106
+ });
107
+ }
108
+ /** The underlying pid (HardKill primitive integration). */
109
+ get pid() {
110
+ return this.child.pid;
111
+ }
112
+ get isExited() {
113
+ return this.exited;
114
+ }
115
+ onLine(line) {
116
+ let parsed;
117
+ try {
118
+ parsed = JSON.parse(line);
119
+ }
120
+ catch {
121
+ // A non-JSON stdout line violates the protocol; surface as an event so
122
+ // consumers can log it rather than silently dropping.
123
+ this.enqueueEvent({ type: 'pi-protocol-noise', raw: line.slice(0, 500) });
124
+ return;
125
+ }
126
+ const record = parsed;
127
+ if (record.type === 'response' && typeof record.command === 'string') {
128
+ const response = record;
129
+ const entry = response.id !== undefined ? this.pending.get(response.id) : undefined;
130
+ if (entry) {
131
+ this.pending.delete(response.id);
132
+ clearTimeout(entry.timer);
133
+ entry.resolve(response);
134
+ return;
135
+ }
136
+ // Un-correlated response (no id, or already timed out) — still observable.
137
+ this.enqueueEvent(record);
138
+ return;
139
+ }
140
+ this.enqueueEvent(record);
141
+ }
142
+ enqueueEvent(event) {
143
+ this.eventQueue.push(event);
144
+ this.wakeEventWaiter();
145
+ }
146
+ wakeEventWaiter() {
147
+ const waiter = this.eventWaiter;
148
+ this.eventWaiter = null;
149
+ waiter?.();
150
+ }
151
+ /** Send a raw command object (an `id` is attached automatically). */
152
+ request(command, timeoutMs = DEFAULT_REQUEST_TIMEOUT_MS) {
153
+ if (this.closed || this.exited) {
154
+ return Promise.resolve({ type: 'response', command: String(command['type'] ?? 'unknown'), success: false, error: 'client closed' });
155
+ }
156
+ const id = `req-${this.nextId++}`;
157
+ return new Promise((resolve) => {
158
+ const timer = setTimeout(() => {
159
+ this.pending.delete(id);
160
+ resolve({ id, type: 'response', command: String(command['type'] ?? 'unknown'), success: false, error: `timeout after ${timeoutMs}ms` });
161
+ }, timeoutMs);
162
+ this.pending.set(id, { resolve, timer });
163
+ this.child.stdin.write(JSON.stringify({ id, ...command }) + '\n');
164
+ });
165
+ }
166
+ prompt(message, opts) {
167
+ return this.request({ type: 'prompt', message, ...(opts?.streamingBehavior ? { streamingBehavior: opts.streamingBehavior } : {}) });
168
+ }
169
+ steer(message) {
170
+ return this.request({ type: 'steer', message });
171
+ }
172
+ followUp(message) {
173
+ return this.request({ type: 'follow_up', message });
174
+ }
175
+ abort() {
176
+ return this.request({ type: 'abort' });
177
+ }
178
+ getState() {
179
+ return this.request({ type: 'get_state' });
180
+ }
181
+ /**
182
+ * Async iterator over agent events (everything that isn't a correlated
183
+ * response). Ends when the process exits and the queue drains.
184
+ */
185
+ async *events() {
186
+ // eslint-disable-next-line no-constant-condition
187
+ while (true) {
188
+ while (this.eventQueue.length > 0) {
189
+ yield this.eventQueue.shift();
190
+ }
191
+ if (this.exited || this.closed)
192
+ return;
193
+ await new Promise((resolve) => { this.eventWaiter = resolve; });
194
+ }
195
+ }
196
+ /** End stdin, give pi a grace period, then escalate SIGTERM → SIGKILL. */
197
+ async close() {
198
+ if (this.closed)
199
+ return;
200
+ this.closed = true;
201
+ try {
202
+ this.child.stdin?.end();
203
+ }
204
+ catch { /* already gone */ }
205
+ const exited = await new Promise((resolve) => {
206
+ if (this.exited)
207
+ return resolve(true);
208
+ const timer = setTimeout(() => resolve(false), CLOSE_GRACE_MS);
209
+ this.child.once('exit', () => { clearTimeout(timer); resolve(true); });
210
+ });
211
+ if (!exited) {
212
+ try {
213
+ this.child.kill('SIGTERM');
214
+ }
215
+ catch { /* already gone */ }
216
+ const terminated = await new Promise((resolve) => {
217
+ if (this.exited)
218
+ return resolve(true);
219
+ const timer = setTimeout(() => resolve(false), CLOSE_GRACE_MS);
220
+ this.child.once('exit', () => { clearTimeout(timer); resolve(true); });
221
+ });
222
+ if (!terminated) {
223
+ try {
224
+ this.child.kill('SIGKILL');
225
+ }
226
+ catch { /* already gone */ }
227
+ }
228
+ }
229
+ this.wakeEventWaiter();
230
+ }
231
+ /** Throw a typed error when spawn itself failed (no pid). */
232
+ assertSpawned() {
233
+ if (this.child.pid === undefined) {
234
+ throw new UnexpectedError('pi RPC process failed to spawn (no pid) — is the binary path valid?', PI_CLI_ID);
235
+ }
236
+ }
237
+ }
238
+ //# sourceMappingURL=rpcClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpcClient.js","sourceRoot":"","sources":["../../../../../src/providers/adapters/pi-cli/transport/rpcClient.ts"],"names":[],"mappings":"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"}
@@ -80,4 +80,42 @@ export declare function buildReadSdkCredit(headless: ProviderAdapter, ttlMs?: nu
80
80
  * the contract.
81
81
  */
82
82
  export declare function registerAnthropicAdapters(options?: RegisterAnthropicAdaptersOptions): Promise<RegisterAnthropicAdaptersResult>;
83
+ export interface RegisterPiAdaptersOptions {
84
+ /**
85
+ * The agent's enabled frameworks (InstarConfig.enabledFrameworks). pi is
86
+ * ADDITIVE and ships dark: registration happens ONLY when 'pi-cli' is
87
+ * explicitly present — unset/empty means NOT enabled (the inverse of the
88
+ * Anthropic default, deliberately: existing agents see zero change).
89
+ */
90
+ enabledFrameworks?: ReadonlyArray<string>;
91
+ /** Detected `pi` binary path. Unset → adapter env detection. */
92
+ piPath?: string | null;
93
+ /** The pi `--model` pattern (frameworkDefaultModels['pi-cli']). */
94
+ model?: string;
95
+ /** Subscription-guard override (config `piCli.allowAnthropicProviders`). */
96
+ allowAnthropicProviders?: boolean;
97
+ /** Session-dir for RPC sessions (durable transcripts). */
98
+ sessionDir?: string;
99
+ /** Target registry override for tests. */
100
+ registryInstance?: Registry;
101
+ }
102
+ export interface RegisterPiAdaptersResult {
103
+ registered: ProviderId[];
104
+ alreadyRegistered: ProviderId[];
105
+ skippedReason?: 'pi-not-enabled' | 'pi-binary-missing';
106
+ adapter?: ProviderAdapter;
107
+ }
108
+ /**
109
+ * Register the pi-cli adapter, gated and idempotent (mirrors
110
+ * registerAnthropicAdapters' contract):
111
+ *
112
+ * - GATED on explicit opt-in: `enabledFrameworks` must contain 'pi-cli'.
113
+ * - GATED on the binary: a configured-but-missing pi degrades to a
114
+ * skip + doctor-visible reason, never a boot failure.
115
+ * - IDEMPOTENT including under concurrent calls (single-flight).
116
+ * - LAZY: pure in-memory construction; nothing spawns at registration.
117
+ * - GUARDED: the adapter's transports enforce the Anthropic-deny
118
+ * subscription guard at every call construction (spec §4.3).
119
+ */
120
+ export declare function registerPiAdapters(options?: RegisterPiAdaptersOptions): Promise<RegisterPiAdaptersResult>;
83
121
  //# sourceMappingURL=bootRegistration.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bootRegistration.d.ts","sourceRoot":"","sources":["../../src/providers/bootRegistration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAA+B,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAE5F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EACV,sBAAsB,EAEvB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,gDAAgD,CAAC;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AAG7F,MAAM,WAAW,gCAAgC;IAC/C;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC5C,0FAA0F;IAC1F,IAAI,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACtC,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,QAAQ,CAAC;IAC5B,4DAA4D;IAC5D,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,+BAA+B;IAC9C,iDAAiD;IACjD,UAAU,EAAE,UAAU,EAAE,CAAC;IACzB,mEAAmE;IACnE,iBAAiB,EAAE,UAAU,EAAE,CAAC;IAChC,uDAAuD;IACvD,aAAa,CAAC,EAAE,kBAAkB,GAAG,yBAAyB,CAAC;IAC/D,qDAAqD;IACrD,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,6DAA6D;IAC7D,IAAI,CAAC,EAAE,sBAAsB,CAAC;IAC9B;;;;OAIG;IACH,aAAa,EAAE,MAAM,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;CAC7D;AAID;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,eAAe,EACzB,KAAK,SAAS,GACb,MAAM,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CA8B9C;AAWD;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,GAAE,gCAAqC,GAC7C,OAAO,CAAC,+BAA+B,CAAC,CAS1C"}
1
+ {"version":3,"file":"bootRegistration.d.ts","sourceRoot":"","sources":["../../src/providers/bootRegistration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAA+B,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAE5F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EACV,sBAAsB,EAEvB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,gDAAgD,CAAC;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AAG7F,MAAM,WAAW,gCAAgC;IAC/C;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC5C,0FAA0F;IAC1F,IAAI,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACtC,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,QAAQ,CAAC;IAC5B,4DAA4D;IAC5D,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,+BAA+B;IAC9C,iDAAiD;IACjD,UAAU,EAAE,UAAU,EAAE,CAAC;IACzB,mEAAmE;IACnE,iBAAiB,EAAE,UAAU,EAAE,CAAC;IAChC,uDAAuD;IACvD,aAAa,CAAC,EAAE,kBAAkB,GAAG,yBAAyB,CAAC;IAC/D,qDAAqD;IACrD,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,6DAA6D;IAC7D,IAAI,CAAC,EAAE,sBAAsB,CAAC;IAC9B;;;;OAIG;IACH,aAAa,EAAE,MAAM,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;CAC7D;AAID;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,eAAe,EACzB,KAAK,SAAS,GACb,MAAM,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CA8B9C;AAWD;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,GAAE,gCAAqC,GAC7C,OAAO,CAAC,+BAA+B,CAAC,CAS1C;AA0ED,MAAM,WAAW,yBAAyB;IACxC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4EAA4E;IAC5E,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,0DAA0D;IAC1D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,QAAQ,CAAC;CAC7B;AAED,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,UAAU,EAAE,CAAC;IACzB,iBAAiB,EAAE,UAAU,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE,gBAAgB,GAAG,mBAAmB,CAAC;IACvD,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAID;;;;;;;;;;;GAWG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,wBAAwB,CAAC,CASnC"}
@@ -155,4 +155,56 @@ async function registerAnthropicAdaptersInner(options, reg) {
155
155
  readSdkCredit: buildReadSdkCredit(headless, options.creditCacheTtlMs),
156
156
  };
157
157
  }
158
+ const inFlightPiByRegistry = new WeakMap();
159
+ /**
160
+ * Register the pi-cli adapter, gated and idempotent (mirrors
161
+ * registerAnthropicAdapters' contract):
162
+ *
163
+ * - GATED on explicit opt-in: `enabledFrameworks` must contain 'pi-cli'.
164
+ * - GATED on the binary: a configured-but-missing pi degrades to a
165
+ * skip + doctor-visible reason, never a boot failure.
166
+ * - IDEMPOTENT including under concurrent calls (single-flight).
167
+ * - LAZY: pure in-memory construction; nothing spawns at registration.
168
+ * - GUARDED: the adapter's transports enforce the Anthropic-deny
169
+ * subscription guard at every call construction (spec §4.3).
170
+ */
171
+ export async function registerPiAdapters(options = {}) {
172
+ const targetRegistry = options.registryInstance ?? defaultRegistry;
173
+ const existing = inFlightPiByRegistry.get(targetRegistry);
174
+ if (existing)
175
+ return existing;
176
+ const run = registerPiAdaptersInner(options, targetRegistry).finally(() => {
177
+ inFlightPiByRegistry.delete(targetRegistry);
178
+ });
179
+ inFlightPiByRegistry.set(targetRegistry, run);
180
+ return run;
181
+ }
182
+ async function registerPiAdaptersInner(options, reg) {
183
+ // Gate 1 — explicit opt-in (ships dark).
184
+ if (!options.enabledFrameworks?.includes('pi-cli')) {
185
+ return { registered: [], alreadyRegistered: [], skippedReason: 'pi-not-enabled' };
186
+ }
187
+ // Gate 2 — binary present. Lazy import keeps the adapter graph out of
188
+ // boots that never enable pi.
189
+ const { detectPiPath } = await import('../core/Config.js');
190
+ const piPath = options.piPath ?? detectPiPath();
191
+ if (!piPath) {
192
+ return { registered: [], alreadyRegistered: [], skippedReason: 'pi-binary-missing' };
193
+ }
194
+ const { createPiCliAdapter, PI_CLI_ID } = await import('./adapters/pi-cli/index.js');
195
+ const already = reg.get(PI_CLI_ID);
196
+ if (already) {
197
+ return { registered: [], alreadyRegistered: [PI_CLI_ID], adapter: already };
198
+ }
199
+ const adapter = createPiCliAdapter({
200
+ piPath,
201
+ ...(options.model ? { model: options.model } : {}),
202
+ ...(options.allowAnthropicProviders !== undefined
203
+ ? { allowAnthropicProviders: options.allowAnthropicProviders }
204
+ : {}),
205
+ ...(options.sessionDir ? { sessionDir: options.sessionDir } : {}),
206
+ });
207
+ await reg.register(adapter);
208
+ return { registered: [PI_CLI_ID], alreadyRegistered: [], adapter };
209
+ }
158
210
  //# sourceMappingURL=bootRegistration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bootRegistration.js","sourceRoot":"","sources":["../../src/providers/bootRegistration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootRegistration.js","sourceRoot":"","sources":["../../src/providers/bootRegistration.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"skillParityRule.d.ts","sourceRoot":"","sources":["../../../../src/providers/parity/rules/skillParityRule.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAOH,OAAO,KAAK,EACV,UAAU,EAGX,MAAM,aAAa,CAAC;AAiCrB,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM;CAI5B;AA+hBD,eAAO,MAAM,eAAe,EAAE,UA2E7B,CAAC"}
1
+ {"version":3,"file":"skillParityRule.d.ts","sourceRoot":"","sources":["../../../../src/providers/parity/rules/skillParityRule.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAOH,OAAO,KAAK,EACV,UAAU,EAGX,MAAM,aAAa,CAAC;AAiCrB,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAqiBD,eAAO,MAAM,eAAe,EAAE,UA2E7B,CAAC"}
@@ -519,6 +519,12 @@ const FRAMEWORK_RENDERERS = {
519
519
  // compiler-forced Record total without overclaiming a gemini-native artifact
520
520
  // that the minimal body does not yet produce.
521
521
  'gemini-cli': codexCliRenderer,
522
+ // pi (PI-HARNESS-INTEGRATION-SPEC Phase A): same rationale as gemini — pi
523
+ // natively discovers skills + AGENTS.md from the project tree, and the
524
+ // shared `.agents/skills` layout is the non-Claude convention. A pi-native
525
+ // rendering (pi's own skill format via `--skill`) is a Phase E refinement;
526
+ // this entry keeps the compiler-forced Record total without overclaiming.
527
+ 'pi-cli': codexCliRenderer,
522
528
  };
523
529
  // ─── The exported ParityRule ───────────────────────────────────────────
524
530
  async function findOrphans(projectRoot, framework, canonicalNames) {
@@ -1 +1 @@
1
- {"version":3,"file":"skillParityRule.js","sourceRoot":"","sources":["../../../../src/providers/parity/rules/skillParityRule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skillParityRule.js","sourceRoot":"","sources":["../../../../src/providers/parity/rules/skillParityRule.ts"],"names":[],"mappings":"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"}