@enderfga/claw-orchestrator 4.12.0 → 4.12.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/README.md CHANGED
@@ -92,7 +92,7 @@ Register `clawo-mcp` with any MCP-compatible host: Hermes Agent, Claude Desktop,
92
92
  | Engine | CLI | Tested Version |
93
93
  | ------------ | ---------- | -------------- |
94
94
  | Claude Code | `claude` | 2.1.232 |
95
- | Codex | `codex` | 0.146.0 |
95
+ | Codex | `codex` | 0.147.0 |
96
96
  | Antigravity | `agy` | 1.1.13 |
97
97
  | Cursor Agent | `agent` | 2026.08.11-e8db854 |
98
98
  | OpenCode | `opencode` | 1.18.18 |
@@ -33,6 +33,10 @@ export declare abstract class BaseOneShotSession extends EventEmitter implements
33
33
  private _isBusy;
34
34
  /** Input tokens for the most recent turn only — see _recordTurnInputTokens(). */
35
35
  private _lastTurnTokensIn;
36
+ /** Set when a subclass reported the turn's prompt size itself for this turn. */
37
+ private _turnTokensExplicit;
38
+ /** Ensures the "cannot compact" warning is emitted once, not once per turn. */
39
+ private _warnedNoCompaction;
36
40
  protected currentProc: ChildProcess | null;
37
41
  private currentRequestId;
38
42
  private _startTime;
@@ -71,6 +75,20 @@ export declare abstract class BaseOneShotSession extends EventEmitter implements
71
75
  * with a context-window error instead of degrading.
72
76
  */
73
77
  private _recordTurnInputTokens;
78
+ /**
79
+ * Report the exact prompt size for the turn currently running, overriding the
80
+ * delta heuristic in `_recordTurnInputTokens()` for this turn only.
81
+ */
82
+ protected _reportTurnInputTokens(tokens: number): void;
83
+ /**
84
+ * The context window `contextPercent` is measured against.
85
+ *
86
+ * Defaults to the registry entry for the session's model. Subclasses override
87
+ * when the CLI enforces a smaller window than the model itself supports: the
88
+ * number that matters here is the one that actually fails the request, not the
89
+ * model's published maximum. Return 0 to disable the metric.
90
+ */
91
+ protected _effectiveContextWindow(): number;
74
92
  /**
75
93
  * How full the engine's context is, as a percentage of the model's window.
76
94
  *
@@ -91,6 +109,16 @@ export declare abstract class BaseOneShotSession extends EventEmitter implements
91
109
  type: string;
92
110
  event: unknown;
93
111
  }>;
112
+ /**
113
+ * No-op for one-shot engines, but a *visible* one.
114
+ *
115
+ * The openai-compat auto-compaction gate calls this whenever contextPercent
116
+ * crosses its threshold and discards the result, so an engine that cannot
117
+ * compact used to fail silently: the thread kept growing until the CLI hard-
118
+ * failed with a context-window error and nothing in the logs said why. The
119
+ * warning is emitted once per session — the gate re-fires every turn once the
120
+ * threshold is crossed, and repeating it would drown the log channel.
121
+ */
94
122
  compact(_summary?: string): Promise<TurnResult>;
95
123
  getEffort(): EffortLevel;
96
124
  setEffort(level: EffortLevel): void;
