zelari-code 2.46.0 → 2.46.1

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/cli/app.js CHANGED
@@ -19,27 +19,10 @@ import { shortenCwd } from './utils/paths.js';
19
19
  import { formatTodoStatusSummary } from './sessionTodos.js';
20
20
  import { formatKrakenLiveSummary } from './tools/krakenLive.js';
21
21
  import { getVerifyChip, permissionsChip } from './kraken/verifyStatus.js';
22
- // v2.32 (S4): jail honesty chip visible advisory when no backend exists.
23
- import { activeJailMode, probeJailBackend } from './safety/osJail.js';
24
- /**
25
- * Jail chip for the StatusBar (v2.32 S4): "jail: on (bwrap)" when a real
26
- * backend is active AND required, "jail: advisory (win32)" when execution is
27
- * a VISIBLE fail-open on a platform with no honest backend. ZELARI_OS_JAIL=off
28
- * hides the chip (explicit opt-out, stated in the docs). Probe is memoized
29
- * per platform inside osJail, so this is cheap on re-render.
30
- */
31
- function jailStatusChip() {
32
- const mode = activeJailMode();
33
- if (mode === 'off')
34
- return null;
35
- const probe = probeJailBackend();
36
- if (!probe.available) {
37
- return { label: `jail: advisory (${probe.backend})`, tone: 'yellow' };
38
- }
39
- return mode === 'required'
40
- ? { label: `jail: on (${probe.backend})`, tone: 'green' }
41
- : { label: `jail: advisory (${probe.backend})`, tone: 'yellow' };
42
- }
22
+ // v2.33 (slice 5): the jail honesty chip is resolved ONCE per env/platform
23
+ // (components/statusChips) the TUI no longer probes the backend on a paint.
24
+ import { cachedJailStatusChip } from './components/statusChips.js';
25
+ import { createInputDraftStore } from './components/inputDraft.js';
43
26
  import { formatKrakenGraphSummary } from './kraken/graphStatus.js';
44
27
  import '@zelari/core/skills/builtin/debugging';
45
28
  import '@zelari/core/skills/builtin/docs';
