zelari-code 2.6.1 → 2.6.3
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/budget/budgetRuntime.js +73 -16
- package/dist/cli/budget/budgetRuntime.js.map +1 -1
- package/dist/cli/budget/resourceLedger.js +4 -3
- package/dist/cli/budget/resourceLedger.js.map +1 -1
- package/dist/cli/budget/resourceSnapshot.js +10 -0
- package/dist/cli/budget/resourceSnapshot.js.map +1 -1
- package/dist/cli/budget/restoreRuntime.js +4 -2
- package/dist/cli/budget/restoreRuntime.js.map +1 -1
- package/dist/cli/gauntlet/run.js +1 -1
- package/dist/cli/gauntlet/run.js.map +1 -1
- package/dist/cli/headlessSpine.js +9 -2
- package/dist/cli/headlessSpine.js.map +1 -1
- package/dist/cli/hooks/useChatTurn.js +6 -5
- package/dist/cli/hooks/useChatTurn.js.map +1 -1
- package/dist/cli/hooks/useSession.js +18 -2
- package/dist/cli/hooks/useSession.js.map +1 -1
- package/dist/cli/main.bundled.js +2950 -2630
- package/dist/cli/main.bundled.js.map +4 -4
- package/dist/cli/runHeadless.js +23 -18
- package/dist/cli/runHeadless.js.map +1 -1
- package/dist/cli/sessionSpine.js +51 -9
- package/dist/cli/sessionSpine.js.map +1 -1
- package/dist/cli/zelariMission.js +91 -2
- package/dist/cli/zelariMission.js.map +1 -1
- package/package.json +2 -2
|
@@ -12,19 +12,19 @@
|
|
|
12
12
|
* warning; `protected` (Phase 3, ZELARI_RESOURCE_ENFORCEMENT=protected)
|
|
13
13
|
* denies non-essential tools and tells the model to verify/finalize.
|
|
14
14
|
*
|
|
15
|
-
* 2.6.1 (
|
|
16
|
-
* - maxToolCalls is a HARD limit
|
|
17
|
-
* billable call is denied (both
|
|
18
|
-
*
|
|
19
|
-
* `resource.overrun`
|
|
15
|
+
* 2.6.1 hardening (§9/§13 + per-turn epoch repair):
|
|
16
|
+
* - maxToolCalls is a HARD limit for the active execution epoch: once
|
|
17
|
+
* remaining hits 0 every further billable call is denied (both
|
|
18
|
+
* enforcement modes), while cumulative session telemetry remains in the
|
|
19
|
+
* ledger (`resource.limit_reached` / `resource.overrun` land on spine);
|
|
20
20
|
* - the verification gate is ARGUMENT-AWARE: an essential `bash` is a
|
|
21
21
|
* test/typecheck/build/git-diff command, not any shell line.
|
|
22
22
|
*
|
|
23
23
|
* The model never mutates this state — only the host appends (§9.5).
|
|
24
24
|
*/
|
|
25
|
-
import { defaultResourcePolicy } from '@zelari/core';
|
|
25
|
+
import { computeBudget, defaultResourcePolicy } from '@zelari/core';
|
|
26
26
|
import { ResourceLedger, rebuildLedgerFromEvents } from './resourceLedger.js';
|
|
27
|
-
import { buildResourceSnapshot, shouldEmitSnapshot, } from './resourceSnapshot.js';
|
|
27
|
+
import { buildResourceSnapshot, shouldEmitSnapshot, withResourceSnapshotContext, } from './resourceSnapshot.js';
|
|
28
28
|
/**
|
|
29
29
|
* §11.3 verification-essential tools: test/typecheck/build/diff/read
|
|
30
30
|
* failure/targeted repair/retest. Everything else (delegation, speculative
|
|
@@ -42,7 +42,7 @@ const DEFAULT_ESSENTIAL_TOOLS = [
|
|
|
42
42
|
];
|
|
43
43
|
const ADVISORY_NOTICE = 'Resource advisory: verification reserve reached. Prioritize test/typecheck/build/diff and targeted repair; avoid broad exploration or delegation.';
|
|
44
44
|
const PROTECTED_DENIAL = 'Resource protected: remaining tool calls are reserved for verification and targeted repair. Run the required checks (test/typecheck/build), read the failure, apply a minimal fix, retest — or report BLOCKED with the evidence you have.';
|
|
45
|
-
const HARD_LIMIT_DENIAL = 'Resource exhausted:
|
|
45
|
+
const HARD_LIMIT_DENIAL = 'Resource exhausted: this turn\'s execution budget (maxToolCalls) is spent. No further billable tool calls are allowed in this turn — summarize what was verified and report BLOCKED/resource-exhausted with the evidence already collected. A later user turn starts a fresh execution budget.';
|
|
46
46
|
/** bash commands that count as verification-essential (plan §13). */
|
|
47
47
|
const ESSENTIAL_BASH = [
|
|
48
48
|
/\b(npm|pnpm|yarn|bun)\s+(run\s+)?(test|vitest|jest)\b/,
|
|
@@ -98,23 +98,44 @@ export class BudgetRuntime {
|
|
|
98
98
|
enforcement;
|
|
99
99
|
ledger;
|
|
100
100
|
essential;
|
|
101
|
+
initialStage;
|
|
101
102
|
stage;
|
|
103
|
+
epoch = 0;
|
|
104
|
+
executionBaseline = { toolCallsUsed: 0, wallMs: 0, tokensUsed: 0 };
|
|
102
105
|
lastEmitted;
|
|
103
106
|
hardLimitAnnounced = false;
|
|
104
107
|
constructor(profileId, opts = {}) {
|
|
105
108
|
const basePolicy = opts.policy ?? defaultResourcePolicy(profileId);
|
|
106
|
-
//
|
|
107
|
-
//
|
|
108
|
-
//
|
|
109
|
-
// gate and snapshot derives from that one number.
|
|
109
|
+
// ZELARI_MAX_TOOL_CALLS is a CONFIG ALIAS for ResourcePolicy.maxToolCalls,
|
|
110
|
+
// not a second cap. The policy is session-stable (and manifest-hashed),
|
|
111
|
+
// while its hard enforcement is scoped to one execution epoch/turn.
|
|
110
112
|
const envCap = Number.parseInt(process.env.ZELARI_MAX_TOOL_CALLS ?? '', 10);
|
|
111
113
|
this.policy =
|
|
112
114
|
Number.isFinite(envCap) && envCap >= 1 ? { ...basePolicy, maxToolCalls: envCap } : basePolicy;
|
|
113
115
|
this.enforcement = opts.enforcement ?? 'advisory';
|
|
114
116
|
this.essential = new Set(opts.essentialTools ?? DEFAULT_ESSENTIAL_TOOLS);
|
|
115
|
-
this.
|
|
117
|
+
this.initialStage = opts.stage ?? 'implement';
|
|
118
|
+
this.stage = this.initialStage;
|
|
116
119
|
this.ledger = new ResourceLedger();
|
|
117
120
|
}
|
|
121
|
+
/**
|
|
122
|
+
* Start a fresh user-turn execution epoch. The durable ledger remains
|
|
123
|
+
* cumulative for telemetry; only the enforcement baseline moves forward.
|
|
124
|
+
*/
|
|
125
|
+
beginTurn() {
|
|
126
|
+
this.executionBaseline = this.ledger.usage();
|
|
127
|
+
this.epoch += 1;
|
|
128
|
+
this.stage = this.initialStage;
|
|
129
|
+
this.hardLimitAnnounced = false;
|
|
130
|
+
this.lastEmitted = undefined;
|
|
131
|
+
const next = this.current();
|
|
132
|
+
this.lastEmitted = next;
|
|
133
|
+
return next;
|
|
134
|
+
}
|
|
135
|
+
/** Cumulative session telemetry (never reset by beginTurn). */
|
|
136
|
+
sessionUsage() {
|
|
137
|
+
return this.ledger.usage();
|
|
138
|
+
}
|
|
118
139
|
/**
|
|
119
140
|
* Count one tool call; returns the snapshot to emit when §10.4 says so
|
|
120
141
|
* (first sight, stage/pressure change, reserve crossing, any usage delta).
|
|
@@ -132,7 +153,13 @@ export class BudgetRuntime {
|
|
|
132
153
|
this.ledger.record('tool-call');
|
|
133
154
|
const next = this.current();
|
|
134
155
|
let hardEvent = null;
|
|
135
|
-
const data = {
|
|
156
|
+
const data = {
|
|
157
|
+
epoch: next.epoch,
|
|
158
|
+
used: next.toolCallsUsed,
|
|
159
|
+
limit: next.toolCallsLimit,
|
|
160
|
+
overrun: next.overrun,
|
|
161
|
+
sessionToolCallsUsed: next.sessionToolCallsUsed,
|
|
162
|
+
};
|
|
136
163
|
if (!this.hardLimitAnnounced && next.toolCallsRemaining <= 0) {
|
|
137
164
|
this.hardLimitAnnounced = true;
|
|
138
165
|
hardEvent = { kind: 'resource.limit_reached', data };
|
|
@@ -161,11 +188,20 @@ export class BudgetRuntime {
|
|
|
161
188
|
}
|
|
162
189
|
/** 2.6.1 (plan §14): canonical budget for the reserve gate. */
|
|
163
190
|
budgetSnapshot() {
|
|
164
|
-
|
|
191
|
+
const cumulative = this.ledger.usage();
|
|
192
|
+
return computeBudget(this.policy, {
|
|
193
|
+
toolCallsUsed: Math.max(0, cumulative.toolCallsUsed - this.executionBaseline.toolCallsUsed),
|
|
194
|
+
elapsedMs: Math.max(0, cumulative.wallMs - this.executionBaseline.wallMs),
|
|
195
|
+
tokensUsed: Math.max(0, cumulative.tokensUsed - this.executionBaseline.tokensUsed),
|
|
196
|
+
}, this.stage);
|
|
165
197
|
}
|
|
166
198
|
/** Current projection without emitting. */
|
|
167
199
|
current() {
|
|
168
|
-
|
|
200
|
+
const cumulative = this.ledger.usage();
|
|
201
|
+
return withResourceSnapshotContext(buildResourceSnapshot(this.budgetSnapshot(), this.policy), {
|
|
202
|
+
epoch: this.epoch,
|
|
203
|
+
sessionToolCallsUsed: cumulative.toolCallsUsed,
|
|
204
|
+
});
|
|
169
205
|
}
|
|
170
206
|
/**
|
|
171
207
|
* §11.3 gate — argument-aware (2.6.1 §13). Hard limit denies first in BOTH
|
|
@@ -197,6 +233,27 @@ export class BudgetRuntime {
|
|
|
197
233
|
adoptLedgerFromEvents(events) {
|
|
198
234
|
const rebuilt = rebuildLedgerFromEvents(events);
|
|
199
235
|
this.ledger.resetTo(rebuilt.snapshot());
|
|
236
|
+
let epochStart = -1;
|
|
237
|
+
let fallbackUserStart = -1;
|
|
238
|
+
let restoredEpoch = 0;
|
|
239
|
+
for (let i = 0; i < events.length; i++) {
|
|
240
|
+
const event = events[i];
|
|
241
|
+
if (event.kind === 'user.message')
|
|
242
|
+
fallbackUserStart = i;
|
|
243
|
+
if (event.kind === 'resource.epoch_started') {
|
|
244
|
+
epochStart = i;
|
|
245
|
+
const value = event.data.epoch;
|
|
246
|
+
if (typeof value === 'number' && Number.isInteger(value) && value > restoredEpoch) {
|
|
247
|
+
restoredEpoch = value;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
const activeStart = epochStart >= 0 ? epochStart : fallbackUserStart;
|
|
252
|
+
this.executionBaseline =
|
|
253
|
+
activeStart >= 0
|
|
254
|
+
? rebuildLedgerFromEvents(events.slice(0, activeStart + 1)).usage()
|
|
255
|
+
: { toolCallsUsed: 0, wallMs: 0, tokensUsed: 0 };
|
|
256
|
+
this.epoch = restoredEpoch;
|
|
200
257
|
this.lastEmitted = undefined;
|
|
201
258
|
const now = this.current();
|
|
202
259
|
this.hardLimitAnnounced = now.toolCallsRemaining <= 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"budgetRuntime.js","sourceRoot":"","sources":["../../../src/cli/budget/budgetRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,qBAAqB,EAA2C,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"budgetRuntime.js","sourceRoot":"","sources":["../../../src/cli/budget/budgetRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* src/cli/budget/resourceLedger.ts — host-owned append-only resource ledger
|
|
3
|
-
* (2.6 Track B, doc §9.4).
|
|
4
|
-
*
|
|
5
|
-
*
|
|
3
|
+
* (2.6 Track B, doc §9.4). This ledger is cumulative session telemetry.
|
|
4
|
+
* Single counting point: tool-call usage derives from `tool.call` session
|
|
5
|
+
* events (never from tool.interrupted — no double count). BudgetRuntime
|
|
6
|
+
* subtracts an epoch baseline for per-turn enforcement; only the host appends.
|
|
6
7
|
*/
|
|
7
8
|
import { ledgerDeltaFor, usageFromLedger, } from '@zelari/core';
|
|
8
9
|
import { budgetPressure, computeBudget } from '@zelari/core';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resourceLedger.js","sourceRoot":"","sources":["../../../src/cli/budget/resourceLedger.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"resourceLedger.js","sourceRoot":"","sources":["../../../src/cli/budget/resourceLedger.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,cAAc,EACd,eAAe,GAIhB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7D,MAAM,OAAO,cAAc;IACjB,OAAO,GAA0B,EAAE,CAAC;IACpC,OAAO,GAAG,CAAC,CAAC;IAEpB,MAAM,CAAC,WAAW,CAAC,OAAuC;QACxD,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;QACpC,MAAM,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;QAC9B,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;QACrE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kEAAkE;IAClE,MAAM,CAAC,MAA4B,EAAE,KAAK,GAAG,CAAC;QAC5C,MAAM,KAAK,GAAwB,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;QACzG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,QAAQ;QACN,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,uEAAuE;IACvE,OAAO,CAAC,OAAuC;QAC7C,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IACrE,CAAC;IAED,KAAK;QACH,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,8EAA8E;IAC9E,MAAM,CAAC,MAAsB,EAAE,QAAuB,WAAW;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC3B,OAAO,aAAa,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;IACrI,CAAC;IAED,QAAQ,CAAC,MAAsB;QAC7B,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAuC;IAC7E,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC3B,iEAAiE;YACjE,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAChC,CAAC;aAAM,IAAI,CAAC,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -22,6 +22,16 @@ export function buildResourceSnapshot(budget, policy) {
|
|
|
22
22
|
reserveProtected: isVerificationReserveProtected(budget),
|
|
23
23
|
};
|
|
24
24
|
}
|
|
25
|
+
/** Add execution-scope metadata without changing the pure budget projection. */
|
|
26
|
+
export function withResourceSnapshotContext(snapshot, context) {
|
|
27
|
+
return {
|
|
28
|
+
...snapshot,
|
|
29
|
+
...(context.epoch !== undefined ? { epoch: context.epoch } : {}),
|
|
30
|
+
...(context.sessionToolCallsUsed !== undefined
|
|
31
|
+
? { sessionToolCallsUsed: context.sessionToolCallsUsed }
|
|
32
|
+
: {}),
|
|
33
|
+
};
|
|
34
|
+
}
|
|
25
35
|
/** Decide whether a new snapshot must be emitted after a state change. */
|
|
26
36
|
export function shouldEmitSnapshot(previous, next) {
|
|
27
37
|
if (!previous)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resourceSnapshot.js","sourceRoot":"","sources":["../../../src/cli/budget/resourceSnapshot.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,cAAc,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"resourceSnapshot.js","sourceRoot":"","sources":["../../../src/cli/budget/resourceSnapshot.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,cAAc,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AAuB9E,MAAM,UAAU,qBAAqB,CAAC,MAAsB,EAAE,MAAsB;IAClF,OAAO;QACL,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,KAAK;QACtC,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI;QACpC,kBAAkB,EAAE,MAAM,CAAC,SAAS,CAAC,SAAS;QAC9C,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO;QACjC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,mBAAmB,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY;QAChD,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM;QACpC,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,QAAQ,EAAE,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC;QACxC,gBAAgB,EAAE,8BAA8B,CAAC,MAAM,CAAC;KACzD,CAAC;AACJ,CAAC;AAOD,gFAAgF;AAChF,MAAM,UAAU,2BAA2B,CACzC,QAAiC,EACjC,OAAgC;IAEhC,OAAO;QACL,GAAG,QAAQ;QACX,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,OAAO,CAAC,oBAAoB,KAAK,SAAS;YAC5C,CAAC,CAAC,EAAE,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,EAAE;YACxD,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,kBAAkB,CAChC,QAA6C,EAC7C,IAA6B;IAE7B,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,IAAI,QAAQ,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAC/C,IAAI,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,QAAQ,CAAC,gBAAgB,KAAK,IAAI,CAAC,gBAAgB;QAAE,OAAO,IAAI,CAAC;IACrE,2CAA2C;IAC3C,IAAI,QAAQ,CAAC,aAAa,KAAK,IAAI,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC;IAC/D,OAAO,KAAK,CAAC;AACf,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,iBAAiB,CAAC,CAA0B;IAC1D,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;AAClB,CAAC"}
|
|
@@ -2,9 +2,11 @@
|
|
|
2
2
|
* src/cli/budget/restoreRuntime.ts — host-parity resume helper (2.6.1
|
|
3
3
|
* closure plan §10). ONE path rebuilds the live BudgetRuntime from the
|
|
4
4
|
* durable session log so TUI, headless and the Desktop bridge reconstruct
|
|
5
|
-
* the SAME ResourceLedger after a
|
|
5
|
+
* the SAME cumulative ResourceLedger and active execution epoch after a
|
|
6
|
+
* resume. A new user turn then advances the epoch and starts again at 0:
|
|
6
7
|
*
|
|
7
|
-
* 12/40
|
|
8
|
+
* interrupted 12/40 → resume same epoch → remaining 28
|
|
9
|
+
* completed 40/40 → new user turn → 0/40 (session total stays 40)
|
|
8
10
|
*/
|
|
9
11
|
import { readSessionLog, resolveSessionsDir } from '@zelari/core/session';
|
|
10
12
|
import path from 'node:path';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"restoreRuntime.js","sourceRoot":"","sources":["../../../src/cli/budget/restoreRuntime.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"restoreRuntime.js","sourceRoot":"","sources":["../../../src/cli/budget/restoreRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,MAAqB,EACrB,SAAiB,EACjB,OAAgB;IAEhB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;IACzF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAClE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACxD,MAAM,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,SAAiB,EACjB,OAAgB;IAEhB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;IACzF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAClE,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACnD,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC;QAC5B,IAAI,CAAC,CAAC,IAAI,KAAK,0BAA0B,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAI,CAAC,CAAC,IAAmC,CAAC,YAAY,CAAC;YAC9D,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/cli/gauntlet/run.js
CHANGED
|
@@ -108,7 +108,7 @@ export async function runHeadlessGauntlet(opts, provider, model) {
|
|
|
108
108
|
type: 'log',
|
|
109
109
|
message: `[gauntlet] ${decomposed.pieces.length} piece(s) from ${decomposed.source}${decomposed.error ? ` (${decomposed.error.slice(0, 80)})` : ''}`,
|
|
110
110
|
});
|
|
111
|
-
//
|
|
111
|
+
// Live execution-epoch budget probe for the loop gate.
|
|
112
112
|
const budgetGate = () => {
|
|
113
113
|
const lim = spine.resourceBudgetLimit();
|
|
114
114
|
return lim ? { remaining: lim.remaining, verificationReserve: lim.verificationReserve } : null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/gauntlet/run.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/gauntlet/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,7 +58,9 @@ export async function openHeadlessSpine(opts) {
|
|
|
58
58
|
spine.attachBudgetRuntime(budget);
|
|
59
59
|
// 2.6.1 (plan §6): same lifecycle as the TUI — manifest presence 100%,
|
|
60
60
|
// drift on resume — via the ONE shared host helper.
|
|
61
|
-
|
|
61
|
+
// 2.6.1 (plan §7): deep specs filtered to THIS profile’s tool list.
|
|
62
|
+
const manifestSpecs = opts.toolSpecs?.filter((spec) => profileTools.includes(spec.name));
|
|
63
|
+
await noteHarnessLifecycle(spine, opts.sessionId, profileId, budget, opts.baseDir, undefined, manifestSpecs && manifestSpecs.length > 0 ? manifestSpecs : undefined);
|
|
62
64
|
spine.note('headless.profile', { profile: profileId, mode: opts.mode ?? 'kraken' });
|
|
63
65
|
}
|
|
64
66
|
return {
|
|
@@ -70,6 +72,9 @@ export async function openHeadlessSpine(opts) {
|
|
|
70
72
|
spine.mirrorBrainEvent(ev);
|
|
71
73
|
}
|
|
72
74
|
},
|
|
75
|
+
beginResourceTurn() {
|
|
76
|
+
return spine.beginResourceTurn();
|
|
77
|
+
},
|
|
73
78
|
userMessage(text) {
|
|
74
79
|
spine.userMessage(text);
|
|
75
80
|
},
|
|
@@ -175,7 +180,9 @@ export async function seedHeadlessModelHistory(handle, legacy) {
|
|
|
175
180
|
}
|
|
176
181
|
for (const m of legacySeed) {
|
|
177
182
|
if (m.role === 'user') {
|
|
178
|
-
|
|
183
|
+
// Historical import is not a live execution turn and must not reset or
|
|
184
|
+
// emit the per-turn resource epoch before the actual current prompt.
|
|
185
|
+
mirror.userMessage(m.content, { beginResourceTurn: false, imported: 'legacy-history' });
|
|
179
186
|
}
|
|
180
187
|
else {
|
|
181
188
|
mirror.assistantMessage(m.content, { imported: 'legacy-history' });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headlessSpine.js","sourceRoot":"","sources":["../../src/cli/headlessSpine.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EAClB,sBAAsB,GAGvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"headlessSpine.js","sourceRoot":"","sources":["../../src/cli/headlessSpine.ts"],"names":[],"mappings":"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"}
|
|
@@ -246,6 +246,7 @@ export function useChatTurn(params) {
|
|
|
246
246
|
// model history, not the 1.x store — compaction decisions apply to
|
|
247
247
|
// exactly what the model is about to see.
|
|
248
248
|
const requestSnapshot = getRequestSnapshotWithUsage(sessionId);
|
|
249
|
+
await writerRef.current?.spine?.beginResourceTurn();
|
|
249
250
|
const modelContext = await buildModelContext({
|
|
250
251
|
fallbackHistory: historyForModel,
|
|
251
252
|
session: writerRef.current?.spine ?? null,
|
|
@@ -543,11 +544,10 @@ export function useChatTurn(params) {
|
|
|
543
544
|
// were present.
|
|
544
545
|
systemPrefixLen = systemMessages.length;
|
|
545
546
|
// v0.7.1 (A2): per-turn tool-call budget for single-prompt turns.
|
|
546
|
-
//
|
|
547
|
-
//
|
|
548
|
-
//
|
|
549
|
-
//
|
|
550
|
-
// second independent limit.
|
|
547
|
+
// The harness cap is advisory anti-spam and is clamped by the active
|
|
548
|
+
// ResourcePolicy epoch. ZELARI_MAX_TOOL_CALLS configures that one
|
|
549
|
+
// policy; BudgetRuntime resets enforcement at each user turn while
|
|
550
|
+
// keeping cumulative session telemetry separately.
|
|
551
551
|
const perTurnEnv = envNumber(process.env.ZELARI_MAX_TOOL_CALLS, {
|
|
552
552
|
default: 25,
|
|
553
553
|
min: 1,
|
|
@@ -1073,6 +1073,7 @@ async function dispatchCouncilPromptImpl(text, deps, overrides = {}) {
|
|
|
1073
1073
|
// and now measures the spine-derived model history, not the 1.x store.
|
|
1074
1074
|
const anchored = maybeAnchorShortAnswer(text);
|
|
1075
1075
|
const effectiveText = anchored ?? text;
|
|
1076
|
+
await writerRef.current?.spine?.beginResourceTurn();
|
|
1076
1077
|
const councilContext = await buildModelContext({
|
|
1077
1078
|
fallbackHistory: getHistory(),
|
|
1078
1079
|
session: writerRef.current?.spine ?? null,
|