instar 1.3.1583 → 1.3.1585
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/dashboard/console/console.css +20 -1
- package/dashboard/console/sessions-model.js +28 -6
- package/dashboard/console/sessions.js +75 -11
- package/dist/core/AutoUpdater.d.ts.map +1 -1
- package/dist/core/AutoUpdater.js +7 -3
- package/dist/core/AutoUpdater.js.map +1 -1
- package/dist/core/ForegroundRestartWatcher.d.ts +2 -0
- package/dist/core/ForegroundRestartWatcher.d.ts.map +1 -1
- package/dist/core/ForegroundRestartWatcher.js +13 -0
- package/dist/core/ForegroundRestartWatcher.js.map +1 -1
- package/dist/core/PlannedRestartVerifyGuard.d.ts +26 -0
- package/dist/core/PlannedRestartVerifyGuard.d.ts.map +1 -0
- package/dist/core/PlannedRestartVerifyGuard.js +125 -0
- package/dist/core/PlannedRestartVerifyGuard.js.map +1 -0
- package/dist/core/SessionManager.d.ts +3 -0
- package/dist/core/SessionManager.d.ts.map +1 -1
- package/dist/core/SessionManager.js +1 -0
- package/dist/core/SessionManager.js.map +1 -1
- package/dist/core/WriteDomainRegistry.d.ts.map +1 -1
- package/dist/core/WriteDomainRegistry.js +8 -0
- package/dist/core/WriteDomainRegistry.js.map +1 -1
- package/dist/data/standards-guard-index.json +1 -1
- package/dist/data/standards-guard-index.meta.json +2 -2
- package/dist/data/standards-registry.meta.json +1 -1
- package/dist/lifeline/ServerSupervisor.d.ts +1 -0
- package/dist/lifeline/ServerSupervisor.d.ts.map +1 -1
- package/dist/lifeline/ServerSupervisor.js +19 -2
- package/dist/lifeline/ServerSupervisor.js.map +1 -1
- package/dist/localVerify/LocalVerifyService.d.ts +1 -1
- package/dist/localVerify/LocalVerifyService.d.ts.map +1 -1
- package/dist/localVerify/LocalVerifyService.js +8 -3
- package/dist/localVerify/LocalVerifyService.js.map +1 -1
- package/dist/monitoring/guardManifest.d.ts.map +1 -1
- package/dist/monitoring/guardManifest.js +1 -0
- package/dist/monitoring/guardManifest.js.map +1 -1
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +59 -1
- package/dist/server/routes.js.map +1 -1
- package/package.json +1 -1
- package/scripts/install-windows-desktop-companion.ps1 +1 -1
- package/src/data/builtin-manifest.json +48 -48
- package/src/data/standards-guard-index.json +1 -1
- package/src/data/standards-guard-index.meta.json +2 -2
- package/src/data/standards-registry.meta.json +1 -1
- package/upgrades/1.3.1584.md +28 -0
- package/upgrades/1.3.1585.md +29 -0
- package/upgrades/side-effects/console-session-desktop-layout.eli16.md +9 -0
- package/upgrades/side-effects/console-session-desktop-layout.md +16 -0
- package/upgrades/side-effects/console-session-followups.eli16.md +18 -0
- package/upgrades/side-effects/console-session-followups.md +44 -0
- package/upgrades/side-effects/planned-restart-local-verify-hold.md +81 -0
- package/upgrades/side-effects/windows-companion-no-console.md +45 -0
|
@@ -990,6 +990,12 @@ button.run-mark:focus-visible { outline: 2px solid var(--accent); outline-offset
|
|
|
990
990
|
.sess-composer { display: flex; gap: var(--s-2); align-items: flex-end; position: sticky; bottom: 0; padding: var(--s-2) 0; background: var(--bg); }
|
|
991
991
|
.sess-input { flex: 1; min-height: 44px; font-size: 16px; resize: none; }
|
|
992
992
|
.sess-composer-btns { display: flex; gap: var(--s-2); }
|
|
993
|
+
.sess-attach { min-width: 44px; min-height: 44px; padding: 0 10px; font-size: 18px; }
|
|
994
|
+
.sess-attach:disabled { opacity: .45; cursor: not-allowed; }
|
|
995
|
+
.sess-attachments { display: flex; flex-wrap: wrap; gap: var(--s-2); }
|
|
996
|
+
.sess-file { gap: 8px; max-width: 100%; overflow: hidden; }
|
|
997
|
+
.sess-file span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 260px; }
|
|
998
|
+
.sess-composer.dropping { outline: 2px dashed var(--accent); outline-offset: 4px; border-radius: var(--r-md); }
|
|
993
999
|
.keys-tray { display: flex; flex-direction: column; gap: var(--s-3); padding: var(--s-3); border: 1px solid var(--hairline); border-radius: var(--r-md); }
|
|
994
1000
|
.keys-row { display: flex; flex-wrap: wrap; gap: var(--s-2); }
|
|
995
1001
|
.key-chip { min-width: 44px; min-height: 44px; justify-content: center; font-family: var(--font-mono); }
|
|
@@ -998,6 +1004,19 @@ button.run-mark:focus-visible { outline: 2px solid var(--accent); outline-offset
|
|
|
998
1004
|
.sess-actions a.btn-quiet { display: inline-flex; align-items: center; text-decoration: none; }
|
|
999
1005
|
.sess-default-row { display: flex; flex-wrap: wrap; gap: var(--s-2); align-items: baseline; margin-top: var(--s-3); }
|
|
1000
1006
|
.sess-default-row .card-note { margin: 0; }
|
|
1007
|
+
/* Desktop: an open session fills the window beside the list, so the composer is
|
|
1008
|
+
always on screen (no page scroll to reach it) and the terminal takes the rest. */
|
|
1009
|
+
@media (min-width: 900px) {
|
|
1010
|
+
.main:has(> .sessions-page.has-open) { max-width: 1680px; padding-top: var(--s-6); padding-bottom: var(--s-6); }
|
|
1011
|
+
.sessions-page.has-open { grid-template-columns: minmax(280px, 340px) 1fr; }
|
|
1012
|
+
.sessions-page.has-open .sess-list .page-title { font-size: 28px; }
|
|
1013
|
+
.sessions-page.has-open .sess-view { top: calc(56px + var(--s-4)); height: calc(100dvh - 56px - var(--preview-h, 0px) - var(--s-6) - var(--s-4)); }
|
|
1014
|
+
.app:has(> .preview-banner) { --preview-h: 37px; }
|
|
1015
|
+
.sessions-page.has-open .sess-open { height: 100%; min-height: 0; }
|
|
1016
|
+
.sessions-page.has-open .sess-term-wrap { min-height: 0; }
|
|
1017
|
+
.sessions-page.has-open .sess-term { height: auto; min-height: 0; }
|
|
1018
|
+
.sessions-page.has-open .sess-composer { position: static; padding-bottom: 0; }
|
|
1019
|
+
}
|
|
1001
1020
|
.sess-default-box:empty { display: none; }
|
|
1002
1021
|
.sess-default-box { border: 1px solid var(--hairline); border-radius: var(--r-md); padding: var(--s-3); margin: var(--s-2) 0; }
|
|
1003
1022
|
.skeleton-row { pointer-events: none; }
|
|
@@ -1115,7 +1134,7 @@ button.run-mark:focus-visible { outline: 2px solid var(--accent); outline-offset
|
|
|
1115
1134
|
.mb-pace { margin-top: 4px; }
|
|
1116
1135
|
|
|
1117
1136
|
/* Preview address: say plainly that this is work in progress. */
|
|
1118
|
-
.preview-banner { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: baseline; padding: 8px 16px; background: #3a2f0b; color: #f6d77a; font-size: 14px; line-height: 1.4; }
|
|
1137
|
+
.preview-banner { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: baseline; padding: 8px 16px; background: #3a2f0b; color: #f6d77a; font-size: 14px; line-height: 1.4; }
|
|
1119
1138
|
.preview-banner a { color: inherit; text-decoration: underline; margin-left: auto; }
|
|
1120
1139
|
|
|
1121
1140
|
/* Home headline as a link to the first thing that needs the operator. */
|
|
@@ -102,7 +102,26 @@ function nicknameOf(pool, machineId) {
|
|
|
102
102
|
* The whole list. sessionsRes is the GET /sessions?scope=pool read; ws is the live
|
|
103
103
|
* socket's list for this machine (null when the socket has not sent one).
|
|
104
104
|
*/
|
|
105
|
-
|
|
105
|
+
/** The message a session receives for attached files: the operator's text, then one
|
|
106
|
+
* line per file naming where it was saved, so the session can open it. */
|
|
107
|
+
export function attachmentMessage(text, paths) {
|
|
108
|
+
const lines = paths.map((p) => `[Attached file from the dashboard: ${p} (read it to see what I sent)]`);
|
|
109
|
+
return [String(text || '').trim(), ...lines].filter(Boolean).join('\n');
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/** `triggeredBy` on a session the operator created from the dashboard's New session box. */
|
|
113
|
+
export const OPERATOR_CREATED = 'dashboard-operator';
|
|
114
|
+
|
|
115
|
+
/** Internal = machinery the operator did not start: scheduled jobs, and helper sessions
|
|
116
|
+
* the agent spawned for itself (no chat attached, not created from the dashboard). A
|
|
117
|
+
* conversation (Telegram, Slack, ...) is never internal. Hidden by default, one toggle away. */
|
|
118
|
+
export function isInternalSession(s) {
|
|
119
|
+
if (!s) return false;
|
|
120
|
+
if (s.jobSlug || s.type === 'job') return true;
|
|
121
|
+
return (s.platform || 'headless') === 'headless' && s.triggeredBy !== OPERATOR_CREATED;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export function buildSessions(sessionsRes, { ws = null, now = Date.now(), topicNames = {}, showInternal = false } = {}) {
|
|
106
125
|
if (!sessionsRes || !sessionsRes.ok) return { ok: false, reason: `Couldn’t list sessions: ${(sessionsRes && sessionsRes.reason) || 'no answer'}.` };
|
|
107
126
|
const data = sessionsRes.data || {};
|
|
108
127
|
if (!Array.isArray(data.sessions)) return { ok: false, reason: 'The session list answered without sessions.' };
|
|
@@ -114,7 +133,7 @@ export function buildSessions(sessionsRes, { ws = null, now = Date.now(), topicN
|
|
|
114
133
|
const duplicateConversations = new Set((Array.isArray(pool.duplicateTopics) ? pool.duplicateTopics : [])
|
|
115
134
|
.filter((d) => typeof d.platform === 'string' && d.platformId != null)
|
|
116
135
|
.map((d) => `${d.platform}:${String(d.platformId)}`));
|
|
117
|
-
const
|
|
136
|
+
const allRows = [...local.map((s) => ({ ...s, machineNickname: s.machineNickname || selfName })), ...remote].map((s) => {
|
|
118
137
|
const a = activity(s, now);
|
|
119
138
|
const duplicate = s.duplicateTopic === true || (typeof s.platform === 'string' && s.platformId != null
|
|
120
139
|
&& duplicateConversations.has(`${s.platform}:${String(s.platformId)}`));
|
|
@@ -123,15 +142,18 @@ export function buildSessions(sessionsRes, { ws = null, now = Date.now(), topicN
|
|
|
123
142
|
const running = Number.isFinite(started) ? spanWords(now - started) : null;
|
|
124
143
|
const sub = [machine, running && running !== 'now' ? running : running ? 'just started' : null, duplicate ? 'running on two machines at once' : a.state === 'no-reading' ? null : a.words].filter(Boolean).join(' · ');
|
|
125
144
|
return {
|
|
126
|
-
key: sessionKey(s), title: sessionTitle(s, topicNames), sub, end: a.end, activity: a.state, duplicate,
|
|
145
|
+
key: sessionKey(s), title: sessionTitle(s, topicNames), sub, end: a.end, activity: a.state, duplicate, internal: isInternalSession(s),
|
|
127
146
|
tone: duplicate ? 'bad' : a.state === 'quiet' ? 'attn' : a.state === 'no-reading' ? 'unknown' : null,
|
|
128
147
|
machine, remote: s.remote === true, model: modelWords(s.model),
|
|
129
|
-
session: { tmuxSession: s.tmuxSession, id: s.id, name: s.name, machineId: s.machineId || null, machineNickname: machine, remote: s.remote === true, protected: s.protected, platform: s.platform || 'headless', platformId: s.platformId ?? null, model: s.model || null, type: s.type || (s.jobSlug ? 'job' : 'interactive'), telemetry: s.telemetry || null, startedAt: s.startedAt || null, status: s.status },
|
|
148
|
+
session: { tmuxSession: s.tmuxSession, id: s.id, name: s.name, machineId: s.machineId || null, machineNickname: machine, remote: s.remote === true, protected: s.protected, platform: s.platform || 'headless', platformId: s.platformId ?? null, model: s.model || null, type: s.type || (s.jobSlug ? 'job' : 'interactive'), internal: isInternalSession(s), telemetry: s.telemetry || null, startedAt: s.startedAt || null, status: s.status },
|
|
130
149
|
};
|
|
131
150
|
});
|
|
132
151
|
// Most recently active first inside each group.
|
|
133
152
|
const lastOf = (r) => Date.parse(r.session.telemetry && r.session.telemetry.lastActivity) || Date.parse(r.session.startedAt) || 0;
|
|
134
|
-
|
|
153
|
+
allRows.sort((x, y) => lastOf(y) - lastOf(x));
|
|
154
|
+
const hiddenInternal = showInternal ? 0 : allRows.filter((r) => r.internal).length;
|
|
155
|
+
const internalCount = allRows.filter((r) => r.internal).length;
|
|
156
|
+
const rows = showInternal ? allRows : allRows.filter((r) => !r.internal);
|
|
135
157
|
const needsLook = rows.filter((r) => r.duplicate || r.activity === 'quiet');
|
|
136
158
|
const working = rows.filter((r) => !needsLook.includes(r));
|
|
137
159
|
const failedIds = new Set((Array.isArray(pool.failed) ? pool.failed : []).map((f) => f.machineId));
|
|
@@ -148,7 +170,7 @@ export function buildSessions(sessionsRes, { ws = null, now = Date.now(), topicN
|
|
|
148
170
|
})) : [];
|
|
149
171
|
const machineCount = multi ? machines.length : 1;
|
|
150
172
|
return {
|
|
151
|
-
ok: true, rows, needsLook, working, idleMachines, unanswered, multi, selfName,
|
|
173
|
+
ok: true, rows, allRows, hiddenInternal, internalCount, showInternal, needsLook, working, idleMachines, unanswered, multi, selfName,
|
|
152
174
|
selfMachineId: pool.selfMachineId || null,
|
|
153
175
|
counts: { running: rows.length, quiet: rows.filter((r) => r.activity === 'quiet').length, duplicate: rows.filter((r) => r.duplicate).length, machines: machineCount, answering: machineCount - unanswered.length },
|
|
154
176
|
};
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
buildSessions, sessionsHeadline, sessionsFacts, partialWords, titleLine, closeRequest, closeConfirmWords,
|
|
12
12
|
closeResultWords, doorChoices, modelChoices, doorModelWords, regimeWords, machineChoices, PLATFORMS,
|
|
13
13
|
platformAllowsDoor, createBody, createResultWords, defaultWords, profileSourceWords, switchLanded,
|
|
14
|
-
canSwitchDoor, KEYS, STOP_KEY, frame, nextHistoryBatch, streamErrorWords, composerRows, modelWords, HISTORY_FIRST,
|
|
14
|
+
canSwitchDoor, attachmentMessage, KEYS, STOP_KEY, frame, nextHistoryBatch, streamErrorWords, composerRows, modelWords, HISTORY_FIRST,
|
|
15
15
|
} from './sessions-model.js';
|
|
16
16
|
import { el, setKids, pageHead, sheet, closeSheet, story, details, note, cantTell } from './ui.js';
|
|
17
17
|
import { legacyHref } from './nav-model.js';
|
|
@@ -22,6 +22,20 @@ const XTERM_CSS = 'https://cdn.jsdelivr.net/npm/@xterm/xterm@5.5.0/css/xterm.min
|
|
|
22
22
|
const FIT_JS = 'https://cdn.jsdelivr.net/npm/@xterm/addon-fit@0.10.0/lib/addon-fit.min.js';
|
|
23
23
|
const POOL_TIMEOUT_MS = 8000;
|
|
24
24
|
|
|
25
|
+
const ATTACH_MAX_BYTES = 8 * 1024 * 1024;
|
|
26
|
+
function toBase64(file) {
|
|
27
|
+
return new Promise((resolve, reject) => {
|
|
28
|
+
const r = new FileReader();
|
|
29
|
+
r.onload = () => resolve(String(r.result).replace(/^data:[^,]*,/, ''));
|
|
30
|
+
r.onerror = () => reject(r.error);
|
|
31
|
+
r.readAsDataURL(file);
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
const SHOW_INTERNAL_KEY = 'instar_console_show_internal';
|
|
36
|
+
function showInternal() { try { return localStorage.getItem(SHOW_INTERNAL_KEY) === '1'; } catch { return false; } }
|
|
37
|
+
function setShowInternal(on) { try { localStorage.setItem(SHOW_INTERNAL_KEY, on ? '1' : '0'); } catch { /* per-viewer convenience only */ } }
|
|
38
|
+
|
|
25
39
|
function bearer() { try { return localStorage.getItem('instar_token') || ''; } catch { return ''; } }
|
|
26
40
|
|
|
27
41
|
/** A write that keeps the status and the server's body. */
|
|
@@ -69,7 +83,7 @@ const onPage = () => Boolean(st.main && st.main.isConnected && st.main.querySele
|
|
|
69
83
|
function currentModel() {
|
|
70
84
|
const src = st.poolData || (st.lastFailReason ? { ok: false, reason: st.lastFailReason } : null);
|
|
71
85
|
if (!src) return null;
|
|
72
|
-
return buildSessions(src, { ws: st.wsUp ? st.wsList : null, now: Date.now(), topicNames: st.topicNames || {} });
|
|
86
|
+
return buildSessions(src, { ws: st.wsUp ? st.wsList : null, now: Date.now(), topicNames: st.topicNames || {}, showInternal: showInternal() });
|
|
73
87
|
}
|
|
74
88
|
|
|
75
89
|
function paint() {
|
|
@@ -83,7 +97,7 @@ function paint() {
|
|
|
83
97
|
paintList(page.querySelector('.sess-list'), m, key);
|
|
84
98
|
const v = page.querySelector('.sess-view');
|
|
85
99
|
if (!key) { if (st.view) leaveView(); setKids(v, el('p', { class: 'empty-line sess-pick', text: 'Pick a session to watch it and type to it.' })); return; }
|
|
86
|
-
const row = m.ok ? m.
|
|
100
|
+
const row = m.ok ? m.allRows.find((r) => r.key === key) : null;
|
|
87
101
|
if (st.view && st.view.key === key) { if (row) updateViewTitle(row); else markEnded(); return; }
|
|
88
102
|
if (st.view) leaveView();
|
|
89
103
|
if (!row) {
|
|
@@ -118,7 +132,13 @@ function paintList(box, m, openKey) {
|
|
|
118
132
|
m.idleMachines.map((i) => el('p', { class: `machine-line${i.ok ? '' : ' dashed'}`, text: `${i.name}: ${i.words}` }))));
|
|
119
133
|
}
|
|
120
134
|
}
|
|
121
|
-
|
|
135
|
+
if (m.ok && m.internalCount) {
|
|
136
|
+
const on = m.showInternal;
|
|
137
|
+
parts.push(el('button', { class: 'link-btn sess-internal-toggle', type: 'button', 'aria-pressed': on ? 'true' : 'false',
|
|
138
|
+
text: on ? `Hide ${m.internalCount} internal session${m.internalCount === 1 ? '' : 's'} (jobs and helpers)` : `Show ${m.internalCount} internal session${m.internalCount === 1 ? '' : 's'} (jobs and helpers)`,
|
|
139
|
+
onclick: () => { setShowInternal(!on); paint(); } }));
|
|
140
|
+
}
|
|
141
|
+
parts.push(el('p', { class: 'foot-note' }, el('a', { href: legacyHref('sessions'), text: 'Open sessions in the legacy dashboard' })));
|
|
122
142
|
setKids(box, parts);
|
|
123
143
|
if (focused) {
|
|
124
144
|
const esc = typeof CSS !== 'undefined' && CSS.escape ? CSS.escape(focused) : focused.replace(/["\\]/g, '\\$&');
|
|
@@ -222,6 +242,29 @@ function openView(box, row) {
|
|
|
222
242
|
const input = el('textarea', { class: 'reason-input sess-input', rows: '1', placeholder: 'Type a message…', 'aria-label': 'Message to the session' });
|
|
223
243
|
const sendBtn = el('button', { class: 'btn-primary btn-inline', type: 'button', text: 'Send', 'data-send': '1' });
|
|
224
244
|
const keysBtn = el('button', { class: 'btn-quiet', type: 'button', text: 'Keys', 'aria-expanded': 'false', 'data-keys': '1' });
|
|
245
|
+
// Attach: a screenshot or file, picked, pasted or dropped. Saved on this machine, so a
|
|
246
|
+
// session on another machine says so instead of offering it.
|
|
247
|
+
const filePick = el('input', { type: 'file', multiple: true, hidden: true, 'data-file': '1' });
|
|
248
|
+
const attachBtn = el('button', { class: 'btn-quiet sess-attach', type: 'button', 'aria-label': 'Attach a screenshot or file', text: '📎', 'data-attach': '1',
|
|
249
|
+
title: s.remote ? `Attaching works for sessions on this machine; open ${s.machineNickname}’s own console to attach there.` : 'Attach a screenshot or file' });
|
|
250
|
+
if (s.remote) attachBtn.disabled = true;
|
|
251
|
+
const chips = el('div', { class: 'sess-attachments', hidden: true });
|
|
252
|
+
const files = [];
|
|
253
|
+
const paintChips = () => {
|
|
254
|
+
chips.hidden = !files.length;
|
|
255
|
+
setKids(chips, files.map((f, i) => el('span', { class: 'chip sess-file' }, el('span', { text: f.name }),
|
|
256
|
+
el('button', { class: 'link-btn', type: 'button', 'aria-label': `Remove ${f.name}`, text: '✕', onclick: () => { files.splice(i, 1); paintChips(); } }))));
|
|
257
|
+
};
|
|
258
|
+
const addFiles = (list) => {
|
|
259
|
+
if (s.remote) { setStatus(`Attaching works for sessions on this machine; open ${s.machineNickname}’s own console to attach there.`); return; }
|
|
260
|
+
for (const f of list) {
|
|
261
|
+
if (f.size > ATTACH_MAX_BYTES) { setStatus(`${f.name} is too big to attach (up to 8 MB).`); continue; }
|
|
262
|
+
files.push({ name: f.name || `pasted-${Date.now()}.png`, file: f });
|
|
263
|
+
}
|
|
264
|
+
paintChips();
|
|
265
|
+
};
|
|
266
|
+
attachBtn.addEventListener('click', () => filePick.click());
|
|
267
|
+
filePick.addEventListener('change', () => { addFiles([...filePick.files]); filePick.value = ''; });
|
|
225
268
|
const tray = el('div', { class: 'keys-tray', hidden: true });
|
|
226
269
|
const view = { key: row.key, s, titleSub, statusLine, termBox, resume, following: true, pending: null, loaded: HISTORY_FIRST, exhausted: false, loading: false, term: null, fit: null, pre: null };
|
|
227
270
|
st.view = view;
|
|
@@ -239,12 +282,35 @@ function openView(box, row) {
|
|
|
239
282
|
tray.append(keyRow, stopBox);
|
|
240
283
|
keysBtn.addEventListener('click', () => { tray.hidden = !tray.hidden; keysBtn.setAttribute('aria-expanded', tray.hidden ? 'false' : 'true'); });
|
|
241
284
|
|
|
242
|
-
const sendText = () => {
|
|
243
|
-
|
|
244
|
-
if (!text.trim()) return;
|
|
285
|
+
const sendText = async () => {
|
|
286
|
+
let text = input.value;
|
|
287
|
+
if (!text.trim() && !files.length) return;
|
|
288
|
+
if (!st.wsUp) { setStatus('Not sent: live updates are paused. Your text is still here.'); return; }
|
|
289
|
+
if (files.length) {
|
|
290
|
+
sendBtn.disabled = true; setStatus(`Attaching ${files.length === 1 ? files[0].name : `${files.length} files`}…`);
|
|
291
|
+
const paths = [];
|
|
292
|
+
for (const f of files) {
|
|
293
|
+
const r = await send('POST', `/sessions/${encodeURIComponent(view.s.tmuxSession)}/attachments`, { filename: f.name, dataBase64: await toBase64(f.file) });
|
|
294
|
+
if (!r.ok || !r.data.path) { sendBtn.disabled = false; setStatus(`Not sent: ${f.name} could not be attached (${r.data.error || `status ${r.status}`}). Your message is still here.`); return; }
|
|
295
|
+
paths.push(r.data.path);
|
|
296
|
+
}
|
|
297
|
+
sendBtn.disabled = false; setStatus('');
|
|
298
|
+
text = attachmentMessage(text, paths);
|
|
299
|
+
}
|
|
245
300
|
if (!wsSend(frame('input', view.s, { text }))) { setStatus('Not sent: live updates are paused. Your text is still here.'); return; }
|
|
301
|
+
files.length = 0; paintChips();
|
|
246
302
|
input.value = ''; input.rows = 1; input.focus();
|
|
247
303
|
};
|
|
304
|
+
input.addEventListener('paste', (e) => {
|
|
305
|
+
const pasted = [...((e.clipboardData && e.clipboardData.files) || [])];
|
|
306
|
+
if (pasted.length) { e.preventDefault(); addFiles(pasted); }
|
|
307
|
+
});
|
|
308
|
+
const composer = el('div', { class: 'sess-composer' }, attachBtn, filePick, input, el('div', { class: 'sess-composer-btns' }, keysBtn, sendBtn));
|
|
309
|
+
for (const t of [composer, termBox]) {
|
|
310
|
+
t.addEventListener('dragover', (e) => { if (e.dataTransfer && [...e.dataTransfer.types].includes('Files')) { e.preventDefault(); composer.classList.add('dropping'); } });
|
|
311
|
+
t.addEventListener('dragleave', () => composer.classList.remove('dropping'));
|
|
312
|
+
t.addEventListener('drop', (e) => { if (!e.dataTransfer || !e.dataTransfer.files.length) return; e.preventDefault(); composer.classList.remove('dropping'); addFiles([...e.dataTransfer.files]); });
|
|
313
|
+
}
|
|
248
314
|
sendBtn.addEventListener('click', sendText);
|
|
249
315
|
input.addEventListener('input', () => { input.rows = composerRows(input.value); });
|
|
250
316
|
input.addEventListener('keydown', (e) => { if (e.key === 'Enter' && (e.metaKey || e.ctrlKey)) { e.preventDefault(); sendText(); } });
|
|
@@ -258,7 +324,8 @@ function openView(box, row) {
|
|
|
258
324
|
more),
|
|
259
325
|
statusLine,
|
|
260
326
|
el('div', { class: 'sess-term-wrap' }, termBox, resume),
|
|
261
|
-
|
|
327
|
+
chips,
|
|
328
|
+
composer,
|
|
262
329
|
tray));
|
|
263
330
|
|
|
264
331
|
if (s.remote) setStatus(`Streaming from ${s.machineNickname}…`);
|
|
@@ -369,9 +436,6 @@ function moreSheet(view) {
|
|
|
369
436
|
])];
|
|
370
437
|
const actions = el('div', { class: 'sheet-actions sess-actions' });
|
|
371
438
|
if (canSwitchDoor(s)) actions.append(el('button', { class: 'btn-primary btn-inline', type: 'button', text: 'Switch door and model', 'data-door': '1', onclick: () => doorSheet(view) }));
|
|
372
|
-
actions.append(s.remote
|
|
373
|
-
? note(`Long text can only be stored for sessions on this machine; type it into the composer instead, or open ${s.machineNickname}’s own console.`)
|
|
374
|
-
: el('a', { class: 'btn-quiet', href: legacyHref('dropzone'), text: 'Paste long text' }));
|
|
375
439
|
blocks.push(actions, closeBlock(view));
|
|
376
440
|
const t = s.telemetry || {};
|
|
377
441
|
blocks.push(details({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoUpdater.d.ts","sourceRoot":"","sources":["../../src/core/AutoUpdater.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AutoUpdater.d.ts","sourceRoot":"","sources":["../../src/core/AutoUpdater.ts"],"names":[],"mappings":"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"}
|
package/dist/core/AutoUpdater.js
CHANGED
|
@@ -625,6 +625,9 @@ export class AutoUpdater {
|
|
|
625
625
|
if (holds.length > 0 && Date.now() >= holdCeiling) {
|
|
626
626
|
console.log(`[AutoUpdater] Restart holds for v${newVersion} ignored: max deferral (${this.gate.getStatus().maxDeferralHours}h) reached (${holds.map((h) => h.name).join(', ')})`);
|
|
627
627
|
holds = [];
|
|
628
|
+
// The supervisor's independent Local Verify guard must honor this
|
|
629
|
+
// same ceiling rather than adding another three-hour wait.
|
|
630
|
+
bypassHolds = true;
|
|
628
631
|
}
|
|
629
632
|
if (holds.length > 0) {
|
|
630
633
|
const soonest = holds[0];
|
|
@@ -687,7 +690,7 @@ export class AutoUpdater {
|
|
|
687
690
|
this.lastRestartRequestedVersion = newVersion;
|
|
688
691
|
this.saveState();
|
|
689
692
|
await new Promise(r => setTimeout(r, 2000));
|
|
690
|
-
if (!this.requestRestart(newVersion))
|
|
693
|
+
if (!this.requestRestart(newVersion, bypassHolds))
|
|
691
694
|
this.updateActivationPendingSince = null;
|
|
692
695
|
return;
|
|
693
696
|
}
|
|
@@ -789,7 +792,7 @@ export class AutoUpdater {
|
|
|
789
792
|
this.clearRestartDeferral();
|
|
790
793
|
this.saveState();
|
|
791
794
|
await new Promise(r => setTimeout(r, 2000));
|
|
792
|
-
if (!this.requestRestart(newVersion))
|
|
795
|
+
if (!this.requestRestart(newVersion, bypassHolds))
|
|
793
796
|
this.updateActivationPendingSince = null;
|
|
794
797
|
return;
|
|
795
798
|
}
|
|
@@ -1009,7 +1012,7 @@ export class AutoUpdater {
|
|
|
1009
1012
|
* a notice that a restart is needed. This is strictly better than attempting
|
|
1010
1013
|
* self-restart, which can loop or leave the port bound.
|
|
1011
1014
|
*/
|
|
1012
|
-
requestRestart(newVersion) {
|
|
1015
|
+
requestRestart(newVersion, bypassHolds = false) {
|
|
1013
1016
|
const previousVersion = this.updateChecker.getInstalledVersion();
|
|
1014
1017
|
const flagPath = path.join(this.stateDir, 'state', 'restart-requested.json');
|
|
1015
1018
|
const data = {
|
|
@@ -1018,6 +1021,7 @@ export class AutoUpdater {
|
|
|
1018
1021
|
targetVersion: newVersion,
|
|
1019
1022
|
previousVersion,
|
|
1020
1023
|
plannedRestart: true, // Signals lifeline/supervisor: this is maintenance, not a crash
|
|
1024
|
+
bypassHolds, // Preserve the explicit forceRestart contract across processes.
|
|
1021
1025
|
expiresAt: new Date(Date.now() + 60 * 60 * 1000).toISOString(), // 1 hour TTL (was 10 min — too short for foreground mode)
|
|
1022
1026
|
pid: process.pid,
|
|
1023
1027
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoUpdater.js","sourceRoot":"","sources":["../../src/core/AutoUpdater.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AutoUpdater.js","sourceRoot":"","sources":["../../src/core/AutoUpdater.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ export interface RestartRequest {
|
|
|
24
24
|
targetVersion?: string;
|
|
25
25
|
previousVersion?: string;
|
|
26
26
|
plannedRestart?: boolean;
|
|
27
|
+
bypassHolds?: boolean;
|
|
27
28
|
expiresAt?: string;
|
|
28
29
|
pid?: number;
|
|
29
30
|
}
|
|
@@ -45,6 +46,7 @@ export declare class ForegroundRestartWatcher extends EventEmitter {
|
|
|
45
46
|
private interval;
|
|
46
47
|
private flagPath;
|
|
47
48
|
private isShuttingDown;
|
|
49
|
+
private deferredRestartRequestedAt;
|
|
48
50
|
constructor(config: ForegroundRestartWatcherConfig);
|
|
49
51
|
start(): void;
|
|
50
52
|
stop(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForegroundRestartWatcher.d.ts","sourceRoot":"","sources":["../../src/core/ForegroundRestartWatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"ForegroundRestartWatcher.d.ts","sourceRoot":"","sources":["../../src/core/ForegroundRestartWatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI3C,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,8GAA8G;IAC9G,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,yDAAyD;IACzD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oFAAoF;IACpF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wEAAwE;IACxE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,wBAAyB,SAAQ,YAAY;IACxD,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,QAAQ,CAA+C;IAC/D,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,0BAA0B,CAAuB;IAEzD,YAAY,MAAM,EAAE,8BAA8B,EAIjD;IAED,KAAK,IAAI,IAAI,CAQZ;IAED,IAAI,IAAI,IAAI,CAKX;IAED;;OAEG;YACW,KAAK;CA+EpB"}
|
|
@@ -20,11 +20,13 @@ import fs from 'node:fs';
|
|
|
20
20
|
import path from 'node:path';
|
|
21
21
|
import { EventEmitter } from 'node:events';
|
|
22
22
|
import { SafeFsExecutor } from './SafeFsExecutor.js';
|
|
23
|
+
import { markPlannedRestartDeferred, plannedRestartVerifyState } from './PlannedRestartVerifyGuard.js';
|
|
23
24
|
export class ForegroundRestartWatcher extends EventEmitter {
|
|
24
25
|
config;
|
|
25
26
|
interval = null;
|
|
26
27
|
flagPath;
|
|
27
28
|
isShuttingDown = false;
|
|
29
|
+
deferredRestartRequestedAt = null;
|
|
28
30
|
constructor(config) {
|
|
29
31
|
super();
|
|
30
32
|
this.config = config;
|
|
@@ -55,6 +57,17 @@ export class ForegroundRestartWatcher extends EventEmitter {
|
|
|
55
57
|
return;
|
|
56
58
|
const raw = fs.readFileSync(this.flagPath, 'utf-8');
|
|
57
59
|
const data = JSON.parse(raw);
|
|
60
|
+
// The foreground consumer races the supervisor for the same flag. Both
|
|
61
|
+
// must honor the active full-suite child before either consumes it.
|
|
62
|
+
if (plannedRestartVerifyState(this.config.stateDir, data).hold
|
|
63
|
+
&& markPlannedRestartDeferred(this.config.stateDir, data)) {
|
|
64
|
+
if (this.deferredRestartRequestedAt !== data.requestedAt) {
|
|
65
|
+
this.deferredRestartRequestedAt = data.requestedAt;
|
|
66
|
+
console.log('[ForegroundRestartWatcher] Planned restart deferred for active local verification');
|
|
67
|
+
}
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
this.deferredRestartRequestedAt = null;
|
|
58
71
|
// Check TTL — but DON'T silently ignore expired requests.
|
|
59
72
|
// In foreground mode, the restart is critical. If the flag expired,
|
|
60
73
|
// it means we've been stale for too long. Still restart.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForegroundRestartWatcher.js","sourceRoot":"","sources":["../../src/core/ForegroundRestartWatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ForegroundRestartWatcher.js","sourceRoot":"","sources":["../../src/core/ForegroundRestartWatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export declare const VERIFY_RESTART_HOLD_MS: number;
|
|
2
|
+
export declare const PLANNED_RESTART_DELIVERY_MS: number;
|
|
3
|
+
export interface PlannedRestartFlag {
|
|
4
|
+
requestedAt?: string;
|
|
5
|
+
plannedRestart?: boolean;
|
|
6
|
+
/** Explicit operator forceRestart already bypasses the updater's own holds. */
|
|
7
|
+
bypassHolds?: boolean;
|
|
8
|
+
expiresAt?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface PlannedRestartVerifyState {
|
|
11
|
+
pending: boolean;
|
|
12
|
+
pendingSinceMs: number | null;
|
|
13
|
+
hold: boolean;
|
|
14
|
+
holdUntilMs: number | null;
|
|
15
|
+
/** This exact request actually waited for a verify and remains deliverable. */
|
|
16
|
+
deferredDelivery?: boolean;
|
|
17
|
+
}
|
|
18
|
+
/** Pure decision on a caller-read request; no write or request consumption. */
|
|
19
|
+
export declare function plannedRestartVerifyState(stateDir: string, request: PlannedRestartFlag | null, now?: number, pidExists?: (pid: number) => boolean): PlannedRestartVerifyState;
|
|
20
|
+
/** The verifier uses this to leave the slot free for a pending restart. */
|
|
21
|
+
export declare function readPlannedRestartVerifyState(stateDir: string, now?: number, pidExists?: (pid: number) => boolean): PlannedRestartVerifyState;
|
|
22
|
+
/** Persist proof that this particular request actually encountered a live verify. */
|
|
23
|
+
export declare function markPlannedRestartDeferred(stateDir: string, request: PlannedRestartFlag, now?: number): boolean;
|
|
24
|
+
/** Only a request actually deferred for verification gets the extended TTL. */
|
|
25
|
+
export declare function recentlyRequestedPlannedRestart(stateDir: string, request: PlannedRestartFlag | null, now?: number): boolean;
|
|
26
|
+
//# sourceMappingURL=PlannedRestartVerifyGuard.d.ts.map
|