@dungle-scrubs/tallow 0.8.25 → 0.8.27
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/dist/auth-hardening.d.ts +12 -0
- package/dist/auth-hardening.d.ts.map +1 -1
- package/dist/auth-hardening.js +30 -7
- package/dist/auth-hardening.js.map +1 -1
- package/dist/cli.js +5 -0
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/config.js +1 -1
- package/dist/install.js +2 -2
- package/dist/install.js.map +1 -1
- package/dist/interactive-mode-patch.d.ts +1 -0
- package/dist/interactive-mode-patch.d.ts.map +1 -1
- package/dist/interactive-mode-patch.js +159 -8
- package/dist/interactive-mode-patch.js.map +1 -1
- package/dist/model-metadata-overrides.d.ts +19 -0
- package/dist/model-metadata-overrides.d.ts.map +1 -0
- package/dist/model-metadata-overrides.js +38 -0
- package/dist/model-metadata-overrides.js.map +1 -0
- package/dist/pid-manager.d.ts +2 -9
- package/dist/pid-manager.d.ts.map +1 -1
- package/dist/pid-manager.js +1 -58
- package/dist/pid-manager.js.map +1 -1
- package/dist/pid-schema.d.ts +51 -0
- package/dist/pid-schema.d.ts.map +1 -0
- package/dist/pid-schema.js +70 -0
- package/dist/pid-schema.js.map +1 -0
- package/dist/sdk.d.ts +2 -0
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.js +32 -9
- package/dist/sdk.js.map +1 -1
- package/extensions/__integration__/audit-findings.test.ts +309 -0
- package/extensions/__integration__/tasks-runtime.test.ts +63 -12
- package/extensions/__integration__/teams-runtime.test.ts +22 -1
- package/extensions/_shared/__tests__/shell-policy.test.ts +197 -0
- package/extensions/_shared/lazy-init.ts +88 -3
- package/extensions/_shared/pid-registry.ts +8 -82
- package/extensions/_shared/shell-policy.ts +27 -0
- package/extensions/background-task-tool/index.ts +2 -1
- package/extensions/bash-tool-enhanced/index.ts +2 -1
- package/extensions/cheatsheet/__tests__/cheatsheet.test.ts +47 -0
- package/extensions/clear/__tests__/clear.test.ts +38 -0
- package/extensions/custom-footer/__tests__/index.test.ts +29 -0
- package/extensions/custom-footer/context-display.ts +49 -0
- package/extensions/custom-footer/index.ts +10 -23
- package/extensions/git-status/__tests__/git-status.test.ts +32 -0
- package/extensions/mcp-adapter-tool/index.ts +1 -1
- package/extensions/minimal-skill-display/__tests__/minimal-skill-display.test.ts +20 -0
- package/extensions/permissions/__tests__/permissions.test.ts +213 -0
- package/extensions/permissions/index.ts +31 -10
- package/extensions/plan-mode-tool/__tests__/index.test.ts +32 -2
- package/extensions/plan-mode-tool/index.ts +6 -1
- package/extensions/progress-indicator/__tests__/progress-indicator.test.ts +104 -0
- package/extensions/random-spinner/__tests__/random-spinner.test.ts +35 -0
- package/extensions/show-system-prompt/__tests__/show-system-prompt.test.ts +51 -0
- package/extensions/slash-command-bridge/index.ts +30 -1
- package/extensions/subagent-tool/__tests__/presentation-rendering.test.ts +5 -4
- package/extensions/subagent-tool/__tests__/process-liveness.test.ts +93 -3
- package/extensions/subagent-tool/__tests__/subprocess-args.test.ts +120 -0
- package/extensions/subagent-tool/formatting.ts +2 -0
- package/extensions/subagent-tool/index.ts +156 -95
- package/extensions/subagent-tool/process.ts +254 -49
- package/extensions/tasks/__tests__/store.test.ts +26 -2
- package/extensions/tasks/commands/register-tasks-extension.ts +66 -22
- package/extensions/tasks/extension.json +1 -0
- package/extensions/tasks/index.ts +4 -14
- package/extensions/tasks/state/index.ts +116 -36
- package/extensions/teams-tool/__tests__/archive-store.test.ts +98 -0
- package/extensions/teams-tool/__tests__/peer-messaging.test.ts +26 -0
- package/extensions/teams-tool/archive-store.ts +200 -0
- package/extensions/teams-tool/dashboard.ts +13 -1
- package/extensions/teams-tool/sessions/spawn.ts +244 -71
- package/extensions/teams-tool/tools/register-extension.ts +155 -106
- package/extensions/teams-tool/tools/teammate-tools.ts +43 -1
- package/extensions/upstream-check/__tests__/upstream-check.test.ts +49 -0
- package/extensions/wezterm-notify/__tests__/index.test.ts +49 -11
- package/extensions/wezterm-notify/index.ts +5 -3
- package/extensions/write-tool-enhanced/__tests__/write-tool-enhanced.test.ts +296 -0
- package/package.json +6 -5
- package/runtime/pid-schema.ts +13 -0
- package/skills/tallow-expert/SKILL.md +1 -1
- package/templates/agents/architect.md +13 -5
- package/templates/agents/debug.md +3 -3
- package/templates/agents/explore.md +9 -2
- package/templates/agents/refactor.md +2 -2
- package/templates/agents/scout.md +3 -2
|
@@ -69,6 +69,7 @@ const CONTINUATION_SIGNAL_EVENT_TYPES = new Set([
|
|
|
69
69
|
"turn_start",
|
|
70
70
|
]);
|
|
71
71
|
const compactionRetryWatchdogTimers = new WeakMap();
|
|
72
|
+
const autoCompactionStatus = new WeakMap();
|
|
72
73
|
const pendingInteractiveExtensionCompact = new WeakMap();
|
|
73
74
|
const messageUpdateCoalesceState = new WeakMap();
|
|
74
75
|
/**
|
|
@@ -275,6 +276,86 @@ function isCompactionContinuationSignal(event) {
|
|
|
275
276
|
return false;
|
|
276
277
|
return CONTINUATION_SIGNAL_EVENT_TYPES.has(event.type);
|
|
277
278
|
}
|
|
279
|
+
/**
|
|
280
|
+
* Marks one interactive mode instance as actively auto-compacting.
|
|
281
|
+
*
|
|
282
|
+
* @param mode - Interactive mode instance
|
|
283
|
+
* @returns Nothing
|
|
284
|
+
*/
|
|
285
|
+
function markAutoCompactionRunning(mode) {
|
|
286
|
+
autoCompactionStatus.set(mode, "running");
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Marks one interactive mode instance as waiting for retry continuation.
|
|
290
|
+
*
|
|
291
|
+
* @param mode - Interactive mode instance
|
|
292
|
+
* @returns Nothing
|
|
293
|
+
*/
|
|
294
|
+
function markAutoCompactionWaitingForRetry(mode) {
|
|
295
|
+
autoCompactionStatus.set(mode, "waiting_for_retry");
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Clears any tracked auto-compaction status for one interactive mode instance.
|
|
299
|
+
*
|
|
300
|
+
* @param mode - Interactive mode instance
|
|
301
|
+
* @returns Nothing
|
|
302
|
+
*/
|
|
303
|
+
function clearAutoCompactionStatus(mode) {
|
|
304
|
+
autoCompactionStatus.delete(mode);
|
|
305
|
+
}
|
|
306
|
+
/**
|
|
307
|
+
* Returns whether status clearing should stay suppressed for auto-compaction.
|
|
308
|
+
*
|
|
309
|
+
* @param mode - Interactive mode instance
|
|
310
|
+
* @returns True when a compaction loader should still be preserved
|
|
311
|
+
*/
|
|
312
|
+
function shouldPreserveCompactionStatus(mode) {
|
|
313
|
+
return autoCompactionStatus.has(mode);
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* Transitions retry-waiting compaction state back to normal once continuation starts.
|
|
317
|
+
*
|
|
318
|
+
* @param mode - Interactive mode instance
|
|
319
|
+
* @returns Nothing
|
|
320
|
+
*/
|
|
321
|
+
function markCompactionContinuationStarted(mode) {
|
|
322
|
+
if (autoCompactionStatus.get(mode) === "waiting_for_retry") {
|
|
323
|
+
clearAutoCompactionStatus(mode);
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Drains orphaned session steering/follow-up messages to the editor.
|
|
328
|
+
*
|
|
329
|
+
* Called at agent_end to clear zombie "Steering: ..." / "Follow-up: ..." lines
|
|
330
|
+
* that the agent never consumed. Uses `session.clearQueue()` which also clears
|
|
331
|
+
* the agent-level queues, preventing stale injection on the next turn.
|
|
332
|
+
*
|
|
333
|
+
* Only touches session-level queues — compactionQueuedMessages is unaffected
|
|
334
|
+
* and handled separately by flushCompactionQueue.
|
|
335
|
+
*
|
|
336
|
+
* @param mode - Interactive mode instance
|
|
337
|
+
* @returns Nothing
|
|
338
|
+
*/
|
|
339
|
+
function drainOrphanedSessionMessages(mode) {
|
|
340
|
+
const session = mode.session;
|
|
341
|
+
if (!session || typeof session.clearQueue !== "function")
|
|
342
|
+
return;
|
|
343
|
+
const steeringMsgs = session.getSteeringMessages?.() ?? [];
|
|
344
|
+
const followUpMsgs = session.getFollowUpMessages?.() ?? [];
|
|
345
|
+
if (steeringMsgs.length === 0 && followUpMsgs.length === 0)
|
|
346
|
+
return;
|
|
347
|
+
const { steering, followUp } = session.clearQueue();
|
|
348
|
+
const orphaned = [...steering, ...followUp];
|
|
349
|
+
if (orphaned.length === 0)
|
|
350
|
+
return;
|
|
351
|
+
const editor = mode.editor;
|
|
352
|
+
if (typeof editor?.getText === "function" && typeof editor?.setText === "function") {
|
|
353
|
+
const currentText = (editor.getText() ?? "").trim();
|
|
354
|
+
const orphanedText = orphaned.join("\n\n");
|
|
355
|
+
const combined = [orphanedText, currentText].filter((t) => t.trim()).join("\n\n");
|
|
356
|
+
editor.setText(combined);
|
|
357
|
+
}
|
|
358
|
+
}
|
|
278
359
|
/**
|
|
279
360
|
* Returns whether auto_compaction_end finished without result, abort, or error.
|
|
280
361
|
*
|
|
@@ -382,8 +463,13 @@ export function patchInteractiveModePrototype(prototype) {
|
|
|
382
463
|
const originalHandleEvent = prototype.handleEvent;
|
|
383
464
|
if (typeof originalHandleEvent === "function") {
|
|
384
465
|
prototype.handleEvent = async function (event) {
|
|
385
|
-
if (event?.type === "auto_compaction_start"
|
|
466
|
+
if (event?.type === "auto_compaction_start") {
|
|
467
|
+
clearCompactionRetryWatchdog(this);
|
|
468
|
+
markAutoCompactionRunning(this);
|
|
469
|
+
}
|
|
470
|
+
if (isCompactionContinuationSignal(event)) {
|
|
386
471
|
clearCompactionRetryWatchdog(this);
|
|
472
|
+
markCompactionContinuationStarted(this);
|
|
387
473
|
}
|
|
388
474
|
// ── message_update coalescing (plan 176) ─────────────────────────
|
|
389
475
|
// During rapid streaming, message_update fires per token. Coalesce
|
|
@@ -413,8 +499,21 @@ export function patchInteractiveModePrototype(prototype) {
|
|
|
413
499
|
}
|
|
414
500
|
// For events that depend on streaming state being current, flush
|
|
415
501
|
// any pending message_update first so the component is up-to-date.
|
|
416
|
-
|
|
417
|
-
|
|
502
|
+
//
|
|
503
|
+
// agent_end is excluded: its loader cleanup must run synchronously
|
|
504
|
+
// within _emit() to avoid a stale "Working..." indicator. The flush
|
|
505
|
+
// await yields to the microtask queue, letting _processAgentEvent
|
|
506
|
+
// (and ultimately prompt() / getUserInput()) resolve before the
|
|
507
|
+
// loader is cleared — the user sees the editor cursor while the
|
|
508
|
+
// spinner persists. message_end already flushes the same pending
|
|
509
|
+
// state, and in abort paths the streaming component is removed
|
|
510
|
+
// regardless, so skipping the flush for agent_end is safe.
|
|
511
|
+
// Instead, discard any orphaned pending update synchronously.
|
|
512
|
+
if (event?.type === "agent_end") {
|
|
513
|
+
const coalesce = getCoalesceState(this);
|
|
514
|
+
coalesce.pendingEvent = null;
|
|
515
|
+
}
|
|
516
|
+
else if (event?.type === "message_end" ||
|
|
418
517
|
event?.type === "tool_execution_start" ||
|
|
419
518
|
event?.type === "tool_execution_end") {
|
|
420
519
|
await flushPendingMessageUpdate(this, originalHandleEvent);
|
|
@@ -424,10 +523,12 @@ export function patchInteractiveModePrototype(prototype) {
|
|
|
424
523
|
const result = await originalHandleEvent.call(this, uiEvent);
|
|
425
524
|
if (event?.type === "auto_compaction_end") {
|
|
426
525
|
if (event.willRetry === true) {
|
|
526
|
+
markAutoCompactionWaitingForRetry(this);
|
|
427
527
|
armCompactionRetryWatchdog(this);
|
|
428
528
|
}
|
|
429
529
|
else {
|
|
430
530
|
clearCompactionRetryWatchdog(this);
|
|
531
|
+
clearAutoCompactionStatus(this);
|
|
431
532
|
}
|
|
432
533
|
if (isAmbiguousCompactionEndState(event)) {
|
|
433
534
|
notifyFromInteractiveMode(this, AMBIGUOUS_COMPACTION_END_WARNING_TEXT, "warning");
|
|
@@ -436,13 +537,36 @@ export function patchInteractiveModePrototype(prototype) {
|
|
|
436
537
|
if (event?.type === "agent_end") {
|
|
437
538
|
clearCompactionRetryWatchdog(this);
|
|
438
539
|
this.pendingWorkingMessage = undefined;
|
|
439
|
-
//
|
|
440
|
-
//
|
|
441
|
-
//
|
|
442
|
-
//
|
|
540
|
+
// Safety net: stop the loading animation if the upstream handler
|
|
541
|
+
// didn't reach its cleanup (e.g. extension agent_end handlers
|
|
542
|
+
// delayed _emit so session.prompt() resolved first). The upstream
|
|
543
|
+
// handler also clears these, but this runs in the post-await path
|
|
544
|
+
// as a second chance.
|
|
545
|
+
if (this.loadingAnimation) {
|
|
546
|
+
this.loadingAnimation.stop?.();
|
|
547
|
+
this.loadingAnimation = null;
|
|
548
|
+
}
|
|
549
|
+
// Preserve the compaction loader only while compaction is still
|
|
550
|
+
// running or while a promised retry has not actually started yet.
|
|
551
|
+
// Once continuation begins, later agent_end events must clear the
|
|
552
|
+
// spinner like any normal turn.
|
|
553
|
+
if (!shouldPreserveCompactionStatus(this)) {
|
|
554
|
+
this.statusContainer?.clear?.();
|
|
555
|
+
}
|
|
443
556
|
this.flushPendingBashComponents?.();
|
|
557
|
+
// Drain orphaned session steering/follow-up messages to the editor.
|
|
558
|
+
// Steering messages are injected mid-turn; if the turn ends without
|
|
559
|
+
// the agent consuming them, they persist as zombie "Steering: ..."
|
|
560
|
+
// lines in the UI forever. Follow-ups are similarly stale if the
|
|
561
|
+
// agent never started them. Restoring to editor makes the messages
|
|
562
|
+
// visible and re-sendable — same behavior as pressing the dequeue
|
|
563
|
+
// key, but triggered automatically at turn end.
|
|
564
|
+
drainOrphanedSessionMessages(this);
|
|
444
565
|
this.updatePendingMessagesDisplay?.();
|
|
445
|
-
|
|
566
|
+
// Force a full re-render to guarantee stale loader text is cleared
|
|
567
|
+
// from the terminal. A non-forced requestRender() can coalesce with
|
|
568
|
+
// a stale pending render that ran before statusContainer.clear().
|
|
569
|
+
this.ui?.requestRender?.(true);
|
|
446
570
|
const deferredCompact = pendingInteractiveExtensionCompact.get(this);
|
|
447
571
|
if (deferredCompact) {
|
|
448
572
|
pendingInteractiveExtensionCompact.delete(this);
|
|
@@ -462,6 +586,33 @@ export function patchInteractiveModePrototype(prototype) {
|
|
|
462
586
|
return result;
|
|
463
587
|
};
|
|
464
588
|
}
|
|
589
|
+
// ── getUserInput: last-resort loader cleanup ─────────────────────────
|
|
590
|
+
//
|
|
591
|
+
// The main loop calls getUserInput() right after session.prompt() returns.
|
|
592
|
+
// At this point the agent is done, but _emit(agent_end) may not have fired
|
|
593
|
+
// yet — it runs through _agentEventQueue which is a separate microtask
|
|
594
|
+
// chain that _emitExtensionEvent must complete first. If any extension
|
|
595
|
+
// handler is slow, the loader persists because neither the upstream
|
|
596
|
+
// agent_end handler nor the tallow post-handler has run.
|
|
597
|
+
//
|
|
598
|
+
// Clearing the loader here is unconditionally safe: getUserInput means the
|
|
599
|
+
// agent is idle — there is never a legitimate "Working..." at this point.
|
|
600
|
+
const originalGetUserInput = prototype.getUserInput;
|
|
601
|
+
if (typeof originalGetUserInput === "function") {
|
|
602
|
+
prototype.getUserInput = async function () {
|
|
603
|
+
// Stop the loader interval and remove it from the container.
|
|
604
|
+
if (this.loadingAnimation) {
|
|
605
|
+
this.loadingAnimation.stop?.();
|
|
606
|
+
this.loadingAnimation = null;
|
|
607
|
+
}
|
|
608
|
+
this.pendingWorkingMessage = undefined;
|
|
609
|
+
if (!shouldPreserveCompactionStatus(this)) {
|
|
610
|
+
this.statusContainer?.clear?.();
|
|
611
|
+
}
|
|
612
|
+
this.ui?.requestRender?.(true);
|
|
613
|
+
return originalGetUserInput.call(this);
|
|
614
|
+
};
|
|
615
|
+
}
|
|
465
616
|
const originalSetupKeyHandlers = prototype.setupKeyHandlers;
|
|
466
617
|
if (typeof originalSetupKeyHandlers === "function") {
|
|
467
618
|
prototype.setupKeyHandlers = function (...args) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-mode-patch.js","sourceRoot":"","sources":["../src/interactive-mode-patch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAyEnD,MAAM,UAAU,GAAG,+CAA+C,CAAC;AAEnE,6DAA6D;AAC7D,MAAM,oBAAoB,GAAG,gCAAgC,CAAC;AAE9D;;;;;;;;GAQG;AACH,SAAS,cAAc,CAAC,OAAe;IACtC,OAAO,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,QAAwC;IAClE,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtF,OAAO,aAAa,GAAG,CAAC,IAAI,aAAa,GAAG,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;GAKG;AACH,MAAM,uBAAuB,GAAG;IAC/B,qBAAqB;IACrB,wCAAwC;IACxC,6BAA6B;IAC7B,yCAAyC;IACzC,+BAA+B;IAC/B,oCAAoC;IACpC,uCAAuC;IACvC,2BAA2B;IAC3B,qCAAqC;IACrC,kCAAkC;IAClC,+BAA+B;IAC/B,6BAA6B;IAC7B,gCAAgC;IAChC,kBAAkB;IAClB,uBAAuB;CACd,CAAC;AAEX,qFAAqF;AACrF,MAAM,+BAA+B,GACpC,oEAAoE,CAAC;AAEtE,qFAAqF;AACrF,MAAM,qCAAqC,GAC1C,gIAAgI,CAAC;AAElI,kFAAkF;AAClF,MAAM,qCAAqC,GAC1C,qIAAqI,CAAC;AAEvI,gFAAgF;AAChF,MAAM,oCAAoC,GAAG,KAAK,CAAC;AAEnD,MAAM,+BAA+B,GAAG,IAAI,GAAG,CAAC;IAC/C,aAAa;IACb,kBAAkB;IAClB,eAAe;IACf,sBAAsB;IACtB,YAAY;CACZ,CAAC,CAAC;AAEH,MAAM,6BAA6B,GAAG,IAAI,OAAO,EAG9C,CAAC;AAEJ,MAAM,kCAAkC,GAAG,IAAI,OAAO,EAGnD,CAAC;AAuBJ,MAAM,0BAA0B,GAAG,IAAI,OAAO,EAG3C,CAAC;AAEJ;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,IAAiC;IAC1D,IAAI,KAAK,GAAG,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,KAAK,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;QACtD,0BAA0B,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,yBAAyB,CACvC,IAAiC,EACjC,OAA8D;IAE9D,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,KAAK,CAAC,YAAY;QAAE,OAAO;IAChC,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC;IACjC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC1B,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,YAAY,CAAC,OAA8B;IACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACtD,OAAQ,KAA4B,CAAC,IAAI,KAAK,UAAU,CAAC;IAC1D,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,6BAA6B,CAAC,YAAoB;IAC1D,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QAC3E,OAAO,IAAI,CAAC;IACb,CAAC;IACD,sEAAsE;IACtE,OAAO,2CAA2C,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACvE,CAAC;AAED;;;;;GAKG;AACH,SAAS,4BAA4B,CAAC,OAA8B;IACnE,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;QAC9C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACtD,IAAK,KAA4B,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO,KAAK,CAAC;QAChE,MAAM,IAAI,GAAI,KAA4B,CAAC,IAAI,CAAC;QAChD,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IACH,IAAI,gBAAgB,EAAE,CAAC;QACtB,OAAO,MAAM,CAAC;IACf,CAAC;IACD,MAAM,CAAC,IAAI,CAAC;QACX,IAAI,EAAE,+BAA+B;QACrC,IAAI,EAAE,MAAM;KACZ,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,yBAAyB,CACjC,IAAiC,EACjC,OAAe,EACf,IAAkC;IAElC,MAAM,aAAa,GAAG,IAAI,CAAC,wBAAwB,CAAC;IACpD,IAAI,OAAO,aAAa,KAAK,UAAU;QAAE,OAAO;IAChD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAC/B,IAAI,OAAO,MAAM,KAAK,UAAU;QAAE,OAAO;IACzC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,8BAA8B,CACtC,IAAiC,EACjC,OAA4B;IAE5B,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;IACjD,IAAI,OAAO,iBAAiB,KAAK,UAAU,EAAE,CAAC;QAC7C,OAAO;IACR,CAAC;IAED,KAAK,CAAC,KAAK,IAAI,EAAE;QAChB,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;YACtF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,OAAO,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC;gBAC9B,OAAO;YACR,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;IACF,CAAC,CAAC,EAAE,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAS,+BAA+B,CAAC,IAAiC;IACzE,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC;IACtD,IAAI,CAAC,eAAe,EAAE,CAAC;QACtB,OAAO;IACR,CAAC;IAED,eAAe,CAAC,SAAS,GAAG,CAAC,OAA4B,EAAE,EAAE;QAC5D,IAAI,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC;YAC/B,kCAAkC,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;YAC5D,OAAO;QACR,CAAC;QAED,8BAA8B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,4BAA4B,CAAC,IAAiC;IACtE,MAAM,KAAK,GAAG,6BAA6B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,YAAY,CAAC,KAAK,CAAC,CAAC;IACpB,6BAA6B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;GAKG;AACH,SAAS,0BAA0B,CAAC,IAAiC;IACpE,4BAA4B,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;QAC7B,6BAA6B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3C,yBAAyB,CAAC,IAAI,EAAE,qCAAqC,EAAE,SAAS,CAAC,CAAC;IACnF,CAAC,EAAE,oCAAoC,CAAC,CAAC;IACzC,6BAA6B,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,SAAS,8BAA8B,CAAC,KAA+B;IACtE,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACjD,OAAO,+BAA+B,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED;;;;;GAKG;AACH,SAAS,6BAA6B,CAAC,KAA+B;IACrE,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB;QAAE,OAAO,KAAK,CAAC;IACvD,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC3C,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtE,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACjG,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAS,kCAAkC,CAC1C,KAA+B,EAC/B,OAAgC;IAEhC,IAAI,OAAO,EAAE,qBAAqB,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAC3D,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;QAAE,OAAO,KAAK,CAAC;IAC/C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC9B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,KAAK,CAAC;IAC3D,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACjD,IAAI,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC3D,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,YAAY,CAAC;QAAE,OAAO,KAAK,CAAC;IACvE,IAAI,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAEhD,yEAAyE;IACzE,yEAAyE;IACzE,+DAA+D;IAC/D,OAAO;QACN,GAAG,KAAK;QACR,OAAO,EAAE;YACR,GAAG,OAAO;YACV,OAAO,EAAE,4BAA4B,CAAC,OAAO,CAAC,OAAO,CAAC;YACtD,YAAY,EAAE,SAAS;YACvB,UAAU,EAAE,MAAM;SAClB;KACD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,6BAA6B,CAAC,SAAuC;IACpF,IAAI,SAAS,CAAC,iCAAiC;QAAE,OAAO;IACxD,SAAS,CAAC,iCAAiC,GAAG,IAAI,CAAC;IAEnD,MAAM,sBAAsB,GAAG,SAAS,CAAC,cAAc,CAAC;IACxD,IAAI,OAAO,sBAAsB,KAAK,UAAU,EAAE,CAAC;QAClD,SAAS,CAAC,cAAc,GAAG,KAAK,WAE/B,GAAG,IAAe;YAElB,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;YAChE,+BAA+B,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;IACH,CAAC;IAED,MAAM,2BAA2B,GAAG,SAAS,CAAC,mBAAmB,CAAC;IAClE,IAAI,OAAO,2BAA2B,KAAK,UAAU,EAAE,CAAC;QACvD,SAAS,CAAC,mBAAmB,GAAG,KAAK,WAEpC,GAAG,IAAe;YAElB,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;YACrE,+BAA+B,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,SAAS,CAAC,WAAW,CAAC;IAClD,IAAI,OAAO,mBAAmB,KAAK,UAAU,EAAE,CAAC;QAC/C,SAAS,CAAC,WAAW,GAAG,KAAK,WAE5B,KAA+B;YAE/B,IAAI,KAAK,EAAE,IAAI,KAAK,uBAAuB,IAAI,8BAA8B,CAAC,KAAK,CAAC,EAAE,CAAC;gBACtF,4BAA4B,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;YAED,oEAAoE;YACpE,mEAAmE;YACnE,8DAA8D;YAC9D,yDAAyD;YACzD,EAAE;YACF,6DAA6D;YAC7D,8DAA8D;YAC9D,IAAI,KAAK,EAAE,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBACtC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACxC,gDAAgD;gBAChD,MAAM,OAAO,GAAG,kCAAkC,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBACxE,QAAQ,CAAC,YAAY,GAAG,OAAO,CAAC;gBAEhC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;oBAC9B,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;oBAC/B,eAAe,CAAC,KAAK,IAAI,EAAE;wBAC1B,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;wBACrC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC;wBAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC;wBACnC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;wBAC1B,IAAI,OAAO,EAAE,CAAC;4BACb,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;wBAC/C,CAAC;oBACF,CAAC,CAAC,CAAC;gBACJ,CAAC;gBACD,OAAO;YACR,CAAC;YAED,iEAAiE;YACjE,mEAAmE;YACnE,IACC,KAAK,EAAE,IAAI,KAAK,aAAa;gBAC7B,KAAK,EAAE,IAAI,KAAK,WAAW;gBAC3B,KAAK,EAAE,IAAI,KAAK,sBAAsB;gBACtC,KAAK,EAAE,IAAI,KAAK,oBAAoB,EACnC,CAAC;gBACF,MAAM,yBAAyB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;YAC5D,CAAC;YAED,kFAAkF;YAClF,MAAM,OAAO,GAAG,kCAAkC,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACxE,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAE7D,IAAI,KAAK,EAAE,IAAI,KAAK,qBAAqB,EAAE,CAAC;gBAC3C,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;oBAC9B,0BAA0B,CAAC,IAAI,CAAC,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACP,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACpC,CAAC;gBACD,IAAI,6BAA6B,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1C,yBAAyB,CAAC,IAAI,EAAE,qCAAqC,EAAE,SAAS,CAAC,CAAC;gBACnF,CAAC;YACF,CAAC;YAED,IAAI,KAAK,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;gBACjC,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;gBACvC,mEAAmE;gBACnE,mEAAmE;gBACnE,sEAAsE;gBACtE,gDAAgD;gBAChD,IAAI,CAAC,0BAA0B,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,4BAA4B,EAAE,EAAE,CAAC;gBACtC,IAAI,CAAC,EAAE,EAAE,aAAa,EAAE,EAAE,CAAC;gBAE3B,MAAM,eAAe,GAAG,kCAAkC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrE,IAAI,eAAe,EAAE,CAAC;oBACrB,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAChD,8BAA8B,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;gBACvD,CAAC;YACF,CAAC;YACD,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;IACH,CAAC;IAED,MAAM,yBAAyB,GAAG,SAAS,CAAC,iBAAiB,CAAC;IAC9D,IAAI,OAAO,yBAAyB,KAAK,UAAU,EAAE,CAAC;QACrD,SAAS,CAAC,iBAAiB,GAAG,KAAK,WAElC,OAAe,EACf,kBAA4B;YAE5B,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC;YACvF,IAAI,CAAC,0BAA0B,EAAE,EAAE,CAAC;YACpC,IAAI,CAAC,4BAA4B,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,EAAE,EAAE,aAAa,EAAE,EAAE,CAAC;YAC3B,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;IACH,CAAC;IAED,MAAM,wBAAwB,GAAG,SAAS,CAAC,gBAAgB,CAAC;IAC5D,IAAI,OAAO,wBAAwB,KAAK,UAAU,EAAE,CAAC;QACpD,SAAS,CAAC,gBAAgB,GAAG,UAA6C,GAAG,IAAe;YAC3F,MAAM,MAAM,GAAG,wBAAwB,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;YAClC,MAAM,cAAc,GAAG,MAAM,EAAE,QAAQ,CAAC;YACxC,IAAI,MAAM,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;gBACpD,MAAM,CAAC,QAAQ,GAAG,GAAG,EAAE;oBACtB,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,EAAE,CAAC;oBAC7C,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;wBACzD,IAAI,CAAC,6BAA6B,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;wBACvD,OAAO;oBACR,CAAC;oBACD,cAAc,EAAE,CAAC;gBAClB,CAAC,CAAC;YACH,CAAC;YACD,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;IACH,CAAC;IAED,MAAM,gCAAgC,GAAG,SAAS,CAAC,wBAAwB,CAAC;IAC5E,IAAI,OAAO,gCAAgC,KAAK,UAAU,EAAE,CAAC;QAC5D,SAAS,CAAC,wBAAwB,GAAG,UAEpC,GAAG,IAAe;YAElB,MAAM,OAAO,GAAG,gCAAgC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;YACrE,wEAAwE;YACxE,yEAAyE;YACzE,uEAAuE;YACvE,mEAAmE;YACnE,oEAAoE;YACpE,wEAAwE;YACxE,+BAA+B;YAE/B,iEAAiE;YACjE,iEAAiE;YACjE,wDAAwD;YACxD,EAAE;YACF,wDAAwD;YACxD,2DAA2D;YAC3D,8DAA8D;YAC9D,4DAA4D;YAC5D,kEAAkE;YAClE,2DAA2D;YAC3D,sCAAsC;YACtC,OAAO,CAAC,2BAA2B,GAAG,GAAG,EAAE;gBAC1C,OAAO,CACN,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,IAAI,CAAC,wBAAwB,CAAC,MAAM,GAAG,CAAC,CACxF,CAAC;YACH,CAAC,CAAC;YAEF,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;YACtC,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;gBAC1C,OAAO,CAAC,MAAM,GAAG,CAAC,OAAe,EAAE,IAAmC,EAAE,EAAE;oBACzE,IAAI,IAAI,KAAK,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;wBAChD,cAAiF,CACjF,OAAO,EACP,MAAM,CACN,CAAC;wBACF,OAAO;oBACR,CAAC;oBACA,cAAiF,CACjF,OAAO,EACP,IAAI,CACJ,CAAC;gBACH,CAAC,CAAC;YACH,CAAC;YAED,OAAO,OAAO,CAAC;QAChB,CAAC,CAAC;IACH,CAAC;AACF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gCAAgC;IACrD,MAAM,OAAO,GAAG,UAAqC,CAAC;IACtD,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI;QAAE,OAAO;IAEzC,IAAI,CAAC;QACJ,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;QACtF,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;QAC7C,MAAM,mBAAmB,GAAG,IAAI,CAC/B,WAAW,EACX,MAAM,EACN,OAAO,EACP,aAAa,EACb,qBAAqB,CACrB,CAAC;QACF,MAAM,SAAS,GAAG,aAAa,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC;QAC1D,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,CAEnC,CAAC;QACF,MAAM,SAAS,GAAG,GAAG,CAAC,eAAe,EAAE,SAAS,CAAC;QACjD,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,6BAA6B,CAAC,SAAS,CAAC,CAAC;QACzC,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACR,8DAA8D;IAC/D,CAAC;AACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"interactive-mode-patch.js","sourceRoot":"","sources":["../src/interactive-mode-patch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAiFnD,MAAM,UAAU,GAAG,+CAA+C,CAAC;AAEnE,6DAA6D;AAC7D,MAAM,oBAAoB,GAAG,gCAAgC,CAAC;AAE9D;;;;;;;;GAQG;AACH,SAAS,cAAc,CAAC,OAAe;IACtC,OAAO,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,QAAwC;IAClE,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtF,OAAO,aAAa,GAAG,CAAC,IAAI,aAAa,GAAG,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;GAKG;AACH,MAAM,uBAAuB,GAAG;IAC/B,qBAAqB;IACrB,wCAAwC;IACxC,6BAA6B;IAC7B,yCAAyC;IACzC,+BAA+B;IAC/B,oCAAoC;IACpC,uCAAuC;IACvC,2BAA2B;IAC3B,qCAAqC;IACrC,kCAAkC;IAClC,+BAA+B;IAC/B,6BAA6B;IAC7B,gCAAgC;IAChC,kBAAkB;IAClB,uBAAuB;CACd,CAAC;AAEX,qFAAqF;AACrF,MAAM,+BAA+B,GACpC,oEAAoE,CAAC;AAEtE,qFAAqF;AACrF,MAAM,qCAAqC,GAC1C,gIAAgI,CAAC;AAElI,kFAAkF;AAClF,MAAM,qCAAqC,GAC1C,qIAAqI,CAAC;AAEvI,gFAAgF;AAChF,MAAM,oCAAoC,GAAG,KAAK,CAAC;AAEnD,MAAM,+BAA+B,GAAG,IAAI,GAAG,CAAC;IAC/C,aAAa;IACb,kBAAkB;IAClB,eAAe;IACf,sBAAsB;IACtB,YAAY;CACZ,CAAC,CAAC;AAEH,MAAM,6BAA6B,GAAG,IAAI,OAAO,EAG9C,CAAC;AAIJ,MAAM,oBAAoB,GAAG,IAAI,OAAO,EAAqD,CAAC;AAE9F,MAAM,kCAAkC,GAAG,IAAI,OAAO,EAGnD,CAAC;AAuBJ,MAAM,0BAA0B,GAAG,IAAI,OAAO,EAG3C,CAAC;AAEJ;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,IAAiC;IAC1D,IAAI,KAAK,GAAG,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,KAAK,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;QACtD,0BAA0B,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,yBAAyB,CACvC,IAAiC,EACjC,OAA8D;IAE9D,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,KAAK,CAAC,YAAY;QAAE,OAAO;IAChC,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC;IACjC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC1B,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,YAAY,CAAC,OAA8B;IACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACtD,OAAQ,KAA4B,CAAC,IAAI,KAAK,UAAU,CAAC;IAC1D,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,6BAA6B,CAAC,YAAoB;IAC1D,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QAC3E,OAAO,IAAI,CAAC;IACb,CAAC;IACD,sEAAsE;IACtE,OAAO,2CAA2C,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACvE,CAAC;AAED;;;;;GAKG;AACH,SAAS,4BAA4B,CAAC,OAA8B;IACnE,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;QAC9C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACtD,IAAK,KAA4B,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO,KAAK,CAAC;QAChE,MAAM,IAAI,GAAI,KAA4B,CAAC,IAAI,CAAC;QAChD,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IACH,IAAI,gBAAgB,EAAE,CAAC;QACtB,OAAO,MAAM,CAAC;IACf,CAAC;IACD,MAAM,CAAC,IAAI,CAAC;QACX,IAAI,EAAE,+BAA+B;QACrC,IAAI,EAAE,MAAM;KACZ,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,yBAAyB,CACjC,IAAiC,EACjC,OAAe,EACf,IAAkC;IAElC,MAAM,aAAa,GAAG,IAAI,CAAC,wBAAwB,CAAC;IACpD,IAAI,OAAO,aAAa,KAAK,UAAU;QAAE,OAAO;IAChD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAC/B,IAAI,OAAO,MAAM,KAAK,UAAU;QAAE,OAAO;IACzC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,8BAA8B,CACtC,IAAiC,EACjC,OAA4B;IAE5B,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;IACjD,IAAI,OAAO,iBAAiB,KAAK,UAAU,EAAE,CAAC;QAC7C,OAAO;IACR,CAAC;IAED,KAAK,CAAC,KAAK,IAAI,EAAE;QAChB,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;YACtF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,OAAO,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC;gBAC9B,OAAO;YACR,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;IACF,CAAC,CAAC,EAAE,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAS,+BAA+B,CAAC,IAAiC;IACzE,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC;IACtD,IAAI,CAAC,eAAe,EAAE,CAAC;QACtB,OAAO;IACR,CAAC;IAED,eAAe,CAAC,SAAS,GAAG,CAAC,OAA4B,EAAE,EAAE;QAC5D,IAAI,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC;YAC/B,kCAAkC,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;YAC5D,OAAO;QACR,CAAC;QAED,8BAA8B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,4BAA4B,CAAC,IAAiC;IACtE,MAAM,KAAK,GAAG,6BAA6B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,YAAY,CAAC,KAAK,CAAC,CAAC;IACpB,6BAA6B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;GAKG;AACH,SAAS,0BAA0B,CAAC,IAAiC;IACpE,4BAA4B,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;QAC7B,6BAA6B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3C,yBAAyB,CAAC,IAAI,EAAE,qCAAqC,EAAE,SAAS,CAAC,CAAC;IACnF,CAAC,EAAE,oCAAoC,CAAC,CAAC;IACzC,6BAA6B,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,SAAS,8BAA8B,CAAC,KAA+B;IACtE,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACjD,OAAO,+BAA+B,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED;;;;;GAKG;AACH,SAAS,yBAAyB,CAAC,IAAiC;IACnE,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,SAAS,iCAAiC,CAAC,IAAiC;IAC3E,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;AACrD,CAAC;AAED;;;;;GAKG;AACH,SAAS,yBAAyB,CAAC,IAAiC;IACnE,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,SAAS,8BAA8B,CAAC,IAAiC;IACxE,OAAO,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC;AAED;;;;;GAKG;AACH,SAAS,iCAAiC,CAAC,IAAiC;IAC3E,IAAI,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,mBAAmB,EAAE,CAAC;QAC5D,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,4BAA4B,CAAC,IAAiC;IACtE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,UAAU;QAAE,OAAO;IAEjE,MAAM,YAAY,GAAG,OAAO,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC;IAC3D,MAAM,YAAY,GAAG,OAAO,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC;IAC3D,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEnE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IACpD,MAAM,QAAQ,GAAG,CAAC,GAAG,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC;IAC5C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAElC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,IAAI,OAAO,MAAM,EAAE,OAAO,KAAK,UAAU,IAAI,OAAO,MAAM,EAAE,OAAO,KAAK,UAAU,EAAE,CAAC;QACpF,MAAM,WAAW,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACpD,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClF,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,SAAS,6BAA6B,CAAC,KAA+B;IACrE,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB;QAAE,OAAO,KAAK,CAAC;IACvD,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC3C,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtE,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACjG,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAS,kCAAkC,CAC1C,KAA+B,EAC/B,OAAgC;IAEhC,IAAI,OAAO,EAAE,qBAAqB,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAC3D,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;QAAE,OAAO,KAAK,CAAC;IAC/C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC9B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,KAAK,CAAC;IAC3D,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACjD,IAAI,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC3D,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,YAAY,CAAC;QAAE,OAAO,KAAK,CAAC;IACvE,IAAI,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAEhD,yEAAyE;IACzE,yEAAyE;IACzE,+DAA+D;IAC/D,OAAO;QACN,GAAG,KAAK;QACR,OAAO,EAAE;YACR,GAAG,OAAO;YACV,OAAO,EAAE,4BAA4B,CAAC,OAAO,CAAC,OAAO,CAAC;YACtD,YAAY,EAAE,SAAS;YACvB,UAAU,EAAE,MAAM;SAClB;KACD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,6BAA6B,CAAC,SAAuC;IACpF,IAAI,SAAS,CAAC,iCAAiC;QAAE,OAAO;IACxD,SAAS,CAAC,iCAAiC,GAAG,IAAI,CAAC;IAEnD,MAAM,sBAAsB,GAAG,SAAS,CAAC,cAAc,CAAC;IACxD,IAAI,OAAO,sBAAsB,KAAK,UAAU,EAAE,CAAC;QAClD,SAAS,CAAC,cAAc,GAAG,KAAK,WAE/B,GAAG,IAAe;YAElB,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;YAChE,+BAA+B,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;IACH,CAAC;IAED,MAAM,2BAA2B,GAAG,SAAS,CAAC,mBAAmB,CAAC;IAClE,IAAI,OAAO,2BAA2B,KAAK,UAAU,EAAE,CAAC;QACvD,SAAS,CAAC,mBAAmB,GAAG,KAAK,WAEpC,GAAG,IAAe;YAElB,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;YACrE,+BAA+B,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,SAAS,CAAC,WAAW,CAAC;IAClD,IAAI,OAAO,mBAAmB,KAAK,UAAU,EAAE,CAAC;QAC/C,SAAS,CAAC,WAAW,GAAG,KAAK,WAE5B,KAA+B;YAE/B,IAAI,KAAK,EAAE,IAAI,KAAK,uBAAuB,EAAE,CAAC;gBAC7C,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,yBAAyB,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC;YAED,IAAI,8BAA8B,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3C,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,iCAAiC,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC;YAED,oEAAoE;YACpE,mEAAmE;YACnE,8DAA8D;YAC9D,yDAAyD;YACzD,EAAE;YACF,6DAA6D;YAC7D,8DAA8D;YAC9D,IAAI,KAAK,EAAE,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBACtC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACxC,gDAAgD;gBAChD,MAAM,OAAO,GAAG,kCAAkC,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBACxE,QAAQ,CAAC,YAAY,GAAG,OAAO,CAAC;gBAEhC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;oBAC9B,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;oBAC/B,eAAe,CAAC,KAAK,IAAI,EAAE;wBAC1B,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;wBACrC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC;wBAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC;wBACnC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;wBAC1B,IAAI,OAAO,EAAE,CAAC;4BACb,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;wBAC/C,CAAC;oBACF,CAAC,CAAC,CAAC;gBACJ,CAAC;gBACD,OAAO;YACR,CAAC;YAED,iEAAiE;YACjE,mEAAmE;YACnE,EAAE;YACF,mEAAmE;YACnE,oEAAoE;YACpE,kEAAkE;YAClE,gEAAgE;YAChE,gEAAgE;YAChE,iEAAiE;YACjE,+DAA+D;YAC/D,2DAA2D;YAC3D,8DAA8D;YAC9D,IAAI,KAAK,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;gBACjC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACxC,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC;YAC9B,CAAC;iBAAM,IACN,KAAK,EAAE,IAAI,KAAK,aAAa;gBAC7B,KAAK,EAAE,IAAI,KAAK,sBAAsB;gBACtC,KAAK,EAAE,IAAI,KAAK,oBAAoB,EACnC,CAAC;gBACF,MAAM,yBAAyB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;YAC5D,CAAC;YAED,kFAAkF;YAClF,MAAM,OAAO,GAAG,kCAAkC,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACxE,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAE7D,IAAI,KAAK,EAAE,IAAI,KAAK,qBAAqB,EAAE,CAAC;gBAC3C,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;oBAC9B,iCAAiC,CAAC,IAAI,CAAC,CAAC;oBACxC,0BAA0B,CAAC,IAAI,CAAC,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACP,4BAA4B,CAAC,IAAI,CAAC,CAAC;oBACnC,yBAAyB,CAAC,IAAI,CAAC,CAAC;gBACjC,CAAC;gBACD,IAAI,6BAA6B,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1C,yBAAyB,CAAC,IAAI,EAAE,qCAAqC,EAAE,SAAS,CAAC,CAAC;gBACnF,CAAC;YACF,CAAC;YAED,IAAI,KAAK,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;gBACjC,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;gBAEvC,iEAAiE;gBACjE,8DAA8D;gBAC9D,kEAAkE;gBAClE,kEAAkE;gBAClE,sBAAsB;gBACtB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBAC3B,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC/B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;gBAC9B,CAAC;gBAED,gEAAgE;gBAChE,kEAAkE;gBAClE,kEAAkE;gBAClE,gCAAgC;gBAChC,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC3C,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,EAAE,CAAC;gBACjC,CAAC;gBACD,IAAI,CAAC,0BAA0B,EAAE,EAAE,CAAC;gBAEpC,oEAAoE;gBACpE,oEAAoE;gBACpE,mEAAmE;gBACnE,iEAAiE;gBACjE,mEAAmE;gBACnE,kEAAkE;gBAClE,gDAAgD;gBAChD,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBAEnC,IAAI,CAAC,4BAA4B,EAAE,EAAE,CAAC;gBAEtC,mEAAmE;gBACnE,oEAAoE;gBACpE,kEAAkE;gBAClE,IAAI,CAAC,EAAE,EAAE,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;gBAE/B,MAAM,eAAe,GAAG,kCAAkC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrE,IAAI,eAAe,EAAE,CAAC;oBACrB,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAChD,8BAA8B,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;gBACvD,CAAC;YACF,CAAC;YACD,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;IACH,CAAC;IAED,MAAM,yBAAyB,GAAG,SAAS,CAAC,iBAAiB,CAAC;IAC9D,IAAI,OAAO,yBAAyB,KAAK,UAAU,EAAE,CAAC;QACrD,SAAS,CAAC,iBAAiB,GAAG,KAAK,WAElC,OAAe,EACf,kBAA4B;YAE5B,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC;YACvF,IAAI,CAAC,0BAA0B,EAAE,EAAE,CAAC;YACpC,IAAI,CAAC,4BAA4B,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,EAAE,EAAE,aAAa,EAAE,EAAE,CAAC;YAC3B,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,EAAE;IACF,2EAA2E;IAC3E,2EAA2E;IAC3E,uEAAuE;IACvE,uEAAuE;IACvE,oEAAoE;IACpE,yDAAyD;IACzD,EAAE;IACF,2EAA2E;IAC3E,0EAA0E;IAC1E,MAAM,oBAAoB,GAAG,SAAS,CAAC,YAAY,CAAC;IACpD,IAAI,OAAO,oBAAoB,KAAK,UAAU,EAAE,CAAC;QAChD,SAAS,CAAC,YAAY,GAAG,KAAK;YAC7B,6DAA6D;YAC7D,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC3B,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC/B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC9B,CAAC;YACD,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;YACvC,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3C,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,EAAE,CAAC;YACjC,CAAC;YACD,IAAI,CAAC,EAAE,EAAE,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;YAE/B,OAAO,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC,CAAC;IACH,CAAC;IAED,MAAM,wBAAwB,GAAG,SAAS,CAAC,gBAAgB,CAAC;IAC5D,IAAI,OAAO,wBAAwB,KAAK,UAAU,EAAE,CAAC;QACpD,SAAS,CAAC,gBAAgB,GAAG,UAA6C,GAAG,IAAe;YAC3F,MAAM,MAAM,GAAG,wBAAwB,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;YAClC,MAAM,cAAc,GAAG,MAAM,EAAE,QAAQ,CAAC;YACxC,IAAI,MAAM,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;gBACpD,MAAM,CAAC,QAAQ,GAAG,GAAG,EAAE;oBACtB,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,EAAE,CAAC;oBAC7C,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;wBACzD,IAAI,CAAC,6BAA6B,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;wBACvD,OAAO;oBACR,CAAC;oBACD,cAAc,EAAE,CAAC;gBAClB,CAAC,CAAC;YACH,CAAC;YACD,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;IACH,CAAC;IAED,MAAM,gCAAgC,GAAG,SAAS,CAAC,wBAAwB,CAAC;IAC5E,IAAI,OAAO,gCAAgC,KAAK,UAAU,EAAE,CAAC;QAC5D,SAAS,CAAC,wBAAwB,GAAG,UAEpC,GAAG,IAAe;YAElB,MAAM,OAAO,GAAG,gCAAgC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;YACrE,wEAAwE;YACxE,yEAAyE;YACzE,uEAAuE;YACvE,mEAAmE;YACnE,oEAAoE;YACpE,wEAAwE;YACxE,+BAA+B;YAE/B,iEAAiE;YACjE,iEAAiE;YACjE,wDAAwD;YACxD,EAAE;YACF,wDAAwD;YACxD,2DAA2D;YAC3D,8DAA8D;YAC9D,4DAA4D;YAC5D,kEAAkE;YAClE,2DAA2D;YAC3D,sCAAsC;YACtC,OAAO,CAAC,2BAA2B,GAAG,GAAG,EAAE;gBAC1C,OAAO,CACN,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,IAAI,CAAC,wBAAwB,CAAC,MAAM,GAAG,CAAC,CACxF,CAAC;YACH,CAAC,CAAC;YAEF,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;YACtC,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;gBAC1C,OAAO,CAAC,MAAM,GAAG,CAAC,OAAe,EAAE,IAAmC,EAAE,EAAE;oBACzE,IAAI,IAAI,KAAK,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;wBAChD,cAAiF,CACjF,OAAO,EACP,MAAM,CACN,CAAC;wBACF,OAAO;oBACR,CAAC;oBACA,cAAiF,CACjF,OAAO,EACP,IAAI,CACJ,CAAC;gBACH,CAAC,CAAC;YACH,CAAC;YAED,OAAO,OAAO,CAAC;QAChB,CAAC,CAAC;IACH,CAAC;AACF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gCAAgC;IACrD,MAAM,OAAO,GAAG,UAAqC,CAAC;IACtD,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI;QAAE,OAAO;IAEzC,IAAI,CAAC;QACJ,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;QACtF,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;QAC7C,MAAM,mBAAmB,GAAG,IAAI,CAC/B,WAAW,EACX,MAAM,EACN,OAAO,EACP,aAAa,EACb,qBAAqB,CACrB,CAAC;QACF,MAAM,SAAS,GAAG,aAAa,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC;QAC1D,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,CAEnC,CAAC;QACF,MAAM,SAAS,GAAG,GAAG,CAAC,eAAe,EAAE,SAAS,CAAC;QACjD,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,6BAA6B,CAAC,SAAS,CAAC,CAAC;QACzC,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACR,8DAA8D;IAC/D,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Api, Model } from "@mariozechner/pi-ai";
|
|
2
|
+
interface ModelRegistryLike {
|
|
3
|
+
getAll(): Model<Api>[];
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Correct known stale upstream model metadata without clobbering explicit user overrides.
|
|
7
|
+
*
|
|
8
|
+
* The upstream pi-ai registry currently ships `gpt-5.4` with a 272k context
|
|
9
|
+
* window for the OpenAI and OpenAI Codex providers, while current OpenAI docs
|
|
10
|
+
* advertise a 1M context window. User `models.json` overrides should continue
|
|
11
|
+
* to win, so this patch only rewrites entries that still carry the known stale
|
|
12
|
+
* 272k value.
|
|
13
|
+
*
|
|
14
|
+
* @param modelRegistry - Registry containing built-in and user-overridden models
|
|
15
|
+
* @returns Number of models patched in place
|
|
16
|
+
*/
|
|
17
|
+
export declare function applyKnownModelMetadataOverrides(modelRegistry: ModelRegistryLike): number;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=model-metadata-overrides.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-metadata-overrides.d.ts","sourceRoot":"","sources":["../src/model-metadata-overrides.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAatD,UAAU,iBAAiB;IAC1B,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;CACvB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gCAAgC,CAAC,aAAa,EAAE,iBAAiB,GAAG,MAAM,CAiBzF"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
const KNOWN_CONTEXT_WINDOW_OVERRIDES = {
|
|
2
|
+
openai: {
|
|
3
|
+
"gpt-5.4": 1_000_000,
|
|
4
|
+
},
|
|
5
|
+
"openai-codex": {
|
|
6
|
+
"gpt-5.4": 1_000_000,
|
|
7
|
+
},
|
|
8
|
+
};
|
|
9
|
+
const STALE_CONTEXT_WINDOW = 272_000;
|
|
10
|
+
/**
|
|
11
|
+
* Correct known stale upstream model metadata without clobbering explicit user overrides.
|
|
12
|
+
*
|
|
13
|
+
* The upstream pi-ai registry currently ships `gpt-5.4` with a 272k context
|
|
14
|
+
* window for the OpenAI and OpenAI Codex providers, while current OpenAI docs
|
|
15
|
+
* advertise a 1M context window. User `models.json` overrides should continue
|
|
16
|
+
* to win, so this patch only rewrites entries that still carry the known stale
|
|
17
|
+
* 272k value.
|
|
18
|
+
*
|
|
19
|
+
* @param modelRegistry - Registry containing built-in and user-overridden models
|
|
20
|
+
* @returns Number of models patched in place
|
|
21
|
+
*/
|
|
22
|
+
export function applyKnownModelMetadataOverrides(modelRegistry) {
|
|
23
|
+
let applied = 0;
|
|
24
|
+
for (const model of modelRegistry.getAll()) {
|
|
25
|
+
const providerOverrides = KNOWN_CONTEXT_WINDOW_OVERRIDES[model.provider];
|
|
26
|
+
if (!providerOverrides)
|
|
27
|
+
continue;
|
|
28
|
+
const contextWindow = providerOverrides[model.id];
|
|
29
|
+
if (!contextWindow)
|
|
30
|
+
continue;
|
|
31
|
+
if (model.contextWindow !== STALE_CONTEXT_WINDOW)
|
|
32
|
+
continue;
|
|
33
|
+
model.contextWindow = contextWindow;
|
|
34
|
+
applied += 1;
|
|
35
|
+
}
|
|
36
|
+
return applied;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=model-metadata-overrides.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-metadata-overrides.js","sourceRoot":"","sources":["../src/model-metadata-overrides.ts"],"names":[],"mappings":"AAEA,MAAM,8BAA8B,GAAG;IACtC,MAAM,EAAE;QACP,SAAS,EAAE,SAAS;KACpB;IACD,cAAc,EAAE;QACf,SAAS,EAAE,SAAS;KACpB;CACQ,CAAC;AAEX,MAAM,oBAAoB,GAAG,OAAO,CAAC;AAMrC;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gCAAgC,CAAC,aAAgC;IAChF,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC;QAC5C,MAAM,iBAAiB,GACtB,8BAA8B,CAAC,KAAK,CAAC,QAAuD,CAAC,CAAC;QAC/F,IAAI,CAAC,iBAAiB;YAAE,SAAS;QAEjC,MAAM,aAAa,GAAG,iBAAiB,CAAC,KAAK,CAAC,EAAoC,CAAC,CAAC;QACpF,IAAI,CAAC,aAAa;YAAE,SAAS;QAC7B,IAAI,KAAK,CAAC,aAAa,KAAK,oBAAoB;YAAE,SAAS;QAE3D,KAAK,CAAC,aAAa,GAAG,aAAa,CAAC;QACpC,OAAO,IAAI,CAAC,CAAC;IACd,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC"}
|
package/dist/pid-manager.d.ts
CHANGED
|
@@ -8,16 +8,9 @@
|
|
|
8
8
|
* Legacy global state in `~/.tallow/run/pids.json` is migrated lazily on
|
|
9
9
|
* startup so existing installations continue to work.
|
|
10
10
|
*/
|
|
11
|
+
import { type PidEntry } from "./pid-schema.js";
|
|
11
12
|
import type { RuntimePathProvider } from "./runtime-path-provider.js";
|
|
12
|
-
|
|
13
|
-
export interface PidEntry {
|
|
14
|
-
pid: number;
|
|
15
|
-
command: string;
|
|
16
|
-
ownerPid?: number;
|
|
17
|
-
ownerStartedAt?: string;
|
|
18
|
-
processStartedAt?: string;
|
|
19
|
-
startedAt: number;
|
|
20
|
-
}
|
|
13
|
+
export type { PidEntry };
|
|
21
14
|
/**
|
|
22
15
|
* Override PID-manager runtime paths for tests.
|
|
23
16
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pid-manager.d.ts","sourceRoot":"","sources":["../src/pid-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAaH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"pid-manager.d.ts","sourceRoot":"","sources":["../src/pid-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAaH,OAAO,EAGN,KAAK,QAAQ,EAIb,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAItE,YAAY,EAAE,QAAQ,EAAE,CAAC;AAazB;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAAC,QAAQ,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAEtF;AA6UD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAkC1C;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CA2B9C"}
|
package/dist/pid-manager.js
CHANGED
|
@@ -12,6 +12,7 @@ import { spawnSync } from "node:child_process";
|
|
|
12
12
|
import { existsSync, mkdirSync, readdirSync, readFileSync, unlinkSync, writeFileSync, } from "node:fs";
|
|
13
13
|
import { dirname, join } from "node:path";
|
|
14
14
|
import { getRuntimePathProvider } from "./config.js";
|
|
15
|
+
import { isPidEntry, isSessionOwner, toOwnerKey, } from "./pid-schema.js";
|
|
15
16
|
// ─── Runtime path helpers ───────────────────────────────────────────────────
|
|
16
17
|
/** Runtime path provider used by PID manager lookups. */
|
|
17
18
|
let pidManagerPathProvider = getRuntimePathProvider();
|
|
@@ -41,50 +42,6 @@ function getSessionPidDirPath() {
|
|
|
41
42
|
return pidManagerPathProvider.getSessionPidDir();
|
|
42
43
|
}
|
|
43
44
|
// ─── Validation ──────────────────────────────────────────────────────────────
|
|
44
|
-
/**
|
|
45
|
-
* Check whether a value matches the PID entry schema.
|
|
46
|
-
*
|
|
47
|
-
* @param value - Unknown JSON value to validate
|
|
48
|
-
* @returns True when the value is a supported PID entry
|
|
49
|
-
*/
|
|
50
|
-
function isPidEntry(value) {
|
|
51
|
-
if (!value || typeof value !== "object")
|
|
52
|
-
return false;
|
|
53
|
-
const candidate = value;
|
|
54
|
-
if (typeof candidate.pid !== "number")
|
|
55
|
-
return false;
|
|
56
|
-
if (typeof candidate.command !== "string")
|
|
57
|
-
return false;
|
|
58
|
-
if (typeof candidate.startedAt !== "number")
|
|
59
|
-
return false;
|
|
60
|
-
if (candidate.ownerPid != null && typeof candidate.ownerPid !== "number") {
|
|
61
|
-
return false;
|
|
62
|
-
}
|
|
63
|
-
if (candidate.ownerStartedAt != null && typeof candidate.ownerStartedAt !== "string") {
|
|
64
|
-
return false;
|
|
65
|
-
}
|
|
66
|
-
if (candidate.processStartedAt != null && typeof candidate.processStartedAt !== "string") {
|
|
67
|
-
return false;
|
|
68
|
-
}
|
|
69
|
-
return true;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Check whether a value matches the session-owner schema.
|
|
73
|
-
*
|
|
74
|
-
* @param value - Unknown JSON value to validate
|
|
75
|
-
* @returns True when the value is a valid session owner
|
|
76
|
-
*/
|
|
77
|
-
function isSessionOwner(value) {
|
|
78
|
-
if (!value || typeof value !== "object")
|
|
79
|
-
return false;
|
|
80
|
-
const candidate = value;
|
|
81
|
-
if (typeof candidate.pid !== "number")
|
|
82
|
-
return false;
|
|
83
|
-
if (candidate.startedAt != null && typeof candidate.startedAt !== "string") {
|
|
84
|
-
return false;
|
|
85
|
-
}
|
|
86
|
-
return true;
|
|
87
|
-
}
|
|
88
45
|
/**
|
|
89
46
|
* Validate and normalize raw legacy PID file JSON.
|
|
90
47
|
*
|
|
@@ -127,20 +84,6 @@ function normalizeSessionPidFile(value) {
|
|
|
127
84
|
};
|
|
128
85
|
}
|
|
129
86
|
// ─── Path helpers ────────────────────────────────────────────────────────────
|
|
130
|
-
/**
|
|
131
|
-
* Convert owner metadata into a filesystem-safe key.
|
|
132
|
-
*
|
|
133
|
-
* @param owner - Session owner identity
|
|
134
|
-
* @returns Filename-safe owner key
|
|
135
|
-
*/
|
|
136
|
-
function toOwnerKey(owner) {
|
|
137
|
-
const startedAtSlug = (owner.startedAt ?? "unknown")
|
|
138
|
-
.replace(/[^A-Za-z0-9._-]+/g, "-")
|
|
139
|
-
.replace(/-+/g, "-")
|
|
140
|
-
.replace(/^-+|-+$/g, "");
|
|
141
|
-
const normalizedStartedAt = startedAtSlug.length > 0 ? startedAtSlug : "unknown";
|
|
142
|
-
return `${owner.pid}-${normalizedStartedAt}`;
|
|
143
|
-
}
|
|
144
87
|
/**
|
|
145
88
|
* Resolve a session PID file path for a given owner.
|
|
146
89
|
*
|
package/dist/pid-manager.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pid-manager.js","sourceRoot":"","sources":["../src/pid-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EACN,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,UAAU,EACV,aAAa,GACb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"pid-manager.js","sourceRoot":"","sources":["../src/pid-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared PID schema types and validators.
|
|
3
|
+
*
|
|
4
|
+
* Used by both `src/pid-manager.ts` (startup orphan cleanup) and
|
|
5
|
+
* `extensions/_shared/pid-registry.ts` (extension-facing registration).
|
|
6
|
+
* Centralises the on-disk format so both consumers stay in sync.
|
|
7
|
+
*/
|
|
8
|
+
/** A single tracked child process entry. */
|
|
9
|
+
export interface PidEntry {
|
|
10
|
+
pid: number;
|
|
11
|
+
command: string;
|
|
12
|
+
ownerPid?: number;
|
|
13
|
+
ownerStartedAt?: string;
|
|
14
|
+
processStartedAt?: string;
|
|
15
|
+
startedAt: number;
|
|
16
|
+
}
|
|
17
|
+
/** Owner identity for a session-scoped PID file. */
|
|
18
|
+
export interface SessionOwner {
|
|
19
|
+
pid: number;
|
|
20
|
+
startedAt?: string;
|
|
21
|
+
}
|
|
22
|
+
/** Session-scoped PID file schema (version 2). */
|
|
23
|
+
export interface SessionPidFile {
|
|
24
|
+
version: 2;
|
|
25
|
+
owner: SessionOwner;
|
|
26
|
+
entries: PidEntry[];
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Check whether a value matches the PID entry schema.
|
|
30
|
+
*
|
|
31
|
+
* Supports legacy entries without owner/process identity metadata.
|
|
32
|
+
*
|
|
33
|
+
* @param value - Unknown JSON value to validate
|
|
34
|
+
* @returns True when the value is a supported PID entry
|
|
35
|
+
*/
|
|
36
|
+
export declare function isPidEntry(value: unknown): value is PidEntry;
|
|
37
|
+
/**
|
|
38
|
+
* Check whether a value matches the session-owner schema.
|
|
39
|
+
*
|
|
40
|
+
* @param value - Unknown JSON value to validate
|
|
41
|
+
* @returns True when the value is a valid session owner
|
|
42
|
+
*/
|
|
43
|
+
export declare function isSessionOwner(value: unknown): value is SessionOwner;
|
|
44
|
+
/**
|
|
45
|
+
* Convert owner metadata into a filesystem-safe key.
|
|
46
|
+
*
|
|
47
|
+
* @param owner - Session owner identity
|
|
48
|
+
* @returns Filename-safe owner key
|
|
49
|
+
*/
|
|
50
|
+
export declare function toOwnerKey(owner: SessionOwner): string;
|
|
51
|
+
//# sourceMappingURL=pid-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pid-schema.d.ts","sourceRoot":"","sources":["../src/pid-schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,4CAA4C;AAC5C,MAAM,WAAW,QAAQ;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,oDAAoD;AACpD,MAAM,WAAW,YAAY;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,kDAAkD;AAClD,MAAM,WAAW,cAAc;IAC9B,OAAO,EAAE,CAAC,CAAC;IACX,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,QAAQ,EAAE,CAAC;CACpB;AAID;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,QAAQ,CAgB5D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAQpE;AAID;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAOtD"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared PID schema types and validators.
|
|
3
|
+
*
|
|
4
|
+
* Used by both `src/pid-manager.ts` (startup orphan cleanup) and
|
|
5
|
+
* `extensions/_shared/pid-registry.ts` (extension-facing registration).
|
|
6
|
+
* Centralises the on-disk format so both consumers stay in sync.
|
|
7
|
+
*/
|
|
8
|
+
// ─── Validation ──────────────────────────────────────────────────────────────
|
|
9
|
+
/**
|
|
10
|
+
* Check whether a value matches the PID entry schema.
|
|
11
|
+
*
|
|
12
|
+
* Supports legacy entries without owner/process identity metadata.
|
|
13
|
+
*
|
|
14
|
+
* @param value - Unknown JSON value to validate
|
|
15
|
+
* @returns True when the value is a supported PID entry
|
|
16
|
+
*/
|
|
17
|
+
export function isPidEntry(value) {
|
|
18
|
+
if (!value || typeof value !== "object")
|
|
19
|
+
return false;
|
|
20
|
+
const candidate = value;
|
|
21
|
+
if (typeof candidate.pid !== "number")
|
|
22
|
+
return false;
|
|
23
|
+
if (typeof candidate.command !== "string")
|
|
24
|
+
return false;
|
|
25
|
+
if (typeof candidate.startedAt !== "number")
|
|
26
|
+
return false;
|
|
27
|
+
if (candidate.ownerPid != null && typeof candidate.ownerPid !== "number") {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
if (candidate.ownerStartedAt != null && typeof candidate.ownerStartedAt !== "string") {
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
if (candidate.processStartedAt != null && typeof candidate.processStartedAt !== "string") {
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Check whether a value matches the session-owner schema.
|
|
40
|
+
*
|
|
41
|
+
* @param value - Unknown JSON value to validate
|
|
42
|
+
* @returns True when the value is a valid session owner
|
|
43
|
+
*/
|
|
44
|
+
export function isSessionOwner(value) {
|
|
45
|
+
if (!value || typeof value !== "object")
|
|
46
|
+
return false;
|
|
47
|
+
const candidate = value;
|
|
48
|
+
if (typeof candidate.pid !== "number")
|
|
49
|
+
return false;
|
|
50
|
+
if (candidate.startedAt != null && typeof candidate.startedAt !== "string") {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
// ─── Path helpers ────────────────────────────────────────────────────────────
|
|
56
|
+
/**
|
|
57
|
+
* Convert owner metadata into a filesystem-safe key.
|
|
58
|
+
*
|
|
59
|
+
* @param owner - Session owner identity
|
|
60
|
+
* @returns Filename-safe owner key
|
|
61
|
+
*/
|
|
62
|
+
export function toOwnerKey(owner) {
|
|
63
|
+
const startedAtSlug = (owner.startedAt ?? "unknown")
|
|
64
|
+
.replace(/[^A-Za-z0-9._-]+/g, "-")
|
|
65
|
+
.replace(/-+/g, "-")
|
|
66
|
+
.replace(/^-+|-+$/g, "");
|
|
67
|
+
const normalizedStartedAt = startedAtSlug.length > 0 ? startedAtSlug : "unknown";
|
|
68
|
+
return `${owner.pid}-${normalizedStartedAt}`;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=pid-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pid-schema.js","sourceRoot":"","sources":["../src/pid-schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA2BH,gFAAgF;AAEhF;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,KAAc;IACxC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,SAAS,GAAG,KAAgC,CAAC;IACnD,IAAI,OAAO,SAAS,CAAC,GAAG,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACpD,IAAI,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC1D,IAAI,SAAS,CAAC,QAAQ,IAAI,IAAI,IAAI,OAAO,SAAS,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1E,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,SAAS,CAAC,cAAc,IAAI,IAAI,IAAI,OAAO,SAAS,CAAC,cAAc,KAAK,QAAQ,EAAE,CAAC;QACtF,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,SAAS,CAAC,gBAAgB,IAAI,IAAI,IAAI,OAAO,SAAS,CAAC,gBAAgB,KAAK,QAAQ,EAAE,CAAC;QAC1F,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc;IAC5C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,SAAS,GAAG,KAAgC,CAAC;IACnD,IAAI,OAAO,SAAS,CAAC,GAAG,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACpD,IAAI,SAAS,CAAC,SAAS,IAAI,IAAI,IAAI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC5E,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,gFAAgF;AAEhF;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,KAAmB;IAC7C,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,SAAS,CAAC;SAClD,OAAO,CAAC,mBAAmB,EAAE,GAAG,CAAC;SACjC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC1B,MAAM,mBAAmB,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IACjF,OAAO,GAAG,KAAK,CAAC,GAAG,IAAI,mBAAmB,EAAE,CAAC;AAC9C,CAAC"}
|