@lloyal-labs/dev-tools 0.4.2 → 0.5.0-alpha.2
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/index.d.ts +134 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +219 -32
- package/dist/index.js.map +1 -1
- package/dist/react.d.ts +7 -1
- package/dist/react.d.ts.map +1 -1
- package/dist/react.js +280 -13
- package/dist/react.js.map +1 -1
- package/dist/store.d.ts +8 -3
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +13 -10
- package/dist/store.js.map +1 -1
- package/package.json +3 -3
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/react.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ReactElement, ReactNode } from 'react';
|
|
2
2
|
import type { DevControl } from './index.js';
|
|
3
|
+
import type { RunFraming } from './index.js';
|
|
3
4
|
import type { DevBridge } from './store.js';
|
|
4
5
|
export type { DevBridge } from './store.js';
|
|
5
6
|
export interface DevPaneProps {
|
|
@@ -18,6 +19,11 @@ export interface DevPaneProps {
|
|
|
18
19
|
cancelAgent?: boolean;
|
|
19
20
|
pause?: boolean;
|
|
20
21
|
};
|
|
22
|
+
/** The harness's run framing, as data — which of its OWN events open and
|
|
23
|
+
* close a run and which mark phases (the labels its agent lanes wear).
|
|
24
|
+
* Declare it beside the other wiring and edit it when your pipeline
|
|
25
|
+
* gains or renames a stage. Default: the stock templates' grammar. */
|
|
26
|
+
framing?: RunFraming;
|
|
21
27
|
/** The harness view itself. The shell renders it in a scroll container
|
|
22
28
|
* above the pane; production (no dev on the wire) gets the same shell
|
|
23
29
|
* with nothing added, so the tree never remounts when the flag arrives.
|
|
@@ -27,5 +33,5 @@ export interface DevPaneProps {
|
|
|
27
33
|
* under the dev chrome. Flowing (page-scroll) views need nothing. */
|
|
28
34
|
children: ReactNode;
|
|
29
35
|
}
|
|
30
|
-
export declare function DevPane({ bridge, controls, title, runCommands, children }: DevPaneProps): ReactElement;
|
|
36
|
+
export declare function DevPane({ bridge, controls, title, runCommands, framing, children }: DevPaneProps): ReactElement;
|
|
31
37
|
//# sourceMappingURL=react.d.ts.map
|
package/dist/react.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKrD,OAAO,KAAK,EACc,UAAU,EACnC,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,SAAS,EAAY,MAAM,YAAY,CAAC;AAEtD,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,SAAS,CAAC;IAClB;8EAC0E;IAC1E,QAAQ,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACjC,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;yEAEqE;IACrE,WAAW,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC3F;;;;;;0EAMsE;IACtE,QAAQ,EAAE,SAAS,CAAC;CACrB;AA2RD,wBAAgB,OAAO,CAAC,EAAE,MAAM,EAAE,QAAa,EAAE,KAAK,EAAE,WAAgB,EAAE,QAAQ,EAAE,EAAE,YAAY,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKrD,OAAO,KAAK,EACc,UAAU,EACnC,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAY,MAAM,YAAY,CAAC;AAEtD,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,SAAS,CAAC;IAClB;8EAC0E;IAC1E,QAAQ,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACjC,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;yEAEqE;IACrE,WAAW,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC3F;;;2EAGuE;IACvE,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB;;;;;;0EAMsE;IACtE,QAAQ,EAAE,SAAS,CAAC;CACrB;AA2RD,wBAAgB,OAAO,CAAC,EAAE,MAAM,EAAE,QAAa,EAAE,KAAK,EAAE,WAAgB,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,YAAY,GAAG,YAAY,CAyJzH"}
|
package/dist/react.js
CHANGED
|
@@ -23,7 +23,7 @@ import { devStoreFor, EDGE_STEP } from './store.js';
|
|
|
23
23
|
const C = {
|
|
24
24
|
text: '#202124', dim: '#5f6368', faint: '#9aa0a6', border: '#e8eaed',
|
|
25
25
|
hair: '#f4f5f7', chromeBg: '#f1f3f4', panelBg: '#fafbfc',
|
|
26
|
-
agent: '#1a73e8', agentDark: '#174ea6', fail: '#b3261e', ok: '#188038',
|
|
26
|
+
agent: '#1a73e8', agentDark: '#174ea6', recon: '#7cacf8', fail: '#b3261e', ok: '#188038',
|
|
27
27
|
warn: '#9a6700', warnBg: '#fef7e0', warnBorder: '#f9d67a',
|
|
28
28
|
};
|
|
29
29
|
const HOST_CPU = '#00897b';
|
|
@@ -246,12 +246,12 @@ function runEndS(m) {
|
|
|
246
246
|
return m.runStartAt === null ? 0 : Math.max(0, (end - m.runStartAt) / 1000);
|
|
247
247
|
}
|
|
248
248
|
// ═══════════════════════════════════════════════════════════════
|
|
249
|
-
export function DevPane({ bridge, controls = [], title, runCommands = {}, children }) {
|
|
249
|
+
export function DevPane({ bridge, controls = [], title, runCommands = {}, framing, children }) {
|
|
250
250
|
// The store is a per-bridge SINGLETON: a remount reattaches to the running
|
|
251
251
|
// fold (full history intact) instead of restarting it and desyncing. It is
|
|
252
252
|
// deliberately NOT destroyed on unmount — it lives with the page, like the
|
|
253
253
|
// bridge itself (dev-gated; a production stream folds nothing).
|
|
254
|
-
const store = devStoreFor(bridge);
|
|
254
|
+
const store = devStoreFor(bridge, framing);
|
|
255
255
|
const rev = useStore(store, (s) => s.rev);
|
|
256
256
|
const m = store.getState().model;
|
|
257
257
|
const [open, setOpen] = useState(false);
|
|
@@ -328,10 +328,13 @@ export function DevPane({ bridge, controls = [], title, runCommands = {}, childr
|
|
|
328
328
|
} }), m.clarifying ? '?' : liveCount > 0 ? liveCount : '!'] })), _jsx("span", { children: summary })] }), toast && _jsx(Notice, { at: toastAt, text: toast }), _jsx("span", { style: { flex: 1 } }), _jsxs("span", { "aria-hidden": "true", style: { display: 'inline-flex', alignItems: 'center', gap: 14 }, children: [_jsx(MiniSpark, { heading: "context", color: C.agent, values: barStrip.map((p) => p.pct), value: barPct === null ? '—' : `${barPct}%` }), _jsx(MiniSpark, { heading: "cpu", color: HOST_CPU, values: barHost.map((h) => h.cpu), value: barLast ? `${barLast.cpu}%` : '—' }), _jsx(MiniSpark, { heading: "mem", color: "#9aa0a6", values: barHost.filter((h) => h.memUsedMb !== null).map((h) => h.memUsedMb), value: barLast && barLast.memUsedMb !== null && barLast.memTotalMb > 0
|
|
329
329
|
? `${(barLast.memUsedMb / 1024).toFixed(1)} / ${Math.round(barLast.memTotalMb / 1024)}G` : '—' }), _jsx(MiniSpark, { heading: "harness", color: "#5f6368", values: barHost.map((h) => h.rssMb), value: barLast ? `${(barLast.rssMb / 1024).toFixed(1)}G` : '—' })] }), _jsx("span", { style: { flex: 1 } }), _jsx("span", { style: { color: C.faint }, "aria-hidden": "true", children: "click to expand" })] }));
|
|
330
330
|
}
|
|
331
|
-
return shell(_jsx(Pane, { store: store, m: m, rev: rev, controls: controls, title: title, runCommands: runCommands, onClose: () => setOpen(false)
|
|
331
|
+
return shell(_jsx(Pane, { store: store, m: m, rev: rev, controls: controls, title: title, runCommands: runCommands, onClose: () => setOpen(false),
|
|
332
|
+
// Thumbnails resolve through the bridge when the harness exposes a
|
|
333
|
+
// content route; the pane never learns the transport, only the URL.
|
|
334
|
+
mediaUrl: bridge.representationUrl ? (d, i) => bridge.representationUrl(d, i) : undefined }));
|
|
332
335
|
}
|
|
333
336
|
// ═══ the docked pane ═══
|
|
334
|
-
function Pane({ store, m, rev, controls, title, runCommands, onClose }) {
|
|
337
|
+
function Pane({ store, m, rev, controls, title, runCommands, onClose, mediaUrl }) {
|
|
335
338
|
const [tab, setTab] = useState('timeline');
|
|
336
339
|
const [selAgent, setSelAgent] = useState(null);
|
|
337
340
|
const [feedW, setFeedW] = useState(feedWidthPref);
|
|
@@ -401,7 +404,7 @@ function Pane({ store, m, rev, controls, title, runCommands, onClose }) {
|
|
|
401
404
|
: 'finish up — agents wrap up and report; the trajectory is kept', style: m.pausedAt !== null || m.windingDownAt !== null
|
|
402
405
|
? { ...runBtn, opacity: 0.4, cursor: 'default' } : runBtn, children: m.windingDownAt !== null ? 'finishing…' : 'finish up' })), runCommands.stop && (_jsx("button", { onClick: () => store.send({ type: 'stop' }), title: "halt the run", style: { ...runBtn, color: C.fail, borderColor: '#f0c4c1' }, children: "stop" }))] })), _jsxs("span", { style: { fontFamily: mono, display: 'inline-flex', alignItems: 'center', gap: 7 }, children: [_jsx("span", { style: { width: 7, height: 7, borderRadius: '50%', background: live ? (m.pausedAt !== null ? C.warn : C.ok) : C.faint } }), live
|
|
403
406
|
? (m.pausedAt !== null ? 'paused' : m.windingDownAt !== null ? 'finishing' : 'live')
|
|
404
|
-
: m.runStartAt === null ? 'idle' : 'run complete'] }), _jsx("span", { style: { cursor: 'pointer', color: C.dim }, onClick: onClose, title: "collapse to the cog", children: "\u2715" })] })] }), tab === 'timeline' && (_jsxs("div", { style: { flex: 1, minHeight: 0, display: 'flex' }, children: [_jsx(Timeline, { m: m, rev: rev, store: store, selAgent: selAgent, onSelect: setSelAgent, toolColor: toolColor }), selAgent
|
|
407
|
+
: m.runStartAt === null ? 'idle' : 'run complete'] }), _jsx("span", { style: { cursor: 'pointer', color: C.dim }, onClick: onClose, title: "collapse to the cog", children: "\u2715" })] })] }), tab === 'timeline' && (_jsxs("div", { style: { flex: 1, minHeight: 0, display: 'flex' }, children: [_jsx(Timeline, { m: m, rev: rev, store: store, selAgent: selAgent, onSelect: setSelAgent, toolColor: toolColor }), selAgent === 'spine' && m.spine && (_jsxs(_Fragment, { children: [_jsx(FeedResizer, { width: feedW, onWidth: (w) => { feedWidthPref = w; setFeedW(w); } }), _jsx(SpineFeed, { m: m, onClose: () => setSelAgent(null), width: feedW, mediaUrl: mediaUrl, toolColor: toolColor })] })), selAgent === 'trunk' && m.trunk.length > 0 && (_jsxs(_Fragment, { children: [_jsx(FeedResizer, { width: feedW, onWidth: (w) => { feedWidthPref = w; setFeedW(w); } }), _jsx(TrunkFeed, { m: m, onClose: () => setSelAgent(null), width: feedW, mediaUrl: mediaUrl })] })), typeof selAgent === 'number' && m.lanes.has(selAgent) && (_jsxs(_Fragment, { children: [_jsx(FeedResizer, { width: feedW, onWidth: (w) => { feedWidthPref = w; setFeedW(w); } }), _jsx(AgentFeed, { m: m, lane: m.lanes.get(selAgent), toolColor: toolColor, onClose: () => setSelAgent(null), onJump: setSelAgent, nowMs: store.getState().paintedAt, width: feedW, send: (c) => store.send(c), canCancel: !!runCommands.cancelAgent })] }))] })), tab === 'sources' && _jsx(Sources, { m: m, toolColor: toolColor }), tab === 'settings' && _jsx(Settings, { m: m, controls: controls, send: (c) => store.send(c) }), _jsxs("div", { style: {
|
|
405
408
|
height: 24, display: 'flex', alignItems: 'center', gap: 14, padding: '0 12px',
|
|
406
409
|
borderTop: `1px solid ${C.border}`, background: '#f8f9fa', fontSize: 10.5, color: C.dim, flex: 'none',
|
|
407
410
|
}, children: [_jsxs("span", { style: { fontFamily: mono }, children: [m.runStartAt === null
|
|
@@ -492,11 +495,121 @@ function Timeline({ m, rev, store, selAgent, onSelect, toolColor }) {
|
|
|
492
495
|
};
|
|
493
496
|
const onMouseUp = () => { drag.current = null; };
|
|
494
497
|
return (_jsxs("div", { style: { flex: 1, minWidth: 0, display: 'flex', flexDirection: 'column', minHeight: 0 }, children: [_jsxs("div", { style: { height: 54, borderBottom: `1px solid ${C.border}`, display: 'flex', flex: 'none' }, children: [_jsx(MetricCell, { heading: "context", color: C.agent, values: strip.slice(-60).map((p) => p.pct), value: pct === null ? '—' : `${pct}% · ${m.pressure[m.pressure.length - 1]?.cellsUsed.toLocaleString()} / ${m.pressure[m.pressure.length - 1]?.nCtx.toLocaleString()}`, title: "kv cells used \u2014 context pressure on the model side" }), _jsx(MetricCell, { heading: "cpu", color: HOST_CPU, values: host.slice(-60).map((h) => h.cpu), value: lastHost ? `${lastHost.cpu}%` : '—', title: "this process's cpu, % of the whole machine" }), _jsx(MetricCell, { heading: "mem", color: "#9aa0a6", values: host.slice(-60).filter((h) => h.memUsedMb !== null).map((h) => h.memUsedMb), value: lastHost && lastHost.memUsedMb !== null && lastHost.memTotalMb > 0
|
|
495
|
-
? `${(lastHost.memUsedMb / 1024).toFixed(1)} / ${Math.round(lastHost.memTotalMb / 1024)}G` : '—', title: "machine memory in use, honestly counted (vm_stat / MemAvailable)" }), _jsx(MetricCell, { heading: "harness", color: "#5f6368", last: true, values: host.slice(-60).map((h) => h.rssMb), value: lastHost ? `${(lastHost.rssMb / 1024).toFixed(1)}G` : '—', title: "this process's resident memory \u2014 weights + KV + runtime" })] }), _jsxs("div", { style: { height: 20, display: 'flex', borderBottom: `1px solid ${C.border}`, flex: 'none' }, children: [_jsx("div", { style: { width: GUTTER, flex: 'none', padding: '4px 0 0 14px' }, children: _jsx("span", { style: label, children: lanes.length ? `${lanes.length} agents` : '' }) }), _jsx("div", { style: { flex: 1, position: 'relative', fontFamily: mono }, children: ticks.map((t) => (_jsx("span", { style: { position: 'absolute', left: px(t) - GUTTER, fontSize: 9, color: C.faint }, children: t >= 60 ? `${Math.floor(t / 60)}m${t % 60 ? String(t % 60).padStart(2, '0') : ''}` : `${t}s` }, t))) })] }), _jsxs("div", { ref: trackRef, style: { flex: 1, position: 'relative', overflowY: 'auto', overflowX: 'hidden', cursor: drag.current ? 'grabbing' : undefined }, onMouseDown: onMouseDown, onMouseMove: onMouseMove, onMouseUp: onMouseUp, onMouseLeave: onMouseUp, onDoubleClick: () => { setFollow(true); setPanWindow(null); }, children: [m.runStartAt === null && (_jsx("div", { style: { position: 'absolute', inset: 0, display: 'grid', placeItems: 'center', color: C.faint, fontSize: 11.5, pointerEvents: 'none' }, children: "run a query \u2014 agents appear here live" })), !follow && live && (_jsx("button", { onClick: (e) => { e.stopPropagation(); setFollow(true); setPanWindow(null); }, style: {
|
|
498
|
+
? `${(lastHost.memUsedMb / 1024).toFixed(1)} / ${Math.round(lastHost.memTotalMb / 1024)}G` : '—', title: "machine memory in use, honestly counted (vm_stat / MemAvailable)" }), _jsx(MetricCell, { heading: "harness", color: "#5f6368", last: true, values: host.slice(-60).map((h) => h.rssMb), value: lastHost ? `${(lastHost.rssMb / 1024).toFixed(1)}G` : '—', title: "this process's resident memory \u2014 weights + KV + runtime" })] }), _jsxs("div", { style: { height: 20, display: 'flex', borderBottom: `1px solid ${C.border}`, flex: 'none' }, children: [_jsx("div", { style: { width: GUTTER, flex: 'none', padding: '4px 0 0 14px' }, children: _jsx("span", { style: label, children: lanes.length ? `${lanes.length} agents` : '' }) }), _jsx("div", { style: { flex: 1, position: 'relative', overflow: 'hidden', fontFamily: mono }, children: ticks.map((t) => (_jsx("span", { style: { position: 'absolute', left: px(t) - GUTTER, fontSize: 9, color: C.faint }, children: t >= 60 ? `${Math.floor(t / 60)}m${t % 60 ? String(t % 60).padStart(2, '0') : ''}` : `${t}s` }, t))) })] }), _jsxs("div", { ref: trackRef, style: { flex: 1, position: 'relative', overflowY: 'auto', overflowX: 'hidden', cursor: drag.current ? 'grabbing' : undefined }, onMouseDown: onMouseDown, onMouseMove: onMouseMove, onMouseUp: onMouseUp, onMouseLeave: onMouseUp, onDoubleClick: () => { setFollow(true); setPanWindow(null); }, children: [m.runStartAt === null && (_jsx("div", { style: { position: 'absolute', inset: 0, display: 'grid', placeItems: 'center', color: C.faint, fontSize: 11.5, pointerEvents: 'none' }, children: "run a query \u2014 agents appear here live" })), !follow && live && (_jsx("button", { onClick: (e) => { e.stopPropagation(); setFollow(true); setPanWindow(null); }, style: {
|
|
496
499
|
position: 'absolute', top: 6, right: 10, zIndex: 3, cursor: 'pointer',
|
|
497
500
|
fontSize: 10.5, padding: '3px 10px', borderRadius: 12, border: `1px solid ${C.border}`,
|
|
498
501
|
background: '#fff', color: C.agentDark, fontWeight: 600, boxShadow: '0 1px 4px rgba(32,33,36,.12)',
|
|
499
|
-
}, children: "\u27F3 follow live" })), _jsxs("div", { style: { position: 'absolute', left: GUTTER, right: 0, top: 0, bottom: 0, pointerEvents: 'none' }, children: [ticks.map((t) => (_jsx("div", { style: { position: 'absolute', left: px(t) - GUTTER, top: 0, bottom: 0, width: 1, background: t % (step * 3) === 0 ? C.border : C.hair } }, t))), live && on(nowS) && (_jsxs(_Fragment, { children: [_jsx("div", { style: { position: 'absolute', left: px(nowS) - GUTTER, right: 0, top: 0, bottom: 0, background: C.panelBg } }), _jsx("div", { style: { position: 'absolute', left: px(nowS) - GUTTER, top: 0, bottom: 0, width: 1, background: C.text, zIndex: 1 } }), _jsx("div", { style: { position: 'absolute', left: px(nowS) - GUTTER, top: 2, transform: 'translateX(-50%)', fontSize: 8.5, background: C.text, color: '#fff', padding: '0 5px', borderRadius: 2, zIndex: 2, fontFamily: mono }, children: "now" })] }))] }),
|
|
502
|
+
}, children: "\u27F3 follow live" })), _jsxs("div", { style: { position: 'absolute', left: GUTTER, right: 0, top: 0, bottom: 0, pointerEvents: 'none' }, children: [ticks.map((t) => (_jsx("div", { style: { position: 'absolute', left: px(t) - GUTTER, top: 0, bottom: 0, width: 1, background: t % (step * 3) === 0 ? C.border : C.hair } }, t))), live && on(nowS) && (_jsxs(_Fragment, { children: [_jsx("div", { style: { position: 'absolute', left: px(nowS) - GUTTER, right: 0, top: 0, bottom: 0, background: C.panelBg } }), _jsx("div", { style: { position: 'absolute', left: px(nowS) - GUTTER, top: 0, bottom: 0, width: 1, background: C.text, zIndex: 1 } }), _jsx("div", { style: { position: 'absolute', left: px(nowS) - GUTTER, top: 2, transform: 'translateX(-50%)', fontSize: 8.5, background: C.text, color: '#fff', padding: '0 5px', borderRadius: 2, zIndex: 2, fontFamily: mono }, children: "now" })] }))] }), (() => {
|
|
503
|
+
// Fork topology, drawn. Pure px()/ROW_H geometry — no DOM reads —
|
|
504
|
+
// and absolutely positioned INSIDE the scroll container, so curves
|
|
505
|
+
// ride with their rows through scroll, pan, and every resize.
|
|
506
|
+
const rows = [];
|
|
507
|
+
if (m.trunk.length > 0)
|
|
508
|
+
rows.push('session');
|
|
509
|
+
if (m.spine)
|
|
510
|
+
rows.push('spine');
|
|
511
|
+
for (const l of lanes)
|
|
512
|
+
rows.push(l.agentId);
|
|
513
|
+
const rowIdx = new Map(rows.map((r, i) => [r, i]));
|
|
514
|
+
const yMid = (r) => rowIdx.get(r) * ROW_H + 19;
|
|
515
|
+
const paths = [];
|
|
516
|
+
if (m.spine && rowIdx.has('spine')) {
|
|
517
|
+
const sx = px(secOf(m.spine.spineAt ?? m.spine.at));
|
|
518
|
+
// Warm lineage: the session's conversation feeds the spine.
|
|
519
|
+
if (rowIdx.has('session') && (m.spine.inherited ?? 0) > 0 && sx >= GUTTER) {
|
|
520
|
+
const sy = rowIdx.get('session') * ROW_H + 22;
|
|
521
|
+
const ty = rowIdx.get('spine') * ROW_H + 19;
|
|
522
|
+
const e = sx - 10;
|
|
523
|
+
const r = 4;
|
|
524
|
+
paths.push(_jsx("path", { d: `M ${sx} ${sy} L ${e + r} ${sy} Q ${e} ${sy} ${e} ${sy + r} L ${e} ${ty - r} Q ${e} ${ty} ${e + r} ${ty} L ${sx - 2} ${ty}`, stroke: "#9aa0a6", strokeWidth: "1.3", fill: "none" }, "warm"));
|
|
525
|
+
}
|
|
526
|
+
// Every lane hangs off the spine at its true spawn moment.
|
|
527
|
+
const spineRow = rowIdx.get('spine');
|
|
528
|
+
for (const l of lanes) {
|
|
529
|
+
// Only lanes that forked AFTER the spine existed hang off it —
|
|
530
|
+
// a planner forks from the session, and the pane draws no
|
|
531
|
+
// parentage it does not know.
|
|
532
|
+
if (m.spine.spineAt === null || l.spawnedAt + 250 < m.spine.spineAt)
|
|
533
|
+
continue;
|
|
534
|
+
const x = px(secOf(l.spawnedAt));
|
|
535
|
+
if (x < GUTTER || !on(secOf(l.spawnedAt)))
|
|
536
|
+
continue;
|
|
537
|
+
const laneRow = rowIdx.get(l.agentId);
|
|
538
|
+
// Nested elbows: drop at a small left offset (wider for deeper
|
|
539
|
+
// rows, so simultaneous forks read as nested guides), rounded
|
|
540
|
+
// corner, horizontal entry into the bar's left edge.
|
|
541
|
+
const off = 8 + (laneRow - spineRow - 1) * 5;
|
|
542
|
+
const sy = spineRow * ROW_H + 23;
|
|
543
|
+
const ty = laneRow * ROW_H + 19;
|
|
544
|
+
const e = x - off;
|
|
545
|
+
const r = 4;
|
|
546
|
+
paths.push(_jsx("path", { d: `M ${x} ${sy} L ${e + r} ${sy} Q ${e} ${sy} ${e} ${sy + r} L ${e} ${ty - r} Q ${e} ${ty} ${e + r} ${ty} L ${x - 2} ${ty}`, stroke: "#9aa0a6", strokeWidth: "1.3", fill: "none" }, `f${l.agentId}`));
|
|
547
|
+
}
|
|
548
|
+
}
|
|
549
|
+
// DAG dependency edges — declared by the orchestrator, never inferred.
|
|
550
|
+
for (const l of lanes) {
|
|
551
|
+
for (const dep of l.after ?? []) {
|
|
552
|
+
const d = m.lanes.get(dep);
|
|
553
|
+
if (!d || d.doneAt === null || !rowIdx.has(dep))
|
|
554
|
+
continue;
|
|
555
|
+
const x2 = px(secOf(l.spawnedAt));
|
|
556
|
+
if (x2 < GUTTER)
|
|
557
|
+
continue;
|
|
558
|
+
const x1 = Math.max(px(secOf(d.doneAt)), GUTTER);
|
|
559
|
+
const y1 = yMid(dep);
|
|
560
|
+
const y2 = yMid(l.agentId);
|
|
561
|
+
const e = Math.max(x2 - 8, x1 + 4);
|
|
562
|
+
const r = 4;
|
|
563
|
+
const vdir = y2 > y1 ? 1 : -1;
|
|
564
|
+
paths.push(_jsx("path", { d: `M ${x1} ${y1} L ${e - r} ${y1} Q ${e} ${y1} ${e} ${y1 + r * vdir} L ${e} ${y2 - r * vdir} Q ${e} ${y2} ${e + r} ${y2} L ${x2} ${y2}`, stroke: "#9aa0a6", strokeWidth: "1.2", strokeDasharray: "4 3", fill: "none" }, `d${dep}-${l.agentId}`));
|
|
565
|
+
}
|
|
566
|
+
}
|
|
567
|
+
if (paths.length === 0)
|
|
568
|
+
return null;
|
|
569
|
+
return (_jsx("svg", { width: "100%", height: rows.length * ROW_H, style: { position: 'absolute', left: 0, top: 0, pointerEvents: 'none', zIndex: 1 }, children: paths }));
|
|
570
|
+
})(), m.trunk.length > 0 && (_jsxs("div", { role: "button", tabIndex: 0, onClick: () => onSelect(selAgent === 'trunk' ? null : 'trunk'), onKeyDown: keyActivate(() => onSelect(selAgent === 'trunk' ? null : 'trunk')), style: {
|
|
571
|
+
position: 'relative', height: ROW_H, display: 'flex', cursor: 'pointer',
|
|
572
|
+
borderBottom: `1px solid ${C.hair}`,
|
|
573
|
+
background: selAgent === 'trunk' ? C.chromeBg : undefined,
|
|
574
|
+
boxShadow: selAgent === 'trunk' ? `inset 3px 0 0 ${C.text}` : undefined,
|
|
575
|
+
}, children: [_jsxs("div", { style: { width: GUTTER, flex: 'none', display: 'flex', alignItems: 'baseline', gap: 6, padding: '12px 0 0 14px', fontSize: 11.5 }, children: [_jsx("span", { style: { fontWeight: 600 }, children: "session" }), _jsxs("span", { style: { color: C.dim, fontSize: 10.5, fontFamily: mono }, children: [m.trunk.length, " turn", m.trunk.length === 1 ? '' : 's'] })] }), _jsx("div", { style: { flex: 1, position: 'relative', overflow: 'hidden' }, children: m.trunk.map((t, i) => {
|
|
576
|
+
const s = secOf(t.at);
|
|
577
|
+
if (!on(s))
|
|
578
|
+
return null;
|
|
579
|
+
// One diamond per side, colored by who spoke; a committed
|
|
580
|
+
// exchange ('turn') lands both at once and shows the pair.
|
|
581
|
+
const sides = t.speaker === 'turn' ? [TRUNK_QUERY, TRUNK_RESPONSE]
|
|
582
|
+
: t.speaker === 'user' ? [TRUNK_QUERY]
|
|
583
|
+
: t.speaker === 'tool' ? [TRUNK_TOOL]
|
|
584
|
+
: [TRUNK_RESPONSE];
|
|
585
|
+
return (_jsxs("span", { title: (t.query ?? t.content).slice(0, 200), children: [sides.map((c, j) => (_jsx("span", { style: {
|
|
586
|
+
position: 'absolute', left: px(s) - GUTTER - 5 + j * 9, top: 13, width: 10, height: 10,
|
|
587
|
+
borderRadius: 2, transform: 'rotate(45deg)', background: c, display: 'inline-block',
|
|
588
|
+
} }, j))), t.attachments.length > 0 && (_jsxs("span", { style: { position: 'absolute', left: px(s) - GUTTER + (sides.length > 1 ? 17 : 8), top: 11, fontSize: 9.5, color: C.dim }, children: ["\uD83D\uDCCE", t.attachments.length] }))] }, i));
|
|
589
|
+
}) })] })), m.spine && (_jsxs("div", { role: "button", tabIndex: 0, onClick: () => onSelect(selAgent === 'spine' ? null : 'spine'), onKeyDown: keyActivate(() => onSelect(selAgent === 'spine' ? null : 'spine')), style: {
|
|
590
|
+
position: 'relative', height: ROW_H, display: 'flex', cursor: 'pointer',
|
|
591
|
+
borderBottom: `1px solid ${C.hair}`,
|
|
592
|
+
background: selAgent === 'spine' ? C.chromeBg : undefined,
|
|
593
|
+
boxShadow: selAgent === 'spine' ? `inset 3px 0 0 ${C.text}` : undefined,
|
|
594
|
+
}, children: [_jsxs("div", { style: { width: GUTTER, flex: 'none', display: 'flex', alignItems: 'baseline', gap: 6, padding: '12px 0 0 14px', fontSize: 11.5 }, children: [_jsx("span", { style: { fontWeight: 600 }, children: "spine" }), _jsx("span", { style: { color: C.dim, fontSize: 10.5, fontFamily: mono }, children: (m.spine.spineCells || m.spine.headerTokens) > 0
|
|
595
|
+
? `${(m.spine.spineCells || m.spine.headerTokens).toLocaleString()} tokens` : 'seeding…' })] }), _jsx("div", { style: { flex: 1, position: 'relative', overflow: 'hidden' }, children: (() => {
|
|
596
|
+
// The spine as a BAR — alive for the whole run — with a tick
|
|
597
|
+
// wherever it grew (the seed, then each extension).
|
|
598
|
+
const s0 = secOf(m.spine.spineAt ?? m.spine.at);
|
|
599
|
+
const x0 = Math.max(px(s0), GUTTER);
|
|
600
|
+
const x1 = Math.max(px(Math.min(endS, w1)), x0 + 4);
|
|
601
|
+
if (px(s0) > px(w1))
|
|
602
|
+
return null;
|
|
603
|
+
return (_jsxs("span", { title: (m.spine.query ?? '').slice(0, 200), children: [_jsx("span", { style: {
|
|
604
|
+
position: 'absolute', top: 15, height: 8, left: x0 - GUTTER, width: x1 - x0,
|
|
605
|
+
background: '#e3e6ea', borderRadius: 4, border: `1px solid ${C.hair}`, display: 'inline-block',
|
|
606
|
+
} }), m.spine.growth.map((g, gi) => {
|
|
607
|
+
const gs = secOf(g.at);
|
|
608
|
+
if (!on(gs))
|
|
609
|
+
return null;
|
|
610
|
+
return (_jsx("span", { title: `+${g.tokens.toLocaleString()} tokens`, style: { position: 'absolute', left: px(gs) - GUTTER, top: 13, width: 2, height: 12, background: C.text } }, gi));
|
|
611
|
+
}), m.spine.attachments.length > 0 && (_jsxs("span", { style: { position: 'absolute', left: x0 - GUTTER + 6, top: 11, fontSize: 9.5, color: C.dim }, children: ["\uD83D\uDCCE", m.spine.attachments.length] }))] }));
|
|
612
|
+
})() })] })), lanes.map((l) => (_jsx(Lane, { m: m, l: l, px: px, on: on, secOf: secOf, nowS: nowS, live: live, selected: selAgent === l.agentId, toolColor: toolColor, onClick: () => onSelect(selAgent === l.agentId ? null : l.agentId), gutter: GUTTER, windowEnd: w1 }, l.agentId)))] })] }));
|
|
500
613
|
}
|
|
501
614
|
const label = {
|
|
502
615
|
fontSize: 10, fontWeight: 600, letterSpacing: '.06em', textTransform: 'uppercase', color: '#b0b6c2',
|
|
@@ -511,8 +624,14 @@ function Lane({ m, l, px, on, secOf, nowS, live, selected, toolColor, onClick, g
|
|
|
511
624
|
const capL = px(s);
|
|
512
625
|
const capR = px(Math.min(e, windowEnd));
|
|
513
626
|
const running = l.doneAt === null;
|
|
514
|
-
const color = l.outcome === 'failed' ? C.fail
|
|
515
|
-
|
|
627
|
+
const color = l.outcome === 'failed' ? C.fail
|
|
628
|
+
: l.role === 'synth' ? C.agentDark
|
|
629
|
+
: l.role === 'recon' ? C.recon
|
|
630
|
+
: C.agent;
|
|
631
|
+
const rgb = l.outcome === 'failed' ? '179,38,30'
|
|
632
|
+
: l.role === 'synth' ? '23,78,166'
|
|
633
|
+
: l.role === 'recon' ? '124,172,248'
|
|
634
|
+
: '26,115,232';
|
|
516
635
|
const myCalls = m.retrievals.filter((r) => r.agentId === l.agentId);
|
|
517
636
|
const myGuards = m.interventions.filter((iv) => iv.agentId === l.agentId && iv.kind !== 'nudge');
|
|
518
637
|
const stripe = (x0, x1, grey = false) => {
|
|
@@ -536,7 +655,7 @@ function Lane({ m, l, px, on, secOf, nowS, live, selected, toolColor, onClick, g
|
|
|
536
655
|
: l.outcome === 'failed' ? `${l.failReason ?? l.dropReason ?? 'failed'} · ${fmtS(e - s)}` : fmtS(e - s);
|
|
537
656
|
const endColor = l.outcome === 'failed' ? C.fail : l.outcome === 'recovered' ? C.agent : '#3c4043';
|
|
538
657
|
return (_jsxs("div", { onClick: onClick, role: "button", tabIndex: 0, onKeyDown: keyActivate(onClick), "aria-label": `open agent ${l.agentId}`, style: {
|
|
539
|
-
display: 'flex', height:
|
|
658
|
+
display: 'flex', height: ROW_H, borderTop: `1px solid ${C.hair}`, position: 'relative', cursor: 'pointer',
|
|
540
659
|
background: selected ? C.chromeBg : cancelled ? 'rgba(179,38,30,.05)' : undefined,
|
|
541
660
|
boxShadow: selected ? `inset 3px 0 0 ${C.text}` : undefined,
|
|
542
661
|
}, children: [cancelled && (_jsx("span", { style: {
|
|
@@ -806,7 +925,125 @@ function AgentFeed({ m, lane, toolColor, onClose, onJump, nowMs, width, send, ca
|
|
|
806
925
|
}, children: [_jsxs("div", { style: {
|
|
807
926
|
height: 30, flex: 'none', display: 'flex', alignItems: 'center', gap: 8, padding: '0 12px',
|
|
808
927
|
borderBottom: `1px solid ${C.border}`, background: '#f8f9fa',
|
|
809
|
-
}, children: [_jsxs("span", { style: { fontFamily: mono, fontWeight: 600, fontSize: 11 }, children: [lane.role ?? 'agent', " #", lane.agentId] }), lane.parentAgentId !== null && m.lanes.has(lane.parentAgentId) && (_jsxs("span", { style: chip, children: ["forked from #", lane.parentAgentId] })), _jsxs("span", { style: chip, children: [lane.outcome, lane.doneAt !== null && m.runStartAt !== null ? ` · ${fmtS((lane.doneAt - lane.spawnedAt) / 1000)}` : ''] }), _jsx("span", { style: { flex: 1 } }), canCancel && lane.doneAt === null && (_jsx("button", { onClick: () => send({ type: 'cancel_agent', agentId: lane.agentId }), "aria-label": "cancel this agent", title: "cancel this agent \u2014 its branch is reclaimed; siblings continue. Works while paused: evaluate trajectories, cull, play", style: { ...runBtn, color: C.fail, borderColor: '#f0c4c1', padding: '2px 7px', display: 'inline-flex', alignItems: 'center' }, children: _jsxs("svg", { width: "12", height: "12", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("polyline", { points: "3 6 5 6 21 6" }), _jsx("path", { d: "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2" }), _jsx("line", { x1: "10", y1: "11", x2: "10", y2: "17" }), _jsx("line", { x1: "14", y1: "11", x2: "14", y2: "17" })] }) })), _jsx("span", { style: { cursor: 'pointer', color: C.dim }, onClick: onClose, title: "close \u2014 the timeline returns to full width", children: "\u2715" })] }), _jsxs("div", { style: { overflowY: 'auto', flex: 1, fontSize: 11, paddingBottom: 8 }, children: [_jsx(EpistemicsChart, { m: m, lane: lane, nowMs: nowMs }), lane.prompt && (_jsxs("div", { style: { borderBottom: `1px solid ${C.border}`, padding: '4px 12px 6px' }, children: [_jsxs("div", { role: "button", tabIndex: 0, onClick: () => toggle('prompt'), onKeyDown: keyActivate(() => toggle('prompt')), style: { display: 'flex', alignItems: 'baseline', gap: 7, cursor: 'pointer', padding: '2px 0' }, title: "the compiled prompt suffix that seeded this agent. In shared-spine mode the system + tool header lives on the spine PREFIX (inherited via fork) and is not repeated here; recursive agents inherit further parent context the same way", children: [_jsx("span", { style: { color: C.faint, fontSize: 9, width: 9, flex: 'none' }, children: expanded.has('prompt') ? '▾' : '▸' }), _jsx("span", { style: { color: C.dim }, children: "prompt" }), _jsxs("span", { style: { fontFamily: mono, fontSize: 10, color: C.faint }, children: [lane.prompt.tokenCount.toLocaleString(), " tok"] })] }), expanded.has('prompt') && _jsx(JsonBlock, { text: lane.prompt.text, raw: true })] })), (lane.failReason || lane.dropReason) && (_jsxs("div", { style: { display: 'flex', alignItems: 'baseline', padding: '6px 12px', gap: 8 }, children: [_jsx("span", { style: { color: C.dim, width: 92, flex: 'none' }, children: "pool said" }), _jsx("span", { style: { fontFamily: mono, fontSize: 11 }, children: lane.dropReason ?? lane.failReason })] })), items.map((it) => it.el), planView, lane.role !== 'planner' && (lane.report !== null || lane.outcome === 'failed') && (_jsxs("div", { style: feedItem, children: [_jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: 7, cursor: 'pointer' }, onClick: () => toggle('report'), children: [_jsx("span", { style: { color: C.faint, fontSize: 9, width: 9, flex: 'none' }, children: reportOpen ? '▾' : '▸' }), _jsx("b", { style: { fontSize: 11 }, children: "report" }), _jsx("span", { style: { color: C.faint }, children: lane.report === null ? 'not delivered' : lane.reportSource === 'recovery' ? 'extracted by recovery' : 'delivered' })] }), reportOpen && lane.report !== null && (
|
|
928
|
+
}, children: [_jsxs("span", { style: { fontFamily: mono, fontWeight: 600, fontSize: 11 }, children: [lane.role ?? 'agent', " #", lane.agentId] }), lane.parentAgentId !== null && m.lanes.has(lane.parentAgentId) && (_jsxs("span", { style: chip, children: ["forked from #", lane.parentAgentId] })), _jsxs("span", { style: chip, children: [lane.outcome, lane.doneAt !== null && m.runStartAt !== null ? ` · ${fmtS((lane.doneAt - lane.spawnedAt) / 1000)}` : ''] }), _jsx("span", { style: { flex: 1 } }), canCancel && lane.doneAt === null && (_jsx("button", { onClick: () => send({ type: 'cancel_agent', agentId: lane.agentId }), "aria-label": "cancel this agent", title: "cancel this agent \u2014 its branch is reclaimed; siblings continue. Works while paused: evaluate trajectories, cull, play", style: { ...runBtn, color: C.fail, borderColor: '#f0c4c1', padding: '2px 7px', display: 'inline-flex', alignItems: 'center' }, children: _jsxs("svg", { width: "12", height: "12", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("polyline", { points: "3 6 5 6 21 6" }), _jsx("path", { d: "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2" }), _jsx("line", { x1: "10", y1: "11", x2: "10", y2: "17" }), _jsx("line", { x1: "14", y1: "11", x2: "14", y2: "17" })] }) })), _jsx("span", { style: { cursor: 'pointer', color: C.dim }, onClick: onClose, title: "close \u2014 the timeline returns to full width", children: "\u2715" })] }), _jsxs("div", { style: { overflowY: 'auto', flex: 1, fontSize: 11, paddingBottom: 8 }, children: [_jsx(EpistemicsChart, { m: m, lane: lane, nowMs: nowMs }), lane.prompt && (_jsxs("div", { style: { borderBottom: `1px solid ${C.border}`, padding: '4px 12px 6px' }, children: [_jsxs("div", { role: "button", tabIndex: 0, onClick: () => toggle('prompt'), onKeyDown: keyActivate(() => toggle('prompt')), style: { display: 'flex', alignItems: 'baseline', gap: 7, cursor: 'pointer', padding: '2px 0' }, title: "the compiled prompt suffix that seeded this agent. In shared-spine mode the system + tool header lives on the spine PREFIX (inherited via fork) and is not repeated here; recursive agents inherit further parent context the same way", children: [_jsx("span", { style: { color: C.faint, fontSize: 9, width: 9, flex: 'none' }, children: expanded.has('prompt') ? '▾' : '▸' }), _jsx("span", { style: { color: C.dim }, children: "prompt" }), _jsxs("span", { style: { fontFamily: mono, fontSize: 10, color: C.faint }, children: [lane.prompt.tokenCount.toLocaleString(), " tok"] })] }), expanded.has('prompt') && _jsx(JsonBlock, { text: lane.prompt.text, raw: true })] })), (lane.failReason || lane.dropReason) && (_jsxs("div", { style: { display: 'flex', alignItems: 'baseline', padding: '6px 12px', gap: 8 }, children: [_jsx("span", { style: { color: C.dim, width: 92, flex: 'none' }, children: "pool said" }), _jsx("span", { style: { fontFamily: mono, fontSize: 11 }, children: lane.dropReason ?? lane.failReason })] })), items.map((it) => it.el), planView, lane.role !== 'planner' && (lane.report !== null || lane.outcome === 'failed') && (_jsxs("div", { style: feedItem, children: [_jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: 7, cursor: 'pointer' }, onClick: () => toggle('report'), children: [_jsx("span", { style: { color: C.faint, fontSize: 9, width: 9, flex: 'none' }, children: reportOpen ? '▾' : '▸' }), _jsx("b", { style: { fontSize: 11 }, children: "report" }), _jsx("span", { style: { color: C.faint }, children: lane.report === null ? 'not delivered' : lane.reportSource === 'recovery' ? 'extracted by recovery' : 'delivered' })] }), reportOpen && lane.report !== null && (() => {
|
|
929
|
+
// Raw <think> never renders — the report splits into the
|
|
930
|
+
// shared reasoning box + what the agent actually said.
|
|
931
|
+
const { reasoning, said } = splitThink(lane.report);
|
|
932
|
+
return (_jsxs("div", { style: { margin: '6px 0 2px 16px' }, children: [reasoning && _jsx(Reasoning, { text: reasoning, open: expanded.has('report-reasoning'), onToggle: () => toggle('report-reasoning') }), _jsx("div", { style: { lineHeight: 1.5, color: '#3c4043', whiteSpace: 'pre-wrap' }, children: said })] }));
|
|
933
|
+
})()] }))] })] }));
|
|
934
|
+
}
|
|
935
|
+
/** One timeline row — session, spine, and every lane share it. The
|
|
936
|
+
* connector overlay derives its geometry from this same constant, which is
|
|
937
|
+
* what makes curves survive any resize without DOM measurement. */
|
|
938
|
+
const ROW_H = 38;
|
|
939
|
+
/** Trunk marker colors — one per conversation side, same family as the
|
|
940
|
+
* lanes: the query is the deep blue everything forks from, the response the
|
|
941
|
+
* light one. Tools are grey. */
|
|
942
|
+
const TRUNK_QUERY = '#174ea6';
|
|
943
|
+
const TRUNK_RESPONSE = '#5f8fd9';
|
|
944
|
+
const TRUNK_TOOL = '#9aa0a6';
|
|
945
|
+
/** Split verbatim model text into its reasoning and its said text. The pane
|
|
946
|
+
* never renders raw `<think>` markup anywhere — reasoning is shown behind
|
|
947
|
+
* {@link Reasoning}. An unclosed block (a cut stream) still splits clean. */
|
|
948
|
+
function splitThink(text) {
|
|
949
|
+
const parts = text.split(/<think>([\s\S]*?)(?:<\/think>|$)/);
|
|
950
|
+
return {
|
|
951
|
+
reasoning: parts.filter((_, k) => k % 2 === 1).join('\n').trim(),
|
|
952
|
+
said: parts.filter((_, k) => k % 2 === 0).join('').trim(),
|
|
953
|
+
};
|
|
954
|
+
}
|
|
955
|
+
/** The expandable reasoning box — one look for every surface that carries
|
|
956
|
+
* model thinking (trunk turns, agent reports). Collapsed by default. */
|
|
957
|
+
function Reasoning({ text, open, onToggle }) {
|
|
958
|
+
return (_jsxs("div", { style: { margin: '0 0 4px' }, children: [_jsxs("div", { role: "button", tabIndex: 0, onClick: onToggle, onKeyDown: keyActivate(onToggle), style: { display: 'flex', alignItems: 'baseline', gap: 7, cursor: 'pointer', padding: '2px 0' }, children: [_jsx("span", { style: { color: C.faint, fontSize: 9, width: 9, flex: 'none' }, children: open ? '▾' : '▸' }), _jsx("span", { style: { color: C.dim }, children: "reasoning" })] }), open && (_jsx("div", { style: { whiteSpace: 'pre-wrap', lineHeight: 1.5, color: C.dim, fontFamily: mono, fontSize: 10.5, maxHeight: 240, overflowY: 'auto', margin: '2px 0 0 16px' }, children: text }))] }));
|
|
959
|
+
}
|
|
960
|
+
/** The spine's feed — the run's root: the user's instruction verbatim
|
|
961
|
+
* (only when the harness declared where it lives — see
|
|
962
|
+
* {@link RunFraming.instruction}), then the compiled header that seeded
|
|
963
|
+
* position 0. This is where a prompt survives when a run fails. */
|
|
964
|
+
function SpineFeed({ m, onClose, width, mediaUrl, toolColor }) {
|
|
965
|
+
// Substance visible by default — only the raw bytes stay behind a click.
|
|
966
|
+
const [headerOpen, setHeaderOpen] = useState(true);
|
|
967
|
+
const [compiledOpen, setCompiledOpen] = useState(false);
|
|
968
|
+
const k = m.spine;
|
|
969
|
+
if (!k)
|
|
970
|
+
return null;
|
|
971
|
+
return (_jsxs("div", { style: {
|
|
972
|
+
width, flex: 'none', borderLeft: '1px solid #d9dce1', display: 'flex',
|
|
973
|
+
flexDirection: 'column', minHeight: 0, background: C.panelBg,
|
|
974
|
+
}, children: [_jsxs("div", { style: {
|
|
975
|
+
height: 30, flex: 'none', display: 'flex', alignItems: 'center', gap: 8, padding: '0 12px',
|
|
976
|
+
borderBottom: `1px solid ${C.border}`, background: '#f8f9fa',
|
|
977
|
+
}, children: [_jsx("span", { style: { fontFamily: mono, fontWeight: 600, fontSize: 11 }, children: "spine" }), _jsx("span", { style: chip, children: "shared agent memory" }), k.inherited !== undefined && (_jsx("span", { style: chip, children: k.inherited > 0 ? `warm · ${k.inherited.toLocaleString()} tok from trunk` : 'cold start' })), k.headerTokens > 0 && (() => {
|
|
978
|
+
const nCtx = m.pressure.length > 0 ? m.pressure[m.pressure.length - 1].nCtx : 0;
|
|
979
|
+
const pct = nCtx > 0 ? Math.round((k.headerTokens / nCtx) * 1000) / 10 : null;
|
|
980
|
+
return _jsxs("span", { style: chip, children: [k.headerTokens.toLocaleString(), " tok", pct !== null ? ` · ${pct}% ctx` : ''] });
|
|
981
|
+
})(), _jsx("span", { style: { flex: 1 } }), _jsx("span", { style: { cursor: 'pointer', color: C.dim }, onClick: onClose, title: "close \u2014 the timeline returns to full width", children: "\u2715" })] }), _jsxs("div", { style: { overflowY: 'auto', flex: 1, fontSize: 11, paddingBottom: 8 }, children: [k.query !== null && (_jsx("div", { style: feedItem, children: _jsxs("div", { style: { background: 'rgba(26,115,232,.05)', borderRadius: 4, padding: '6px 9px' }, children: [_jsxs("div", { style: { display: 'flex', gap: 7, alignItems: 'baseline', marginBottom: 3 }, children: [_jsx("b", { style: { fontSize: 11, color: TRUNK_QUERY }, children: "query" }), _jsx("span", { style: { fontSize: 10.5, color: C.faint }, children: "the user's instruction, as submitted" })] }), k.attachments.length > 0 && (_jsx("div", { style: { display: 'flex', gap: 6, flexWrap: 'wrap', margin: '2px 0 6px' }, children: k.attachments.map((a, j) => mediaUrl ? (_jsx("img", { src: mediaUrl(a.digest), alt: a.digest.slice(0, 12), title: `${a.digest.slice(0, 19)}\u2026`, style: { height: 72, maxWidth: 160, objectFit: 'cover', borderRadius: 4, border: `1px solid ${C.border}` } }, j)) : (_jsxs("span", { style: chip, title: a.digest, children: [a.digest.slice(0, 19), "\\u2026"] }, j))) })), _jsx("div", { style: { whiteSpace: 'pre-wrap', lineHeight: 1.5, color: '#3c4043', fontSize: 11.5, maxHeight: 200, overflowY: 'auto' }, children: k.query })] }) })), (k.tools && k.tools.length > 0) || k.systemText || k.headerText ? (_jsxs("div", { style: { borderBottom: `1px solid ${C.border}`, padding: '4px 12px 6px' }, children: [_jsxs("div", { role: "button", tabIndex: 0, onClick: () => setHeaderOpen((v) => !v), onKeyDown: keyActivate(() => setHeaderOpen((v) => !v)), style: { display: 'flex', alignItems: 'baseline', gap: 7, cursor: 'pointer', padding: '2px 0' }, title: "the shared header prefilled at position 0 \u2014 every agent inherits it via fork", children: [_jsx("span", { style: { color: C.faint, fontSize: 9, width: 9, flex: 'none' }, children: headerOpen ? '▾' : '▸' }), _jsx("span", { style: { color: C.dim }, children: "system + tools" })] }), headerOpen && (_jsxs("div", { style: { margin: '4px 0 2px 16px', display: 'flex', flexDirection: 'column', gap: 8 }, children: [k.tools && k.tools.length > 0 && (_jsx("div", { style: { display: 'flex', flexDirection: 'column', gap: 4 }, children: k.tools.map((t2) => (_jsxs("div", { style: { display: 'flex', gap: 8, alignItems: 'baseline' }, children: [_jsx("span", { style: { flex: 'none', transform: 'translateY(2px)' }, children: _jsx(Badge, { color: toolColor(t2.name), letter: letterOf(t2.name), size: 14 }) }), _jsx("b", { style: { fontFamily: mono, fontSize: 10.5, flex: 'none' }, children: t2.name }), _jsx("span", { style: { color: C.dim, fontSize: 11, lineHeight: 1.4, display: '-webkit-box', WebkitLineClamp: 2, WebkitBoxOrient: 'vertical', overflow: 'hidden' }, title: t2.description, children: t2.description })] }, t2.name))) })), k.systemText && (_jsxs("div", { children: [_jsx("div", { style: { color: C.faint, fontSize: 10, marginBottom: 2 }, children: "system" }), _jsx("div", { style: { lineHeight: 1.5, color: '#3c4043', whiteSpace: 'pre-wrap', fontSize: 11.5, maxHeight: 220, overflowY: 'auto' }, children: k.systemText })] })), k.headerText && (_jsxs("div", { children: [_jsxs("div", { role: "button", tabIndex: 0, onClick: () => setCompiledOpen((v) => !v), onKeyDown: keyActivate(() => setCompiledOpen((v) => !v)), style: { display: 'flex', alignItems: 'baseline', gap: 7, cursor: 'pointer', padding: '2px 0' }, title: "the exact rendered template \u2014 what position 0 actually holds", children: [_jsx("span", { style: { color: C.faint, fontSize: 9, width: 9, flex: 'none' }, children: compiledOpen ? '▾' : '▸' }), _jsx("span", { style: { color: C.dim }, children: "compiled" })] }), compiledOpen && _jsx(JsonBlock, { text: k.headerText, raw: true })] }))] })), (() => {
|
|
982
|
+
// Full accrual: what every fork inherited for free, minus the
|
|
983
|
+
// one shared copy actually prefilled this run. Correct for
|
|
984
|
+
// chain extensions, warm trunk inheritance, and recursive
|
|
985
|
+
// forks — parallel degenerates to header × (n − 1).
|
|
986
|
+
// Only lanes that actually forked the spine count as sharers —
|
|
987
|
+
// the same attribution the connectors draw. A pre-spine lane
|
|
988
|
+
// (the planner) never inherited it and never shows here.
|
|
989
|
+
// Saved follows the cache-read convention: every token an agent
|
|
990
|
+
// forked instead of prefilling counts. The spine's own build is
|
|
991
|
+
// the cache write — never netted out of the headline.
|
|
992
|
+
const sharers = [...m.lanes.values()].filter((l2) => l2.inherited !== undefined);
|
|
993
|
+
const saved = sharers.reduce((n2, l2) => n2 + (l2.inherited ?? 0), 0);
|
|
994
|
+
if (saved <= 0 && sharers.length < 2)
|
|
995
|
+
return null;
|
|
996
|
+
return (_jsxs("div", { style: { padding: '5px 0 1px 16px', fontSize: 11, color: C.dim }, children: [sharers.length >= 2 && (_jsxs(_Fragment, { children: ["shared by ", _jsx("span", { style: { fontFamily: mono }, children: sharers.length }), " agents", saved > 0 ? ' · ' : ''] })), saved > 0 && (_jsxs(_Fragment, { children: ["tokens saved ", _jsx("span", { style: { fontFamily: mono }, children: saved.toLocaleString() })] }))] }));
|
|
997
|
+
})()] })) : null] })] }));
|
|
998
|
+
}
|
|
999
|
+
/** The trunk's feed — the same panel grammar as {@link AgentFeed}, for the
|
|
1000
|
+
* session's own conversation: each `warmDelta` turn verbatim, its KV cost,
|
|
1001
|
+
* and the media that entered with it (thumbnails when the bridge exposes a
|
|
1002
|
+
* content resolver, digest chips otherwise). */
|
|
1003
|
+
function TrunkFeed({ m, onClose, width, mediaUrl }) {
|
|
1004
|
+
const [thinkOpen, setThinkOpen] = useState(() => new Set());
|
|
1005
|
+
// Responses default COLLAPSED — stats stay visible, the body (reasoning +
|
|
1006
|
+
// text) expands on click. A committed exchange's response half can be a
|
|
1007
|
+
// whole brief; the feed must not pay its render until asked.
|
|
1008
|
+
const [respOpen, setRespOpen] = useState(() => new Set());
|
|
1009
|
+
const toggleResp = (i) => {
|
|
1010
|
+
setRespOpen((prev) => {
|
|
1011
|
+
const next = new Set(prev);
|
|
1012
|
+
if (next.has(i))
|
|
1013
|
+
next.delete(i);
|
|
1014
|
+
else
|
|
1015
|
+
next.add(i);
|
|
1016
|
+
return next;
|
|
1017
|
+
});
|
|
1018
|
+
};
|
|
1019
|
+
const toggleThink = (i) => {
|
|
1020
|
+
setThinkOpen((prev) => {
|
|
1021
|
+
const next = new Set(prev);
|
|
1022
|
+
if (next.has(i))
|
|
1023
|
+
next.delete(i);
|
|
1024
|
+
else
|
|
1025
|
+
next.add(i);
|
|
1026
|
+
return next;
|
|
1027
|
+
});
|
|
1028
|
+
};
|
|
1029
|
+
return (_jsxs("div", { style: {
|
|
1030
|
+
width, flex: 'none', borderLeft: '1px solid #d9dce1', display: 'flex',
|
|
1031
|
+
flexDirection: 'column', minHeight: 0, background: C.panelBg,
|
|
1032
|
+
}, children: [_jsxs("div", { style: {
|
|
1033
|
+
height: 30, flex: 'none', display: 'flex', alignItems: 'center', gap: 8, padding: '0 12px',
|
|
1034
|
+
borderBottom: `1px solid ${C.border}`, background: '#f8f9fa',
|
|
1035
|
+
}, children: [_jsx("span", { style: { fontFamily: mono, fontWeight: 600, fontSize: 11 }, children: "session" }), _jsx("span", { style: chip, children: "the conversation" }), _jsx("span", { style: { flex: 1 } }), _jsx("span", { style: { cursor: 'pointer', color: C.dim }, onClick: onClose, title: "close \u2014 the timeline returns to full width", children: "\u2715" })] }), _jsx("div", { style: { overflowY: 'auto', flex: 1, fontSize: 11, paddingBottom: 8 }, children: m.trunk.map((t, i) => {
|
|
1036
|
+
// Query and response render as their OWN blocks — a committed
|
|
1037
|
+
// exchange (`speaker: 'turn'`) carries both halves structurally,
|
|
1038
|
+
// and single-sided deltas carry one. Raw <think> never renders:
|
|
1039
|
+
// the response side splits into the shared reasoning box.
|
|
1040
|
+
const isTurn = t.speaker === 'turn';
|
|
1041
|
+
const q = isTurn ? (t.query ?? '') : t.speaker === 'user' ? t.content : '';
|
|
1042
|
+
const rRaw = isTurn ? (t.response ?? '') : (t.speaker === 'assistant' || t.speaker === 'tool' || t.speaker === undefined) ? t.content : '';
|
|
1043
|
+
const { reasoning, said } = splitThink(rRaw);
|
|
1044
|
+
const meta = (_jsxs("span", { style: { fontFamily: mono, fontSize: 10, color: C.faint }, children: [t.cells.toLocaleString(), " tokens"] }));
|
|
1045
|
+
return (_jsxs("div", { style: feedItem, children: [(q || t.attachments.length > 0) && (_jsxs("div", { style: { background: 'rgba(26,115,232,.05)', borderRadius: 4, padding: '6px 9px', margin: '0 0 6px' }, children: [_jsxs("div", { style: { display: 'flex', gap: 7, alignItems: 'baseline', marginBottom: 3 }, children: [_jsx("b", { style: { fontSize: 11, color: C.agentDark }, children: "query" }), meta] }), t.attachments.length > 0 && (_jsx("div", { style: { display: 'flex', gap: 6, flexWrap: 'wrap', margin: '2px 0 6px' }, children: t.attachments.map((a, j) => mediaUrl ? (_jsx("img", { src: mediaUrl(a.digest), alt: a.mediaType ?? a.digest.slice(0, 12), title: `${a.mediaType ?? 'media'} · ${a.digest.slice(0, 19)}…`, style: { height: 72, maxWidth: 160, objectFit: 'cover', borderRadius: 4, border: `1px solid ${C.border}` } }, j)) : (_jsxs("span", { style: chip, title: a.digest, children: [a.mediaType ?? 'media', " \u00B7 ", a.digest.slice(0, 19), "\u2026"] }, j))) })), q && (_jsx("div", { style: { whiteSpace: 'pre-wrap', lineHeight: 1.5, color: '#3c4043', fontFamily: mono, fontSize: 10.5, maxHeight: 200, overflowY: 'auto' }, children: q }))] })), rRaw && (_jsxs("div", { children: [_jsxs("div", { role: "button", tabIndex: 0, onClick: () => toggleResp(i), onKeyDown: keyActivate(() => toggleResp(i)), style: { display: 'flex', gap: 7, alignItems: 'baseline', marginBottom: 3, cursor: 'pointer' }, children: [_jsx("span", { style: { color: C.faint, fontSize: 9, width: 9, flex: 'none' }, children: respOpen.has(i) ? '\u25be' : '\u25b8' }), _jsx("b", { style: { fontSize: 11, color: TRUNK_RESPONSE }, children: t.speaker === 'tool' ? 'tool' : 'response' }), !q && meta, (t.agentTokens ?? 0) > 0 && (_jsxs("span", { style: { fontFamily: mono, fontSize: 10, color: C.faint }, children: [t.agentTokens.toLocaleString(), " tokens"] })), t.wallMs !== undefined && (_jsx("span", { style: { fontFamily: mono, fontSize: 10, color: C.faint }, children: fmtS(t.wallMs / 1000) }))] }), respOpen.has(i) && (_jsxs("div", { style: { margin: '0 0 0 16px' }, children: [reasoning && _jsx(Reasoning, { text: reasoning, open: thinkOpen.has(i), onToggle: () => toggleThink(i) }), said && (_jsx("div", { style: { whiteSpace: 'pre-wrap', lineHeight: 1.5, color: '#3c4043', fontFamily: mono, fontSize: 10.5, maxHeight: 300, overflowY: 'auto' }, children: said }))] }))] }))] }, i));
|
|
1046
|
+
}) })] }));
|
|
810
1047
|
}
|
|
811
1048
|
const feedItem = { padding: '7px 12px', borderTop: '1px solid #eceef1' };
|
|
812
1049
|
const chip = {
|
|
@@ -917,6 +1154,14 @@ const SETTING_META = {
|
|
|
917
1154
|
desc: 'flat runs one research wave over the plan; deep lets agents recurse into sub-plans.',
|
|
918
1155
|
how: 'Change it here; it applies to your next run.',
|
|
919
1156
|
},
|
|
1157
|
+
'model.imageMaxTokens': {
|
|
1158
|
+
desc: 'Ceiling on what ONE image costs in KV. Measured on Qwen3.5 with a 176 KB photo: 564 cells uncapped, 251 at 256. Lower it to fit more images into a context; auto lets the model metadata decide.',
|
|
1159
|
+
how: 'Change it here and the runtime reloads on the new value. It does NOT shrink the projector\u2019s warmup allocation, so it will not rescue a boot that runs out of GPU memory before any image arrives.',
|
|
1160
|
+
},
|
|
1161
|
+
'model.imageMinTokens': {
|
|
1162
|
+
desc: 'Floor on per-image detail. Grounding tasks need it high \u2014 llama.cpp warns Qwen-VL wants at least 1024 to read positions reliably.',
|
|
1163
|
+
how: 'Change it here and the runtime reloads on the new value. Raise it if the model reads an image but places things wrongly in it.',
|
|
1164
|
+
},
|
|
920
1165
|
'sources.outputDir': {
|
|
921
1166
|
desc: 'Where per-query run-dirs and the session trace are written. Empty means where the harness started.',
|
|
922
1167
|
how: 'Edit harness.yml → sources.outputDir; the next run picks it up.',
|
|
@@ -980,6 +1225,28 @@ function Settings({ m, controls, send }) {
|
|
|
980
1225
|
? _jsx(HarnessSettings, { m: m, controls: controls, send: send, selKey: selKey, onSelect: setSelKey })
|
|
981
1226
|
: _jsx(AbilityPage, { m: m, name: cat, send: send })] }));
|
|
982
1227
|
}
|
|
1228
|
+
/** A DevControl drawn as a stepped slider: the steps ARE `ctl.values`, in the
|
|
1229
|
+
* order the template declared them, so there is no numeric range to keep in
|
|
1230
|
+
* sync with the option list and no value can be selected that the command
|
|
1231
|
+
* would not accept. Commits on release, not on drag \u2014 each change reloads
|
|
1232
|
+
* the runtime, and every intermediate step would be a reload nobody asked
|
|
1233
|
+
* for. */
|
|
1234
|
+
function SteppedSlider({ ctl, value, onSelect, send }) {
|
|
1235
|
+
const at = Math.max(0, ctl.values.indexOf(value ?? ''));
|
|
1236
|
+
const [dragging, setDragging] = useState(null);
|
|
1237
|
+
const shown = dragging ?? at;
|
|
1238
|
+
const commit = (i) => {
|
|
1239
|
+
setDragging(null);
|
|
1240
|
+
if (ctl.values[i] !== value) {
|
|
1241
|
+
onSelect();
|
|
1242
|
+
send({ type: ctl.command, [ctl.field]: ctl.values[i] });
|
|
1243
|
+
}
|
|
1244
|
+
};
|
|
1245
|
+
return (_jsxs("span", { onClick: (e) => e.stopPropagation(), style: { display: 'flex', alignItems: 'center', gap: 10, width: 276, flex: 'none' }, children: [_jsx("input", { type: "range", min: 0, max: ctl.values.length - 1, step: 1, value: shown, "aria-label": ctl.key, "aria-valuetext": String(ctl.values[shown]), onChange: (e) => setDragging(Number(e.target.value)), onPointerUp: (e) => commit(Number(e.target.value)), onKeyUp: (e) => commit(Number(e.target.value)), onBlur: () => setDragging(null), style: { flex: 1, accentColor: C.text, cursor: 'pointer', minWidth: 0 } }), _jsx("span", { style: {
|
|
1246
|
+
fontFamily: mono, fontSize: 11, color: C.text, width: 46, flex: 'none',
|
|
1247
|
+
textAlign: 'right', fontVariantNumeric: 'tabular-nums',
|
|
1248
|
+
}, children: ctl.values[shown] })] }));
|
|
1249
|
+
}
|
|
983
1250
|
function HarnessSettings({ m, controls, send, selKey, onSelect }) {
|
|
984
1251
|
const config = m.config;
|
|
985
1252
|
const byTier = (tier) => Object.entries(KEY_TIERS).filter(([, t]) => t === tier).map(([k]) => k);
|
|
@@ -994,7 +1261,7 @@ function HarnessSettings({ m, controls, send, selKey, onSelect }) {
|
|
|
994
1261
|
display: 'flex', alignItems: 'center', gap: 8, padding: '5px 14px 5px 11px', minHeight: 36,
|
|
995
1262
|
borderLeft: selected ? `3px solid ${C.text}` : '3px solid transparent', cursor: 'pointer',
|
|
996
1263
|
background: selected ? C.chromeBg : undefined,
|
|
997
|
-
}, children: [_jsx("span", { style: { fontFamily: mono, fontSize: 11.5, fontWeight: 500 }, children: key }), _jsx("span", { style: { flex: 1 } }), ctl?.note && _jsx("span", { style: { color: C.faint, fontSize: 10.5, marginRight: 10, flex: 'none' }, children: ctl.note }), ctl ? (_jsx("span", { style: { display: 'flex', border: '1px solid #dadce0', borderRadius: 4, overflow: 'hidden', width: 276, flex: 'none' }, children: ctl.values.map((v) => (_jsx("span", { onClick: (e) => { e.stopPropagation(); onSelect(key); send({ type: ctl.command, [ctl.field]: v }); }, role: "button", tabIndex: 0, "aria-pressed": v === value, onKeyDown: keyActivate(() => { onSelect(key); send({ type: ctl.command, [ctl.field]: v }); }), style: {
|
|
1264
|
+
}, children: [_jsx("span", { style: { fontFamily: mono, fontSize: 11.5, fontWeight: 500 }, children: key }), _jsx("span", { style: { flex: 1 } }), ctl?.note && _jsx("span", { style: { color: C.faint, fontSize: 10.5, marginRight: 10, flex: 'none' }, children: ctl.note }), ctl?.render === 'slider' ? (_jsx(SteppedSlider, { ctl: ctl, value: value === undefined || value === null ? undefined : String(value), onSelect: () => onSelect(key), send: send })) : ctl ? (_jsx("span", { style: { display: 'flex', border: '1px solid #dadce0', borderRadius: 4, overflow: 'hidden', width: 276, flex: 'none' }, children: ctl.values.map((v) => (_jsx("span", { onClick: (e) => { e.stopPropagation(); onSelect(key); send({ type: ctl.command, [ctl.field]: v }); }, role: "button", tabIndex: 0, "aria-pressed": v === value, onKeyDown: keyActivate(() => { onSelect(key); send({ type: ctl.command, [ctl.field]: v }); }), style: {
|
|
998
1265
|
flex: 1, fontSize: 11, padding: '5px 0', textAlign: 'center', cursor: 'pointer',
|
|
999
1266
|
background: v === value ? C.text : '#fff', color: v === value ? '#fff' : C.dim,
|
|
1000
1267
|
fontWeight: v === value ? 500 : 400, borderLeft: '1px solid #e8eaed',
|