@@ -21,6 +21,10 @@ export class BaseOneShotSession extends EventEmitter {
21
21
  _isBusy = false;
22
22
  /** Input tokens for the most recent turn only — see _recordTurnInputTokens(). */
23
23
  _lastTurnTokensIn = 0;
24
+ /** Set when a subclass reported the turn's prompt size itself for this turn. */
25
+ _turnTokensExplicit = false;
26
+ /** Ensures the "cannot compact" warning is emitted once, not once per turn. */
27
+ _warnedNoCompaction = false;
24
28
  currentProc = null;
25
29
  currentRequestId = 0;
26
30
  _startTime = null;
@@ -109,10 +113,39 @@ export class BaseOneShotSession extends EventEmitter {
109
113
  * with a context-window error instead of degrading.
110
114
  */
111
115
  _recordTurnInputTokens(before) {
116
+ // A subclass that can read the turn's prompt size directly wins over the
117
+ // delta heuristic, which is only correct when `_stats.tokensIn` accumulates
118
+ // per-turn values. Codex reports cumulative thread totals instead, so it
119
+ // reports the subtraction itself — see PersistentCodexSession.
120
+ if (this._turnTokensExplicit) {
121
+ this._turnTokensExplicit = false;
122
+ return;
123
+ }
112
124
  const delta = this._stats.tokensIn - before;
113
125
  if (delta > 0)
114
126
  this._lastTurnTokensIn = delta;
115
127
  }
128
+ /**
129
+ * Report the exact prompt size for the turn currently running, overriding the
130
+ * delta heuristic in `_recordTurnInputTokens()` for this turn only.
131
+ */
132
+ _reportTurnInputTokens(tokens) {
133
+ if (tokens > 0) {
134
+ this._lastTurnTokensIn = tokens;
135
+ this._turnTokensExplicit = true;
136
+ }
137
+ }
138
+ /**
139
+ * The context window `contextPercent` is measured against.
140
+ *
141
+ * Defaults to the registry entry for the session's model. Subclasses override
142
+ * when the CLI enforces a smaller window than the model itself supports: the
143
+ * number that matters here is the one that actually fails the request, not the
144
+ * model's published maximum. Return 0 to disable the metric.
145
+ */
146
+ _effectiveContextWindow() {
147
+ return getContextWindow(this.options.resolvedModel || this.options.model || '');
148
+ }
116
149
  /**
117
150
  * How full the engine's context is, as a percentage of the model's window.
118
151
  *
@@ -124,7 +157,7 @@ export class BaseOneShotSession extends EventEmitter {
124
157
  _contextPercent() {
125
158
  if (this._lastTurnTokensIn <= 0)
126
159
  return 0;
127
- const window = getContextWindow(this.options.resolvedModel || this.options.model || '');
160
+ const window = this._effectiveContextWindow();
128
161
  if (!window)
129
162
  return 0;
130
163
  return Math.min(100, Math.round((this._lastTurnTokensIn / window) * 100));
@@ -153,12 +186,24 @@ export class BaseOneShotSession extends EventEmitter {
153
186
  return this._history.slice(-limit);
154
187
  }
155
188
  // ── compact() ──────────────────────────────────────────────────────────
189
+ /**
190
+ * No-op for one-shot engines, but a *visible* one.
191
+ *
192
+ * The openai-compat auto-compaction gate calls this whenever contextPercent
193
+ * crosses its threshold and discards the result, so an engine that cannot
194
+ * compact used to fail silently: the thread kept growing until the CLI hard-
195
+ * failed with a context-window error and nothing in the logs said why. The
196
+ * warning is emitted once per session — the gate re-fires every turn once the
197
+ * threshold is crossed, and repeating it would drown the log channel.
198
+ */
156
199
  async compact(_summary) {
157
- const event = {
158
- type: 'result',
159
- result: `${this.engineCfg.engineDisplayName} engine does not support compaction`,
160
- };
161
- return { text: event.result, event };
200
+ const message = `${this.engineCfg.engineDisplayName} engine does not support compaction`;
201
+ if (!this._warnedNoCompaction) {
202
+ this._warnedNoCompaction = true;
203
+ this.emit(SESSION_EVENT.LOG, `[${this.engineCfg.enginePrefix}] ${message} — context will keep growing until the CLI refuses the request`);
204
+ }
205
+ const event = { type: 'result', result: message };
206
+ return { text: message, event };
162
207
  }
163
208
  // ── Effort ─────────────────────────────────────────────────────────────
164
209
  getEffort() {
@@ -1 +1 @@
1
- {"version":3,"file":"base-oneshot-session.js","sourceRoot":"","sources":["../../src/base-oneshot-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-oneshot-session.js","sourceRoot":"","sources":["../../src/base-oneshot-session.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,10 @@ export declare class PersistentCodexAppServerSession extends EventEmitter implem
54
54
  private turnReject;
55
55
  sessionId?: string;
56
56
  private _stats;
57
+ /** This turn's own prompt size, from `tokenUsage.last` — see _estimateContextPercent(). */
58
+ private _lastTurnTokensIn;
59
+ /** The window the app-server is enforcing, from `tokenUsage.modelContextWindow`. */
60
+ private _modelContextWindow?;
57
61
  constructor(config: SessionConfig, codexBin?: string);
58
62
  get pid(): number | undefined;
59
63
  get isReady(): boolean;
@@ -136,6 +140,15 @@ export declare class PersistentCodexAppServerSession extends EventEmitter implem
136
140
  nextCursor: string | null;
137
141
  }>;
138
142
  private _addHistory;
143
+ /**
144
+ * How full the thread's context is right now.
145
+ *
146
+ * Both inputs come straight from `thread/tokenUsage/updated`: the turn's own
147
+ * prompt (`last`) and the window the server is actually enforcing. The
148
+ * registry window is only a fallback — it holds the model's published maximum
149
+ * (1.05M for gpt-5.x) while codex caps threads far below that, so measuring
150
+ * against it reads several times too low.
151
+ */
139
152
  private _estimateContextPercent;
140
153
  private _updateCost;
141
154
  }
@@ -59,6 +59,10 @@ export class PersistentCodexAppServerSession extends EventEmitter {
59
59
  costUsd: 0,
60
60
  lastActivity: null,
61
61
  };
62
+ /** This turn's own prompt size, from `tokenUsage.last` — see _estimateContextPercent(). */
63
+ _lastTurnTokensIn = 0;
64
+ /** The window the app-server is enforcing, from `tokenUsage.modelContextWindow`. */
65
+ _modelContextWindow;
62
66
  constructor(config, codexBin) {
63
67
  super();
64
68
  this.codexBin = codexBin || process.env.CODEX_BIN || 'codex';
@@ -339,6 +343,15 @@ export class PersistentCodexAppServerSession extends EventEmitter {
339
343
  this._stats.cachedTokens = p.tokenUsage.total.cachedInputTokens;
340
344
  this._updateCost();
341
345
  }
346
+ // `last` is this turn's own prompt, which for a thread-resuming engine
347
+ // is the live context occupancy; `total` only ever grows and would pin
348
+ // contextPercent at 100 on any long session.
349
+ if (typeof p.tokenUsage?.last?.inputTokens === 'number') {
350
+ this._lastTurnTokensIn = p.tokenUsage.last.inputTokens;
351
+ }
352
+ if (typeof p.tokenUsage?.modelContextWindow === 'number') {
353
+ this._modelContextWindow = p.tokenUsage.modelContextWindow;
354
+ }
342
355
  break;
343
356
  }
344
357
  case 'thread/goal/updated': {
@@ -555,11 +568,22 @@ export class PersistentCodexAppServerSession extends EventEmitter {
555
568
  if (this._history.length > MAX_HISTORY_ITEMS)
556
569
  this._history.shift();
557
570
  }
571
+ /**
572
+ * How full the thread's context is right now.
573
+ *
574
+ * Both inputs come straight from `thread/tokenUsage/updated`: the turn's own
575
+ * prompt (`last`) and the window the server is actually enforcing. The
576
+ * registry window is only a fallback — it holds the model's published maximum
577
+ * (1.05M for gpt-5.x) while codex caps threads far below that, so measuring
578
+ * against it reads several times too low.
579
+ */
558
580
  _estimateContextPercent() {
559
- const ctx = getContextWindow(this.options.model || 'gpt-5.5');
581
+ if (this._lastTurnTokensIn <= 0)
582
+ return 0;
583
+ const ctx = this._modelContextWindow ?? getContextWindow(this.options.model || 'gpt-5.5');
560
584
  if (!ctx)
561
585
  return 0;
562
- return Math.min(100, Math.round(((this._stats.tokensIn + this._stats.tokensOut) / ctx) * 100));
586
+ return Math.min(100, Math.round((this._lastTurnTokensIn / ctx) * 100));
563
587
  }
564
588
  _updateCost() {
565
589
  const pricing = getModelPricing(this.options.model, 'gpt-5.5');
@@ -1 +1 @@
1
- {"version":3,"file":"persistent-codex-app-session.js","sourceRoot":"","sources":["../../src/persistent-codex-app-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,KAAK,EAAgB,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAYlC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAwEzF,MAAM,OAAO,+BAAgC,SAAQ,YAAY;IACvD,OAAO,CAAgB;IACvB,QAAQ,CAAS;IACjB,IAAI,GAAwB,IAAI,CAAC;IACjC,GAAG,GAA8B,IAAI,CAAC;IACtC,QAAQ,GAAG,KAAK,CAAC;IACjB,SAAS,GAAG,KAAK,CAAC;IAClB,OAAO,GAAG,KAAK,CAAC;IAChB,UAAU,GAAkB,IAAI,CAAC;IACjC,UAAU,GAAG,CAAC,CAAC;IACf,eAAe,GAAG,IAAI,GAAG,EAA0B,CAAC;IACpD,QAAQ,GAA0D,EAAE,CAAC;IAE7E,+CAA+C;IACvC,QAAQ,CAAU;IAClB,aAAa,CAAU;IACvB,WAAW,GAAsB,IAAI,CAAC;IAE9C,wCAAwC;IAChC,iBAAiB,GAAG,EAAE,CAAC;IACvB,WAAW,GAAqC,IAAI,CAAC;IACrD,UAAU,GAAgC,IAAI,CAAC;IAEhD,SAAS,CAAU;IAClB,MAAM,GAAG;QACf,KAAK,EAAE,CAAC;QACR,SAAS,EAAE,CAAC;QACZ,UAAU,EAAE,CAAC;QACb,QAAQ,EAAE,CAAC;QACX,SAAS,EAAE,CAAC;QACZ,YAAY,EAAE,CAAC;QACf,OAAO,EAAE,CAAC;QACV,YAAY,EAAE,IAAqB;KACpC,CAAC;IAEF,YAAY,MAAqB,EAAE,QAAiB;QAClD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAG,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC;QAC7D,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,mBAAmB,EAAE,CAAC;IAC7F,CAAC;IAED,0EAA0E;IAE1E,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,SAAS,CAAC;IACrC,CAAC;IACD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IACD,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IACD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IACD,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,0EAA0E;IAE1E,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACrB,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAClD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;gBAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5F,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QACzE,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE;YACrC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;YACrB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;YACvB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,MAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QAEtD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;YAC5C,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,sBAAsB,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC5B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACtB,qDAAqD;YACrD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC;gBACpD,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,iCAAiC,IAAI,qBAAqB,CAAC,CAAC,CAAC;YACxF,CAAC;YACD,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,0CAA0C,IAAI,GAAG,CAAC,CAAC,CAAC;gBAC9E,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAC1B,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,gBAAgB;QAChB,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;YAChC,UAAU,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE;SACzE,CAAC,CAAC;QAEH,qEAAqE;QACrE,0EAA0E;QAC1E,mCAAmC;QACnC,MAAM,WAAW,GAAG;YAClB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;YACrB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;YACzB,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,iBAAiB,CAAgB;SACxE,CAAC;QACF,wEAAwE;QACxE,0EAA0E;QAC1E,0EAA0E;QAC1E,2EAA2E;QAC3E,qBAAqB;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;QAC9C,IAAI,UAAwC,CAAC;QAC7C,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC,CAEzF,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,qCAAsC,GAAa,CAAC,OAAO,mBAAmB,CAAC,CAAC;gBAC7G,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,CAAiC,CAAC;YAClG,CAAC;QACH,CAAC;aAAM,CAAC;YACN,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,CAAiC,CAAC;QAClG,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAC7C,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACvC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QACnF,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,aAAa,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QACrF,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC/F,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI;QACF,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACjB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;QAClB,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC;gBACH,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC5B,CAAC;YAAC,MAAM,CAAC;gBACP,gBAAgB;YAClB,CAAC;YACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACzB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,MAAM;QACJ,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,0EAA0E;IAE1E,KAAK,CAAC,IAAI,CACR,OAA2B,EAC3B,UAA8B,EAAE;QAEhC,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC9E,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC5F,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAE7E,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7B,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;YAClF,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC5C,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,IAAY;QAC3C,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;YAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;SACnD,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,IAAY,EAAE,OAA2B;QAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC;QAC3C,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;QAE5B,MAAM,WAAW,GAAG,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9D,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;YAC3B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,uCAAuC;QACvC,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,EAAE;YAC/B,IAAI,CAAC;gBACH,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;YACrC,CAAC;YAAC,MAAM,CAAC;gBACP,sCAAsC;YACxC,CAAC;QACH,CAAC,CAAC;QACF,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAEpC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC;gBAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,CAAC,CAAC,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC,CAAC;YACxE,CAAC;QACH,CAAC,EAAE,OAAO,CAAC,CAAC;QAEZ,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;gBAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;aACnD,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC;YACjC,OAAO,MAAM,CAAC;QAChB,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,0EAA0E;IAElE,QAAQ,CAAC,MAAc,EAAE,MAAe;QAC9C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;YAChC,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC1E,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC;QAC1E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1D,IAAI,CAAC,IAAK,CAAC,KAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE;gBACnC,IAAI,GAAG,EAAE,CAAC;oBACR,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBAChC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,WAAW,CAAC,IAAY;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,GAOH,CAAC;QACF,IAAI,CAAC;YACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,sBAAsB,OAAO,EAAE,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QAEhF,+BAA+B;QAC/B,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACjD,IAAI,CAAC,OAAO;gBAAE,OAAO;YACrB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBACd,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,YAAY,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC,CAAC;YACjG,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;YACD,OAAO;QACT,CAAC;QAED,mCAAmC;QACnC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAEO,qBAAqB,CAAC,MAAc,EAAE,MAAe;QAC3D,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,CAAC,GAAG,MAAmC,CAAC;gBAC9C,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAAE,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChE,MAAM;YACR,CAAC;YACD,KAAK,cAAc,CAAC,CAAC,CAAC;gBACpB,MAAM,CAAC,GAAG,MAAoD,CAAC;gBAC/D,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBAChC,MAAM;YACR,CAAC;YACD,KAAK,yBAAyB,CAAC,CAAC,CAAC;gBAC/B,MAAM,CAAC,GAAG,MAAuC,CAAC;gBAClD,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtD,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC,KAAK,CAAC;oBAClC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;gBACzC,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,CAAC,GAAG,MAAmC,CAAC;gBAC9C,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,cAAc,IAAI,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACvE,+DAA+D;oBAC/D,4DAA4D;oBAC5D,2CAA2C;oBAC3C,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACxC,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;wBACrC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC7C,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,2BAA2B,CAAC,CAAC,CAAC;gBACjC,MAAM,CAAC,GAAG,MAA6C,CAAC;gBACxD,IAAI,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC;oBACxB,kEAAkE;oBAClE,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC;oBACtD,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,qBAAqB,CAAC;oBACnG,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC;oBAChE,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,qBAAqB,CAAC,CAAC,CAAC;gBAC3B,MAAM,CAAC,GAAG,MAAuC,CAAC;gBAClD,IAAI,CAAC,CAAC,IAAI;oBAAE,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC;gBACtC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC5C,MAAM;YACR,CAAC;YACD,KAAK,qBAAqB,CAAC,CAAC,CAAC;gBAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAC1B,MAAM;YACR,CAAC;YACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,CAAC,GAAG,MAAmC,CAAC;gBAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBACpB,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBACpD,0EAA0E;gBAC1E,0EAA0E;gBAC1E,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,CAAC,aAAa,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE;oBAAE,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;gBACnF,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC;gBACxC,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,QAAQ,CAAC;gBAC3C,MAAM,KAAK,GAAgB;oBACzB,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,QAAQ;oBAChB,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU;oBAC1C,UAAU,EAAE,IAAI,CAAC,QAAQ;iBAC1B,CAAC;gBACF,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACvC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;gBAC9C,uEAAuE;gBACvE,yDAAyD;gBACzD,IAAI,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBAC9B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;oBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC;oBAC5B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;oBACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;oBACvB,GAAG,CAAC,IAAI,KAAK,CAAC,+BAA+B,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;oBACjF,MAAM;gBACR,CAAC;gBACD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;oBAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;oBACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;oBACvB,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC/B,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,CAAC,GAAG,MAA8B,CAAC;gBACzC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,OAAO,IAAI,wBAAwB,CAAC,CAAC,CAAC;gBACjF,MAAM;YACR,CAAC;YACD;gBACE,4DAA4D;gBAC5D,MAAM;QACV,CAAC;IACH,CAAC;IAED,0EAA0E;IAE1E,QAAQ;QACN,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;YACxB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;YAClC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;YACtC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,KAAK;YACxD,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;YACtC,cAAc,EAAE,IAAI,CAAC,uBAAuB,EAAE;YAC9C,OAAO,EAAE,CAAC;YACV,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACnG,aAAa,EAAE,IAAI,CAAC,QAAQ;YAC5B,IAAI,EAAE,IAAI,CAAC,WAAW;SACvB,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,KAAK,GAAG,qBAAqB;QACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAiB;QAC7B,wEAAwE;QACxE,uEAAuE;QACvE,uDAAuD;QACvD,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzE,MAAM,KAAK,GAAgB,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,iCAAiC,EAAE,CAAC;QACzF,OAAO,EAAE,IAAI,EAAE,iCAAiC,EAAE,KAAK,EAAE,CAAC;IAC5D,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC;IACvC,CAAC;IACD,SAAS,CAAC,KAAkB;QAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED,YAAY,CAAC,KAAa;QACxB,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO;QACL,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACjF,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS;YACtC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;YACtC,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,IAAI,SAAS,EAAE;YAC1G,SAAS,EAAE;gBACT,SAAS,EAAE,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,KAAK;gBACpD,UAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,WAAW;gBAChE,UAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,MAAM;aACjE;YACD,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;SAC9B,CAAC;IACJ,CAAC;IAED,0EAA0E;IAE1E;;;;;;;OAOG;IACH,KAAK,CAAC,eAAe,CAAC,SAAiB,EAAE,SAAS,GAAG,OAAO;QAC1D,MAAM,IAAI,GAAG,QAAQ,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACnE,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAe,CAAC;QACpG,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;IACvD,CAAC;IAED,0EAA0E;IAC1E,EAAE;IACF,iEAAiE;IACjE,+EAA+E;IAC/E,6DAA6D;IAE7D,+EAA+E;IAC/E,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,kFAAkF;IAClF,KAAK,CAAC,SAAS;QACb,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACvD,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC/F,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK,CAAC,IAAY;QACtB,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QACpD,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;gBAC9C,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,cAAc,EAAE,IAAI,CAAC,aAAa;gBAClC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;aACnD,CAAC,CAAwB,CAAC;YAC3B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACjD,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAe,CAAC;QAC3E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED,uFAAuF;IACvF,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAiC,CAAC;QAC/G,MAAM,KAAK,GAAG,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;QAC/B,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAC7E,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,2EAA2E;IAC3E,KAAK,CAAC,QAAQ,CAAC,QAAgB;QAC7B,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAClH,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,sEAAsE;IACtE,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC,CAAyB,CAAC;QAC7E,OAAO,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED,uEAAuE;IACvE,KAAK,CAAC,WAAW,CACf,OAAmG,EAAE;QAErG,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAClD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;YAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACvE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACjE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3D,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxD,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,CAAqD,CAAC;QAC9G,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,IAAI,IAAI,EAAE,CAAC;IAC1E,CAAC;IAED,0EAA0E;IAElE,WAAW,CAAC,KAAqD;QACvE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,iBAAiB;YAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACtE,CAAC;IAEO,uBAAuB;QAC7B,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC;QAC9D,IAAI,CAAC,GAAG;YAAE,OAAO,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACjG,CAAC;IAEO,WAAW;QACjB,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACjF,IAAI,CAAC,MAAM,CAAC,OAAO;YACjB,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,KAAK;gBACzC,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,WAAW;gBACpD,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IACzD,CAAC;CACF"}
1
+ {"version":3,"file":"persistent-codex-app-session.js","sourceRoot":"","sources":["../../src/persistent-codex-app-session.ts"],"names":[],"mappings":"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"}
@@ -28,9 +28,54 @@ export declare class PersistentCodexSession extends BaseOneShotSession {
28
28
  * config string to disk once and reuse it across turns. Removed on stop().
29
29
  */
30
30
  private _schemaFilePath?;
31
+ /**
32
+ * Codex's own context limit for this thread, harvested from its rollout file.
33
+ *
34
+ * The registry window is the model's published maximum (1.05M for gpt-5.x);
35
+ * codex enforces a much smaller one of its own (258,400 measured on 0.147.0
36
+ * for gpt-5.6-sol) and that is the limit a request actually dies on. Using the
37
+ * registry value here made `contextPercent` read ~4x low, so the auto-compaction
38
+ * gate stayed below its threshold right up to a hard context-window failure.
39
+ * Undefined until the rollout has been read; falls back to the registry.
40
+ */
41
+ private _codexContextWindow?;
42
+ /**
43
+ * Cumulative `input_tokens` codex reported at the end of the previous turn.
44
+ *
45
+ * Codex's `turn.completed.usage` is cumulative over the whole thread, not the
46
+ * turn — three identical trivial turns report 13,856 → 27,727 → 41,613, and
47
+ * each of those equals `total_token_usage.input_tokens` in the rollout exactly.
48
+ * Subtracting consecutive values recovers the per-turn prompt, which for a
49
+ * thread-resuming engine is the live context occupancy.
50
+ */
51
+ private _prevCumulativeIn?;
52
+ /** Guards the rollout lookup so it runs at most once per session. */
53
+ private _rolloutRead;
31
54
  constructor(config: SessionConfig, codexBin?: string);
32
55
  /** Expose the captured thread ID for the codex_resume tool and stats overlay. */
33
56
  get threadId(): string | undefined;
57
+ /** Codex's enforced limit when we know it, else the model registry's. */
58
+ protected _effectiveContextWindow(): number;
59
+ /**
60
+ * Harvest what `codex exec --json` does not emit from the thread's rollout file.
61
+ *
62
+ * The JSON stream carries only `turn.completed.usage`; codex's own context
63
+ * limit and the pre-existing token total of a resumed thread live in
64
+ * `$CODEX_HOME/sessions/**\/rollout-*-<thread_id>.jsonl`. Runs at most once
65
+ * per session and is entirely best-effort: an unreadable, absent or
66
+ * `--ephemeral` thread simply leaves both values unset and the registry
67
+ * fallback applies.
68
+ */
69
+ private _readRollout;
70
+ /**
71
+ * Locate a thread's rollout under `sessions/<year>/<month>/<day>/`.
72
+ *
73
+ * Walks newest-first and stops at the first hit, so the usual case — a thread
74
+ * from today — costs a handful of small readdirs. A recursive listing would
75
+ * instead materialize every rollout the user has ever recorded, which for a
76
+ * long-lived fleet is tens of thousands of paths to find one file.
77
+ */
78
+ private _findRolloutFile;
34
79
  /**
35
80
  * Build the Codex spawn args for this turn.
36
81
  *
@@ -14,8 +14,8 @@
14
14
  * conversation continuity (Codex 0.119+).
15
15
  */
16
16
  import { spawn } from 'node:child_process';
17
- import { writeFileSync, unlinkSync } from 'node:fs';
18
- import { tmpdir } from 'node:os';
17
+ import { writeFileSync, unlinkSync, readFileSync, readdirSync } from 'node:fs';
18
+ import { tmpdir, homedir } from 'node:os';
19
19
  import { join } from 'node:path';
20
20
  import { SESSION_EVENT } from './constants.js';
21
21
  import { BaseOneShotSession } from './base-oneshot-session.js';
@@ -33,6 +33,29 @@ export class PersistentCodexSession extends BaseOneShotSession {
33
33
  * config string to disk once and reuse it across turns. Removed on stop().
34
34
  */
35
35
  _schemaFilePath;
36
+ /**
37
+ * Codex's own context limit for this thread, harvested from its rollout file.
38
+ *
39
+ * The registry window is the model's published maximum (1.05M for gpt-5.x);
40
+ * codex enforces a much smaller one of its own (258,400 measured on 0.147.0
41
+ * for gpt-5.6-sol) and that is the limit a request actually dies on. Using the
42
+ * registry value here made `contextPercent` read ~4x low, so the auto-compaction
43
+ * gate stayed below its threshold right up to a hard context-window failure.
44
+ * Undefined until the rollout has been read; falls back to the registry.
45
+ */
46
+ _codexContextWindow;
47
+ /**
48
+ * Cumulative `input_tokens` codex reported at the end of the previous turn.
49
+ *
50
+ * Codex's `turn.completed.usage` is cumulative over the whole thread, not the
51
+ * turn — three identical trivial turns report 13,856 → 27,727 → 41,613, and
52
+ * each of those equals `total_token_usage.input_tokens` in the rollout exactly.
53
+ * Subtracting consecutive values recovers the per-turn prompt, which for a
54
+ * thread-resuming engine is the live context occupancy.
55
+ */
56
+ _prevCumulativeIn;
57
+ /** Guards the rollout lookup so it runs at most once per session. */
58
+ _rolloutRead = false;
36
59
  constructor(config, codexBin) {
37
60
  super(config, codexBin || process.env.CODEX_BIN || 'codex', {
38
61
  enginePrefix: 'codex',
@@ -48,6 +71,76 @@ export class PersistentCodexSession extends BaseOneShotSession {
48
71
  get threadId() {
49
72
  return this.codexThreadId;
50
73
  }
74
+ // ── Context accounting ─────────────────────────────────────────────────
75
+ /** Codex's enforced limit when we know it, else the model registry's. */
76
+ _effectiveContextWindow() {
77
+ return this._codexContextWindow ?? super._effectiveContextWindow();
78
+ }
79
+ /**
80
+ * Harvest what `codex exec --json` does not emit from the thread's rollout file.
81
+ *
82
+ * The JSON stream carries only `turn.completed.usage`; codex's own context
83
+ * limit and the pre-existing token total of a resumed thread live in
84
+ * `$CODEX_HOME/sessions/**\/rollout-*-<thread_id>.jsonl`. Runs at most once
85
+ * per session and is entirely best-effort: an unreadable, absent or
86
+ * `--ephemeral` thread simply leaves both values unset and the registry
87
+ * fallback applies.
88
+ */
89
+ _readRollout() {
90
+ if (this._rolloutRead || !this.codexThreadId)
91
+ return;
92
+ this._rolloutRead = true;
93
+ try {
94
+ const root = join(process.env.CODEX_HOME || join(homedir(), '.codex'), 'sessions');
95
+ const match = this._findRolloutFile(root, `-${this.codexThreadId}.jsonl`);
96
+ if (!match)
97
+ return;
98
+ const text = readFileSync(match, 'utf8');
99
+ const windowMatch = /"model_context_window":\s*(\d+)/.exec(text);
100
+ if (windowMatch)
101
+ this._codexContextWindow = Number(windowMatch[1]);
102
+ // Last entry wins — it is the thread total as of the most recent turn.
103
+ if (this._prevCumulativeIn === undefined) {
104
+ const totals = text.match(/"total_token_usage":\s*\{[^}]*\}/g);
105
+ const last = totals?.[totals.length - 1];
106
+ if (last) {
107
+ const parsed = JSON.parse(`{${last}}`);
108
+ const seed = parsed.total_token_usage?.input_tokens;
109
+ if (typeof seed === 'number')
110
+ this._prevCumulativeIn = seed;
111
+ }
112
+ }
113
+ }
114
+ catch {
115
+ /* best effort — registry fallback covers every failure mode */
116
+ }
117
+ }
118
+ /**
119
+ * Locate a thread's rollout under `sessions/<year>/<month>/<day>/`.
120
+ *
121
+ * Walks newest-first and stops at the first hit, so the usual case — a thread
122
+ * from today — costs a handful of small readdirs. A recursive listing would
123
+ * instead materialize every rollout the user has ever recorded, which for a
124
+ * long-lived fleet is tens of thousands of paths to find one file.
125
+ */
126
+ _findRolloutFile(root, suffix) {
127
+ const newestFirst = (dir) => readdirSync(dir, { withFileTypes: true })
128
+ .filter((e) => e.isDirectory())
129
+ .map((e) => e.name)
130
+ .sort()
131
+ .reverse();
132
+ for (const year of newestFirst(root)) {
133
+ for (const month of newestFirst(join(root, year))) {
134
+ for (const day of newestFirst(join(root, year, month))) {
135
+ const dir = join(root, year, month, day);
136
+ const hit = readdirSync(dir).find((f) => f.endsWith(suffix));
137
+ if (hit)
138
+ return join(dir, hit);
139
+ }
140
+ }
141
+ }
142
+ return undefined;
143
+ }
51
144
  /**
52
145
  * Build the Codex spawn args for this turn.
53
146
  *
@@ -137,6 +230,10 @@ export class PersistentCodexSession extends BaseOneShotSession {
137
230
  super._cleanupProc();
138
231
  }
139
232
  _run(message, options) {
233
+ // Read before spawning: on a resumed thread the baseline has to be the
234
+ // cumulative total as of the *previous* turn, and this turn is about to
235
+ // append its own to the same file.
236
+ this._readRollout();
140
237
  const args = this._buildArgs(message);
141
238
  const timeout = options.timeout || 300_000;
142
239
  return new Promise((resolve, reject) => {
@@ -272,12 +369,25 @@ export class PersistentCodexSession extends BaseOneShotSession {
272
369
  // Real usage from `turn.completed`. Falls back to zero rather than
273
370
  // estimated tokens — better to have an honest "0" than a guess that
274
371
  // misleads cost reporting.
372
+ //
373
+ // These are thread-cumulative, so they are *assigned*, not accumulated.
374
+ // Adding them summed a running total of running totals: with a constant
375
+ // per-turn prompt P, N turns reported P*N*(N+1)/2 against a true P*N —
376
+ // an (N+1)/2 overstatement that grew without bound (measured at 3.6x on
377
+ // a seven-turn session). The codex app-server sibling has always
378
+ // assigned; this brings `codex exec` in line with it.
275
379
  if (lastUsage) {
276
- this._stats.tokensIn += lastUsage.input_tokens ?? 0;
277
- this._stats.tokensOut += (lastUsage.output_tokens ?? 0) + (lastUsage.reasoning_output_tokens ?? 0);
278
- this._stats.cachedTokens += lastUsage.cached_input_tokens ?? 0;
380
+ const cumulativeIn = lastUsage.input_tokens ?? 0;
381
+ this._reportTurnInputTokens(cumulativeIn - (this._prevCumulativeIn ?? 0));
382
+ this._prevCumulativeIn = cumulativeIn;
383
+ this._stats.tokensIn = cumulativeIn;
384
+ this._stats.tokensOut = (lastUsage.output_tokens ?? 0) + (lastUsage.reasoning_output_tokens ?? 0);
385
+ this._stats.cachedTokens = lastUsage.cached_input_tokens ?? 0;
279
386
  }
280
387
  this._updateCost();
388
+ // A fresh session has no rollout to read until its first turn has
389
+ // created one; retry now that the thread id is known.
390
+ this._readRollout();
281
391
  this._addHistory({ text: assistantText, code });
282
392
  const event = {
283
393
  type: 'result',
@@ -1 +1 @@
1
- {"version":3,"file":"persistent-codex-session.js","sourceRoot":"","sources":["../../src/persistent-codex-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistent-codex-session.js","sourceRoot":"","sources":["../../src/persistent-codex-session.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@enderfga/claw-orchestrator",
3
- "version": "4.12.0",
3
+ "version": "4.12.1",
4
4
  "description": "Claw Orchestrator — run Claude Code, Codex, Gemini, Cursor Agent, OpenCode and custom coding CLIs as one unified runtime. Drop into Hermes Agent, Claude Desktop, Cursor, Cline, Continue, Zed, Windsurf, Goose or any Model Context Protocol (MCP) host, install as an OpenClaw plugin, or run standalone. Persistent sessions, multi-agent council, ultraplan, ultrareview, autoloop, tool orchestration.",
5
5
  "type": "module",
6
6
  "main": "./dist/src/index.js",
@@ -176,6 +176,13 @@ Reviewer 70 %. Override per run via `compactThresholds`. A 30 s debounce
176
176
  prevents re-fire while post-compact stats settle. Events: `compact` is
177
177
  emitted on the dispatcher EventEmitter AND appended to `decisions.jsonl`.
178
178
 
179
+ One-shot engines (`codex`, `agy`, `cursor`, `opencode`) cannot compact — their
180
+ CLIs expose no such command. The threshold is still meaningful there because
181
+ `contextPercent` now tracks real occupancy, but crossing it cannot free space:
182
+ the session emits a single warning on its log channel the first time compaction
183
+ is requested, then the thread keeps growing until the CLI refuses the request.
184
+ Treat that warning as the signal to start a fresh session.
185
+
179
186
  ## Phase-error circuit
180
187
 
181
188
  Subprocess deaths (Claude session lost), failed `git commit` in an iter, and
@@ -53,15 +53,16 @@ await manager.startSession({
53
53
 
54
54
  ### OpenAI Codex (`engine: 'codex'`)
55
55
 
56
- Wraps the `codex exec` subcommand. Each `send()` spawns a new process. Tested with `codex` CLI **0.146.0**.
56
+ Wraps the `codex exec` subcommand. Each `send()` spawns a new process. Tested with `codex` CLI **0.147.0**.
57
57
 
58
58
  - Non-interactive execution via `codex exec --sandbox workspace-write --json` (replaces the deprecated `--full-auto` flag from earlier Codex versions)
59
- - Real per-turn `usage` from the `turn.completed` JSON event (input, output, cached, reasoning tokens)
59
+ - Real `usage` from the `turn.completed` JSON event (input, output, cached, reasoning tokens). **These are cumulative over the thread, not per turn** — three identical turns on 0.147.0 report `input_tokens` 13,856 → 27,727 → 41,613, each matching `total_token_usage` in that thread's rollout exactly. They are assigned to the session totals, never added; subtracting consecutive values recovers the turn's own prompt
60
+ - `contextPercent` is that per-turn prompt (which, for a thread-resuming engine, is the live context occupancy) over **codex's own limit**, harvested from the thread's rollout file (`model_context_window`, 258,400 on 0.147.0). The model registry holds the published window — 1,050,000 for gpt-5.x — which codex does not honour, so measuring against it reads ~4x low. Resuming a thread also seeds the token baseline from the rollout, so the first send does not mistake the whole thread history for one prompt. All of this is best-effort: an unreadable or `--ephemeral` thread falls back to the registry window
60
61
  - `item.completed` parsing distinguishes `reasoning` / `todo_list` (logged, not counted) from real tool items (`command_execution`, `file_change`, `mcp_tool_call`, `web_search`, which increment `toolCalls`; a non-zero `command_execution.exit_code` increments `toolErrors`)
61
62
  - Reasoning effort: the engine-agnostic `effort` maps to `-c model_reasoning_effort=<level>` (`max`→`xhigh`; `auto`/`ultracode` omitted)
62
63
  - `codexProfile` → `--profile <name>` (named config profile from `~/.codex/config.toml`)
63
64
  - Per-session continuity: the `thread_id` from the first turn's `thread.started` event is captured and reused via `codex exec resume <id>` for subsequent sends, so the model sees prior turns
64
- - `sandboxMode` maps to `--sandbox <mode>` on the first turn. **A resumed thread does not inherit it**, and `codex exec resume` rejects `--sandbox`, so the policy is restated as `-c sandbox_mode="<mode>"` on every resume. Without that, a `read-only` session goes writable from its second turn onward — verified against 0.146.0, where such a session wrote to disk on turn 2 on every attempt
65
+ - `sandboxMode` maps to `--sandbox <mode>` on the first turn. **A resumed thread does not inherit it**, and `codex exec resume` rejects `--sandbox`, so the policy is restated as `-c sandbox_mode="<mode>"` on every resume. Without that, a `read-only` session goes writable from its second turn onward — verified against 0.146.0, where such a session wrote to disk on turn 2 on every attempt. Re-probed on 0.147.0 (direct write, shell redirect and delegate-to-subagent, each on a resumed turn): no writes
65
66
  - One-shot execution per message (no persistent subprocess between sends)
66
67
  - Captures the real Codex thread ID and persists it, so later sends and process-level session resume use `codex exec resume <thread_id>`
67
68
  - Working directory passed via `-C` flag
@@ -86,7 +87,7 @@ Wraps `codex app-server --listen stdio:// --enable goals` as a long-running JSON
86
87
  - Long-running subprocess; one `codex app-server` per session
87
88
  - JSON-RPC 2.0 over stdio with v2 protocol method names (`initialize`, `thread/start`, `turn/start`, ...)
88
89
  - Real-time streaming via `item/agentMessage/delta` notifications
89
- - Cumulative token tracking from `thread/tokenUsage/updated` notifications
90
+ - Cumulative token tracking from `thread/tokenUsage/updated` notifications. The same notification's `last` breakdown and `modelContextWindow` drive `contextPercent`, so it reports live occupancy against the window the server actually enforces (258,400 on 0.147.0) rather than a running total over the model's published window
90
91
  - Goal lifecycle observation via `thread/goal/updated` and `thread/goal/cleared` notifications
91
92
  - Goal control via the `codex_goal_*` tools (which internally send the `/goal` slash command as user text — see [tools.md](./tools.md#codex-13))
92
93
  - v2 RPC tools (Codex 0.137): `codex_interrupt` (`turn/interrupt`), `codex_steer` (`turn/steer`), `codex_fork` (`thread/fork`), `codex_rollback` (`thread/rollback`), `codex_models` (`model/list`), `codex_threads` (`thread/list`). A `turn/completed` with `status: 'failed'` rejects the turn and increments `toolErrors`.
@@ -130,6 +130,14 @@ const status = manager.getStatus('my-task');
130
130
  console.log(`Context: ${status.stats.contextPercent}%`);
131
131
  ```
132
132
 
133
+ `contextPercent` is how full the live context is right now — the current turn's
134
+ prompt over the window the engine actually enforces — so it rises and falls with
135
+ the conversation. `stats.tokensIn` is the different question of how many input
136
+ tokens the session has been billed for in total, which only ever grows.
137
+ `compactSession()` is a no-op on engines whose CLI has no compaction command
138
+ (`codex`, `agy`, `cursor`, `opencode`); those sessions log a warning the first
139
+ time it is called.
140
+
133
141
  ### Cost Tracking
134
142
 
135
143
  ```typescript