@@ -94,7 +77,13 @@ const providerDefaults = {
94
77
  * (useSession, useChatTurn, useSlashDispatch).
95
78
  */
96
79
  export function App() {
97
- const [input, setInput] = useState('');
80
+ // v2.33 (slice 5): the prompt draft is NOT App state. It lives in a store
81
+ // owned here and consumed by <InputBar> (see components/inputDraft.ts), so a
82
+ // keystroke re-renders the input bar alone — not Static / LiveRegion /
83
+ // StatusBar / Sidebar. `setInput` keeps the exact signature the slash
84
+ // pipeline already uses (clearing the prompt after a command).
85
+ const [inputDraft] = useState(() => createInputDraftStore());
86
+ const setInput = useCallback((value) => inputDraft.set(value), [inputDraft]);
98
87
  const [busy, setBusy] = useState(false);
99
88
  const [providerConfig, setProviderConfig] = useState(() => getProviderConfig());
100
89
  const [sessionStats, setSessionStats] = useState({
@@ -138,7 +127,6 @@ export function App() {
138
127
  // through the existing picker. No-op when the env var is unset.
139
128
  usePermissionBroker({ setPicker, setMessages: session.setMessages });
140
129
  const size = useTerminalSize();
141
- const gitChanges = useGitChanges();
142
130
  const cwd = useMemo(() => shortenCwd(process.cwd(), 32), []);
143
131
  // v0.7.9: execution timer — elapsed time of the in-flight turn (shown in
144
132
  // the StatusBar as `⏱ 12s`, then frozen as `last 34s` when the run ends).
@@ -272,6 +260,12 @@ export function App() {
272
260
  useEffect(() => {
273
261
  setSidebarOpen((prev) => sidebarVisibility(size.columns, size.rows, prev));
274
262
  }, [size.columns, size.rows]);
263
+ // v2.34 (slice 7): the sidebar is the only reader of the git snapshot, so the
264
+ // 4s poll stays hot only while that panel is on screen or a turn is in flight
265
+ // (files are moving); otherwise it idles down to 20s instead of spawning four
266
+ // `git` processes a minute forever. `hot` also forces an immediate refresh on
267
+ // the flip, so opening the sidebar never shows a stale chip.
268
+ const gitChanges = useGitChanges({ hot: busy || sidebarOpen });
275
269
  // The Static feed: banner first, then finalized messages. `key` lets /clear
276
270
  // remount Static so its internal "already printed" index resets. clearEpoch
277
271
  // is composed in so /clear forces a remount even within the same session.
@@ -290,8 +284,8 @@ export function App() {
290
284
  React.createElement(Box, { flexDirection: "row" },
291
285
  React.createElement(Box, { flexDirection: "column", flexGrow: 1, paddingX: 1 },
292
286
  React.createElement(LiveRegion, { live: session.live, busy: busy, elapsedMs: timer.elapsedMs, waitingForUser: picker !== null, waitingSinceMs: pickerSince }),
293
- picker ? (React.createElement(SelectList, { title: picker.title, items: picker.items, onSelect: onPickerSelect, onCancel: onPickerCancel, maxVisible: Math.max(4, Math.min(10, size.rows - 10)) })) : (React.createElement(InputBar, { value: input, onChange: setInput, onSubmit: handleSubmit, disabled: busy })),
294
- React.createElement(StatusBar, { model: activeModel, provider: activeProviderSpec.id, sessionId: session.sessionId ? session.sessionId.slice(0, 8) : '...', sessionActive: session.sessionActive, queueCount: chatTurn.queueCount, busy: busy, mode: mode, phase: phase, cwd: cwd, elapsedMs: timer.elapsedMs, lastMs: timer.lastMs, costUsd: sessionStats.totalCostUsd, cachedTokens: sessionStats.cachedTokens, cacheHitRate: sessionStats.cacheHitRate || 0, contextUsed: sessionStats.contextTokens || 0, contextLimit: Number(process.env.ZELARI_CONTEXT_LIMIT) || 200_000, todoSummary: formatTodoStatusSummary(), krakenLive: formatKrakenLiveSummary() ?? undefined, krakenGraph: formatKrakenGraphSummary() ?? undefined, verify: getVerifyChip() ?? undefined, permissions: permissionsChip(phase), jail: jailStatusChip() })),
287
+ picker ? (React.createElement(SelectList, { title: picker.title, items: picker.items, onSelect: onPickerSelect, onCancel: onPickerCancel, maxVisible: Math.max(4, Math.min(10, size.rows - 10)) })) : (React.createElement(InputBar, { draft: inputDraft, onSubmit: handleSubmit, disabled: busy })),
288
+ React.createElement(StatusBar, { model: activeModel, provider: activeProviderSpec.id, sessionId: session.sessionId ? session.sessionId.slice(0, 8) : '...', sessionActive: session.sessionActive, queueCount: chatTurn.queueCount, busy: busy, mode: mode, phase: phase, cwd: cwd, elapsedMs: timer.elapsedMs, lastMs: timer.lastMs, costUsd: sessionStats.totalCostUsd, cachedTokens: sessionStats.cachedTokens, cacheHitRate: sessionStats.cacheHitRate || 0, contextUsed: sessionStats.contextTokens || 0, contextLimit: Number(process.env.ZELARI_CONTEXT_LIMIT) || 200_000, todoSummary: formatTodoStatusSummary(), krakenLive: formatKrakenLiveSummary() ?? undefined, krakenGraph: formatKrakenGraphSummary() ?? undefined, verify: getVerifyChip() ?? undefined, permissions: permissionsChip(phase), jail: cachedJailStatusChip() })),
295
289
  sidebarOpen && (React.createElement(Sidebar, { version: VERSION, changes: gitChanges, rows: size.rows })))));
296
290
  }
297
291
  // Re-export so legacy imports keep working (Task v0.4.2 audit split).
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":"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"}
@@ -1,41 +1,31 @@
1
1
  import React from 'react';
2
2
  import { Box, Text } from 'ink';
3
3
  import TextInput from 'ink-text-input';
4
+ import { useInputDraft } from './inputDraft.js';
4
5
  /**
5
6
  * Input bar — the user prompt editor at the bottom of the TUI.
6
7
  *
7
- * Performance: React.memo with custom comparator. `onChange` and `onSubmit`
8
- * are arrow functions created in App's render (line 2183-2185) which would
9
- * defeat React.memo's default shallow equal. The custom comparator ignores
10
- * those function identities the InputBar re-renders only when value or
11
- * disabled actually change. This stops the input cursor from being reset on
12
- * every streaming token delta from the LLM (visible jitter on the bottom
13
- * row of the terminal).
8
+ * Performance: React.memo with an explicit comparator over the two props that
9
+ * actually change the painted bar (`draft` identity + `disabled`). `onSubmit`
10
+ * is a fresh closure on every App render, so its identity is deliberately
11
+ * ignored; the latest one is mirrored through a ref and read at call time
12
+ * (v0.4.3 audit fix: a stale closure would route /submit with pre-stream
13
+ * values of messages/sessionId). The cursor therefore survives streaming
14
+ * token deltas — nothing re-renders this bar unless the draft or the disabled
15
+ * state really changed.
14
16
  */
15
- function InputBarImpl({ value, onChange, onSubmit, disabled }) {
16
- // The App-level React.memo comparator intentionally ignores onChange/onSubmit
17
- // identity changes (those are fresh closures every App render). To still
18
- // pick up the latest closures inside the (sometimes-skipped) memo'd
19
- // render, mirror them through refs that are always read at call-time.
20
- // v0.4.3 audit fix: without this, typing a long prompt while the parent
21
- // re-renders (e.g. on streaming tokens) would route /submit through a
22
- // stale closure capturing pre-stream values of messages/sessionId/etc.
17
+ function InputBarImpl({ draft, onSubmit, disabled }) {
18
+ const value = useInputDraft(draft);
23
19
  const onSubmitRef = React.useRef(onSubmit);
24
- const onChangeRef = React.useRef(onChange);
25
20
  onSubmitRef.current = onSubmit;
26
- onChangeRef.current = onChange;
27
21
  const stableSubmit = React.useCallback((v) => onSubmitRef.current(v), []);
28
- const stableChange = React.useCallback((v) => onChangeRef.current(v), []);
29
22
  return (React.createElement(Box, { borderStyle: "single", borderColor: "gray", paddingX: 1 },
30
23
  React.createElement(Text, { color: "cyan", bold: true }, "\u276F "),
31
- React.createElement(TextInput, { value: value, onChange: stableChange, onSubmit: stableSubmit, placeholder: disabled ? '...' : 'Prompt, /skills, or @path' })));
24
+ React.createElement(TextInput, { value: value, onChange: draft.set, onSubmit: stableSubmit, placeholder: disabled ? '...' : 'Prompt, /skills, or @path' })));
32
25
  }
33
- export const InputBar = React.memo(InputBarImpl, (prev, next) => {
34
- return (prev.value === next.value &&
35
- prev.disabled === next.disabled
36
- // onChange/onSubmit identity changes ignored: App passes fresh arrows each
37
- // render. The TextInput handles its own internal state; re-binding to the
38
- // new closures is safe.
39
- );
40
- });
26
+ /** Explicit comparator exported so the contract is pinned by a test. */
27
+ export function inputBarPropsEqual(prev, next) {
28
+ return prev.draft === next.draft && prev.disabled === next.disabled;
29
+ }
30
+ export const InputBar = React.memo(InputBarImpl, inputBarPropsEqual);
41
31
  //# sourceMappingURL=InputBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputBar.js","sourceRoot":"","sources":["../../../src/cli/components/InputBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AASvC;;;;;;;;;;GAUG;AACH,SAAS,YAAY,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAiB;IAC1E,8EAA8E;IAC9E,yEAAyE;IACzE,oEAAoE;IACpE,sEAAsE;IACtE,wEAAwE;IACxE,sEAAsE;IACtE,uEAAuE;IACvE,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC3C,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IAC/B,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IAC/B,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClF,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAElF,OAAO,CACL,oBAAC,GAAG,IAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC;QACtD,oBAAC,IAAI,IAAC,KAAK,EAAC,MAAM,EAAC,IAAI,oBAAU;QACjC,oBAAC,SAAS,IACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,2BAA2B,GAC3D,CACE,CACP,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;IAC9D,OAAO,CACL,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;QACzB,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ;IAC/B,2EAA2E;IAC3E,0EAA0E;IAC1E,wBAAwB;KACzB,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"InputBar.js","sourceRoot":"","sources":["../../../src/cli/components/InputBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,aAAa,EAAwB,MAAM,iBAAiB,CAAC;AActE;;;;;;;;;;;GAWG;AACH,SAAS,YAAY,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAiB;IAChE,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAEnC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC3C,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IAC/B,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAElF,OAAO,CACL,oBAAC,GAAG,IAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC;QACtD,oBAAC,IAAI,IAAC,KAAK,EAAC,MAAM,EAAC,IAAI,oBAAU;QACjC,oBAAC,SAAS,IACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,KAAK,CAAC,GAAG,EACnB,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,2BAA2B,GAC3D,CACE,CACP,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,kBAAkB,CAAC,IAAmB,EAAE,IAAmB;IACzE,OAAO,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,CAAC;AACtE,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC"}
@@ -16,7 +16,7 @@ import { Spinner } from './Spinner.js';
16
16
  * region as short as possible. A single status line + the input bar + the
17
17
  * streaming tail is always well under a screen, so no full repaint.
18
18
  */
19
- export function StatusBar({ model, provider, sessionId, sessionActive, queueCount = 0, busy = false, mode = 'kraken', phase = 'build', cwd, elapsedMs = null, lastMs = null, costUsd = 0, cachedTokens = 0, cacheHitRate = 0, contextUsed = 0, contextLimit = 0, todoSummary = null, krakenLive = null, krakenGraph = null, verify = null, permissions = null, jail = null, }) {
19
+ function StatusBarImpl({ model, provider, sessionId, sessionActive, queueCount = 0, busy = false, mode = 'kraken', phase = 'build', cwd, elapsedMs = null, lastMs = null, costUsd = 0, cachedTokens = 0, cacheHitRate = 0, contextUsed = 0, contextLimit = 0, todoSummary = null, krakenLive = null, krakenGraph = null, verify = null, permissions = null, jail = null, }) {
20
20
  const ctxLabel = contextLimit > 0
21
21
  ? `${formatTokens(contextUsed)}/${formatTokens(contextLimit)}`
22
22
  : contextUsed > 0
@@ -92,4 +92,48 @@ export function StatusBar({ model, provider, sessionId, sessionActive, queueCoun
92
92
  "session ",
93
93
  sessionId)))));
94
94
  }
