@nexus-cortex/core 4.124.14 → 4.124.17

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.
@@ -51,7 +51,7 @@ export interface Decision {
51
51
  detail?: Record<string, unknown>;
52
52
  }
53
53
  /** Observability event kinds (docs/HARNESS_IMPROVEMENT_BACKLOG.md item 3). */
54
- export type SteeringEventKind = 'steering_injected' | 'loop_escalation' | 'endturn_gate_fallback' | 'turn_contract_reject' | 'turn_contract_fallback' | 'action_plan_reject' | 'budget_continue_nudge' | 'inaction_nudge' | 'effort_pulse' | 'time_budget_break' | 'lift_plan' | 'endturn_resolver' | 'deadline_exit_mentor' | 'deadline_exit_break' | 'loop_tool_block' | 'poll_steer' | 'doctrine_curation' | 'doctrine_curation_timeout' | 'integrity_flag' | 'surrender_nudge' | 'mentor_consult' | 'task_spawn' | 'delegate_pane' | 'compaction' | 'slice_block' | 'loop_break' | 'dsml_recovered' | 'reasoning_exhaustion' | 'image_rejection_heal' | 'endturn_gap_accepted' | 'independent_derivation' | 'frame_turn' | 'spec_tests' | 'requirement_ledger' | 'requirement_ledger_delivered' | 'finish_confirm';
54
+ export type SteeringEventKind = 'steering_injected' | 'loop_escalation' | 'endturn_gate_fallback' | 'turn_contract_reject' | 'turn_contract_fallback' | 'action_plan_reject' | 'budget_continue_nudge' | 'inaction_nudge' | 'effort_pulse' | 'time_budget_break' | 'lift_plan' | 'endturn_resolver' | 'deadline_exit_mentor' | 'deadline_exit_break' | 'loop_tool_block' | 'poll_steer' | 'doctrine_curation' | 'doctrine_curation_timeout' | 'integrity_flag' | 'surrender_nudge' | 'mentor_consult' | 'task_spawn' | 'delegate_pane' | 'compaction' | 'slice_block' | 'loop_break' | 'dsml_recovered' | 'reasoning_exhaustion' | 'image_rejection_heal' | 'endturn_gap_accepted' | 'independent_derivation' | 'frame_turn' | 'spec_tests' | 'requirement_ledger' | 'requirement_ledger_delivered' | 'session_usage' | 'finish_confirm';
55
55
  export interface SteeringEventInput {
56
56
  sessionId: string;
57
57
  kind: SteeringEventKind;
@@ -1 +1 @@
1
- {"version":3,"file":"DecisionStore.d.ts","sourceRoot":"","sources":["../../src/training/DecisionStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DecisionStore.d.ts","sourceRoot":"","sources":["../../src/training/DecisionStore.ts"],"names":[],"mappings":"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"}
@@ -26,15 +26,22 @@ export interface LedgerEntry extends RequirementLine {
26
26
  lastResult?: string;
27
27
  }
28
28
  export declare const REQ_LEDGER_SYSTEM: string;
29
+ /** R191: lines about the agent's conduct (time budget, no cheating, no online hints, honesty) are instructions, not gradable requirements. Pure. */
30
+ export declare const REQ_BOILERPLATE_RE: RegExp;
31
+ export declare function isBoilerplateRequirement(text: string): boolean;
32
+ export declare function looksLikeBrokenCheck(result: string): boolean;
29
33
  export declare function buildRequirementLedgerPrompt(task: string, envReport: string | undefined, max: number): string;
30
34
  /** Parse `REQ <n> | <kind> | <text> | CHECK: <cmd|NONE>` lines; tolerant of bullets/backticks; dedup by text; cap. Pure. */
31
35
  export declare function parseRequirementLedger(text: string, max?: number): RequirementLine[];
32
36
  export declare function initLedger(lines: RequirementLine[]): LedgerEntry[];
33
- /** Apply one round of check results. passed → exercised; failed → failed; inconclusive (timeout, refused, no exit) leaves the status. Pure. */
37
+ /** Apply one round of check results. passed → exercised; failed → failed; inconclusive (timeout, refused, no exit) leaves the status;
38
+ * broken (R191: the CHECK itself is defective — usage error, missing script, syntax error) → the line becomes UNVERIFIABLE with its check
39
+ * dropped, so it is never re-run, never counted as a failure, and falls to Jev like any other line without a shell check. Pure. */
40
+ export type CheckOutcome = 'passed' | 'failed' | 'inconclusive' | 'broken';
34
41
  export declare function updateLedger(entries: LedgerEntry[], results: Array<{
35
42
  id: string;
36
43
  result: string;
37
- cls: 'passed' | 'failed' | 'inconclusive';
44
+ cls: CheckOutcome;
38
45
  }>): LedgerEntry[];
39
46
  export declare function ledgerCounts(entries: LedgerEntry[]): {
40
47
  lines: number;
@@ -1 +1 @@
1
- {"version":3,"file":"requirementLedger.d.ts","sourceRoot":"","sources":["../../src/training/requirementLedger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"requirementLedger.d.ts","sourceRoot":"","sources":["../../src/training/requirementLedger.ts"],"names":[],"mappings":"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"}
@@ -15,20 +15,36 @@
15
15
  import { TASK_TEXT_CAP } from './endTurnResolver.js';
16
16
  const KINDS = ['threshold', 'contract', 'exactness', 'constraint', 'latency', 'artifact', 'command', 'other'];
17
17
  export const REQ_LEDGER_SYSTEM = 'You extract the REQUIREMENT LEDGER of a task in a real terminal container BEFORE any solution exists. You are given only the TASK text ' +
18
- 'and an ENVIRONMENT REPORT. List every requirement the task STATES that a hidden grader could check numeric thresholds (recall ≥ 0.96), ' +
19
- 'contract branches (a duplicate submission must not rewrite the ledger), exactness rules (positions must be exact), constraints (the DOM ' +
20
- 'must not change), latency bounds (within 5 s after a respawn), required artifacts (a file at a path in a format), commands that must ' +
21
- 'work. One line per requirement, most discriminating first, quoting or closely paraphrasing the task. For each, give a read-only shell ' +
22
- 'CHECK that EXITS NON-ZERO with a printed reason when that requirement is NOT met (prefer the task\'s own artifacts, paths, commands and ' +
23
- 'numbers; a check may run a program twice, diff against a baseline, or time a command; never create, modify or delete anything; no ' +
24
- 'installs; under 20 seconds), or the word NONE when no shell check can decide it. Output ONLY lines of the form ' +
18
+ 'and an ENVIRONMENT REPORT. List every requirement the task STATES that a hidden grader could check: numeric thresholds, contract ' +
19
+ 'branches (what must or must not happen on a second call, a bad input, a duplicate), exactness rules, do-not-change constraints on ' +
20
+ 'named files or state, latency bounds, required artifacts (a file at a path in a format), commands that must work. One line per ' +
21
+ 'requirement, most discriminating first, quoting or closely paraphrasing THIS task. Every line must come from the TASK text: never ' +
22
+ 'invent a requirement, never copy the example (it is from an unrelated task). SKIP instructions about the agent\'s own conduct time ' +
23
+ 'limits, "do not cheat", "no online solutions or hints", honesty rules a grader cannot check them and they waste lines. For each ' +
24
+ 'requirement give a read-only shell CHECK that EXITS NON-ZERO with a printed reason when it is NOT met (prefer the task\'s own artifacts, ' +
25
+ 'paths, commands and numbers; a check may run a program twice, diff against a baseline, or time a command; never create, modify or delete ' +
26
+ 'anything; no installs; under 20 seconds), or the word NONE when no shell check can decide it. When the task or the environment names a ' +
27
+ 'checker, test or verification script, invoke it EXACTLY as the task text or the environment report shows it invoked; never guess ' +
28
+ 'arguments it does not document — a wrongly-invoked checker is a false failure that misleads the writer. Output ONLY lines of the form ' +
25
29
  '`REQ <n> | <kind> | <requirement> | CHECK: <command or NONE>` where <kind> is one of threshold, contract, exactness, constraint, latency, ' +
26
30
  'artifact, command, other. Nothing else.';
31
+ /** R191: lines about the agent's conduct (time budget, no cheating, no online hints, honesty) are instructions, not gradable requirements. Pure. */
32
+ export const REQ_BOILERPLATE_RE = /\b(within|in under|complete(?:d)?\s+(?:the\s+)?(?:task\s+)?within)\s+\d[\d,]*\s*(?:seconds?|secs?|minutes?|mins?|hours?|hrs?)\b|\b(?:do not|don't|must not|never)\s+cheat\b|\bonline solutions?\b|\bhints? specific to (?:this|the) task\b|\bbe honest\b|\bhonest(?:ly)? report\b/i;
33
+ export function isBoilerplateRequirement(text) { return REQ_BOILERPLATE_RE.test(String(text ?? '')); }
34
+ /** R191: a check whose failure is the CHECK's own defect (usage error, missing script/tool, syntax error in the one-liner), not the work's. Pure. */
35
+ const BROKEN_CHECK_RE = /^usage:|\busage: |unrecognized arguments|the following arguments are required|invalid choice:|error: argument |command not found|: not found\b|can't open file|No module named|\bSyntaxError\b|\bNameError\b|\bIndentationError\b|unexpected EOF while looking for matching|Syntax error: /im;
36
+ export function looksLikeBrokenCheck(result) {
37
+ const r = String(result ?? '');
38
+ const head = r.split('\n', 1)[0] ?? '';
39
+ if (/→ PASSED/.test(head))
40
+ return false;
41
+ return BROKEN_CHECK_RE.test(r.slice(head.length));
42
+ }
27
43
  export function buildRequirementLedgerPrompt(task, envReport, max) {
28
44
  const parts = [`TASK:\n${(task || '').trim().slice(0, TASK_TEXT_CAP)}`];
29
45
  if (envReport && envReport.trim())
30
46
  parts.push(`ENVIRONMENT REPORT (at task start):\n${envReport.trim().slice(0, 2500)}`);
31
- parts.push(`Write at most ${max} REQ lines. Example:\nREQ 1 | contract | a second identical submission must not rewrite crm_leads.json | CHECK: cp /app/data/crm_leads.json /tmp/a.json && npm run -s submit >/dev/null 2>&1; cmp -s /app/data/crm_leads.json /tmp/a.json || { echo "ledger rewritten by a duplicate submit"; exit 1; }`);
47
+ parts.push(`Write at most ${max} REQ lines. Format example (from an UNRELATED task — never copy it):\nREQ 1 | contract | a second identical submission must not rewrite crm_leads.json | CHECK: cp /app/data/crm_leads.json /tmp/a.json && npm run -s submit >/dev/null 2>&1; cmp -s /app/data/crm_leads.json /tmp/a.json || { echo "ledger rewritten by a duplicate submit"; exit 1; }`);
32
48
  return parts.join('\n\n');
33
49
  }
34
50
  /** Parse `REQ <n> | <kind> | <text> | CHECK: <cmd|NONE>` lines; tolerant of bullets/backticks; dedup by text; cap. Pure. */
@@ -50,6 +66,8 @@ export function parseRequirementLedger(text, max = 8) {
50
66
  const key = reqText.toLowerCase();
51
67
  if (!reqText || seen.has(key))
52
68
  continue;
69
+ if (isBoilerplateRequirement(reqText))
70
+ continue; // R191
53
71
  seen.add(key);
54
72
  out.push({ id: `R${out.length + 1}`, kind, text: reqText, check });
55
73
  if (out.length >= max)
@@ -60,13 +78,14 @@ export function parseRequirementLedger(text, max = 8) {
60
78
  export function initLedger(lines) {
61
79
  return lines.map((l) => ({ ...l, status: l.check ? 'open' : 'unverifiable', runs: 0 }));
62
80
  }
63
- /** Apply one round of check results. passed → exercised; failed → failed; inconclusive (timeout, refused, no exit) leaves the status. Pure. */
64
81
  export function updateLedger(entries, results) {
65
82
  const by = new Map(results.map((r) => [r.id, r]));
66
83
  return entries.map((e) => {
67
84
  const r = by.get(e.id);
68
85
  if (!r || !e.check)
69
86
  return e;
87
+ if (r.cls === 'broken')
88
+ return { ...e, status: 'unverifiable', check: null, runs: e.runs + 1, lastResult: `harness check was malformed and has been dropped (${(r.result.split('\n')[1] ?? '').trim().slice(0, 160)})` };
70
89
  const status = r.cls === 'passed' ? 'exercised' : r.cls === 'failed' ? 'failed' : e.status;
71
90
  return { ...e, status, runs: e.runs + 1, lastResult: r.result.slice(0, 1200) };
72
91
  });
@@ -1 +1 @@
1
- {"version":3,"file":"requirementLedger.js","sourceRoot":"","sources":["../../src/training/requirementLedger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"requirementLedger.js","sourceRoot":"","sources":["../../src/training/requirementLedger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * R190 HB-CUMULATIVE-USAGE (2026-09-23) — the session's token ledger.
3
+ *
4
+ * Field: every /v1/messages response (and the bench adapter's metrics.json built from it) carried the usage of the LAST request only, so every
5
+ * "$ tokens" in the cell ledgers since the CF era was a lower bound (the 09-04 audit found the same 5x under-count). This module accumulates
6
+ * every main-model request's provider-reported usage (exact) and every helper/mentor call's size (ESTIMATED at ~4 chars/token — the helper
7
+ * adapters return text, not usage) into one session object that rides on the response as `usage.session`. Pure; the orchestrator feeds it.
8
+ */
9
+ import type { TokenUsageMetrics } from '../adapters/GatewayTranslationLayer.js';
10
+ export interface SessionUsage {
11
+ /** main-model requests seen (initial, continuations, retries, gate re-asks) */
12
+ requests: number;
13
+ inputTokens: number;
14
+ outputTokens: number;
15
+ cacheReadTokens: number;
16
+ cacheCreationTokens: number;
17
+ uncachedInputTokens: number;
18
+ reasoningTokens: number;
19
+ /** helper + mentor calls (compaction, planner, judge, ledger, author, consults) — ESTIMATED from characters */
20
+ helper: {
21
+ calls: number;
22
+ inputTokensEst: number;
23
+ outputTokensEst: number;
24
+ bySurface: Record<string, number>;
25
+ };
26
+ }
27
+ export declare function emptySessionUsage(): SessionUsage;
28
+ /** Add one main-model request's provider usage. A usage with no tokens at all (synthesized streaming usage) is ignored. Pure. */
29
+ export declare function addMainUsage(acc: SessionUsage, usage: TokenUsageMetrics | undefined | null): SessionUsage;
30
+ /** Add one helper/mentor call by size (characters in, characters out). Pure. */
31
+ export declare function addHelperEstimate(acc: SessionUsage, promptChars: number, outputChars: number, surface?: string): SessionUsage;
32
+ export interface UsagePrices {
33
+ inputPerM: number;
34
+ cacheHitPerM: number;
35
+ outputPerM: number;
36
+ helperInputPerM?: number;
37
+ helperOutputPerM?: number;
38
+ }
39
+ /** Cost of the session at the given per-million prices; helper calls priced at the helper rates when given, else the main rates. Pure. */
40
+ export declare function usageCost(acc: SessionUsage, p: UsagePrices): {
41
+ main: number;
42
+ helperEst: number;
43
+ total: number;
44
+ cacheHitRate: number;
45
+ };
46
+ //# sourceMappingURL=usageAccounting.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usageAccounting.d.ts","sourceRoot":"","sources":["../../src/training/usageAccounting.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,MAAM,WAAW,YAAY;IAC3B,+EAA+E;IAC/E,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,+GAA+G;IAC/G,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;CAC/G;AAED,wBAAgB,iBAAiB,IAAI,YAAY,CAEhD;AAED,iIAAiI;AACjI,wBAAgB,YAAY,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,iBAAiB,GAAG,SAAS,GAAG,IAAI,GAAG,YAAY,CAczG;AAED,gFAAgF;AAChF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,SAAW,GAAG,YAAY,CAG/H;AAED,MAAM,WAAW,WAAW;IAAG,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAE;AACjJ,0IAA0I;AAC1I,wBAAgB,SAAS,CAAC,GAAG,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAKrI"}
@@ -0,0 +1,37 @@
1
+ export function emptySessionUsage() {
2
+ return { requests: 0, inputTokens: 0, outputTokens: 0, cacheReadTokens: 0, cacheCreationTokens: 0, uncachedInputTokens: 0, reasoningTokens: 0, helper: { calls: 0, inputTokensEst: 0, outputTokensEst: 0, bySurface: {} } };
3
+ }
4
+ /** Add one main-model request's provider usage. A usage with no tokens at all (synthesized streaming usage) is ignored. Pure. */
5
+ export function addMainUsage(acc, usage) {
6
+ if (!usage)
7
+ return acc;
8
+ const inp = Number(usage.inputTokens ?? 0);
9
+ const out = Number(usage.outputTokens ?? 0);
10
+ if (!(inp > 0) && !(out > 0))
11
+ return acc;
12
+ const c = usage.cache;
13
+ const cr = Number(c?.cacheReadTokens ?? 0);
14
+ const cc = Number(c?.cacheCreationTokens ?? 0);
15
+ const un = typeof c?.uncachedInputTokens === 'number' ? c.uncachedInputTokens : Math.max(0, inp - cr);
16
+ return {
17
+ ...acc,
18
+ requests: acc.requests + 1,
19
+ inputTokens: acc.inputTokens + inp, outputTokens: acc.outputTokens + out,
20
+ cacheReadTokens: acc.cacheReadTokens + cr, cacheCreationTokens: acc.cacheCreationTokens + cc, uncachedInputTokens: acc.uncachedInputTokens + un,
21
+ reasoningTokens: acc.reasoningTokens + Number(usage.reasoningTokens ?? 0),
22
+ };
23
+ }
24
+ /** Add one helper/mentor call by size (characters in, characters out). Pure. */
25
+ export function addHelperEstimate(acc, promptChars, outputChars, surface = 'helper') {
26
+ const i = Math.ceil(Math.max(0, promptChars) / 4);
27
+ const o = Math.ceil(Math.max(0, outputChars) / 4);
28
+ return { ...acc, helper: { calls: acc.helper.calls + 1, inputTokensEst: acc.helper.inputTokensEst + i, outputTokensEst: acc.helper.outputTokensEst + o, bySurface: { ...acc.helper.bySurface, [surface]: (acc.helper.bySurface[surface] ?? 0) + i + o } } };
29
+ }
30
+ /** Cost of the session at the given per-million prices; helper calls priced at the helper rates when given, else the main rates. Pure. */
31
+ export function usageCost(acc, p) {
32
+ const main = (acc.uncachedInputTokens * p.inputPerM + acc.cacheReadTokens * p.cacheHitPerM + acc.outputTokens * p.outputPerM) / 1e6;
33
+ const helperEst = (acc.helper.inputTokensEst * (p.helperInputPerM ?? p.inputPerM) + acc.helper.outputTokensEst * (p.helperOutputPerM ?? p.outputPerM)) / 1e6;
34
+ const denom = acc.cacheReadTokens + acc.uncachedInputTokens;
35
+ return { main, helperEst, total: main + helperEst, cacheHitRate: denom > 0 ? acc.cacheReadTokens / denom : 0 };
36
+ }
37
+ //# sourceMappingURL=usageAccounting.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usageAccounting.js","sourceRoot":"","sources":["../../src/training/usageAccounting.ts"],"names":[],"mappings":"AAuBA,MAAM,UAAU,iBAAiB;IAC/B,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC;AAC9N,CAAC;AAED,iIAAiI;AACjI,MAAM,UAAU,YAAY,CAAC,GAAiB,EAAE,KAA2C;IACzF,IAAI,CAAC,KAAK;QAAE,OAAO,GAAG,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;IAAC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC;IACxF,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC;IACzC,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;IACtB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,eAAe,IAAI,CAAC,CAAC,CAAC;IAAC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,mBAAmB,IAAI,CAAC,CAAC,CAAC;IAC3F,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,mBAAmB,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC;IACtG,OAAO;QACL,GAAG,GAAG;QACN,QAAQ,EAAE,GAAG,CAAC,QAAQ,GAAG,CAAC;QAC1B,WAAW,EAAE,GAAG,CAAC,WAAW,GAAG,GAAG,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,GAAG,GAAG;QACxE,eAAe,EAAE,GAAG,CAAC,eAAe,GAAG,EAAE,EAAE,mBAAmB,EAAE,GAAG,CAAC,mBAAmB,GAAG,EAAE,EAAE,mBAAmB,EAAE,GAAG,CAAC,mBAAmB,GAAG,EAAE;QAC/I,eAAe,EAAE,GAAG,CAAC,eAAe,GAAG,MAAM,CAAE,KAAsC,CAAC,eAAe,IAAI,CAAC,CAAC;KAC5G,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,iBAAiB,CAAC,GAAiB,EAAE,WAAmB,EAAE,WAAmB,EAAE,OAAO,GAAG,QAAQ;IAC/G,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAAC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACrG,OAAO,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,GAAG,CAAC,EAAE,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,eAAe,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC;AAC9P,CAAC;AAGD,0IAA0I;AAC1I,MAAM,UAAU,SAAS,CAAC,GAAiB,EAAE,CAAc;IACzD,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,mBAAmB,GAAG,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,eAAe,GAAG,CAAC,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC;IACpI,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,GAAG,CAAC;IAC7J,MAAM,KAAK,GAAG,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,mBAAmB,CAAC;IAC5D,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,GAAG,SAAS,EAAE,YAAY,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACjH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nexus-cortex/core",
3
- "version": "4.124.14",
3
+ "version": "4.124.17",
4
4
  "description": "Core orchestration library implementing Claude CLI architecture patterns",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -47,8 +47,8 @@
47
47
  "@google/generative-ai": "^0.2.1",
48
48
  "@gradio/client": "^2.3.1",
49
49
  "@modelcontextprotocol/sdk": "^1.20.2",
50
- "@nexus-cortex/executors": "4.124.14",
51
- "@nexus-cortex/types": "4.124.14",
50
+ "@nexus-cortex/executors": "4.124.17",
51
+ "@nexus-cortex/types": "4.124.17",
52
52
  "@types/uuid": "^10.0.0",
53
53
  "ajv": "^8.12.0",
54
54
  "chokidar": "^3.6.0",