clay-server 2.23.0-beta.7 → 2.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/os-users.js
CHANGED
|
@@ -47,7 +47,7 @@ function fsAsUser(op, args, osUserInfo) {
|
|
|
47
47
|
" result.push({ name: e.name, isDir: e.isDirectory(), size: stat.size, mtime: stat.mtimeMs });",
|
|
48
48
|
"}",
|
|
49
49
|
"process.stdout.write(JSON.stringify(result));",
|
|
50
|
-
].join("
|
|
50
|
+
].join(" ");
|
|
51
51
|
} else if (op === "read") {
|
|
52
52
|
script = [
|
|
53
53
|
"var fs = require('fs');",
|
|
@@ -58,14 +58,14 @@ function fsAsUser(op, args, osUserInfo) {
|
|
|
58
58
|
" result.content = fs.readFileSync(f, 'utf8');",
|
|
59
59
|
"}",
|
|
60
60
|
"process.stdout.write(JSON.stringify(result));",
|
|
61
|
-
].join("
|
|
61
|
+
].join(" ");
|
|
62
62
|
} else if (op === "stat") {
|
|
63
63
|
script = [
|
|
64
64
|
"var fs = require('fs');",
|
|
65
65
|
"var f = " + JSON.stringify(args.file) + ";",
|
|
66
66
|
"var stat = fs.statSync(f);",
|
|
67
67
|
"process.stdout.write(JSON.stringify({ size: stat.size, isDir: stat.isDirectory(), mtime: stat.mtimeMs }));",
|
|
68
|
-
].join("
|
|
68
|
+
].join(" ");
|
|
69
69
|
} else if (op === "read_binary") {
|
|
70
70
|
// Read file as base64 for binary content (images, etc.)
|
|
71
71
|
script = [
|
|
@@ -73,7 +73,7 @@ function fsAsUser(op, args, osUserInfo) {
|
|
|
73
73
|
"var f = " + JSON.stringify(args.file) + ";",
|
|
74
74
|
"var buf = fs.readFileSync(f);",
|
|
75
75
|
"process.stdout.write(buf.toString('base64'));",
|
|
76
|
-
].join("
|
|
76
|
+
].join(" ");
|
|
77
77
|
var binOutput = execSync(process.execPath + " -e " + JSON.stringify(script), {
|
|
78
78
|
encoding: "utf8",
|
|
79
79
|
timeout: 10000,
|
|
@@ -89,7 +89,7 @@ function fsAsUser(op, args, osUserInfo) {
|
|
|
89
89
|
"var content = " + JSON.stringify(args.content || "") + ";",
|
|
90
90
|
"fs.writeFileSync(f, content, 'utf8');",
|
|
91
91
|
"process.stdout.write(JSON.stringify({ ok: true }));",
|
|
92
|
-
].join("
|
|
92
|
+
].join(" ");
|
|
93
93
|
} else {
|
|
94
94
|
throw new Error("Unknown fsAsUser operation: " + op);
|
|
95
95
|
}
|
package/lib/public/app.js
CHANGED
|
@@ -31,7 +31,7 @@ import { initMateWizard, openMateWizard, closeMateWizard, handleMateCreated } fr
|
|
|
31
31
|
import { initCommandPalette, handlePaletteSessionSwitch, setPaletteVersion } from './modules/command-palette.js';
|
|
32
32
|
import { initLongPress } from './modules/longpress.js';
|
|
33
33
|
import { initMention, handleMentionStart, handleMentionStream, handleMentionDone, handleMentionError, handleMentionActivity, renderMentionUser, renderMentionResponse } from './modules/mention.js';
|
|
34
|
-
import { initDebate, handleDebateStarted, handleDebateResumed, handleDebateTurn, handleDebateActivity, handleDebateStream, handleDebateTurnDone, handleDebateCommentQueued, handleDebateCommentInjected, handleDebateEnded, handleDebateError, renderDebateStarted, renderDebateTurnDone, renderDebateEnded, renderDebateCommentInjected, renderDebateUserResume, openDebateModal, closeDebateModal, openQuickDebateModal, handleDebateBriefReady, renderDebateBriefReady, isDebateActive } from './modules/debate.js';
|
|
34
|
+
import { initDebate, handleDebateStarted, handleDebateResumed, handleDebateTurn, handleDebateActivity, handleDebateStream, handleDebateTurnDone, handleDebateCommentQueued, handleDebateCommentInjected, handleDebateEnded, handleDebateError, renderDebateStarted, renderDebateTurnDone, renderDebateEnded, renderDebateCommentInjected, renderDebateUserResume, openDebateModal, closeDebateModal, openQuickDebateModal, handleDebateBriefReady, renderDebateBriefReady, isDebateActive, resetDebateState } from './modules/debate.js';
|
|
35
35
|
|
|
36
36
|
// --- Base path for multi-project routing ---
|
|
37
37
|
var slugMatch = location.pathname.match(/^\/p\/([a-z0-9_-]+)/);
|
|
@@ -3666,7 +3666,9 @@ import { initDebate, handleDebateStarted, handleDebateResumed, handleDebateTurn,
|
|
|
3666
3666
|
hideSuggestionChips();
|
|
3667
3667
|
closeSessionInfoPopover();
|
|
3668
3668
|
stopUrgentBlink();
|
|
3669
|
-
// Clear debate UI from previous session
|
|
3669
|
+
// Clear debate UI and state from previous session
|
|
3670
|
+
debateStickyState = null;
|
|
3671
|
+
resetDebateState();
|
|
3670
3672
|
var debateBadges = document.querySelectorAll(".debate-header-badge");
|
|
3671
3673
|
for (var dbi = 0; dbi < debateBadges.length; dbi++) debateBadges[dbi].remove();
|
|
3672
3674
|
removeDebateBottomBar();
|
|
@@ -3674,6 +3676,8 @@ import { initDebate, handleDebateStarted, handleDebateResumed, handleDebateTurn,
|
|
|
3674
3676
|
if (handBar) handBar.remove();
|
|
3675
3677
|
var debateSticky = document.getElementById("debate-sticky");
|
|
3676
3678
|
if (debateSticky) { debateSticky.classList.add("hidden"); debateSticky.innerHTML = ""; }
|
|
3679
|
+
var debateFloat = document.getElementById("debate-info-float");
|
|
3680
|
+
if (debateFloat) { debateFloat.classList.add("hidden"); debateFloat.innerHTML = ""; }
|
|
3677
3681
|
}
|
|
3678
3682
|
|
|
3679
3683
|
// --- Project switching (no full reload) ---
|
|
@@ -23,6 +23,16 @@ export function initDebate(_ctx) {
|
|
|
23
23
|
ctx = _ctx;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
+
export function resetDebateState() {
|
|
27
|
+
debateActive = false;
|
|
28
|
+
debateTopic = "";
|
|
29
|
+
debateRound = 0;
|
|
30
|
+
debatePhase = "idle";
|
|
31
|
+
flushTurnStream();
|
|
32
|
+
currentTurnEl = null;
|
|
33
|
+
currentTurnMateId = null;
|
|
34
|
+
}
|
|
35
|
+
|
|
26
36
|
function buildAvatarUrl(meta) {
|
|
27
37
|
return "https://api.dicebear.com/7.x/" + (meta.avatarStyle || "bottts") + "/svg?seed=" + encodeURIComponent(meta.avatarSeed || meta.mateId || "mate");
|
|
28
38
|
}
|
|
@@ -274,9 +274,13 @@ export function handleFsList(msg) {
|
|
|
274
274
|
treeData[dirPath] = { loaded: true, children: msg.entries || [] };
|
|
275
275
|
|
|
276
276
|
if (msg.error) {
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
277
|
+
if (dirPath === ".") {
|
|
278
|
+
ctx.fileTreeEl.innerHTML = '<div class="file-tree-error">' + escapeHtml(msg.error) + '</div>';
|
|
279
|
+
} else {
|
|
280
|
+
var errEl = ctx.fileTreeEl.querySelector('.file-tree-children[data-parent-path="' + dirPath + '"]');
|
|
281
|
+
if (errEl) {
|
|
282
|
+
errEl.innerHTML = '<div class="file-tree-error">' + escapeHtml(msg.error) + '</div>';
|
|
283
|
+
}
|
|
280
284
|
}
|
|
281
285
|
return;
|
|
282
286
|
}
|