95
+ /**
96
+ * Chip props are plain `{label, tone}` objects recreated on every App render,
97
+ * so prop IDENTITY is not the contract — the visible chip is. Comparing the
98
+ * fields keeps `<StatusBar>` from repainting when (and only when) nothing on
99
+ * the bar actually changed.
100
+ */
101
+ export function statusChipPropsEqual(prev, next) {
102
+ if (prev === next)
103
+ return true;
104
+ if (!prev || !next)
105
+ return false;
106
+ return prev.label === next.label && prev.tone === next.tone;
107
+ }
108
+ /**
109
+ * Memo comparator — the whole bar is a pure function of its props, so equal
110
+ * props mean a skipped repaint. During a run App re-renders up to ~30×/s
111
+ * (streaming deltas + timer); the status line and its chips only re-render
112
+ * when something shown on it really moved (diagnosi 2026-09-15, slice 5).
113
+ */
114
+ export function statusBarPropsEqual(prev, next) {
115
+ return (prev.model === next.model &&
116
+ prev.provider === next.provider &&
117
+ prev.sessionId === next.sessionId &&
118
+ prev.sessionActive === next.sessionActive &&
119
+ prev.queueCount === next.queueCount &&
120
+ prev.busy === next.busy &&
121
+ prev.mode === next.mode &&
122
+ prev.phase === next.phase &&
123
+ prev.cwd === next.cwd &&
124
+ prev.elapsedMs === next.elapsedMs &&
125
+ prev.lastMs === next.lastMs &&
126
+ prev.costUsd === next.costUsd &&
127
+ prev.cachedTokens === next.cachedTokens &&
128
+ prev.cacheHitRate === next.cacheHitRate &&
129
+ prev.contextUsed === next.contextUsed &&
130
+ prev.contextLimit === next.contextLimit &&
131
+ prev.todoSummary === next.todoSummary &&
132
+ prev.krakenLive === next.krakenLive &&
133
+ prev.krakenGraph === next.krakenGraph &&
134
+ statusChipPropsEqual(prev.verify, next.verify) &&
135
+ statusChipPropsEqual(prev.permissions, next.permissions) &&
136
+ statusChipPropsEqual(prev.jail, next.jail));
137
+ }
138
+ export const StatusBar = React.memo(StatusBarImpl, statusBarPropsEqual);
95
139
  //# sourceMappingURL=StatusBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBar.js","sourceRoot":"","sources":["../../../src/cli/components/StatusBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAgEvC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,SAAS,EACT,aAAa,EACb,UAAU,GAAG,CAAC,EACd,IAAI,GAAG,KAAK,EACZ,IAAI,GAAG,QAAQ,EACf,KAAK,GAAG,OAAO,EACf,GAAG,EACH,SAAS,GAAG,IAAI,EAChB,MAAM,GAAG,IAAI,EACb,OAAO,GAAG,CAAC,EACX,YAAY,GAAG,CAAC,EAChB,YAAY,GAAG,CAAC,EAChB,WAAW,GAAG,CAAC,EACf,YAAY,GAAG,CAAC,EAChB,WAAW,GAAG,IAAI,EAClB,UAAU,GAAG,IAAI,EACjB,WAAW,GAAG,IAAI,EAClB,MAAM,GAAG,IAAI,EACb,WAAW,GAAG,IAAI,EAClB,IAAI,GAAG,IAAI,GACI;IACf,MAAM,QAAQ,GACZ,YAAY,GAAG,CAAC;QACd,CAAC,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,IAAI,YAAY,CAAC,YAAY,CAAC,EAAE;QAC9D,CAAC,CAAC,WAAW,GAAG,CAAC;YACf,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC;YAC3B,CAAC,CAAC,IAAI,CAAC;IAEb,MAAM,SAAS,GACb,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC3E,MAAM,SAAS,GACb,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;IAEvE,OAAO,CACL,oBAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAC,MAAM,EAAC,cAAc,EAAC,eAAe,EAAC,GAAG,EAAE,CAAC;QAElE,oBAAC,GAAG,IAAC,UAAU,EAAE,CAAC;YAClB,oBAAC,IAAI,IAAC,IAAI,EAAC,UAAU;gBACnB,oBAAC,IAAI,IAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAC1C,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CACrB;gBACP,oBAAC,IAAI,IAAC,QAAQ,cAAS;gBACvB,oBAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,IACpD,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CACnC;gBACP,oBAAC,IAAI,IAAC,QAAQ,qBAAW;gBACzB,oBAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,SAAS,IACxB,SAAS,CACL;gBACN,MAAM,CAAC,CAAC,CAAC,CACR;oBACE,oBAAC,IAAI,IAAC,QAAQ,qBAAW;oBACzB,oBAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,MAAM,CAAC,IAAI,IAC1B,MAAM,CAAC,KAAK,CACR,CACN,CACJ,CAAC,CAAC,CAAC,IAAI;gBACP,WAAW,CAAC,CAAC,CAAC,CACb;oBACE,oBAAC,IAAI,IAAC,QAAQ,qBAAW;oBACzB,oBAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,WAAW,CAAC,IAAI,IAC/B,WAAW,CAAC,KAAK,CACb,CACN,CACJ,CAAC,CAAC,CAAC,IAAI;gBACR,oBAAC,IAAI,IAAC,QAAQ,qBAAW;gBACxB,IAAI,CAAC,CAAC,CAAC,CACN;oBACE,oBAAC,IAAI,IAAC,QAAQ,qBAAW;oBACzB,oBAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,IAAI,CAAC,IAAI,IACxB,IAAI,CAAC,KAAK,CACN,CACN,CACJ,CAAC,CAAC,CAAC,IAAI;gBACR,oBAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM,IAAE,QAAQ,CAAQ;gBACzC,oBAAC,IAAI,IAAC,QAAQ,qBAAW;gBACzB,oBAAC,IAAI,QAAE,KAAK,CAAQ;gBACnB,GAAG,CAAC,CAAC,CAAC,CACL;oBACE,oBAAC,IAAI,IAAC,QAAQ,qBAAW;oBACzB,oBAAC,IAAI,IAAC,KAAK,EAAC,MAAM,IAAE,GAAG,CAAQ,CAC9B,CACJ,CAAC,CAAC,CAAC,IAAI,CACH,CACD;QACN,oBAAC,GAAG,IAAC,UAAU,EAAE,CAAC;YAClB,oBAAC,IAAI,IAAC,IAAI,EAAC,UAAU;gBAClB,IAAI,IAAI,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,CAC5B;oBACE,oBAAC,OAAO,IAAC,KAAK,EAAC,QAAQ,GAAG;oBAC1B,oBAAC,IAAI,IAAC,KAAK,EAAC,QAAQ;;wBAAG,cAAc,CAAC,SAAS,CAAC,CAAQ;oBACxD,oBAAC,IAAI,IAAC,QAAQ,qBAAW,CACxB,CACJ,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CACpB;oBACE,oBAAC,IAAI,IAAC,QAAQ;;wBAAO,cAAc,CAAC,MAAM,CAAC,CAAQ;oBACnD,oBAAC,IAAI,IAAC,QAAQ,qBAAW,CACxB,CACJ,CAAC,CAAC,CAAC,IAAI;gBACP,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAChB;oBACE,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS;;wBAAQ,UAAU,CAAQ;oBAC/C,oBAAC,IAAI,IAAC,QAAQ,qBAAW,CACxB,CACJ,CAAC,CAAC,CAAC,IAAI;gBACP,WAAW,CAAC,CAAC,CAAC,CACb;oBACE,oBAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,IAAE,WAAW,CAAQ;oBACzC,oBAAC,IAAI,IAAC,QAAQ,qBAAW,CACxB,CACJ,CAAC,CAAC,CAAC,IAAI;gBACP,UAAU,CAAC,CAAC,CAAC,CACZ;oBACE,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,IAAE,UAAU,CAAQ;oBACzC,oBAAC,IAAI,IAAC,QAAQ,qBAAW,CACxB,CACJ,CAAC,CAAC,CAAC,IAAI;gBACP,WAAW,CAAC,CAAC,CAAC,CACb;oBACE,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,IAAE,WAAW,CAAQ;oBAC1C,oBAAC,IAAI,IAAC,QAAQ,qBAAW,CACxB,CACJ,CAAC,CAAC,CAAC,IAAI;gBACP,QAAQ,CAAC,CAAC,CAAC,CACV;oBACE,oBAAC,IAAI,IAAC,KAAK,EAAC,MAAM,IAAE,QAAQ,CAAQ;oBACpC,oBAAC,IAAI,IAAC,QAAQ,qBAAW,CACxB,CACJ,CAAC,CAAC,CAAC,IAAI;gBACP,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CACb;oBACE,oBAAC,IAAI,IAAC,KAAK,EAAC,OAAO,IAAE,UAAU,CAAC,OAAO,CAAC,CAAQ;oBAC/C,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAClB,oBAAC,IAAI,IAAC,QAAQ;;wBAAI,YAAY,CAAC,YAAY,CAAC;mCAAgB,CAC7D,CAAC,CAAC,CAAC,IAAI;oBACP,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAClB,oBAAC,IAAI,IAAC,QAAQ;;wBAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC;gCAAa,CAC7D,CAAC,CAAC,CAAC,IAAI;oBACR,oBAAC,IAAI,IAAC,QAAQ,qBAAW,CACxB,CACJ,CAAC,CAAC,CAAC,IAAI;gBACR,oBAAC,IAAI,IAAC,QAAQ;;oBAAU,SAAS,CAAQ,CACpC,CACD,CACF,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"StatusBar.js","sourceRoot":"","sources":["../../../src/cli/components/StatusBar.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * inputDraft.ts — the TUI prompt draft lives in a store OUTSIDE React.
