zelari-code 2.57.0 → 2.59.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/cli/budget/modelContextBuilder.js +27 -4
  2. package/dist/cli/budget/modelContextBuilder.js.map +1 -1
  3. package/dist/cli/headless/runOneTurn.js +14 -5
  4. package/dist/cli/headless/runOneTurn.js.map +1 -1
  5. package/dist/cli/hooks/skillCompare.js +9 -3
  6. package/dist/cli/hooks/skillCompare.js.map +1 -1
  7. package/dist/cli/hooks/useChatTurn.js +44 -6
  8. package/dist/cli/hooks/useChatTurn.js.map +1 -1
  9. package/dist/cli/main.bundled.js +1537 -989
  10. package/dist/cli/main.bundled.js.map +4 -4
  11. package/dist/cli/runHeadless.js +7 -0
  12. package/dist/cli/runHeadless.js.map +1 -1
  13. package/dist/cli/safety/destructiveCommands.js +21 -0
  14. package/dist/cli/safety/destructiveCommands.js.map +1 -1
  15. package/dist/cli/safety/permissionAdapter.js +70 -0
  16. package/dist/cli/safety/permissionAdapter.js.map +1 -0
  17. package/dist/cli/safety/permissionCompat.js +69 -0
  18. package/dist/cli/safety/permissionCompat.js.map +1 -0
  19. package/dist/cli/safety/permissionGate.js +97 -26
  20. package/dist/cli/safety/permissionGate.js.map +1 -1
  21. package/dist/cli/safety/policyEngine.js +41 -8
  22. package/dist/cli/safety/policyEngine.js.map +1 -1
  23. package/dist/cli/safety/policyLayers.js +25 -21
  24. package/dist/cli/safety/policyLayers.js.map +1 -1
  25. package/dist/cli/safety/resourceClaims.js +6 -33
  26. package/dist/cli/safety/resourceClaims.js.map +1 -1
  27. package/dist/cli/skillHistory.js +6 -2
  28. package/dist/cli/skillHistory.js.map +1 -1
  29. package/dist/cli/slashHandlers/permissions.js +36 -9
  30. package/dist/cli/slashHandlers/permissions.js.map +1 -1
  31. package/dist/cli/slashHandlers/skills.js +3 -2
  32. package/dist/cli/slashHandlers/skills.js.map +1 -1
  33. package/dist/cli/toolRegistry.js +47 -10
  34. package/dist/cli/toolRegistry.js.map +1 -1
  35. package/package.json +4 -2
@@ -1,3 +1,6 @@
1
+ // Public harness subpath: the pure reminder builder rides
2
+ // `@zelari/core/harness` (re-exported by core/AgentHarness.ts).
3
+ import { buildSystemReminder } from '@zelari/core/harness';
1
4
  import { applyBudgetPolicyAsync, estimateHistoryTokens, } from './tokenBudget.js';
2
5
  import { measureRequest } from './requestMeter.js';
3
6
  import { compactEventPayload, } from './persistCompact.js';
@@ -15,6 +18,29 @@ export function resourceStatusTail(payload) {
15
18
  ? [{ role: 'system', content: formatResourceSnapshot(payload) }]
16
19
  : [];
17
20
  }
21
+ /**
22
+ * Single assembly point for the volatile request tail: RESOURCE STATUS from the
23
+ * given snapshot, then the working-set one-pager, then — only when the host
24
+ * passes the reminder inputs and the PURE builder says it is due — the
25
+ * `[system-reminder]` line. `buildModelContext` calls it for occupancy without
26
+ * reminder inputs (the frozen tail must not depend on host counters); the host
27
+ * `requestTail` arrows call it at send time with a FRESH snapshot, so the model
28
+ * sees the latest status and pager. Never persisted and never part of rolling
29
+ * history: the host counts and resets its own ref by reading the tail.
30
+ */
31
+ export function assembleRequestTail(snapshot, onePager, reminder) {
32
+ const tail = [...resourceStatusTail(snapshot), ...(onePager ?? [])];
33
+ if (!reminder)
34
+ return tail;
35
+ const text = buildSystemReminder({
36
+ pendingTodos: reminder.pendingTodos,
37
+ turnsSinceLastReminder: reminder.turnsSinceLastReminder,
38
+ ...(typeof reminder.budgetRemainingPct === 'number'
39
+ ? { budgetRemainingPct: reminder.budgetRemainingPct }
40
+ : {}),
41
+ }, reminder.env);
42
+ return text === null ? tail : [...tail, { role: 'system', content: text }];
43
+ }
18
44
  function isLegacyResourceStatus(message) {
19
45
  return message.role === 'system' && message.content.startsWith('RESOURCE STATUS');
20
46
  }
