@symerian/symi 3.3.2 → 3.3.4
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/{agent-BED0HDsS.js → agent-9zPi5Bip.js} +1 -1
- package/dist/{agent-pDOR_idq.js → agent-M9EC02CI.js} +1 -1
- package/dist/{agents-mZX2a3hp.js → agents-CW9uf_n0.js} +2 -2
- package/dist/{auth-choice-BgCnInKE.js → auth-choice-Bio1-QUP.js} +1 -1
- package/dist/{auth-choice-nKtOJ3wF.js → auth-choice-DS5oaUTz.js} +1 -1
- package/dist/{banner-C2jUZyMq.js → banner-0vT1O9w2.js} +1 -1
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +4 -4
- package/dist/bundled/session-memory/handler.js +4 -4
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-options-DBKd8H2k.js → channel-options-CcGtiy0Q.js} +1 -1
- package/dist/{channel-options-DRzIcaL1.js → channel-options-DZ17japQ.js} +1 -1
- package/dist/{channels-cli-CxUB3oX1.js → channels-cli-BSvEpjOV.js} +7 -7
- package/dist/{channels-cli-CdfROBlW.js → channels-cli-DxSXTCCh.js} +7 -7
- package/dist/{chrome-CejiigNy.js → chrome-C9mX2mtt.js} +7 -7
- package/dist/{chrome-b556dOQ6.js → chrome-CQnRgvJz.js} +7 -7
- package/dist/{cli-CzEP9cIM.js → cli-CHk4wR-F.js} +4 -4
- package/dist/{cli-DWcoPSRG.js → cli-Dn9ylBb2.js} +4 -4
- package/dist/{command-registry-5O5dCHsD.js → command-registry-UxY6jjeo.js} +10 -10
- package/dist/{completion-cli-D4wYjxBG.js → completion-cli-DebZ6nSb.js} +1 -1
- package/dist/{completion-cli-DqrFJhG4.js → completion-cli-m9L2Gv9t.js} +2 -2
- package/dist/{config-cli-BE2vvf40.js → config-cli-D4_gO3Pd.js} +1 -1
- package/dist/{config-cli-CfA5xnD-.js → config-cli-D9YdRiN2.js} +1 -1
- package/dist/{configure-CPY4n9mx.js → configure-BXjJQG1p.js} +2 -2
- package/dist/{configure-DYDsHAWF.js → configure-D9NeIMjP.js} +2 -2
- package/dist/control-ui/css/style.css +0 -100
- package/dist/control-ui/index.html +0 -13
- package/dist/control-ui/js/app.js +7 -104
- package/dist/control-ui/js/render.js +0 -5
- package/dist/{deliver-i5knkyHl.js → deliver-DSMNXd9k.js} +4 -4
- package/dist/{deliver-BY0HHHHB.js → deliver-DSv-Z24A.js} +4 -4
- package/dist/{doctor-completion-DkwAZ_yS.js → doctor-completion--AgLv0kV.js} +1 -1
- package/dist/{doctor-completion-C6M7eRb_.js → doctor-completion-D1ImH_eM.js} +1 -1
- package/dist/entry.js +1 -1
- package/dist/extensionAPI.js +4 -4
- package/dist/{gateway-cli-Dm5RZoKM.js → gateway-cli-5KVJJGFm.js} +10 -10
- package/dist/{gateway-cli-K_XVNWQc.js → gateway-cli-BjGvnfU3.js} +10 -10
- package/dist/{glass-ui-ws-BbsrTxei.js → glass-ui-ws-CwJdwqn6.js} +8 -8
- package/dist/{glass-ui-ws-B_7JgOGU.js → glass-ui-ws-f_OPXcN2.js} +8 -8
- package/dist/{hooks-cli-D5S_h70_.js → hooks-cli-BfVq5C1p.js} +5 -5
- package/dist/{hooks-cli-DyiztpNG.js → hooks-cli-CQ6rF_LQ.js} +5 -5
- package/dist/index.js +8 -8
- package/dist/llm-slug-generator.js +4 -4
- package/dist/{manager-TrK63P2M.js → manager-BI8o6AGu.js} +1 -1
- package/dist/{manager-BTtaJXdu.js → manager-BQ5Wl5r-.js} +1 -1
- package/dist/{manager-ue49bRVP.js → manager-BUS2wGkQ.js} +1 -1
- package/dist/{manager-BT2SbOdg.js → manager-D_AVoLu8.js} +1 -1
- package/dist/{memory-Czxk_hJw.js → memory-2OKjMT7V.js} +2 -2
- package/dist/{memory-DJN1Q1jq.js → memory-CMKSFx1T.js} +2 -2
- package/dist/{memory-cli-B-nQp5HP.js → memory-cli-CmPcKzGZ.js} +2 -2
- package/dist/{memory-cli-C9ZqpaaB.js → memory-cli-rdfaJrCS.js} +2 -2
- package/dist/{models-oqT-RVMM.js → models-DRtgYyTB.js} +2 -2
- package/dist/{models-cli-D8rsqzuW.js → models-cli-183sPHZO.js} +5 -5
- package/dist/{models-cli-CuHQFbs7.js → models-cli-DN2zTFw9.js} +6 -6
- package/dist/{onboard-BICXrIV1.js → onboard-CPHA8CdV.js} +1 -1
- package/dist/{onboard-D-xPcbdk.js → onboard-bTgNnEHK.js} +1 -1
- package/dist/{onboard-channels-CiLPgwMl.js → onboard-channels-B_iyN1qL.js} +1 -1
- package/dist/{onboard-channels-IZ52XV8A.js → onboard-channels-D5ugcgBE.js} +1 -1
- package/dist/{onboarding-BmB9v20h.js → onboarding-D2SLzcWH.js} +3 -3
- package/dist/{onboarding-B-jxZvC2.js → onboarding-ii3ok0Ih.js} +3 -3
- package/dist/{onboarding.finalize-BejpUEVe.js → onboarding.finalize-DOHv_Xe8.js} +3 -3
- package/dist/{onboarding.finalize-DufFKTf4.js → onboarding.finalize-g-_d-wVY.js} +4 -4
- package/dist/{pi-embedded-DoWU3tbW.js → pi-embedded-CvGL6bij.js} +36 -36
- package/dist/{plugin-registry-BybhOEu2.js → plugin-registry-DSG-0min.js} +1 -1
- package/dist/{plugin-registry-CFRFz2CF.js → plugin-registry-Dl3HqI5J.js} +1 -1
- package/dist/plugin-sdk/agents/{symipulse-timeout.d.ts → idle-timeout.d.ts} +3 -3
- package/dist/plugin-sdk/index.js +6 -6
- package/dist/{plugins-cli-D9jv4SGt.js → plugins-cli-CEj-qNus.js} +5 -5
- package/dist/{plugins-cli-Dw_F4XTt.js → plugins-cli-CUTyMzoz.js} +5 -5
- package/dist/{program-BijlJds3.js → program-CjZ65fN4.js} +10 -10
- package/dist/{program-context-f_krhr6H.js → program-context-GaV454D6.js} +18 -18
- package/dist/{prompt-select-styled-D4Dl6PAx.js → prompt-select-styled-BkowcFQR.js} +4 -4
- package/dist/{prompt-select-styled-wUs9hOXT.js → prompt-select-styled-CwXc8EFB.js} +4 -4
- package/dist/{provider-auth-helpers-Dqg9CSy6.js → provider-auth-helpers-Bo1_RSEb.js} +1 -1
- package/dist/{provider-auth-helpers-B0LgxUJm.js → provider-auth-helpers-CRobCJR_.js} +1 -1
- package/dist/{push-apns-DBG95KxK.js → push-apns-BBym2pAw.js} +1 -1
- package/dist/{push-apns-C8U43QIp.js → push-apns-Bv16DYOL.js} +1 -1
- package/dist/{pw-ai-BFZrohva.js → pw-ai-B3qisJP1.js} +1 -1
- package/dist/{pw-ai-BHSw4eGG.js → pw-ai-GICi0s74.js} +1 -1
- package/dist/{register.agent-BQa36aBT.js → register.agent-QXqsCc-q.js} +9 -9
- package/dist/{register.agent-B0UZREcL.js → register.agent-z4GJgPr-.js} +8 -8
- package/dist/{register.configure-DXxKMVFv.js → register.configure-CYXErdjF.js} +8 -8
- package/dist/{register.configure-C2da871z.js → register.configure-DaMmDTaj.js} +8 -8
- package/dist/{register.maintenance-DUuHNER1.js → register.maintenance-CBGhJ5R9.js} +9 -9
- package/dist/{register.maintenance-CU2sJOVr.js → register.maintenance-CcWTycM4.js} +8 -8
- package/dist/{register.message-DIDXm7JJ.js → register.message-Bcvdcd3v.js} +5 -5
- package/dist/{register.message-zAQ9mzwS.js → register.message-EMkIi8Ga.js} +5 -5
- package/dist/{register.onboard-BQrBlJMk.js → register.onboard-CtcLKgR4.js} +2 -2
- package/dist/{register.onboard-xApCQkav.js → register.onboard-lmLaYYZl.js} +2 -2
- package/dist/{register.setup-CfJlyVIU.js → register.setup-Cu8R_HaH.js} +2 -2
- package/dist/{register.setup-C3DgnQee.js → register.setup-D47FYXH2.js} +2 -2
- package/dist/{register.status-health-sessions-D7eQHV4A.js → register.status-health-sessions--q6ddHX9.js} +3 -3
- package/dist/{register.status-health-sessions-CZKtQH3R.js → register.status-health-sessions-B9CINBWm.js} +3 -3
- package/dist/{register.subclis-DBKLQ-vk.js → register.subclis-CHTY5PYx.js} +9 -9
- package/dist/{run-main-C_9MD69x.js → run-main-Bzub4qvZ.js} +17 -17
- package/dist/{server-methods-B4kcazJq.js → server-methods-C2UnIkWU.js} +6 -6
- package/dist/{server-methods-BLH71I9g.js → server-methods-THO5vDXZ.js} +6 -6
- package/dist/{server-node-events-DO4ug_A0.js → server-node-events-j4AWHS1m.js} +6 -6
- package/dist/{server-node-events-BercSdmp.js → server-node-events-mBi614x_.js} +6 -6
- package/dist/{status-uVc7h7PN.js → status-BtAHzMLu.js} +1 -1
- package/dist/{status-DA_sl7Yp.js → status-BuHx0FXI.js} +1 -1
- package/dist/{status-BdrH4P1l.js → status-FKqnkO3K.js} +1 -1
- package/dist/{status-3CIcz22o.js → status-MkJRgsTJ.js} +1 -1
- package/dist/{subagent-registry-CgZDo35C.js → subagent-registry-B1RgR3-0.js} +29 -29
- package/dist/{synthesis-DmdaBp-J.js → synthesis-BEaISjwW.js} +4 -4
- package/dist/{synthesis-DwfzSD3_.js → synthesis-BSUjIY0v.js} +4 -4
- package/dist/{synthesis-w1oM0_-6.js → synthesis-BtlmxJ7w.js} +4 -4
- package/dist/{synthesis-B_K7BSX3.js → synthesis-DsYfiC2s.js} +4 -4
- package/dist/{unified-runner-BPgxfuKU.js → unified-runner-BPyxPZv9.js} +36 -36
- package/dist/{unified-runner-DzycRpag.js → unified-runner-Bn9vq7Zy.js} +29 -29
- package/dist/{update-cli-C4I2k2u9.js → update-cli-BXtHo0ox.js} +9 -9
- package/dist/{update-cli-DYYKfrbM.js → update-cli-DLx7LNVB.js} +8 -8
- package/package.json +1 -1
- package/dist/control-ui/js/symipulse.js +0 -154
|
@@ -5484,106 +5484,6 @@ body {
|
|
|
5484
5484
|
padding: 2px 0 0;
|
|
5485
5485
|
}
|
|
5486
5486
|
|
|
5487
|
-
/* ── Symipulse Panel ────────────────────────────────────────────── */
|
|
5488
|
-
.symipulse-panel {
|
|
5489
|
-
cursor: pointer;
|
|
5490
|
-
transition:
|
|
5491
|
-
max-height 0.3s ease,
|
|
5492
|
-
border-color 0.3s;
|
|
5493
|
-
}
|
|
5494
|
-
|
|
5495
|
-
.symipulse-feed {
|
|
5496
|
-
max-height: 3.2em;
|
|
5497
|
-
overflow: hidden;
|
|
5498
|
-
transition: max-height 0.3s ease;
|
|
5499
|
-
font-size: 11px;
|
|
5500
|
-
line-height: 1.5;
|
|
5501
|
-
color: var(--text-dim);
|
|
5502
|
-
font-family: var(--font-mono);
|
|
5503
|
-
}
|
|
5504
|
-
|
|
5505
|
-
.symipulse-panel.expanded .symipulse-feed {
|
|
5506
|
-
max-height: 300px;
|
|
5507
|
-
overflow-y: auto;
|
|
5508
|
-
scrollbar-width: thin;
|
|
5509
|
-
scrollbar-color: rgba(0, 212, 255, 0.2) transparent;
|
|
5510
|
-
}
|
|
5511
|
-
.symipulse-panel.expanded .symipulse-feed::-webkit-scrollbar {
|
|
5512
|
-
width: 3px;
|
|
5513
|
-
}
|
|
5514
|
-
.symipulse-panel.expanded .symipulse-feed::-webkit-scrollbar-track {
|
|
5515
|
-
background: transparent;
|
|
5516
|
-
}
|
|
5517
|
-
.symipulse-panel.expanded .symipulse-feed::-webkit-scrollbar-thumb {
|
|
5518
|
-
background: rgba(0, 212, 255, 0.2);
|
|
5519
|
-
border-radius: 2px;
|
|
5520
|
-
}
|
|
5521
|
-
|
|
5522
|
-
.symipulse-entry {
|
|
5523
|
-
padding: 3px 0;
|
|
5524
|
-
border-bottom: 1px solid rgba(255, 255, 255, 0.04);
|
|
5525
|
-
white-space: nowrap;
|
|
5526
|
-
overflow: hidden;
|
|
5527
|
-
text-overflow: ellipsis;
|
|
5528
|
-
display: flex;
|
|
5529
|
-
align-items: baseline;
|
|
5530
|
-
gap: 6px;
|
|
5531
|
-
}
|
|
5532
|
-
.symipulse-entry:last-child {
|
|
5533
|
-
border-bottom: none;
|
|
5534
|
-
}
|
|
5535
|
-
|
|
5536
|
-
.symipulse-entry-time {
|
|
5537
|
-
color: var(--text-muted);
|
|
5538
|
-
font-size: 10px;
|
|
5539
|
-
flex-shrink: 0;
|
|
5540
|
-
}
|
|
5541
|
-
|
|
5542
|
-
.symipulse-entry-text {
|
|
5543
|
-
overflow: hidden;
|
|
5544
|
-
text-overflow: ellipsis;
|
|
5545
|
-
white-space: nowrap;
|
|
5546
|
-
color: var(--text-dim);
|
|
5547
|
-
}
|
|
5548
|
-
|
|
5549
|
-
.symipulse-panel.expanded .symipulse-entry {
|
|
5550
|
-
white-space: normal;
|
|
5551
|
-
word-break: break-word;
|
|
5552
|
-
}
|
|
5553
|
-
.symipulse-panel.expanded .symipulse-entry-text {
|
|
5554
|
-
white-space: normal;
|
|
5555
|
-
overflow: visible;
|
|
5556
|
-
}
|
|
5557
|
-
|
|
5558
|
-
.symipulse-live-dot {
|
|
5559
|
-
display: inline-block;
|
|
5560
|
-
width: 6px;
|
|
5561
|
-
height: 6px;
|
|
5562
|
-
border-radius: 50%;
|
|
5563
|
-
background: var(--accent-green);
|
|
5564
|
-
margin-left: 6px;
|
|
5565
|
-
vertical-align: middle;
|
|
5566
|
-
opacity: 0;
|
|
5567
|
-
transition: opacity 0.3s ease;
|
|
5568
|
-
}
|
|
5569
|
-
.symipulse-live-dot.active {
|
|
5570
|
-
opacity: 1;
|
|
5571
|
-
animation: pulse 1.2s ease-in-out infinite;
|
|
5572
|
-
}
|
|
5573
|
-
|
|
5574
|
-
.symipulse-empty {
|
|
5575
|
-
display: flex;
|
|
5576
|
-
align-items: center;
|
|
5577
|
-
justify-content: center;
|
|
5578
|
-
padding: 10px 0;
|
|
5579
|
-
color: var(--text-dim);
|
|
5580
|
-
}
|
|
5581
|
-
.symipulse-empty-text {
|
|
5582
|
-
font-size: 11px;
|
|
5583
|
-
font-family: var(--font-mono);
|
|
5584
|
-
opacity: 0.5;
|
|
5585
|
-
}
|
|
5586
|
-
|
|
5587
5487
|
/* ── Lazy-load sentinel ──────────────────────────────────────────── */
|
|
5588
5488
|
.load-more-sentinel {
|
|
5589
5489
|
text-align: center;
|
|
@@ -325,18 +325,6 @@
|
|
|
325
325
|
<div class="debug-entries" id="debug-panel-entries"></div>
|
|
326
326
|
</div>
|
|
327
327
|
|
|
328
|
-
<!-- Symipulse Panel -->
|
|
329
|
-
<div class="glass-panel symipulse-panel" id="symipulse-panel">
|
|
330
|
-
<div class="panel-label">
|
|
331
|
-
SYMIPULSE
|
|
332
|
-
<span class="symipulse-live-dot" id="symipulse-live-dot"></span>
|
|
333
|
-
</div>
|
|
334
|
-
<div class="symipulse-feed" id="symipulse-feed">
|
|
335
|
-
<div class="symipulse-empty" id="symipulse-empty">
|
|
336
|
-
<div class="symipulse-empty-text">No heartbeats yet</div>
|
|
337
|
-
</div>
|
|
338
|
-
</div>
|
|
339
|
-
</div>
|
|
340
328
|
</aside>
|
|
341
329
|
|
|
342
330
|
<!-- Response waterfall area -->
|
|
@@ -1049,7 +1037,6 @@
|
|
|
1049
1037
|
<script src="js/metrics.js"></script>
|
|
1050
1038
|
<script src="js/gateway.js"></script>
|
|
1051
1039
|
<script src="js/render.js"></script>
|
|
1052
|
-
<script src="js/symipulse.js"></script>
|
|
1053
1040
|
<script src="js/app.js"></script>
|
|
1054
1041
|
<script src="js/settings.js"></script>
|
|
1055
1042
|
<script src="js/menu.js"></script>
|
|
@@ -378,13 +378,10 @@ function renderHistory(messages) {
|
|
|
378
378
|
feedCache.save(messages);
|
|
379
379
|
}
|
|
380
380
|
|
|
381
|
-
// Clear reasoning
|
|
381
|
+
// Clear reasoning panel in sync with the feed — prevents double-entries on reconnect
|
|
382
382
|
if (typeof window.clearReasoningPanel === "function") {
|
|
383
383
|
window.clearReasoningPanel();
|
|
384
384
|
}
|
|
385
|
-
if (typeof window.clearSymipulsePanel === "function") {
|
|
386
|
-
window.clearSymipulsePanel();
|
|
387
|
-
}
|
|
388
385
|
responseArea.innerHTML = "";
|
|
389
386
|
responseArea.prepend(loadMoreSentinel);
|
|
390
387
|
for (const m of messages) {
|
|
@@ -414,21 +411,6 @@ function renderHistory(messages) {
|
|
|
414
411
|
continue;
|
|
415
412
|
}
|
|
416
413
|
|
|
417
|
-
// Route symipulse messages to dedicated Symipulse Panel
|
|
418
|
-
if (typeof window.isSymipulseMessage === "function" && window.isSymipulseMessage(m)) {
|
|
419
|
-
const txt = Array.isArray(m.content)
|
|
420
|
-
? m.content
|
|
421
|
-
.filter((b) => b.type === "text")
|
|
422
|
-
.map((b) => b.text ?? "")
|
|
423
|
-
.join("")
|
|
424
|
-
.trim()
|
|
425
|
-
: extractText(m.content).trim();
|
|
426
|
-
if (txt && typeof window.appendToSymipulsePanel === "function") {
|
|
427
|
-
window.appendToSymipulsePanel(txt, m.timestamp);
|
|
428
|
-
}
|
|
429
|
-
continue;
|
|
430
|
-
}
|
|
431
|
-
|
|
432
414
|
// Route plugin context user messages to Reasoning Panel
|
|
433
415
|
if (m.role === "user") {
|
|
434
416
|
const txt = Array.isArray(m.content)
|
|
@@ -550,20 +532,6 @@ async function loadMoreHistory() {
|
|
|
550
532
|
if (m.role === "system") {
|
|
551
533
|
continue;
|
|
552
534
|
}
|
|
553
|
-
// Route symipulse messages to dedicated Symipulse Panel
|
|
554
|
-
if (typeof window.isSymipulseMessage === "function" && window.isSymipulseMessage(m)) {
|
|
555
|
-
const txt = Array.isArray(m.content)
|
|
556
|
-
? m.content
|
|
557
|
-
.filter((b) => b.type === "text")
|
|
558
|
-
.map((b) => b.text ?? "")
|
|
559
|
-
.join("")
|
|
560
|
-
.trim()
|
|
561
|
-
: extractText(m.content).trim();
|
|
562
|
-
if (txt && typeof window.appendToSymipulsePanel === "function") {
|
|
563
|
-
window.appendToSymipulsePanel(txt, m.timestamp);
|
|
564
|
-
}
|
|
565
|
-
continue;
|
|
566
|
-
}
|
|
567
535
|
|
|
568
536
|
// Route plugin context & verification user messages to Reasoning Panel
|
|
569
537
|
if (m.role === "user") {
|
|
@@ -639,19 +607,11 @@ function handleGatewayEvent(event) {
|
|
|
639
607
|
if (event.event === "agent") {
|
|
640
608
|
const a = event.payload;
|
|
641
609
|
if (a) {
|
|
642
|
-
// Skip heartbeat agent events — background maintenance runs should not
|
|
643
|
-
// trigger the working indicator or arm the watchdog. Without this guard,
|
|
644
|
-
// heartbeat tool events (exec, read) arm the watchdog, and when the
|
|
645
|
-
// heartbeat completes its "final" is routed to the symipulse panel
|
|
646
|
-
// without clearing the indicator — leaving the orb stuck in "working".
|
|
647
|
-
if (a.isHeartbeat) {
|
|
648
|
-
return;
|
|
649
|
-
}
|
|
650
610
|
// Cross-session filter: agent events for OTHER sessions (cron-fired
|
|
651
611
|
// channel runs, slack/msteams inbound, scheduled jobs) must not arm the
|
|
652
|
-
// user's watchdog. Without this guard, every background
|
|
653
|
-
//
|
|
654
|
-
//
|
|
612
|
+
// user's watchdog. Without this guard, every background run resets the
|
|
613
|
+
// watchdog and produces phantom "Run timed out" warnings when no
|
|
614
|
+
// follow-up event arrives within WATCHDOG_MS.
|
|
655
615
|
if (a.sessionKey && a.sessionKey !== window.SESSION_KEY) {
|
|
656
616
|
return;
|
|
657
617
|
}
|
|
@@ -703,18 +663,12 @@ function handleGatewayEvent(event) {
|
|
|
703
663
|
return;
|
|
704
664
|
}
|
|
705
665
|
|
|
706
|
-
|
|
707
|
-
// Even though chat:final/error/aborted handlers below have their own
|
|
708
|
-
// heartbeat early-returns, this top-level guard prevents Path A from
|
|
709
|
-
// re-arming the watchdog on heartbeat-tagged deltas/finals.
|
|
710
|
-
if (p.isHeartbeat) {
|
|
711
|
-
// Fall through to the per-state branches below so heartbeat finals can
|
|
712
|
-
// still be routed to the symipulse panel — but skip the watchdog re-arm.
|
|
713
|
-
} else if (p.runId && currentRunId && p.runId !== currentRunId) {
|
|
666
|
+
if (p.runId && currentRunId && p.runId !== currentRunId) {
|
|
714
667
|
// Cross-run chat event (e.g. cron-fired channel run, chat.injectMessage,
|
|
715
668
|
// late event from a finished run). Not relevant to the user's active turn.
|
|
716
669
|
return;
|
|
717
|
-
}
|
|
670
|
+
}
|
|
671
|
+
if (isStreaming) {
|
|
718
672
|
// Any chat event for our session and our run proves the agent is alive —
|
|
719
673
|
// reset watchdog.
|
|
720
674
|
armWatchdog();
|
|
@@ -728,9 +682,6 @@ function handleGatewayEvent(event) {
|
|
|
728
682
|
|
|
729
683
|
// Handle "thinking" state broadcast from gateway (agent started processing)
|
|
730
684
|
if (p.state === "thinking") {
|
|
731
|
-
if (p.isHeartbeat) {
|
|
732
|
-
return; // Heartbeat thinking events never touch user UI
|
|
733
|
-
}
|
|
734
685
|
if (p.runId && currentRunId && p.runId !== currentRunId) {
|
|
735
686
|
return; // Cross-run thinking event
|
|
736
687
|
}
|
|
@@ -744,18 +695,6 @@ function handleGatewayEvent(event) {
|
|
|
744
695
|
}
|
|
745
696
|
|
|
746
697
|
if (p.state === "delta") {
|
|
747
|
-
// Route heartbeat/symipulse deltas to dedicated panel
|
|
748
|
-
if (p.isHeartbeat) {
|
|
749
|
-
const text = extractText(p.message);
|
|
750
|
-
if (text && typeof window.appendToSymipulsePanel === "function") {
|
|
751
|
-
window.appendToSymipulsePanel(text, Date.now());
|
|
752
|
-
}
|
|
753
|
-
if (typeof window.setSymipulseLiveDot === "function") {
|
|
754
|
-
window.setSymipulseLiveDot(true);
|
|
755
|
-
}
|
|
756
|
-
return;
|
|
757
|
-
}
|
|
758
|
-
|
|
759
698
|
// Capture runId on first delta so abort can target the exact run
|
|
760
699
|
if (p.runId && !currentRunId) {
|
|
761
700
|
currentRunId = p.runId;
|
|
@@ -782,34 +721,6 @@ function handleGatewayEvent(event) {
|
|
|
782
721
|
window.updateLiveThinking(thinkingText);
|
|
783
722
|
}
|
|
784
723
|
} else if (p.state === "final") {
|
|
785
|
-
// Route heartbeat/symipulse finals to dedicated panel.
|
|
786
|
-
// Check server flag first, then fall back to regex classifier for
|
|
787
|
-
// edge cases where the flag is missing (e.g. older gateway versions).
|
|
788
|
-
const finalMsg = p.message?.content ? p.message : { role: "assistant", content: p.message };
|
|
789
|
-
if (
|
|
790
|
-
p.isHeartbeat ||
|
|
791
|
-
(typeof window.isSymipulseMessage === "function" && window.isSymipulseMessage(finalMsg))
|
|
792
|
-
) {
|
|
793
|
-
const text = extractText(p.message?.content ?? p.message);
|
|
794
|
-
if (text && typeof window.appendToSymipulsePanel === "function") {
|
|
795
|
-
window.appendToSymipulsePanel(text, Date.now());
|
|
796
|
-
}
|
|
797
|
-
if (typeof window.setSymipulseLiveDot === "function") {
|
|
798
|
-
window.setSymipulseLiveDot(false);
|
|
799
|
-
}
|
|
800
|
-
// Clean up any stream bubble that was opened before detection
|
|
801
|
-
if (streamBubble) {
|
|
802
|
-
streamBubble.closest(".message")?.remove();
|
|
803
|
-
streamBubble = null;
|
|
804
|
-
streamContent = null;
|
|
805
|
-
}
|
|
806
|
-
if (thinkingEl) {
|
|
807
|
-
thinkingEl.remove();
|
|
808
|
-
thinkingEl = null;
|
|
809
|
-
}
|
|
810
|
-
return;
|
|
811
|
-
}
|
|
812
|
-
|
|
813
724
|
stopElapsedTimer();
|
|
814
725
|
clearWatchdog();
|
|
815
726
|
if (typeof window.closeLiveThinking === "function") {
|
|
@@ -864,10 +775,6 @@ function handleGatewayEvent(event) {
|
|
|
864
775
|
enableInput();
|
|
865
776
|
drainQueue();
|
|
866
777
|
} else if (p.state === "aborted") {
|
|
867
|
-
// Silently ignore heartbeat aborts — don't touch user-run state
|
|
868
|
-
if (p.isHeartbeat) {
|
|
869
|
-
return;
|
|
870
|
-
}
|
|
871
778
|
// Clean abort (user-initiated or model decided to stop) — not an error
|
|
872
779
|
stopElapsedTimer();
|
|
873
780
|
clearWatchdog();
|
|
@@ -890,10 +797,6 @@ function handleGatewayEvent(event) {
|
|
|
890
797
|
enableInput();
|
|
891
798
|
drainQueue();
|
|
892
799
|
} else if (p.state === "error") {
|
|
893
|
-
// Silently ignore heartbeat errors — don't inject error bubbles for background runs
|
|
894
|
-
if (p.isHeartbeat) {
|
|
895
|
-
return;
|
|
896
|
-
}
|
|
897
800
|
// Server-reported error — route through unified failure handler.
|
|
898
801
|
// The gateway emits the diagnostic at top-level `errorMessage`
|
|
899
802
|
// (camelCase); fall back to nested `error.message` for forward-compat
|
|
@@ -777,11 +777,6 @@ window.renderMessage = function (message) {
|
|
|
777
777
|
.trim()
|
|
778
778
|
: extractText(content).trim();
|
|
779
779
|
|
|
780
|
-
// Symipulse messages → routed to Symipulse Panel by caller; guard here as safety net
|
|
781
|
-
if (typeof window.isSymipulseMessage === "function" && window.isSymipulseMessage(message)) {
|
|
782
|
-
return null;
|
|
783
|
-
}
|
|
784
|
-
|
|
785
780
|
// NOTE: Monologue suppression moved server-side to OutputNormalizer.
|
|
786
781
|
|
|
787
782
|
// Plugin context messages (e.g. "[Outlook 365] Not connected...")
|
|
@@ -9,7 +9,7 @@ import { t as normalizeChatType } from "./chat-type-C_KiWNAH.js";
|
|
|
9
9
|
import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-Cp39v6b_.js";
|
|
10
10
|
import { _ as listDeliverableMessageChannels, c as resolveChunkMode, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph, v as normalizeMessageChannel } from "./chunk-BjnT3w_x.js";
|
|
11
11
|
import { c as loadConfig, d as writeConfigFile, m as parseDurationMs, p as parseByteSize, s as createConfigIO, t as SsrFBlockedError } from "./ssrf-BJZIZ4yo.js";
|
|
12
|
-
import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-
|
|
12
|
+
import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-CQnRgvJz.js";
|
|
13
13
|
import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-xmXjOnAV.js";
|
|
14
14
|
import { n as formatErrorMessage, t as extractErrorCode } from "./errors-C6sHIFo_.js";
|
|
15
15
|
import { C as openFileWithinRoot, S as SafeOpenError, a as IMAGE_REDUCE_QUALITY_STEPS, c as getImageMetadata, d as resizeToJpeg, f as detectMime, n as isSilentReplyText, o as buildImageResizeSideGrid, p as extensionForMime, r as getAgentScopedMediaLocalRoots, t as SILENT_REPLY_TOKEN } from "./tokens-CJgPtOxz.js";
|
|
@@ -1329,7 +1329,7 @@ function isModuleNotFoundError(err) {
|
|
|
1329
1329
|
}
|
|
1330
1330
|
async function loadPwAiModule(mode) {
|
|
1331
1331
|
try {
|
|
1332
|
-
return await import("./pw-ai-
|
|
1332
|
+
return await import("./pw-ai-B3qisJP1.js");
|
|
1333
1333
|
} catch (err) {
|
|
1334
1334
|
if (mode === "soft") return null;
|
|
1335
1335
|
if (isModuleNotFoundError(err)) return null;
|
|
@@ -3926,11 +3926,11 @@ function createProfileContext(opts, profile) {
|
|
|
3926
3926
|
const userDataDir = resolveSymiUserDataDir(profile.name);
|
|
3927
3927
|
const profileState = getProfileState();
|
|
3928
3928
|
if (await isHttpReachable(300) && !profileState.running) try {
|
|
3929
|
-
await (await import("./pw-ai-
|
|
3929
|
+
await (await import("./pw-ai-B3qisJP1.js")).closePlaywrightBrowserConnection();
|
|
3930
3930
|
} catch {}
|
|
3931
3931
|
if (profileState.running) await stopRunningBrowser();
|
|
3932
3932
|
try {
|
|
3933
|
-
await (await import("./pw-ai-
|
|
3933
|
+
await (await import("./pw-ai-B3qisJP1.js")).closePlaywrightBrowserConnection();
|
|
3934
3934
|
} catch {}
|
|
3935
3935
|
if (!fs.existsSync(userDataDir)) return {
|
|
3936
3936
|
moved: false,
|
|
@@ -8,7 +8,7 @@ import { _ as runExec, a as DEFAULT_SYMICORE_FILENAME, c as DEFAULT_USER_FILENAM
|
|
|
8
8
|
import { g as isPidAlive, h as resolveProcessScopedMap, tt as formatCliCommand } from "./auth-profiles-duUuQXeC.js";
|
|
9
9
|
import { t as parseBooleanValue } from "./boolean-mcn6kL0s.js";
|
|
10
10
|
import { c as loadConfig, d as writeConfigFile, m as parseDurationMs, p as parseByteSize, s as createConfigIO, t as SsrFBlockedError } from "./ssrf-Dcgaqg3U.js";
|
|
11
|
-
import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-
|
|
11
|
+
import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-C9mX2mtt.js";
|
|
12
12
|
import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-D0k4o0Ez.js";
|
|
13
13
|
import { n as formatErrorMessage, t as extractErrorCode } from "./errors-BkfLlDKo.js";
|
|
14
14
|
import { b as SafeOpenError, d as extensionForMime, i as buildImageResizeSideGrid, l as resizeToJpeg, o as getImageMetadata, r as IMAGE_REDUCE_QUALITY_STEPS, t as getAgentScopedMediaLocalRoots, u as detectMime, x as openFileWithinRoot } from "./local-roots-WWcVq0Ma.js";
|
|
@@ -938,7 +938,7 @@ function isModuleNotFoundError(err) {
|
|
|
938
938
|
}
|
|
939
939
|
async function loadPwAiModule(mode) {
|
|
940
940
|
try {
|
|
941
|
-
return await import("./pw-ai-
|
|
941
|
+
return await import("./pw-ai-GICi0s74.js");
|
|
942
942
|
} catch (err) {
|
|
943
943
|
if (mode === "soft") return null;
|
|
944
944
|
if (isModuleNotFoundError(err)) return null;
|
|
@@ -3535,11 +3535,11 @@ function createProfileContext(opts, profile) {
|
|
|
3535
3535
|
const userDataDir = resolveSymiUserDataDir(profile.name);
|
|
3536
3536
|
const profileState = getProfileState();
|
|
3537
3537
|
if (await isHttpReachable(300) && !profileState.running) try {
|
|
3538
|
-
await (await import("./pw-ai-
|
|
3538
|
+
await (await import("./pw-ai-GICi0s74.js")).closePlaywrightBrowserConnection();
|
|
3539
3539
|
} catch {}
|
|
3540
3540
|
if (profileState.running) await stopRunningBrowser();
|
|
3541
3541
|
try {
|
|
3542
|
-
await (await import("./pw-ai-
|
|
3542
|
+
await (await import("./pw-ai-GICi0s74.js")).closePlaywrightBrowserConnection();
|
|
3543
3543
|
} catch {}
|
|
3544
3544
|
if (!fs.existsSync(userDataDir)) return {
|
|
3545
3545
|
moved: false,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { r as resolveCliName } from "./command-format-Xm6vX3qJ.js";
|
|
2
2
|
import { t as resolveSymiPackageRoot } from "./symi-root-CK6iELVh.js";
|
|
3
3
|
import { t as note } from "./note-DKRm9hYC.js";
|
|
4
|
-
import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-
|
|
4
|
+
import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-m9L2Gv9t.js";
|
|
5
5
|
import { spawnSync } from "node:child_process";
|
|
6
6
|
import path from "node:path";
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { r as resolveCliName } from "./command-format-BvAkTjTI.js";
|
|
2
2
|
import { t as resolveSymiPackageRoot } from "./symi-root-DueRHNOE.js";
|
|
3
3
|
import { t as note } from "./note-CHrtEumO.js";
|
|
4
|
-
import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-
|
|
4
|
+
import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-DebZ6nSb.js";
|
|
5
5
|
import path from "node:path";
|
|
6
6
|
import { spawnSync } from "node:child_process";
|
|
7
7
|
|
package/dist/entry.js
CHANGED
|
@@ -2312,7 +2312,7 @@ if (!ensureExperimentalWarningSuppressed()) {
|
|
|
2312
2312
|
applyCliProfileEnv({ profile: parsed.profile });
|
|
2313
2313
|
process$1.argv = parsed.argv;
|
|
2314
2314
|
}
|
|
2315
|
-
import("./run-main-
|
|
2315
|
+
import("./run-main-Bzub4qvZ.js").then(({ runCli }) => runCli(process$1.argv)).catch((error) => {
|
|
2316
2316
|
console.error("[symi] Failed to start CLI:", error instanceof Error ? error.stack ?? error.message : error);
|
|
2317
2317
|
process$1.exitCode = 1;
|
|
2318
2318
|
});
|
package/dist/extensionAPI.js
CHANGED
|
@@ -7,21 +7,21 @@ import { a as resolveAgentIdentity } from "./reply-prefix-BqgLflxO.js";
|
|
|
7
7
|
import "./github-copilot-token-BbsJ0Qbo.js";
|
|
8
8
|
import "./plugins-Cp39v6b_.js";
|
|
9
9
|
import "./replies-BeK3uuQ8.js";
|
|
10
|
-
import { a as resolveAgentTimeoutMs, r as runEmbeddedPiAgent } from "./pi-embedded-
|
|
11
|
-
import { $ as loadSessionStore, nt as saveSessionStore } from "./deliver-
|
|
10
|
+
import { a as resolveAgentTimeoutMs, r as runEmbeddedPiAgent } from "./pi-embedded-CvGL6bij.js";
|
|
11
|
+
import { $ as loadSessionStore, nt as saveSessionStore } from "./deliver-DSMNXd9k.js";
|
|
12
12
|
import "./diagnostic-BvZmqxYI.js";
|
|
13
13
|
import "./diagnostic-session-state-CWtaDOiK.js";
|
|
14
14
|
import "./chunk-BjnT3w_x.js";
|
|
15
15
|
import "./ssrf-BJZIZ4yo.js";
|
|
16
16
|
import "./manifest-registry-BV_2TbGz.js";
|
|
17
|
-
import "./chrome-
|
|
17
|
+
import "./chrome-CQnRgvJz.js";
|
|
18
18
|
import "./skills-xmXjOnAV.js";
|
|
19
19
|
import "./redact-ojHFHOAb.js";
|
|
20
20
|
import "./errors-C6sHIFo_.js";
|
|
21
21
|
import "./tokens-CJgPtOxz.js";
|
|
22
22
|
import "./thinking-BKsvyjWX.js";
|
|
23
23
|
import { n as resolveSessionFilePath, s as resolveStorePath } from "./paths-N698mtPE.js";
|
|
24
|
-
import "./manager-
|
|
24
|
+
import "./manager-BUS2wGkQ.js";
|
|
25
25
|
import "./sqlite-jFnvSfLz.js";
|
|
26
26
|
import "./markdown-tables-BtWlyyt1.js";
|
|
27
27
|
import "./commands-registry-BO62ZyK2.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $t as getAgentRunContext, B as normalizeOptionalText, Bt as countActiveRunsForSession, Cn as classifyOutboundMessage, Ct as DEFAULT_INPUT_IMAGE_MIMES, D as resolveOutboundSessionRoute, Dt as extractImageContentFromSource, En as runWithModelFallback, Et as extractFileContentFromSource, G as hasLegacyDeliveryHints, Gt as resolveAgentTimeoutMs, H as normalizeRequiredName, Ht as listDescendantRunsForRequester, K as stripLegacyDeliveryFields, Kt as runSubagentAnnounceFlow, L as inferLegacyName, M as resetDirectoryCache, O as resolveOutboundTarget, Ot as normalizeMimeList, P as normalizeHttpWebhookUrl, Q as isExternalHookSession, Qt as emitAgentEvent, R as normalizeOptionalAgentId, S as createSymiTools, Sn as CommandLane, St as DEFAULT_INPUT_IMAGE_MAX_BYTES, Tt as DEFAULT_INPUT_TIMEOUT_MS, U as migrateLegacyCronPayload, V as normalizePayloadToSystemText, Vt as initSubagentRegistry, W as buildDeliveryFromLegacyPayload, X as detectSuspiciousPatterns, Y as buildSafeExternalPrompt, Z as getHookType, Zt as clearAgentRunContext, _n as getActiveTaskCount, a as getPluginToolMeta, at as markGatewaySigusr1RestartHandled, bn as setCommandLaneConcurrency, c as handleSlackHttpRequest, cn as ToolInputError, ct as setPreRestartDeferralCheck, d as buildHistoryContextFromEntries, dn as resolveUserTimeFormat, en as onAgentEvent, fn as resolveUserTimezone, h as getTotalPendingReplies, in as getActiveEmbeddedRunCount, it as isGatewaySigusr1RestartExternallyAllowed, k as resolveSessionDeliveryTarget, kt as resolveInputFileLimits, l as readJsonBodyWithLimit, n as applyToolPolicyPipeline, nt as deferGatewayRestartUntilIdle, qt as readLatestAssistantReply, r as buildDefaultToolPolicyPipelineSteps, rt as emitGatewayRestart, s as loadSymiPlugins, sn as registerUnhandledRejectionHandler, st as setGatewaySigusr1RestartPolicy, t as runAgentTurn, tn as registerAgentRunContext, tt as consumeGatewaySigusr1RestartAuthorization, u as requestBodyErrorToText, un as formatUserTime, vn as getTotalQueueSize, w as resolveAnnounceTargetFromKey, wn as resolveModelProfile, wt as DEFAULT_INPUT_MAX_REDIRECTS, xn as waitForActiveTasks, yn as resetAllLanes, z as normalizeOptionalSessionKey, zt as countActiveDescendantRuns } from "./unified-runner-
|
|
1
|
+
import { $t as getAgentRunContext, B as normalizeOptionalText, Bt as countActiveRunsForSession, Cn as classifyOutboundMessage, Ct as DEFAULT_INPUT_IMAGE_MIMES, D as resolveOutboundSessionRoute, Dt as extractImageContentFromSource, En as runWithModelFallback, Et as extractFileContentFromSource, G as hasLegacyDeliveryHints, Gt as resolveAgentTimeoutMs, H as normalizeRequiredName, Ht as listDescendantRunsForRequester, K as stripLegacyDeliveryFields, Kt as runSubagentAnnounceFlow, L as inferLegacyName, M as resetDirectoryCache, O as resolveOutboundTarget, Ot as normalizeMimeList, P as normalizeHttpWebhookUrl, Q as isExternalHookSession, Qt as emitAgentEvent, R as normalizeOptionalAgentId, S as createSymiTools, Sn as CommandLane, St as DEFAULT_INPUT_IMAGE_MAX_BYTES, Tt as DEFAULT_INPUT_TIMEOUT_MS, U as migrateLegacyCronPayload, V as normalizePayloadToSystemText, Vt as initSubagentRegistry, W as buildDeliveryFromLegacyPayload, X as detectSuspiciousPatterns, Y as buildSafeExternalPrompt, Z as getHookType, Zt as clearAgentRunContext, _n as getActiveTaskCount, a as getPluginToolMeta, at as markGatewaySigusr1RestartHandled, bn as setCommandLaneConcurrency, c as handleSlackHttpRequest, cn as ToolInputError, ct as setPreRestartDeferralCheck, d as buildHistoryContextFromEntries, dn as resolveUserTimeFormat, en as onAgentEvent, fn as resolveUserTimezone, h as getTotalPendingReplies, in as getActiveEmbeddedRunCount, it as isGatewaySigusr1RestartExternallyAllowed, k as resolveSessionDeliveryTarget, kt as resolveInputFileLimits, l as readJsonBodyWithLimit, n as applyToolPolicyPipeline, nt as deferGatewayRestartUntilIdle, qt as readLatestAssistantReply, r as buildDefaultToolPolicyPipelineSteps, rt as emitGatewayRestart, s as loadSymiPlugins, sn as registerUnhandledRejectionHandler, st as setGatewaySigusr1RestartPolicy, t as runAgentTurn, tn as registerAgentRunContext, tt as consumeGatewaySigusr1RestartAuthorization, u as requestBodyErrorToText, un as formatUserTime, vn as getTotalQueueSize, w as resolveAnnounceTargetFromKey, wn as resolveModelProfile, wt as DEFAULT_INPUT_MAX_REDIRECTS, xn as waitForActiveTasks, yn as resetAllLanes, z as normalizeOptionalSessionKey, zt as countActiveDescendantRuns } from "./unified-runner-Bn9vq7Zy.js";
|
|
2
2
|
import { A as isRich, E as setVerbose, H as createInternalHookEvent, M as getChildLogger, N as getLogger, P as getResolvedLoggerSettings, U as registerInternalHook, V as clearInternalHooks, W as triggerInternalHook, j as theme, k as colorize, m as createEmptyPluginRegistry, r as DEFAULT_CHAT_CHANNEL } from "./registry-DKJLAPDB.js";
|
|
3
3
|
import { _ as expandHomePrefix, g as resolveStateDir, i as isNixMode, l as resolveGatewayLockDir, o as resolveConfigPath, r as STATE_DIR, t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-BSzKwaxE.js";
|
|
4
4
|
import { h as resolveUserPath, s as ensureDir, t as CONFIG_DIR, v as shortenHomePath, x as truncateUtf16Safe } from "./utils-BU8jVQFM.js";
|
|
@@ -52,8 +52,8 @@ import { c as hasNonzeroUsage, s as deriveSessionTotalTokens } from "./session-c
|
|
|
52
52
|
import { C as enqueueSystemEvent, a as loadCombinedSessionStoreForGateway, f as formatRestartSentinelMessage, i as listSessionsFromStore, m as summarizeRestartSentinel, o as loadSessionEntry, u as consumeRestartSentinel, x as lookupContextTokens } from "./session-utils-0F9pB5d6.js";
|
|
53
53
|
import { r as getMachineDisplayName } from "./with-timeout-C0UtpXBj.js";
|
|
54
54
|
import { a as resolveAgentIdentity } from "./reply-prefix-xaWqfM9m.js";
|
|
55
|
-
import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-
|
|
56
|
-
import { c as resolveMemorySearchConfig } from "./manager-
|
|
55
|
+
import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-2OKjMT7V.js";
|
|
56
|
+
import { c as resolveMemorySearchConfig } from "./manager-BQ5Wl5r-.js";
|
|
57
57
|
import "./sqlite-DBEvS-Ne.js";
|
|
58
58
|
import "./chunk-DQGU0F8t.js";
|
|
59
59
|
import "./markdown-tables-GTLvbzuR.js";
|
|
@@ -84,7 +84,7 @@ import { t as formatDocsLink } from "./links-CSaUKNKm.js";
|
|
|
84
84
|
import { n as runCommandWithRuntime } from "./cli-utils-CX1oQ81G.js";
|
|
85
85
|
import { t as formatHelpExamples } from "./help-format-BI_G2p1e.js";
|
|
86
86
|
import { n as withProgress } from "./progress-CyPyGCDn.js";
|
|
87
|
-
import "./memory-cli-
|
|
87
|
+
import "./memory-cli-CmPcKzGZ.js";
|
|
88
88
|
import "./logging-B5YNzZB9.js";
|
|
89
89
|
import "./replies-P7jbK6Bo.js";
|
|
90
90
|
import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-BBHbN8Nh.js";
|
|
@@ -116,15 +116,15 @@ import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } fr
|
|
|
116
116
|
import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-DmYHvtn2.js";
|
|
117
117
|
import { c as resolveNodeCommandAllowlist, l as probeGateway, n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./audit-B_HL4UJ_.js";
|
|
118
118
|
import { t as discoverGatewayBeacons } from "./bonjour-discovery-CU1mz7AC.js";
|
|
119
|
-
import { r as pickGatewaySelfPresence } from "./status-
|
|
119
|
+
import { r as pickGatewaySelfPresence } from "./status-BuHx0FXI.js";
|
|
120
120
|
import { i as styleHealthChannelLine, n as getHealthSnapshot, t as formatHealthChannelLines } from "./health-BdxlhiXA.js";
|
|
121
121
|
import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-DUhvOLUL.js";
|
|
122
122
|
import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, m as normalizeUpdateChannel, n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-CZxZhEXr.js";
|
|
123
|
-
import { t as runOnboardingWizard } from "./onboarding-
|
|
124
|
-
import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-
|
|
125
|
-
import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-
|
|
123
|
+
import { t as runOnboardingWizard } from "./onboarding-D2SLzcWH.js";
|
|
124
|
+
import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-C2UnIkWU.js";
|
|
125
|
+
import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-BBym2pAw.js";
|
|
126
126
|
import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-D5G00y8h.js";
|
|
127
|
-
import { a as getCliSessionId, o as setCliSessionId, s as runCliAgent, t as agentCommand } from "./agent-
|
|
127
|
+
import { a as getCliSessionId, o as setCliSessionId, s as runCliAgent, t as agentCommand } from "./agent-M9EC02CI.js";
|
|
128
128
|
import { t as createOutboundSendDeps } from "./outbound-send-deps-BpziI1pC.js";
|
|
129
129
|
import { s as loadAgentIdentityFromWorkspace } from "./agents.config-B_LFeRQS.js";
|
|
130
130
|
import "./dm-policy-shared-C1TQOlkZ.js";
|
|
@@ -12063,7 +12063,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
|
|
|
12063
12063
|
});
|
|
12064
12064
|
let glassUiBridgeCleanup = null;
|
|
12065
12065
|
if (!minimalTestGateway) {
|
|
12066
|
-
const { createGlassUiBridge } = await import("./glass-ui-ws-
|
|
12066
|
+
const { createGlassUiBridge } = await import("./glass-ui-ws-CwJdwqn6.js");
|
|
12067
12067
|
glassUiBridgeCleanup = createGlassUiBridge({
|
|
12068
12068
|
wss: glassUiWss,
|
|
12069
12069
|
context: gatewayRequestContext,
|
|
@@ -22,7 +22,7 @@ import "./pairing-token-Bnr7QjVF.js";
|
|
|
22
22
|
import { t as safeEqualSecret } from "./secret-equal-CbntzRkh.js";
|
|
23
23
|
import { a as isValidIPv4, c as resolveClientIp, d as resolveHostName, f as rawDataToString, i as isTrustedProxyAddress, l as resolveGatewayBindHost, n as isLoopbackHost, o as normalizeHostHeader, t as isLoopbackAddress, u as resolveGatewayListenHosts } from "./net-DZ5Ayk-W.js";
|
|
24
24
|
import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-Cmumpn76.js";
|
|
25
|
-
import { Cn as getAgentRunContext, Ct as emitGatewayRestart, D as getActiveEmbeddedRunCount, Dt as setGatewaySigusr1RestartPolicy, F as createSymiTools, Gt as DEFAULT_INPUT_IMAGE_MAX_BYTES, H as resolveOutboundTarget, J as runWithModelFallback, Jt as DEFAULT_INPUT_TIMEOUT_MS, K as resetDirectoryCache, Kt as DEFAULT_INPUT_IMAGE_MIMES, L as readLatestAssistantReply, M as resolveModelProfile, Ot as setPreRestartDeferralCheck, Q as normalizeHttpWebhookUrl, Qt as resolveInputFileLimits, R as resolveAnnounceTargetFromKey, S as getTotalPendingReplies, Sn as emitAgentEvent, St as deferGatewayRestartUntilIdle, T as runAgentTurn, Tn as registerAgentRunContext, Tt as markGatewaySigusr1RestartHandled, U as resolveSessionDeliveryTarget, V as resolveOutboundSessionRoute, Wt as registerUnhandledRejectionHandler, Xt as extractImageContentFromSource, Yt as extractFileContentFromSource, Zt as normalizeMimeList, _ as requestBodyErrorToText, _n as resetAllLanes, at as normalizePayloadToSystemText, bn as CommandLane, cn as ToolInputError, ct as buildDeliveryFromLegacyPayload, dn as resolveUserTimeFormat, en as resolveAgentTimeoutMs, f as getPluginToolMeta, fn as resolveUserTimezone, g as readJsonBodyWithLimit, gn as getTotalQueueSize, gt as isExternalHookSession, h as handleSlackHttpRequest, hn as getActiveTaskCount, ht as getHookType, i as listDescendantRunsForRequester, it as normalizeOptionalText, j as classifyOutboundMessage, l as applyToolPolicyPipeline, lt as hasLegacyDeliveryHints, m as loadSymiPlugins, mt as detectSuspiciousPatterns, n as countActiveRunsForSession, nt as normalizeOptionalAgentId, ot as normalizeRequiredName, pt as buildSafeExternalPrompt, qt as DEFAULT_INPUT_MAX_REDIRECTS, r as initSubagentRegistry, rt as normalizeOptionalSessionKey, s as runSubagentAnnounceFlow, st as migrateLegacyCronPayload, t as countActiveDescendantRuns, tt as inferLegacyName, u as buildDefaultToolPolicyPipelineSteps, un as formatUserTime, ut as stripLegacyDeliveryFields, v as buildHistoryContextFromEntries, vn as setCommandLaneConcurrency, wn as onAgentEvent, wt as isGatewaySigusr1RestartExternallyAllowed, xn as clearAgentRunContext, xt as consumeGatewaySigusr1RestartAuthorization, yn as waitForActiveTasks } from "./subagent-registry-
|
|
25
|
+
import { Cn as getAgentRunContext, Ct as emitGatewayRestart, D as getActiveEmbeddedRunCount, Dt as setGatewaySigusr1RestartPolicy, F as createSymiTools, Gt as DEFAULT_INPUT_IMAGE_MAX_BYTES, H as resolveOutboundTarget, J as runWithModelFallback, Jt as DEFAULT_INPUT_TIMEOUT_MS, K as resetDirectoryCache, Kt as DEFAULT_INPUT_IMAGE_MIMES, L as readLatestAssistantReply, M as resolveModelProfile, Ot as setPreRestartDeferralCheck, Q as normalizeHttpWebhookUrl, Qt as resolveInputFileLimits, R as resolveAnnounceTargetFromKey, S as getTotalPendingReplies, Sn as emitAgentEvent, St as deferGatewayRestartUntilIdle, T as runAgentTurn, Tn as registerAgentRunContext, Tt as markGatewaySigusr1RestartHandled, U as resolveSessionDeliveryTarget, V as resolveOutboundSessionRoute, Wt as registerUnhandledRejectionHandler, Xt as extractImageContentFromSource, Yt as extractFileContentFromSource, Zt as normalizeMimeList, _ as requestBodyErrorToText, _n as resetAllLanes, at as normalizePayloadToSystemText, bn as CommandLane, cn as ToolInputError, ct as buildDeliveryFromLegacyPayload, dn as resolveUserTimeFormat, en as resolveAgentTimeoutMs, f as getPluginToolMeta, fn as resolveUserTimezone, g as readJsonBodyWithLimit, gn as getTotalQueueSize, gt as isExternalHookSession, h as handleSlackHttpRequest, hn as getActiveTaskCount, ht as getHookType, i as listDescendantRunsForRequester, it as normalizeOptionalText, j as classifyOutboundMessage, l as applyToolPolicyPipeline, lt as hasLegacyDeliveryHints, m as loadSymiPlugins, mt as detectSuspiciousPatterns, n as countActiveRunsForSession, nt as normalizeOptionalAgentId, ot as normalizeRequiredName, pt as buildSafeExternalPrompt, qt as DEFAULT_INPUT_MAX_REDIRECTS, r as initSubagentRegistry, rt as normalizeOptionalSessionKey, s as runSubagentAnnounceFlow, st as migrateLegacyCronPayload, t as countActiveDescendantRuns, tt as inferLegacyName, u as buildDefaultToolPolicyPipelineSteps, un as formatUserTime, ut as stripLegacyDeliveryFields, v as buildHistoryContextFromEntries, vn as setCommandLaneConcurrency, wn as onAgentEvent, wt as isGatewaySigusr1RestartExternallyAllowed, xn as clearAgentRunContext, xt as consumeGatewaySigusr1RestartAuthorization, yn as waitForActiveTasks } from "./subagent-registry-B1RgR3-0.js";
|
|
26
26
|
import { D as resolveSessionResetPolicy, F as resolveMainSessionKey, H as cleanStaleLockFiles, I as resolveMainSessionKeyFromConfig, K as mergeDeliveryContext, M as canonicalizeMainSessionAlias, N as resolveAgentMainSessionKey, T as evaluateSessionFreshness, W as deliveryContextFromSession, d as updateSessionStore, n as parseSessionThreadInfo, o as loadSessionStore } from "./sessions-7jk0D1BI.js";
|
|
27
27
|
import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-Bq-Msc8Z.js";
|
|
28
28
|
import "./send-CLJ2KPVT.js";
|
|
@@ -50,8 +50,8 @@ import { c as resolveStorePath, i as resolveSessionTranscriptPath, s as resolveS
|
|
|
50
50
|
import { d as supportsXHighThinking, l as normalizeVerboseLevel, s as normalizeThinkLevel } from "./thinking-BDh5LPh-.js";
|
|
51
51
|
import "./models-config-BfmuswQ_.js";
|
|
52
52
|
import { a as resolveAgentIdentity } from "./reply-prefix-CRdCnS44.js";
|
|
53
|
-
import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-
|
|
54
|
-
import { c as resolveMemorySearchConfig } from "./manager-
|
|
53
|
+
import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-CMKSFx1T.js";
|
|
54
|
+
import { c as resolveMemorySearchConfig } from "./manager-BI8o6AGu.js";
|
|
55
55
|
import "./sqlite-l3CZYU6t.js";
|
|
56
56
|
import "./chunk-BySyfaEr.js";
|
|
57
57
|
import "./markdown-tables-CCOfinlW.js";
|
|
@@ -82,7 +82,7 @@ import { t as formatDocsLink } from "./links-Db3Rw0Tg.js";
|
|
|
82
82
|
import { n as runCommandWithRuntime } from "./cli-utils-BqMwAlgf.js";
|
|
83
83
|
import { t as formatHelpExamples } from "./help-format-DbbIlOje.js";
|
|
84
84
|
import { n as withProgress } from "./progress-C4ck6JXh.js";
|
|
85
|
-
import "./memory-cli-
|
|
85
|
+
import "./memory-cli-rdfaJrCS.js";
|
|
86
86
|
import "./logging-D0L9TWhE.js";
|
|
87
87
|
import "./replies-BOy28KVL.js";
|
|
88
88
|
import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-D-WJTlz8.js";
|
|
@@ -109,17 +109,17 @@ import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } fr
|
|
|
109
109
|
import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-DP6YX7_w.js";
|
|
110
110
|
import { c as resolveNodeCommandAllowlist, l as probeGateway, n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./audit-DEXQlMwn.js";
|
|
111
111
|
import { t as discoverGatewayBeacons } from "./bonjour-discovery-BTpm6P8H.js";
|
|
112
|
-
import { i as pickGatewaySelfPresence } from "./status-
|
|
112
|
+
import { i as pickGatewaySelfPresence } from "./status-FKqnkO3K.js";
|
|
113
113
|
import { a as styleHealthChannelLine, n as getHealthSnapshot, t as formatHealthChannelLines } from "./health-CvdEEMPS.js";
|
|
114
114
|
import { n as createDefaultDeps, t as createOutboundSendDeps } from "./outbound-send-deps-WKDU2JsO.js";
|
|
115
115
|
import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-B5BrwGRs.js";
|
|
116
116
|
import { t as ensureSymiCliOnPath } from "./path-env-DmaMvYrK.js";
|
|
117
117
|
import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, m as normalizeUpdateChannel, n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-C1JNxsic.js";
|
|
118
|
-
import { t as runOnboardingWizard } from "./onboarding-
|
|
119
|
-
import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-
|
|
120
|
-
import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-
|
|
118
|
+
import { t as runOnboardingWizard } from "./onboarding-ii3ok0Ih.js";
|
|
119
|
+
import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-THO5vDXZ.js";
|
|
120
|
+
import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-Bv16DYOL.js";
|
|
121
121
|
import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-DjIM4-F9.js";
|
|
122
|
-
import { a as getCliSessionId, o as setCliSessionId, s as runCliAgent, t as agentCommand } from "./agent-
|
|
122
|
+
import { a as getCliSessionId, o as setCliSessionId, s as runCliAgent, t as agentCommand } from "./agent-9zPi5Bip.js";
|
|
123
123
|
import { s as loadAgentIdentityFromWorkspace } from "./agents.config-RCL-IJds.js";
|
|
124
124
|
import "./dm-policy-shared-CC_pbZzd.js";
|
|
125
125
|
import "./node-service-DDDCEDdv.js";
|
|
@@ -12058,7 +12058,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
|
|
|
12058
12058
|
});
|
|
12059
12059
|
let glassUiBridgeCleanup = null;
|
|
12060
12060
|
if (!minimalTestGateway) {
|
|
12061
|
-
const { createGlassUiBridge } = await import("./glass-ui-ws-
|
|
12061
|
+
const { createGlassUiBridge } = await import("./glass-ui-ws-f_OPXcN2.js");
|
|
12062
12062
|
glassUiBridgeCleanup = createGlassUiBridge({
|
|
12063
12063
|
wss: glassUiWss,
|
|
12064
12064
|
context: gatewayRequestContext,
|