3
+ *
4
+ * Why (diagnosi 2026-09-15 `-diagnosi-lag-input-e-desync-modelli.md`, slice 5):
5
+ * the draft used to be `useState` inside `App` (`src/cli/app.tsx`), so EVERY
6
+ * keystroke reconciled the whole ink tree — `<Static>`, `<LiveRegion>`,
7
+ * `<StatusBar>` (with its jail probe + todo/kraken/verify chip formatting) and
8
+ * `<Sidebar>`. A keystroke is a LOCAL edit: it must re-render the input bar and
9
+ * nothing else.
10
+ *
11
+ * The draft now lives here and only the components that actually DISPLAY it
12
+ * subscribe (`InputBar` via `useInputDraft`). `App` keeps writing to the same
13
+ * store (`setInput('')` after a slash command) so the send/clear flow — and
14
+ * every slash command — behaves exactly as before.
15
+ *
16
+ * Subscribers are notified synchronously through `useSyncExternalStore`: a
17
+ * string snapshot compares by value, so React never re-renders for an
18
+ * unchanged draft.
19
+ */
20
+ import { useSyncExternalStore } from 'react';
21
+ /**
22
+ * Create a draft store. One per `App` instance (`useState` lazy init), never a
23
+ * module-level singleton: two mounted apps (or tests) must not share a draft.
24
+ */
25
+ export function createInputDraftStore(initial = '') {
26
+ let value = initial;
27
+ const listeners = new Set();
28
+ const emit = () => {
29
+ for (const listener of listeners)
30
+ listener();
31
+ };
32
+ return {
33
+ get: () => value,
34
+ set(next) {
35
+ if (next === value)
36
+ return; // no change → no notification → no render
37
+ value = next;
38
+ emit();
39
+ },
40
+ clear() {
41
+ if (value === '')
42
+ return;
43
+ value = '';
44
+ emit();
45
+ },
46
+ subscribe(listener) {
47
+ listeners.add(listener);
48
+ return () => {
49
+ listeners.delete(listener);
50
+ };
51
+ },
52
+ };
53
+ }
54
+ /**
55
+ * Read the draft. This is the ONLY hook that re-renders per keystroke —
56
+ * everything else in the app tree is left alone.
57
+ */
58
+ export function useInputDraft(store) {
59
+ return useSyncExternalStore(store.subscribe, store.get, store.get);
60
+ }
61
+ //# sourceMappingURL=inputDraft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inputDraft.js","sourceRoot":"","sources":["../../../src/cli/components/inputDraft.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAc7C;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAO,GAAG,EAAE;IAChD,IAAI,KAAK,GAAG,OAAO,CAAC;IACpB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAC;IAExC,MAAM,IAAI,GAAG,GAAS,EAAE;QACtB,KAAK,MAAM,QAAQ,IAAI,SAAS;YAAE,QAAQ,EAAE,CAAC;IAC/C,CAAC,CAAC;IAEF,OAAO;QACL,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK;QAChB,GAAG,CAAC,IAAY;YACd,IAAI,IAAI,KAAK,KAAK;gBAAE,OAAO,CAAC,0CAA0C;YACtE,KAAK,GAAG,IAAI,CAAC;YACb,IAAI,EAAE,CAAC;QACT,CAAC;QACD,KAAK;YACH,IAAI,KAAK,KAAK,EAAE;gBAAE,OAAO;YACzB,KAAK,GAAG,EAAE,CAAC;YACX,IAAI,EAAE,CAAC;QACT,CAAC;QACD,SAAS,CAAC,QAAoB;YAC5B,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxB,OAAO,GAAG,EAAE;gBACV,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC7B,CAAC,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,KAAsB;IAClD,OAAO,oBAAoB,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;AACrE,CAAC"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * statusChips.ts — the StatusBar chips whose computation is NOT free.
3
+ *
4
+ * v2.32 (S4) put the OS-jail honesty chip in the status bar: "jail: on (bwrap)"
5
+ * / "jail: advisory (win32)". Its value depends only on the environment, the
6
+ * active policy-load surface and the platform — never on the render that shows
7
+ * it. Computing it inside the render body meant a `probeJailBackend()` call per
8
+ * paint (diagnosi 2026-09-15, slice 5), and with a test backend injected
9
+ * `probe()` runs fresh every single call.
10
+ *
11
+ * `cachedJailStatusChip()` resolves the chip ONCE per distinct inputs and hands
12
+ * back the SAME object identity afterwards, so a memoized `<StatusBar>` sees
13
+ * equal props and bails out of the repaint entirely.
14
+ *
15
+ * The cache key is every input that can flip the chip: platform, the jail /
16
+ * permission / policy-load env vars, the CI flag and the registered
17
+ * policy-load surface. A runtime change of any of them re-resolves the chip.
18
+ */
19
+ import { activeJailMode, probeJailBackend, OS_JAIL_ENV } from '../safety/osJail.js';
20
+ import { activePolicyLoadSurface, POLICY_LOAD_MODE_ENV } from '../safety/policyLoadMode.js';
21
+ /**
22
+ * Jail chip for the StatusBar (v2.32 S4): "jail: on (bwrap)" when a real
23
+ * backend is active AND required, "jail: advisory (win32)" when execution is
24
+ * a VISIBLE fail-open on a platform with no honest backend. `ZELARI_OS_JAIL=off`
25
+ * hides the chip (explicit opt-out, stated in the docs).
26
+ */
27
+ export function jailStatusChip(env = process.env, platform = process.platform) {
28
+ const mode = activeJailMode(env);
29
+ if (mode === 'off')
30
+ return null;
31
+ const probe = probeJailBackend(platform);
32
+ if (!probe.available) {
33
+ return { label: `jail: advisory (${probe.backend})`, tone: 'yellow' };
34
+ }
35
+ return mode === 'required'
36
+ ? { label: `jail: on (${probe.backend})`, tone: 'green' }
37
+ : { label: `jail: advisory (${probe.backend})`, tone: 'yellow' };
38
+ }
39
+ /** Every input the chip depends on, flattened into a comparable key. */
40
+ function jailChipKey(env, platform) {
41
+ return [
42
+ platform,
43
+ env[OS_JAIL_ENV] ?? '',
44
+ env.ZELARI_PERMISSION_PRESET ?? '',
45
+ env[POLICY_LOAD_MODE_ENV] ?? '',
46
+ env.CI ?? '',
47
+ activePolicyLoadSurface(),
48
+ ].join('|');
49
+ }
50
+ let chipCache = null;
51
+ /**
52
+ * Cached jail chip — safe to call from a render body: the (potentially
53
+ * expensive) probe runs once per distinct key, and repeated calls return the
54
+ * SAME object so `<StatusBar>`'s memo comparator sees identical props.
55
+ */
56
+ export function cachedJailStatusChip(env = process.env, platform = process.platform) {
57
+ const key = jailChipKey(env, platform);
58
+ if (chipCache && chipCache.key === key)
59
+ return chipCache.chip;
60
+ const chip = jailStatusChip(env, platform);
61
+ chipCache = { key, chip };
62
+ return chip;
63
+ }
64
+ /**
65
+ * TEST-ONLY: drop the memoized chip so a test can observe a fresh resolve
66
+ * (injected backend / env). Production never needs it — the key invalidates.
67
+ */
68
+ export function resetJailChipCacheForTests() {
69
+ chipCache = null;
70
+ }
71
+ //# sourceMappingURL=statusChips.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statusChips.js","sourceRoot":"","sources":["../../../src/cli/components/statusChips.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAQ5F;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAyB,OAAO,CAAC,GAAG,EACpC,WAAmB,OAAO,CAAC,QAAQ;IAEnC,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,IAAI,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAChC,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrB,OAAO,EAAE,KAAK,EAAE,mBAAmB,KAAK,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IACxE,CAAC;IACD,OAAO,IAAI,KAAK,UAAU;QACxB,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,KAAK,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE;QACzD,CAAC,CAAC,EAAE,KAAK,EAAE,mBAAmB,KAAK,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACrE,CAAC;AAED,wEAAwE;AACxE,SAAS,WAAW,CAAC,GAAsB,EAAE,QAAgB;IAC3D,OAAO;QACL,QAAQ;QACR,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE;QACtB,GAAG,CAAC,wBAAwB,IAAI,EAAE;QAClC,GAAG,CAAC,oBAAoB,CAAC,IAAI,EAAE;QAC/B,GAAG,CAAC,EAAE,IAAI,EAAE;QACZ,uBAAuB,EAAE;KAC1B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC;AAED,IAAI,SAAS,GAAoD,IAAI,CAAC;AAEtE;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAyB,OAAO,CAAC,GAAG,EACpC,WAAmB,OAAO,CAAC,QAAQ;IAEnC,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACvC,IAAI,SAAS,IAAI,SAAS,CAAC,GAAG,KAAK,GAAG;QAAE,OAAO,SAAS,CAAC,IAAI,CAAC;IAC9D,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC3C,SAAS,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B;IACxC,SAAS,GAAG,IAAI,CAAC;AACnB,CAAC"}
@@ -104,8 +104,30 @@ async function snapshotGitChanges(cwd) {
104
104
  files: mergeChanges(parseNumstat(unstaged), parseNumstat(staged), parseUntracked(status)),
105
105
  };