@@ -39,10 +65,7 @@ export async function buildModelContext(input) {
39
65
  // Strip snapshots persisted by <=2.8.0 once at the upgrade boundary. New
40
66
  // snapshots never enter deriveMessages()/rolling history.
41
67
  const sourceHistory = (derived ?? [...input.fallbackHistory]).filter((message) => !isLegacyResourceStatus(message));
42
- const requestTail = [
43
- ...resourceStatusTail(input.resourceSnapshot),
44
- ...(input.volatileOnePager ?? []),
45
- ];
68
+ const requestTail = assembleRequestTail(input.resourceSnapshot, input.volatileOnePager);
46
69
  const inputTokens = estimateHistoryTokens(sourceHistory);
47
70
  const requestSurface = input.systemMessages || input.tools
48
71
  ? {
@@ -1 +1 @@
1
- {"version":3,"file":"modelContextBuilder.js","sourceRoot":"","sources":["../../../src/cli/budget/modelContextBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modelContextBuilder.js","sourceRoot":"","sources":["../../../src/cli/budget/modelContextBuilder.ts"],"names":[],"mappings":"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"}
@@ -48,7 +48,10 @@ import { promoteOpsKnowledgeSafe, skippedOpsKnowledgeResult } from '../memory/op
48
48
  import { formatCheckProposalNotice } from '../memory/repeatCheck.js';
49
49
  import { nativePackEnabled } from '../kraken/nativeVerification.js';
50
50
  import { runAdvisoryVerifierReview } from '../kraken/verifierLifecycle.js';
51
- import { buildModelContext, resourceStatusTail } from '../budget/modelContextBuilder.js';
51
+ import { buildModelContext, assembleRequestTail } from '../budget/modelContextBuilder.js';
52
+ // system-reminder slice 4: the reminder payload is the OPEN session todos
53
+ // (with a one-shot counter of 0 they can never surface — see the arrow).
54
+ import { listSessionTodos } from '../sessionTodos.js';
52
55
  import { buildOnePager } from '../memory/onePager.js';
53
56
  import { recordCompactionMetrics } from '../metrics.js';
54
57
  import { flushMessageUsage, recordMessageUsage } from '../budget/messageUsage.js';
@@ -583,10 +586,16 @@ export async function runOneTurn(opts, provider, model, providerStream, extras)
583
586
  cwd,
584
587
  providerStream,
585
588
  buildLiveness: { mutationRequired: wantWrites, maxRecoveries: 2 },
586
- requestTail: () => [
587
- ...resourceStatusTail(spine.spine.latestResourceSnapshot()),
588
- ...onePager,
589
- ],
589
+ requestTail: () => assembleRequestTail(spine.spine.latestResourceSnapshot(), onePager, {
590
+ // One-shot: this pass runs ONE turn, so the counter is 0 and the
591
+ // builder returns null (cadence 5) — the reminder must not fire on
592
+ // every headless run. No module-global counter: if a future in-process
593
+ // loop needs a cadence, the counter belongs to that loop.
594
+ pendingTodos: listSessionTodos()
595
+ .filter((todo) => todo.status === 'pending' || todo.status === 'in_progress')
596
+ .map((todo) => todo.content),
597
+ turnsSinceLastReminder: 0,
598
+ }),
590
599
  // 2.6 Phase 3: host-owned pre-dispatch resource gate (doc section 11.3).
591
600
  // Advisory by default; ZELARI_RESOURCE_ENFORCEMENT=protected enables the
592
601
  // protected verification reserve. Degrade-and-stop (null gate = allow).
@@ -1 +1 @@
1
- {"version":3,"file":"runOneTurn.js","sourceRoot":"","sources":["../../../src/cli/headless/runOneTurn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runOneTurn.js","sourceRoot":"","sources":["../../../src/cli/headless/runOneTurn.ts"],"names":[],"mappings":"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"}
@@ -40,12 +40,14 @@ export function formatSkillCompareLine(id, stats) {
40
40
  if (stats.count === 0) {
41
41
  return ` ${id} — no invocations recorded yet`;
42
42
  }
43
- return ` ${id} — ${stats.count} invocations, ${(stats.successRate * 100).toFixed(1)}% success, avg ${stats.avgDurationMs.toFixed(0)}ms, ${stats.totalTokens} tokens total`;
43
+ return ` ${id} — ${stats.count} invocations, ${(stats.successRate * 100).toFixed(1)}% success, avg ${stats.avgDurationMs.toFixed(0)}ms, ${stats.totalTokens} tokens total, est. cost $${stats.estimatedCostUsd.toFixed(4)}`;
44
44
  }
45
45
  /**
46
46
  * Pick the winner between two SkillStats. Returns 'a' / 'b' / null on tie.
47
- * Order: successRate first (higher wins), then avgDurationMs (lower wins).
48
- * On perfect tie (same successRate AND same avgDurationMs), returns null.
47
+ * Order: successRate first (higher wins), then avgDurationMs (lower wins),
48
+ * then estimatedCostUsd (lower wins t143).
49
+ * On perfect tie (same successRate AND same avgDurationMs AND same cost),
50
+ * returns null.
49
51
  */
50
52
  export function pickCompareWinner(a, b) {
51
53
  if (a.successRate > b.successRate)
@@ -56,6 +58,10 @@ export function pickCompareWinner(a, b) {
56
58
  return 'a';
57
59
  if (b.avgDurationMs < a.avgDurationMs)
58
60
  return 'b';
61
+ if (a.estimatedCostUsd < b.estimatedCostUsd)
62
+ return 'a';
63
+ if (b.estimatedCostUsd < a.estimatedCostUsd)
64
+ return 'b';
59
65
  return null;
60
66
  }
61
67
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"skillCompare.js","sourceRoot":"","sources":["../../../src/cli/hooks/skillCompare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAA4C,MAAM,oBAAoB,CAAC;AAE/G;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAChC,GAAW,EACX,GAAW,EACX,OAA6B;IAE7B,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAa,CAAC,iBAAiB,CAAC,CAAC;IAC5C,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACpE,CAAC;aAAM,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,wBAAwB,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACtI,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,wBAAwB,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACtI,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,yEAAyE,CAAC,CAAC;IACxF,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,sBAAsB,CAAC,EAAU,EAAE,KAAiB;IAClE,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,KAAK,EAAE,gCAAgC,CAAC;IACjD,CAAC;IACD,OAAO,KAAK,EAAE,MAAM,KAAK,CAAC,KAAK,iBAAiB,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,WAAW,eAAe,CAAC;AAC9K,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,CAAa,EACb,CAAa;IAEb,IAAI,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW;QAAE,OAAO,GAAG,CAAC;IAC9C,IAAI,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW;QAAE,OAAO,GAAG,CAAC;IAC9C,IAAI,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa;QAAE,OAAO,GAAG,CAAC;IAClD,IAAI,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa;QAAE,OAAO,GAAG,CAAC;IAClD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,GAAW,EACX,GAAW,EACX,WAAmB;IAEnB,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACpD,OAAO,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"skillCompare.js","sourceRoot":"","sources":["../../../src/cli/hooks/skillCompare.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  // @ts-nocheck — pre-existing strict-mode type narrowing issues carried over
2
2
  // from app.tsx. Runtime is correct; tighten signatures in a follow-up.
3
3
  import { useState, useRef, useCallback } from "react";
4
- import { AgentHarness } from "@zelari/core/harness";
4
+ import { AgentHarness, SYSTEM_REMINDER_MARKER } from "@zelari/core/harness";
5
5
  import { ingestLiveEvent } from "./observationStore.js";
6
6
  import { getMetricsLogger, recordCompactionMetrics } from "../metrics.js";
7
7
  import { recordMessageUsage } from "../budget/messageUsage.js";
@@ -32,6 +32,8 @@ import { writeCompletionProof } from "../kraken/completionProof.js";
32
32
  import { promoteOpsKnowledgeSafe, skippedOpsKnowledgeResult } from "../memory/opsKnowledge.js";
33
33
  import { formatCheckProposalNotice } from "../memory/repeatCheck.js";
34
34
  import { buildOnePager } from "../memory/onePager.js";
35
+ // system-reminder slice 4: the reminder payload is the OPEN session todos.
36
+ import { listSessionTodos } from "../sessionTodos.js";
35
37
  import { formatStrictBlockExplanation, recordStrictGateEvaluation } from "../kraken/verifyStatus.js";
36
38
  import { nativePackEnabled } from "../kraken/nativeVerification.js";
37
39
  // W2: memory telemetry projected onto the session spine as state-only notes.
@@ -50,11 +52,17 @@ import { computeSessionStatsDelta } from "./chatStats.js";
50
52
  import { envNumber } from "../utils/envNumber.js";
51
53
  import { getPhase } from "../phaseState.js";
52
54
  import { describePhase } from "../phase.js";
53
- import { buildModelContext, resourceStatusTail, } from "../budget/modelContextBuilder.js";
55
+ import { buildModelContext, assembleRequestTail, } from "../budget/modelContextBuilder.js";
54
56
  import { recordRequestSnapshot, recordRequestUsage, getRequestSnapshotWithUsage, } from "../budget/requestSnapshotStore.js";
55
57
  export function useChatTurn(params) {
56
58
  const { sessionId, writerRef, setMessages, commitStreaming, flushStreaming, setBusy, setSessionActive, setSessionStats, setLive, liveRef, setPicker, } = params;
57
59
  const harnessRef = useRef(null);
60
+ // system-reminder slice 4: turns elapsed since the last reminder, host-owned
61
+ // and session-scoped (this hook instance = this TUI session). Never a module
62
+ // global, never on the spine. Bumped once per USER turn in dispatchPrompt;
63
+ // the request-tail arrow below zeroes it when the tail it just built carried
64
+ // the marker, so a later provider call in the SAME tool loop stays silent.
65
+ const reminderTurnsRef = useRef(0);
58
66
  const [queueCount, setQueueCount] = useState(0);
59
67
  // v1.8.0: rolling history lives in conversationContext (shared by agent,
60
68
  // council, zelari) so /clear|/new can reset it and short answers bind
@@ -72,6 +80,11 @@ export function useChatTurn(params) {
72
80
  // THIS session (K3.3 / F16) — a concurrent session in the same process
73
81
  // keeps its own budget and its own debt.
74
82
  resetTaskSpawnCount(sessionId);
83
+ // system-reminder slice 4: one bump per USER turn, before the harness is
84
+ // constructed (the arrow reads it at send time, so every tool iteration
85
+ // of this turn sees the same value — the cadence of 5 lives in the pure
86
+ // module, not here).
87
+ reminderTurnsRef.current += 1;
75
88
  // K1.5 / F5: the in-memory cache is per-turn, but open debt is durable
76
89
  // on the spine. Flush pending emits from the previous turn, wipe the
77
90
  // cache, rebind emit, then replay un-cleared `verify.debt_open` so the
@@ -734,10 +747,32 @@ export function useChatTurn(params) {
734
747
  mutationRequired: expectsDiskImplementation(userText, workPhase, historyForModel),
735
748
  maxRecoveries: 2,
736
749
  },
737
- requestTail: () => [
738
- ...resourceStatusTail(writerRef.current?.spine?.latestResourceSnapshot() ?? null),
739
- ...onePager,
740
- ],
750
+ // system-reminder slice 4: assembled at SEND time from a FRESH
751
+ // snapshot, the same one-pager AND the open todos read now — plus the
752
+ // host-owned counter and the budget already computed above (never a
753
+ // second budget). Nothing here enters history: this arrow is the only
754
+ // path from these inputs to the model.
755
+ requestTail: () => {
756
+ const tail = assembleRequestTail(writerRef.current?.spine?.latestResourceSnapshot() ?? null, onePager, {
757
+ pendingTodos: listSessionTodos()
758
+ .filter((todo) => todo.status === "pending" || todo.status === "in_progress")
759
+ .map((todo) => todo.content),
760
+ turnsSinceLastReminder: reminderTurnsRef.current,
761
+ // Omit a non-finite occupancy: the builder must not render a
762
+ // bogus percentage.
763
+ ...(Number.isFinite(budget.occupancy)
764
+ ? { budgetRemainingPct: (1 - budget.occupancy) * 100 }
765
+ : {}),
766
+ });
767
+ // The reminder just reached the model: restart the cadence from
768
+ // zero AFTER building the tail (resetting first would drop this
769
+ // one). The next provider call of this tool loop then sees 0.
770
+ if (tail.some((message) => typeof message.content === "string" &&
771
+ message.content.includes(SYSTEM_REMINDER_MARKER))) {
772
+ reminderTurnsRef.current = 0;
773
+ }
774
+ return tail;
775
+ },
741
776
  // 2.6 Phase 3: host-owned pre-dispatch resource gate via the spine
742
777
  // mirror (doc section 11.3). Degrade-and-stop (null gate = allow).
743
778
  // 2.6.1 (plan §13): argument-aware — bash is essential only when
@@ -1408,6 +1443,9 @@ async function dispatchCouncilPromptImpl(text, deps, overrides = {}) {
1408
1443
  memory: null,
1409
1444
  skipCompactRecap: true,
1410
1445
  });
1446
+ // The volatile tail (RESOURCE STATUS + one-pager) is intentionally NOT part of
1447
+ // the council prompt: only `.history` / `.budget` are consumed here. Do not
1448
+ // copy `requestTail` into `setHistory` — that would freeze it into history.
1411
1449
  const councilContext = await buildModelContext({
1412
1450
  fallbackHistory: getHistory(),
1413
1451
  session: writerRef.current?.spine ?? null,