106
106
  }
107
+ /**
108
+ * Fast cadence: the sidebar chip is live-ish while the reader watches.
109
+ * (Unchanged from the pre-slice value.)
110
+ */
111
+ export const GIT_POLL_MS = 4000;
112
+ /**
113
+ * Idle cadence: what the loop settles on when nothing has changed for
114
+ * `GIT_IDLE_AFTER_TICKS` snapshots in a row and nobody is watching. Still
115
+ * fresh enough that an out-of-band edit shows up within ~20s, at a fifth of
116
+ * the process churn.
117
+ */
118
+ export const GIT_IDLE_POLL_MS = 20_000;
119
+ /** Unchanged snapshots tolerated at the fast cadence before idling down (12s). */
120
+ export const GIT_IDLE_AFTER_TICKS = 3;
121
+ /** Delay before the next poll: fast while hot, backed off once quiet. */
122
+ export function nextGitPollDelay(quietTicks, opts) {
123
+ if (opts.hot)
124
+ return opts.pollMs;
125
+ return quietTicks >= opts.idleAfterTicks
126
+ ? Math.max(opts.pollMs, opts.idlePollMs)
127
+ : opts.pollMs;
128
+ }
107
129
  export function useGitChanges(opts = {}) {
108
- const { pollMs = 4000, cwd = process.cwd() } = opts;
130
+ const { pollMs = GIT_POLL_MS, idlePollMs = GIT_IDLE_POLL_MS, idleAfterTicks = GIT_IDLE_AFTER_TICKS, hot = false, cwd = process.cwd(), snapshot = snapshotGitChanges, } = opts;
109
131
  const [changes, setChanges] = useState(EMPTY_GIT_CHANGES);
110
132
  // Serialize the state through a ref + JSON compare so an unchanged poll
111
133
  // result does not trigger a re-render (and thus an Ink repaint).
@@ -113,22 +135,31 @@ export function useGitChanges(opts = {}) {
113
135
  useEffect(() => {
114
136
  let cancelled = false;
115
137
  let timer = null;
138
+ // Consecutive unchanged snapshots — the idle back-off's only input.
139
+ let quiet = 0;
116
140
  const tick = async () => {
117
141
  try {
118
- const snap = await snapshotGitChanges(cwd);
142
+ const snap = await snapshot(cwd);
119
143
  if (cancelled)
120
144
  return;
121
145
  const json = JSON.stringify(snap);
122
146
  if (json !== lastJson.current) {
123
147
  lastJson.current = json;
148
+ quiet = 0;
124
149
  setChanges(snap);
125
150
  }
151
+ else {
152
+ quiet += 1;
153
+ }
126
154
  }
127
155
  catch {
128
- // Best-effort — keep the previous snapshot.
156
+ // Best-effort — keep the previous snapshot, and count it as quiet: a
157
+ // broken `git` (missing binary, lock storm) must not keep us hot.
158
+ quiet += 1;
159
+ }
160
+ if (!cancelled) {
161
+ timer = setTimeout(tick, nextGitPollDelay(quiet, { pollMs, idlePollMs, idleAfterTicks, hot }));
129
162
  }
130
- if (!cancelled)
131
- timer = setTimeout(tick, pollMs);
132
163
  };
133
164
  void tick();
134
165
  return () => {
@@ -136,7 +167,10 @@ export function useGitChanges(opts = {}) {
136
167
  if (timer !== null)
137
168
  clearTimeout(timer);
138
169
  };
139
- }, [pollMs, cwd]);
170
+ // `hot` is a dependency on purpose: flipping it (sidebar opened, turn
171
+ // started) restarts the loop — immediate refresh + fast cadence — so the
172
+ // panel never opens onto a stale chip.
173
+ }, [pollMs, idlePollMs, idleAfterTicks, hot, cwd, snapshot]);
140
174
  return changes;
141
175
  }
142
176
  //# sourceMappingURL=useGitChanges.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useGitChanges.js","sourceRoot":"","sources":["../../../src/cli/hooks/useGitChanges.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useGitChanges.js","sourceRoot":"","sources":["../../../src/cli/hooks/useGitChanges.ts"],"names":[],"mappings":"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"}