@nexus-cortex/core 4.93.0 → 4.95.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/{.env.example → .env.defaults} +134 -25
  2. package/dist/config/MentorshipConfigService.d.ts +0 -1
  3. package/dist/config/MentorshipConfigService.d.ts.map +1 -1
  4. package/dist/config/MentorshipConfigService.js +10 -5
  5. package/dist/config/MentorshipConfigService.js.map +1 -1
  6. package/dist/config/SettingsLoader.d.ts +92 -11
  7. package/dist/config/SettingsLoader.d.ts.map +1 -1
  8. package/dist/config/SettingsLoader.js +331 -131
  9. package/dist/config/SettingsLoader.js.map +1 -1
  10. package/dist/config/effectiveConfig.d.ts +1 -1
  11. package/dist/config/effectiveConfig.d.ts.map +1 -1
  12. package/dist/config/effectiveConfig.js +10 -1
  13. package/dist/config/effectiveConfig.js.map +1 -1
  14. package/dist/middleware/HelperModelMiddleware.d.ts +32 -0
  15. package/dist/middleware/HelperModelMiddleware.d.ts.map +1 -1
  16. package/dist/middleware/HelperModelMiddleware.js +57 -5
  17. package/dist/middleware/HelperModelMiddleware.js.map +1 -1
  18. package/dist/models/cards/deepseek/deepseek-v4-flash.d.ts.map +1 -1
  19. package/dist/models/cards/deepseek/deepseek-v4-flash.js +4 -2
  20. package/dist/models/cards/deepseek/deepseek-v4-flash.js.map +1 -1
  21. package/dist/orchestrator/CortexOrchestrator.d.ts +34 -0
  22. package/dist/orchestrator/CortexOrchestrator.d.ts.map +1 -1
  23. package/dist/orchestrator/CortexOrchestrator.js +292 -6
  24. package/dist/orchestrator/CortexOrchestrator.js.map +1 -1
  25. package/dist/orchestrator/OrchestratorFactory.js +1 -1
  26. package/dist/orchestrator/OrchestratorFactory.js.map +1 -1
  27. package/dist/orchestrator/displayHistorySanitizer.d.ts +29 -0
  28. package/dist/orchestrator/displayHistorySanitizer.d.ts.map +1 -0
  29. package/dist/orchestrator/displayHistorySanitizer.js +62 -0
  30. package/dist/orchestrator/displayHistorySanitizer.js.map +1 -0
  31. package/dist/orchestrator/loopToolBlock.d.ts +46 -0
  32. package/dist/orchestrator/loopToolBlock.d.ts.map +1 -0
  33. package/dist/orchestrator/loopToolBlock.js +66 -0
  34. package/dist/orchestrator/loopToolBlock.js.map +1 -0
  35. package/dist/tools/context-management/InitCortexContext.js +1 -1
  36. package/dist/tools/context-management/InitCortexContext.js.map +1 -1
  37. package/dist/training/DecisionStore.d.ts +1 -1
  38. package/dist/training/DecisionStore.d.ts.map +1 -1
  39. package/dist/training/DecisionStore.js.map +1 -1
  40. package/dist/training/deadlineExitMentor.d.ts +67 -0
  41. package/dist/training/deadlineExitMentor.d.ts.map +1 -0
  42. package/dist/training/deadlineExitMentor.js +99 -0
  43. package/dist/training/deadlineExitMentor.js.map +1 -0
  44. package/dist/training/endTurnResolver.d.ts +14 -3
  45. package/dist/training/endTurnResolver.d.ts.map +1 -1
  46. package/dist/training/endTurnResolver.js +27 -10
  47. package/dist/training/endTurnResolver.js.map +1 -1
  48. package/dist/training/loopExitPlanner.d.ts +30 -0
  49. package/dist/training/loopExitPlanner.d.ts.map +1 -0
  50. package/dist/training/loopExitPlanner.js +61 -0
  51. package/dist/training/loopExitPlanner.js.map +1 -0
  52. package/dist/training/toolOutcome.d.ts.map +1 -1
  53. package/dist/training/toolOutcome.js +33 -2
  54. package/dist/training/toolOutcome.js.map +1 -1
  55. package/package.json +5 -5
@@ -1,24 +1,36 @@
1
+ # GENERATED — DO NOT EDIT. Read-live, shipped mirror of the MASTER config `.env`.
2
+ # Edit `.env` (the master); regenerate with `npm run sync:env` (runs on build).
3
+ # Read as the lowest-precedence default layer: user ~/.cortex/.env > real env > this.
4
+
1
5
  # Nexus Cortex — Complete Environment Configuration Reference
2
6
  # ╔══════════════════════════════════════════════════════════════════════════════════╗
3
7
  # ║ LEVER LEDGER — this file is the persistent record of where every config lever ║
4
8
  # ║ stands. Each lever carries a "# [LEDGER <date> @<version>] STATUS — evidence" ║
5
9
  # ║ line (ON | DARK/RETIRED | DARK/PENDING | DARK by design). Update the line when a ║
6
10
  # ║ cell moves the verdict and when each iteration ships. Cell ledgers live in ║
7
- # ║ .cortex/bench/r-*.md. K=5 CONFIG (settled 2026-09-03 @4.90.1, r-v4-validation): ║
8
- # ║ ON set + CORTEX_ENDTURN_GATE=true + CORTEX_ENDTURN_REQUIREMENTS=strict + ║
11
+ # ║ .cortex/bench/r-*.md. K=5 CONFIG (verified 2026-09-06 @4.93.0, r-resolver-k5): ║
12
+ # ║ ON set + CORTEX_ENDTURN_GATE=true + CORTEX_ENDTURN_REQUIREMENTS=true + ║
9
13
  # ║ ENABLE_WEBTOOLS=false (bench pin) + VISION_HELPER_MODEL on + TOOL_TIMEOUT_MODE=auto; ║
10
- # ║ MENTOR_AUTO / EFFORT_TAIL / EFFORT_PULSE dark. Pin nexus-cortex@4.91.0 (4.90.0.s ║
14
+ # ║ MENTOR_AUTO / EFFORT_TAIL / EFFORT_PULSE dark. Pin nexus-cortex@4.93.0 (4.90.0.s ║
11
15
  # ║ timeout-promote was inert). Both models. ║
12
16
  # ╚══════════════════════════════════════════════════════════════════════════════════╝
13
- # Copy to .env and fill in the API keys for the providers you use. Every other value
14
- # has a proven-optimal default.
17
+ # THIS FILE IS THE MASTER CONFIGURATION DOCUMENT.
18
+ # ─────────────────────────────────────────────────────────────────────────────────
19
+ # Every harness lever lives here, with its value and its [LEDGER] annotation — the one
20
+ # readable place to see and change what the harness does. Edit HERE. On build, this file
21
+ # is mirrored to the committed, shipped `.env.defaults` (the same content), which the
22
+ # harness reads LIVE as its lowest-precedence default layer — so a package upgrade ships
23
+ # these values to every user automatically (nothing to regenerate, no keys to re-enter).
24
+ #
25
+ # PRECEDENCE (highest → lowest): a user's ~/.cortex/.env (their keys + deliberate
26
+ # overrides) → the real shell/injected env → these defaults → the hardcoded floor.
15
27
  #
16
- # WARNING: The Settings Configurator (/config) regenerates .env from SettingsSchema.
17
- # Runtime-only vars (YOLO, SERVER_IDLE_TIMEOUT, WEB_TOOLS_MODEL, etc.) are NOT in the
18
- # schema — they will be silently dropped unless the SettingsWriter preserves them.
28
+ # 🔴 SECRETS STAY BLANK HERE. This file is tracked and its mirror ships — provider API
29
+ # keys must NOT carry values (they live in the environment / Replit Secrets / the user's
30
+ # ~/.cortex/.env). The build FAILS if any secret key has a value here.
19
31
  #
20
- # Keep this file and .env structurally in sync: same comments + ordering, only the
21
- # values differ (.env = your real config, this file = template/defaults).
32
+ # An ACTIVE line is the shipped default (including `LEVER=false` to ship it OFF); a
33
+ # COMMENTED line falls through to the hardcoded floor. Keep the [LEDGER] lines current.
22
34
 
23
35
  # ============================================
24
36
  # API KEYS
@@ -142,7 +154,9 @@ HELPER_MODEL_ID=deepseek-v4-flash
142
154
  # claude-haiku-4-5 — Anthropic web_search server tool (inline source citations)
143
155
  # grok-4-fast-non-reasoning — XAI Responses API web_search (URL citations)
144
156
  # grok-4.3 — XAI Responses API web_search (reasoning model, URL citations)
145
- WEB_TOOLS_MODEL=gemini-2.5-flash
157
+ # PRODUCTION DEFAULT: unset (auto-pick by the user's available key, else DuckDuckGo).
158
+ # A local Gemini override lives in the LOCAL-ONLY section at the bottom of this file.
159
+ WEB_TOOLS_MODEL=
146
160
 
147
161
  # Web surface mode — auto | true | false (default auto).
148
162
  # auto — WebFetch stays ON (works keyless via the helper-summarizer ladder); WebSearch, Browse,
@@ -237,6 +251,23 @@ CORTEX_EFFORT_PULSE=false
237
251
  # [LEDGER 2026-09-02 @4.89.0] DARK — 0 at n=2 (c3): co-fired with the gate on 6/7 tasks; the fd protein-assembly flip did NOT replicate (0/2). Retire-candidate; keep false.
238
252
  CORTEX_EFFORT_TAIL=false
239
253
  #CORTEX_EFFORT_TAIL_TURNS=2
254
+ # ACTION EFFORT — static reasoning effort for the PRIMARY (action) model. Fills the request
255
+ # param when unset, so it overrides the model CARD's default but NOT an explicit request param
256
+ # or the dynamic effort-pulse. Mentor levers (LIFT_PLAN/ENDTURN_RESOLVER/DEADLINE_EXIT *_EFFORT)
257
+ # are SEPARATE and stay at max. Values: low | medium | high | max (provider-dependent). Unset =
258
+ # the card decides (deepseek cards = medium). Enables the pro-track "wide effort delta" A/B:
259
+ # pro@low-action + pro@max-mentors (cheap decisive executor, deliberation quarantined to mentors).
260
+ # [LEDGER 2026-09-06 @4.93.0] DARK/PENDING — lever built; UNTESTED (the 08-30 A/B was max-vs-medium,
261
+ # never medium-vs-low). Floor risk: too low loses in-loop tool micro-reasoning. Arm in the fanout
262
+ # cell (pro@low vs pro@medium vs pro@max action, mentors@max); winner → bake into the pro card's
263
+ # reasoning.effortByRole.action (validate-then-bake).
264
+ # [LEDGER 2026-09-07 @4.94.0] DARK/PENDING (n=1, dark-levers dlelo/dlemx + pro-effort pelo/pemd/pemx):
265
+ # low = FLASH EFFICIENCY WIN (dlelo 33 turns/34.6K outTok/$1.635 vs dlctl 44/54.6K/$2.315, no pass
266
+ # loss); max = REJECT (over-deliberates; pro@max pemx CUT mid-run — failed control at 67 turns/2x
267
+ # tokens). PRO low≈medium too close (pe-lo/pe-md torn down at egress-rot). ⇒ flash-low confirmed at
268
+ # n=1 → card reasoning.effortByRole.action bake pending k=5; pro-track k=5 (low vs med, mentors@max)
269
+ # STILL OWED. Do NOT ship-on: n=1, k=5-gated. Stays dark/UNSET in production.
270
+ #CORTEX_ACTION_EFFORT=
240
271
  # Trigger helper-model review on tool errors (only applies when mentorship is enabled)
241
272
  MENTORSHIP_TRIGGER_ON_ERROR=false
242
273
  # Minimum error severity to trigger. Options: low, medium, high
@@ -401,11 +432,17 @@ ENABLE_DEFERRED_TOOL_LOADING=true
401
432
  # when mentorship is active, AskForAdvice. Turn 1 stays a pristine narrow door; the
402
433
  # pointer lands only after the model has acted. No-op when deferred loading is off.
403
434
  # GLOBAL BASELINE for models WITHOUT a card opinion (harness serves 17 models / 7 providers).
404
- # The per-model CARD OVERRIDES this (deepseek-v4-flash ships liftNudge:true; pro/vision leave it
405
- # to this baseline). Set true to enable the signpost fleet-wide for un-carded models; a card can
406
- # still opt a specific model out. Precedence: card > this env > default.
407
- # [LEDGER 2026-09-02 @4.89.0] env baseline false; ON via the deepseek CARDS (card > env) — A′: harmless-but-unproven (flips lacked mechanism; nudge ignored on wins). Operator chose to keep.
408
- CORTEX_LIFT_NUDGE=false
435
+ # The per-model CARD OVERRIDES this (precedence: card > this env > default). ALL THREE deepseek
436
+ # cards (flash/pro/vision) ship liftNudge:true — so this baseline NEVER touched the deepseek k=5
437
+ # reson run (card-forced true regardless of env). Where it DOES apply: un-carded providers
438
+ # (grok / gpt / gemini / claude). It exists to compensate deepseek's boot-minimal preset, which
439
+ # drops TOOL_USAGE_GUIDE so the model otherwise never learns discovery tools exist; models that
440
+ # ship the full tool guide need it less. A card can still opt a specific model out.
441
+ # [LEDGER 2026-09-06 @4.93.0] FLIPPED false->true (operator): extend the signpost fleet-wide.
442
+ # TB2.1-NEUTRAL — deepseek is card-dominated so the bench is identical; this only newly enables it
443
+ # for the un-carded non-deepseek providers (low-risk: a one-line SearchTools/AskForAdvice pointer).
444
+ # Cross-model validation of these deepseek-tuned levers on other providers is PENDING (after TB2.1).
445
+ CORTEX_LIFT_NUDGE=true
409
446
  # CORTEX_LIFT_PLAN — mentor-as-bounded-planner (LIFT_MENTOR_PLANNER spec). At the same anchor-lift
410
447
  # boundary, a bounded max-reasoning mentor plans the task ONCE: adversarial analysis of the prompt
411
448
  # + confirm the REAL grader criteria (not the model's own tests) + a criteria-anchored numbered
@@ -428,7 +465,8 @@ CORTEX_LIFT_NUDGE=false
428
465
  # feeds it to the planner so it steers installs (uv/bun for MISSING packages, beyond bare boxes) and
429
466
  # per-step Bash timeouts from the box's REAL resources; fail-open to observations alone).
430
467
  # [LEDGER 2026-09-04 @4.91.1] BUILT DARK / FIRE-CHECKED — v1 shipped gated-off (typecheck clean, planner tests, orchestrator e2e 26/26 no-regression, core build clean). LIVE FIRE-CHECK PASSED (lift_plan event fired:true/planChars>0/criteriaStated:true; negative control clean). ISOLATED EVAL: plan quality EXCELLENT at max+4000 (criteria-anchored, adversarial, anti-self-test) — but caught max+1200=empty (defaults bumped to max/4000/90s). Still UNTESTED for pass-rate lift: needs the treatment bench (grind-retire + criteria-misalign score-lift) BEFORE trusting efficacy. Adapter must add these to its env passthrough or the bench arm runs dark. Keep false.
431
- CORTEX_LIFT_PLAN=false
468
+ # [LEDGER 2026-09-06 @4.93.0] ON (reson standard baseline). Part of the reson stack (GATE+REQ+LIFT+RESOLVER) that shipped through resolver-k5 (proven net-positive as a stack). NOTE: k5 held LIFT on in BOTH arms (shared baseline, not the A/B variable) — its independent efficacy stands from the 2026-09-04 isolated eval (plan quality excellent at max/4000); k5 ratifies the reson stack as standard, not LIFT in isolation.
469
+ CORTEX_LIFT_PLAN=true
432
470
  #CORTEX_LIFT_PLAN_EFFORT=max
433
471
  #CORTEX_LIFT_PLAN_BUDGET_TOKENS=4000
434
472
  #CORTEX_LIFT_PLAN_TIMEOUT_MS=90000
@@ -443,17 +481,67 @@ CORTEX_LIFT_PLAN=false
443
481
  # Tuning: CORTEX_ENDTURN_RESOLVER_EFFORT (max), CORTEX_ENDTURN_RESOLVER_BUDGET_TOKENS (4000),
444
482
  # CORTEX_ENDTURN_RESOLVER_MAX_REJECTS (2 GAP vetoes → then fallback-accept, liveness), CORTEX_ENDTURN_RESOLVER_TIMEOUT_MS (90000).
445
483
  # [LEDGER 2026-09-04 @4.92.0] BUILT DARK — mentor-as-EndTurn-judge; tsc clean, 8/8 resolver tests, orchestrator e2e 26/26 no-regression, eval-validated (caught a missing-NOT_FOUND self-graded pass + passed a correct finish). UNTESTED for pass-rate: the treatment bench = resolver ON vs OFF (both on relaxed). Keep false.
446
- CORTEX_ENDTURN_RESOLVER=false
484
+ # [LEDGER 2026-09-06 @4.93.0] 🟢 PROVEN NET-POSITIVE + ON (reson = the new STANDARD). resolver-k5 (11-task×5, flash primary + pro@max mentor, resolver ON vs OFF): 5 help / 0 hurt, aggregate 75.5% vs 58.2% (+17pp), cost-neutral-to-cheaper ($0.116/task avg). Judgment quality HIGH (specific correct requirement-gap rejects; reject→retry→pass confirmed in decisions.jsonl); 4 resolver-attributable helps. Open v2 (gating, not verdict text) = coverage(fallback branch) + abstention(over-fires on hopeless). See .cortex/bench/resolver-k5-2026-09-06.md.
485
+ CORTEX_ENDTURN_RESOLVER=true
447
486
  #CORTEX_ENDTURN_RESOLVER_EFFORT=max
448
487
  #CORTEX_ENDTURN_RESOLVER_BUDGET_TOKENS=4000
449
488
  #CORTEX_ENDTURN_RESOLVER_MAX_REJECTS=2
450
489
  #CORTEX_ENDTURN_RESOLVER_TIMEOUT_MS=90000
490
+ # CORTEX_ENDTURN_RESOLVER_ABSTAIN — offer the judge a third verdict, RETIRE, for a structurally
491
+ # UNCLOSABLE finish (missing capability, wrong-approach loop, impossible constraint) and HONOR it:
492
+ # accept the finish + STOP the reject cycles instead of burning pro@max re-rejecting a task the
493
+ # junior can't fix. Confidence gate is in the prompt (when in doubt → GAP). Ships DARK.
494
+ # [LEDGER 2026-09-06 @4.93.0] DARK/PENDING — built (resolver v2 abstention axis); addresses the k=5
495
+ # over-rejection finding (filter-js 7 rej/0 pass, pytorch 8 rej/1 pass). NOT yet validated live —
496
+ # arm in the next fanout cell (measure cost-per-PASS + false-RETIRE rate vs resolver-without-abstain).
497
+ # [LEDGER 2026-09-07 @4.94.0] DARK/PROMISING (n=1, dark-levers dlabs vs dlctl): equal pass (7=7),
498
+ # ~30% CHEAPER ($1.53 vs $2.32), MECHANISM-ATTRIBUTABLE — decisions.jsonl shows abstain/RETIRE fired
499
+ # on the reject-loop tasks (filter-js abstain×2/retire×3, pytorch abstain×1, sqlite-gcov abstain×1).
500
+ # Thesis confirmed (stops burning pro@max re-rejecting doomed finishes).
501
+ # [LEDGER 2026-09-07 @4.94.0 — SHIP-ON, operator decision] 🟢 ON (reson STANDARD). Flipped default-on
502
+ # from the n=1 PROMISING verdict (equal pass, ~30% cheaper, mechanism-attributable). Rationale
503
+ # (operator): affirm-then-verify, not gate-then-ship — budget doesn't allow adversarially EXCLUDING
504
+ # a promising optimization vs AFFIRMING it. k=5 now CONFIRMS rather than gates (pins the published
505
+ # version → re-measures ABSTAIN on current code). Orthogonal to this session's other changes: the
506
+ # resolver/adjudicateEndTurn path reads task/env/workProduct/attestation only — NO classifyToolOutcome/
507
+ # failure-count/loop-block coupling (grep-verified); loop-block ships dark (no-op); distiller = tooling.
508
+ # ROLLBACK if k=5 shows a net regression or a high false-RETIRE rate.
509
+ CORTEX_ENDTURN_RESOLVER_ABSTAIN=true
510
+ #
511
+ # CORTEX_DEADLINE_EXIT_MENTOR — the "smart deadline". At the WARN rung (~0.9 of the per-turn
512
+ # wall-clock deadline, where residual still exists), a bounded mentor decides what to do with the
513
+ # time left: CONTINUE (on-track/closing-in — let it run; do NOT truncate a late win), FINISH
514
+ # (already meets criteria → end now), ACTION (one minimal step closes it → inject + finish), or
515
+ # RETIRE (stuck/unclosable → end cleanly). Replaces the dumb "wrap up" nudge; the hard-floor break
516
+ # at the deadline stays as the failsafe. Residual-scaled call budget (never eats the residual it
517
+ # preserves). Tuning: _EFFORT (max), _BUDGET_TOKENS cap (2000), _TIMEOUT_MS cap (45000),
518
+ # _RESIDUAL_FRAC (0.4 of remaining ms).
519
+ # [LEDGER 2026-09-06 @4.93.0] DARK/PENDING — built (abnormal-exit/deadline fix; the properly-scoped
520
+ # deadline adjudication, NOT the mis-premised endturn_gate_fallback). Addresses budget_frac>1.0
521
+ # overrun + last-fifth grind. 🔴 quality-gated (tell "closing in" from "grinding") — arm in the next
522
+ # fanout cell; measure pass-rate + budget_frac on the 0.80-1.0 finishing population.
523
+ # [LEDGER 2026-09-07 @4.94.0] DARK/RE-TARGET (n=1, dark-levers dldln): FIRED (make-mips×2, schemelike×1)
524
+ # but its only +1 flip (pytorch) was on a task where it did NOT fire = noise; no attributable gain,
525
+ # +cost (59 turns). Its "don't-truncate-late-win" value needs the 0.80-1.0 FINISHING population
526
+ # specifically, not this reject-loop-heavy subset. ⇒ keep dark; re-target the k=5/next cell to the
527
+ # high-budget_frac finishers (schemelike/make-mips/install-windows/filter-js/pytorch). Stays false.
528
+ #CORTEX_DEADLINE_EXIT_MENTOR=false
529
+ #CORTEX_DEADLINE_EXIT_MENTOR_EFFORT=max
530
+ #CORTEX_DEADLINE_EXIT_MENTOR_BUDGET_TOKENS=2000
531
+ #CORTEX_DEADLINE_EXIT_MENTOR_TIMEOUT_MS=45000
532
+ #CORTEX_DEADLINE_EXIT_MENTOR_RESIDUAL_FRAC=0.4
451
533
  # CORTEX_HEADLESS_DROP_ASKUSER — in NON-INTERACTIVE sessions (stateless /v1/messages,
452
534
  # headless API, piped oneshot) there is no human to answer AskUserQuestion, so it is a
453
535
  # stall trap; drop it at the tool source. Kept in interactive TUIs.
454
- # GLOBAL BASELINE for un-carded models; the per-model card overrides. Precedence: card > env > default.
455
- # [LEDGER 2026-09-02 @4.89.0] env baseline false; ON via the deepseek CARDS — A′: 0 behavioral difference observed (AskUserQuestion never called). Kept.
456
- CORTEX_HEADLESS_DROP_ASKUSER=false
536
+ # GLOBAL BASELINE for un-carded models; the per-model card overrides (precedence: card > env >
537
+ # default). ALL THREE deepseek cards ship headlessDropAskUser:true — so this baseline never touched
538
+ # the deepseek k=5 reson run. Where it applies: un-carded providers (grok/gpt/gemini/claude). Only
539
+ # fires in NON-INTERACTIVE sessions (stateless /v1/messages, headless API, piped oneshot) where no
540
+ # human can answer AskUserQuestion — interactive TUIs always keep the tool.
541
+ # [LEDGER 2026-09-06 @4.93.0] FLIPPED false->true (operator): drop the stall-trap tool fleet-wide in
542
+ # headless. TB2.1-NEUTRAL (deepseek card-dominated); only newly affects un-carded non-deepseek
543
+ # providers in headless. Cross-model validation PENDING (after TB2.1).
544
+ CORTEX_HEADLESS_DROP_ASKUSER=true
457
545
  # Programmatic Tool Calling (compose tool calls in a script) — experimental
458
546
  # [LEDGER 2026-09-02 @4.89.0] DARK/N/A — Anthropic-only server-side code execution; not on the DeepSeek path.
459
547
  ENABLE_PTC=false
@@ -494,7 +582,8 @@ ROUTER_MIN_SAMPLES=3
494
582
  # Mandatory EndTurn pre-delivery self-audit + Stage 2/3 verifiers. Default OFF; ON =
495
583
  # graded cortex-channel training records (the tool is hidden when off).
496
584
  # [LEDGER 2026-09-03 @4.91.0] DARK/PENDING → **RECOMMENDED ON for k=5 (with REQUIREMENTS=strict)** — 4.91.0: gates now run on the STREAMING path too (were sendMessage-only; one shared endTurnGates.ts, live-proven on stream:true) and Stage-2 grounding accepts text the model WROTE this turn (Write/Edit content) — the false 'not grounded' rejections on authored files are gone. COST (v4 pass mining + doctrine-mine): every pass paid 4-8 EndTurn round-trips, the biggest share = Stage-2 CITATION rejects (17/43 doctrine findings; the model never re-ran a command for a fresh verbatim line) → 4.90.2 nudge teaches per-turn grounding + re-run; expect controls' +25-35% turn tax to drop — measure at k=5. — v4 (n=1, @4.90.0): gate engaged heavily under strict (flash gate_req=22/cite=13, pro 17/4), controls bn-fit+sqlite held on BOTH models, pro flips vs p3: dna-insert, pytorch-model-cli, cancel-async (n=1 candidates). Prior 3 cells: 4.71 fp 11→1 · fd +2/5 · c3 (n=2, r-c3-candidate-config) code-from-image FLIP 2/2 (first flash-family pass ever; Stage-4 requirement rejections, no mentor) + dna-insert 1/2; 0 clean regressions outside its LIMIT (accepts a re-attested wrong artifact: pytorch-model-cli r2, dna-insert fd). Cost: attestation turns. Operator decision pending. PRO (r-p3, n=1): controls 3/3 held with NO attestation tax (bn-fit 53→30 turns), 0 regressions, 0 paralysis; 0/13 flips on pro's hard core (budget timeouts while working). → k=5 config for BOTH models: guards + GATE+REQ + ENABLE_WEBTOOLS=false, mentor/tail off.
497
- CORTEX_ENDTURN_GATE=false
585
+ # [LEDGER 2026-09-06 @4.93.0] ON (reson standard baseline). GATE+REQ (with REQUIREMENTS=true, NOT strict) shipped as the shared reson baseline through resolver-k5 — proven net-positive as a stack. k5 held GATE on in both arms; prior cell evidence stands. Part of the standard.
586
+ CORTEX_ENDTURN_GATE=true
498
587
  # Stage 4 (4.70.0, requires the gate ON): task-requirements attestation —
499
588
  # enumerate each stated requirement with what satisfies it + how it was
500
589
  # verified; mutating turns with no checks are challenged. Default OFF.
@@ -505,7 +594,8 @@ CORTEX_ENDTURN_GATE=false
505
594
  # (cancel-async-tasks, dna-assembly, dna-insert, pytorch-model-cli) were 85-95% complete with
506
595
  # TRUE attestations verified against the model's own tests, not the task's exact constraints.
507
596
  # [LEDGER 2026-09-03 @4.91.0] DARK/PENDING → `strict` RECOMMENDED for k=5 with the gate. 4.91.0: verified_how also grounds on a Bash command that RAN this turn (12-char windows) so the recommended `$ cmd → output` form passes; Stage-1 reminder names `requirements`. v4 cell (n=1): strict rejects fired heavily (flash gate_req=22, pro=17), 0 control regressions. 🔴 4.90.0 strict CRASHED on EndTurn({}) (null.filter ×4, flash/dna-insert) and rejected 11 honest condensations as paraphrases (protein-assembly) → 4.90.1: null-guarded; verbatim = 24-char window OR ≥70% content tokens; nudge shows a pasted-output example. Needs GATE.
508
- #CORTEX_ENDTURN_REQUIREMENTS=false
597
+ # [LEDGER 2026-09-06 @4.93.0] ON=true (reson standard baseline — NOT strict). resolver-k5 ran REQUIREMENTS=true (verified in effective_config), not strict — that is the proven reson baseline; the earlier "strict recommended" is superseded by the actual reson config. Requires GATE=on.
598
+ CORTEX_ENDTURN_REQUIREMENTS=true
509
599
 
510
600
  # ============================================
511
601
  # DECISION STORE (prior-recall + recording)
@@ -809,13 +899,32 @@ CORTEX_SLICE_NUDGE=true
809
899
  # the one bare-box pass we have (tp torch-tensor, 4.91.0) happened with ONLY orient's factual tooling line, no
810
900
  # directive. The factual tooling line is always on; this flag adds the directive.
811
901
  # [LEDGER 2026-09-03 @4.91.1] DARK (default 0) — ships dark, A/B-able (def-60a1dfc55a); do NOT bake into the k=5 pin.
812
- #CORTEX_ORIENT_BOOTSTRAP=0
902
+ # [LEDGER 2026-09-06 @4.93.0] ON=1 (reson standard, operator directive: match the full bench COMMON). CAVEAT: was a SHARED BASELINE in both k5 arms (on in reson AND resoff), so NOT independently A/B-validated — it's part of the proven reson BUNDLE (+17pp) but its solo contribution is unmeasured. A/B-able (def-60a1dfc55a) if isolated efficacy is ever needed.
903
+ CORTEX_ORIENT_BOOTSTRAP=1
813
904
  # [LEDGER 2026-09-02 @4.89.0] code default 30 (4.88.0) — 20 made the break rung (2N=24) unreachable; preserves 40%/80% density semantics.
814
905
  #NEARDUP_WINDOW=30
815
906
  # [LEDGER 2026-09-02 @4.89.0] code default 12 (4.88.0) — 8 misfired on persistence-wins grinds (rstan-to-pystan regressed both arms).
816
907
  #NEARDUP_NUDGE_AT=12
817
908
 
909
+ # CORTEX_LOOP_TOOL_BLOCK — hard loop intervention (operator design 2026-09-07). On a ladder-detected
910
+ # non-converging loop (diversify/break), disables the LOOPING TOOL'S EXECUTOR for one turn (cache-safe:
911
+ # the tool stays in the list, so the prompt cache is NOT busted) and returns an append-only redirect
912
+ # error steering to the complementary tools (Bash→Read/Write/Edit, Edit→Read/Bash). After 2 blocks that
913
+ # do not break the loop, ESCALATES to a bounded pro-max exit-planner mentor (orchestrator-direct-invoke,
914
+ # NOT forced tool_choice — dead on DeepSeek mid-history; the 4th sibling of the endturn-resolver family)
915
+ # that reads the last loop calls + their outputs and returns VERDICT: REPLAN <different plan> | RETIRE
916
+ # <stop, record best-effort>.
917
+ # [LEDGER 2026-09-07 @unreleased] DARK (default false) — BUILT + tsc-clean + loopToolBlock 6/6 +
918
+ # loopExitPlanner 9/9 + orchestrator e2e 26/26 + LIVE-SEEDED FIRE-CHECK PASSED (seeded grep-loop:
919
+ # block#1 → block#2 → ESCALATED → exit-planner RETIRE delivered, model complied + stopped retrying Bash).
920
+ # Ships dark on the combined release; efficacy A/B still owed (retry_loop is the dominant TB2 fail class).
921
+ #CORTEX_LOOP_TOOL_BLOCK=true
922
+ # Escalation exit-planner mentor tuning (bounded pro-max; only consulted when CORTEX_LOOP_TOOL_BLOCK=true).
923
+ #CORTEX_LOOP_TOOL_BLOCK_EFFORT=max # a bounded single-shot planner cannot grind
924
+ #CORTEX_LOOP_TOOL_BLOCK_BUDGET_TOKENS=4000 # big enough that reasoning does not eat the plan on DeepSeek
925
+ #CORTEX_LOOP_TOOL_BLOCK_TIMEOUT_MS=90000 # fail-open to the generic redirect on timeout
926
+
818
927
 
819
928
  # --- OPTIMAL LIFT CONFIG (appended) ---
820
929
  # [LEDGER 2026-09-02 @4.90.0] DEAD — no code path reads CORTEX_IDLE_TIMEOUT (grep packages/*/src = 0 hits); it was cargo-culted into the bench adapter env for months and removed there in adapter v21 (p3 timeout audit). Left commented so nobody re-adds it as a "lever".
821
- #CORTEX_IDLE_TIMEOUT=120
930
+ #CORTEX_IDLE_TIMEOUT=120
@@ -28,7 +28,6 @@ export interface MentorshipConfig {
28
28
  */
29
29
  export declare class MentorshipConfigService implements ConfigService<MentorshipConfig> {
30
30
  private loader;
31
- private writer;
32
31
  constructor(projectPath?: string);
33
32
  /**
34
33
  * Get current mentorship configuration
@@ -1 +1 @@
1
- {"version":3,"file":"MentorshipConfigService.d.ts","sourceRoot":"","sources":["../../src/config/MentorshipConfigService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,yBAAyB,EAGzB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAM7B;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC1C,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;CAC1C;AA4BD;;GAEG;AACH,qBAAa,uBAAwB,YAAW,aAAa,CAAC,gBAAgB,CAAC;IAC7E,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,MAAM,CAAiB;gBAEnB,WAAW,GAAE,MAAsB;IAK/C;;OAEG;IACH,SAAS,IAAI,gBAAgB;IAkB7B;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBjE;;OAEG;IACH,QAAQ,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAAE,GAAG,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAIvE;;OAEG;IACG,QAAQ,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAInG;;OAEG;IACH,iBAAiB,IAAI,yBAAyB;IA+D9C;;OAEG;IACH,OAAO,CAAC,eAAe;IAmEvB;;OAEG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,oBAAoB;IAoChE;;OAEG;IACH,gBAAgB,IAAI,gBAAgB;IAgBpC;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAItC;;OAEG;IACH,MAAM,IAAI,IAAI;IAId;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IASlC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAInC;;OAEG;IACH,UAAU,IAAI;QACZ,MAAM,EAAE,SAAS,GAAG,UAAU,CAAC;QAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;KACrB;CAuBF"}
1
+ {"version":3,"file":"MentorshipConfigService.d.ts","sourceRoot":"","sources":["../../src/config/MentorshipConfigService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,yBAAyB,EAGzB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAK7B;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC1C,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;CAC1C;AA4BD;;GAEG;AACH,qBAAa,uBAAwB,YAAW,aAAa,CAAC,gBAAgB,CAAC;IAC7E,OAAO,CAAC,MAAM,CAAiB;gBAEnB,WAAW,GAAE,MAAsB;IAM/C;;OAEG;IACH,SAAS,IAAI,gBAAgB;IAkB7B;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BjE;;OAEG;IACH,QAAQ,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAAE,GAAG,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAIvE;;OAEG;IACG,QAAQ,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAInG;;OAEG;IACH,iBAAiB,IAAI,yBAAyB;IA+D9C;;OAEG;IACH,OAAO,CAAC,eAAe;IAmEvB;;OAEG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,oBAAoB;IAoChE;;OAEG;IACH,gBAAgB,IAAI,gBAAgB;IAgBpC;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAItC;;OAEG;IACH,MAAM,IAAI,IAAI;IAId;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IASlC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAInC;;OAEG;IACH,UAAU,IAAI;QACZ,MAAM,EAAE,SAAS,GAAG,UAAU,CAAC;QAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;KACrB;CAuBF"}
@@ -5,8 +5,7 @@
5
5
  * Provides a menu definition that can be rendered by any CLI UI.
6
6
  */
7
7
  import { createStandardActions } from '../ui/menu-types.js';
8
- import { SettingsLoader } from './SettingsLoader.js';
9
- import { SettingsWriter } from './SettingsWriter.js';
8
+ import { SettingsLoader, setGlobalSetting } from './SettingsLoader.js';
10
9
  import { SETTINGS_METADATA, DEFAULT_SETTINGS } from './SettingsSchema.js';
11
10
  /**
12
11
  * Map of config keys to environment variable keys
@@ -37,10 +36,10 @@ const ENV_KEY_MAP = Object.entries(CONFIG_KEY_MAP)
37
36
  */
38
37
  export class MentorshipConfigService {
39
38
  loader;
40
- writer;
41
39
  constructor(projectPath = process.cwd()) {
40
+ // Reads use the given projectPath (effective config); writes go to the GLOBAL
41
+ // ~/.cortex/.env surgically via setGlobalSetting (see setConfig).
42
42
  this.loader = new SettingsLoader(projectPath);
43
- this.writer = new SettingsWriter(projectPath);
44
43
  }
45
44
  /**
46
45
  * Get current mentorship configuration
@@ -80,7 +79,13 @@ export class MentorshipConfigService {
80
79
  }
81
80
  }
82
81
  }
83
- this.writer.update(updates);
82
+ // Harness config is GLOBAL + sparse: write each changed key surgically to
83
+ // ~/.cortex/.env (not a full-file regen at cwd, which would re-freeze every lever
84
+ // and break upgrade propagation).
85
+ for (const [envKey, val] of Object.entries(updates)) {
86
+ setGlobalSetting(envKey, val);
87
+ process.env[envKey] = val;
88
+ }
84
89
  this.loader.reload();
85
90
  }
86
91
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"MentorshipConfigService.js","sourceRoot":"","sources":["../../src/config/MentorshipConfigService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MentorshipConfigService.js","sourceRoot":"","sources":["../../src/config/MentorshipConfigService.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@
6
6
  */
7
7
  import type { OrchestratorConfig } from '../orchestrator/CortexOrchestrator.js';
8
8
  import type { EnvironmentVariables } from './SettingsSchema.js';
9
+ import { DEFAULT_SETTINGS } from './SettingsSchema.js';
9
10
  /**
10
11
  * Result of a write operation
11
12
  */
@@ -29,20 +30,51 @@ export declare function parseEnvFile(content: string): EnvironmentVariables;
29
30
  export declare function getGlobalConfigDir(): string;
30
31
  /** Absolute path to the global config file (~/.cortex/.env). */
31
32
  export declare function getGlobalEnvPath(): string;
33
+ /**
34
+ * Resolve the shipped `.env.defaults` — the read-live default config layer.
35
+ *
36
+ * This file is committed + ships in the package and is READ directly (never copied
37
+ * into the user's .env), so a package upgrade ships new defaults automatically. It is
38
+ * loaded as the LOWEST-precedence layer (below the user's ~/.cortex/.env, below the
39
+ * real shell env) and also overlays DEFAULT_SETTINGS as the effective floor.
40
+ *
41
+ * Search order mirrors the (legacy) seed: the caller's packageRoot, then cwd, then
42
+ * CORE's own root — core is a dependency of every entry point and is build-synced
43
+ * with the root canonical, so the file exists for any current/future bin even when
44
+ * the calling package doesn't ship its own copy.
45
+ */
46
+ export declare function resolveDefaultsEnvPath(packageRoot?: string): string | undefined;
47
+ /**
48
+ * The keys-only seed for a fresh `~/.cortex/.env`: the secret keys + a short header,
49
+ * NO levers. Harness defaults ship in `.env.defaults` and are read live, so freezing
50
+ * them into the user's file is exactly what blocks upgrades from propagating new
51
+ * defaults. Seeding only the keys keeps the file sparse — an upgrade brings new
52
+ * defaults with nothing to regenerate and no keys to re-enter.
53
+ */
54
+ export declare function keysOnlyStub(): string;
55
+ /**
56
+ * `DEFAULT_SETTINGS` overlaid with the shipped `.env.defaults` — the EFFECTIVE floor.
57
+ *
58
+ * The read-live default layer reaches most levers through `process.env` (bootstrapEnv
59
+ * loads `.env.defaults` as the lowest base file), but a handful of merge keys don't
60
+ * consult `process.env`. Overlaying `.env.defaults` onto `DEFAULT_SETTINGS` makes the
61
+ * shipped file authoritative for EVERY lever. Secrets are untouched (they are Omitted
62
+ * from `DEFAULT_SETTINGS`, so the loop never visits them). Cached — the shipped file
63
+ * does not change at runtime.
64
+ */
65
+ export declare function getEffectiveDefaults(): Readonly<typeof DEFAULT_SETTINGS>;
32
66
  /**
33
67
  * THE canonical .env → process.env bootstrap for every CLI/TUI entry point.
34
68
  *
35
69
  * One implementation, so a consumer never hand-rolls dotenv loading (and can't
36
- * forget the global `~/.cortex/.env`). This function ONLY READS + layers existing
37
- * .env files into process.env — it never CREATES one. The global `~/.cortex/.env`
38
- * is seeded SEPARATELY, on first run, by the bin: `packages/cli/bin/cortex.js`
39
- * copies the shipped `.env.example` → `~/.cortex/.env` when that file is missing
40
- * (the Docker image does the same copy at build time). All bins call this ONCE at
41
- * startup; a change here takes effect for every launcher.
70
+ * forget the global `~/.cortex/.env`). It seeds a KEYS-ONLY `~/.cortex/.env` on first
71
+ * run (below), then READS + layers the .env files into process.env. All bins call this
72
+ * ONCE at startup; a change here takes effect for every launcher.
42
73
  *
43
- * Precedence (highest → lowest): a `.env.local` beside any of the base files wins
44
- * over everything; then project `./.env` (or `packageRoot/.env`) beats the global
45
- * `~/.cortex/.env`. Matches `loadEnvFile()`'s layering.
74
+ * Precedence (highest → lowest): a `.env.local` beside any of the base files wins over
75
+ * everything; then project `./.env` (or `packageRoot/.env`) beats the global
76
+ * `~/.cortex/.env`, which beats the shipped `.env.defaults` (the read-live default
77
+ * layer, appended last). Matches `loadEnvFile()`'s layering.
46
78
  *
47
79
  * FIRST-WINS over the real environment: a value already present in `process.env`
48
80
  * (e.g. a key the hosting container injected) is NEVER overwritten by a base .env
@@ -74,6 +106,42 @@ export declare function writeEnvSetting(projectPath: string, key: keyof Environm
74
106
  * Update multiple settings in the .env file
75
107
  */
76
108
  export declare function writeEnvSettings(projectPath: string, settings: Partial<EnvironmentVariables>): Record<string, WriteResult>;
109
+ /**
110
+ * Surgically REMOVE a setting's line from the .env file (delete the `KEY=...` line and
111
+ * its value), preserving every other line and all comments. This is the correct "reset
112
+ * to default" in the read-live model: deleting a user's override line makes the lever
113
+ * fall back to the shipped `.env.defaults` — so the user rejoins the default flow and
114
+ * picks up future improvements. (Writing the current default VALUE would re-freeze it.)
115
+ * A key that isn't present is a no-op success.
116
+ */
117
+ export declare function removeEnvSetting(projectPath: string, key: keyof EnvironmentVariables): WriteResult;
118
+ /** Set a single setting in the GLOBAL ~/.cortex/.env (surgical, sparse). The canonical
119
+ * write target for every /config surface — harness config is global (identical from any
120
+ * directory), so a user's choice lives in one place and survives package updates. */
121
+ export declare function setGlobalSetting(key: keyof EnvironmentVariables, value: string): WriteResult;
122
+ /** Remove a single setting's override line from the GLOBAL ~/.cortex/.env (reset-to-default). */
123
+ export declare function removeGlobalSetting(key: keyof EnvironmentVariables): WriteResult;
124
+ /** The SHIPPED default value for a lever, read from the live `.env.defaults` (covers every
125
+ * lever, including the ones not in DEFAULT_SETTINGS). '' if the file/key is absent. Used
126
+ * to restore a lever to its shipped default after removing a user override. */
127
+ export declare function getShippedDefault(key: keyof EnvironmentVariables): string;
128
+ /**
129
+ * ONE-TIME migration for EXISTING users upgrading to the read-live model. The old install
130
+ * seeded a FULL copy of every lever into `~/.cortex/.env`, which now FREEZES those levers
131
+ * (a user value beats the shipped `.env.defaults`), so an upgrade would never reach them.
132
+ *
133
+ * This collapses that full snapshot back to SPARSE: a lever line is removed when its value
134
+ * equals a DEFAULT — either the new shipped default (`.env.defaults`) OR the hardcoded
135
+ * `DEFAULT_SETTINGS` floor (which still holds the OLD pre-reson defaults). Matching either
136
+ * means the user never deliberately chose it, so removing it lets the lever inherit the
137
+ * current shipped default (and every future one). Genuine divergences and ALL API keys are
138
+ * preserved untouched. Marker-gated (`~/.cortex/.env-migrated`) so it runs exactly once;
139
+ * best-effort (never blocks boot); only acts on a FULL snapshot, never a sparse file.
140
+ */
141
+ export declare function migrateGlobalConfigToSparse(): {
142
+ migrated: boolean;
143
+ removed: number;
144
+ };
77
145
  /**
78
146
  * Get Google/Gemini API key with proper fallback
79
147
  * Priority: GEMINI_API_KEY (recommended by Google) -> GOOGLE_API_KEY (legacy)
@@ -138,11 +206,24 @@ export declare class SettingsLoader {
138
206
  */
139
207
  setMultiple(settings: Partial<EnvironmentVariables>): Record<string, WriteResult>;
140
208
  /**
141
- * Reset a setting to its default value
209
+ * Remove a setting's override line (reset-to-default). Deletes the user's override so
210
+ * the lever falls back to the shipped `.env.defaults` — the correct reset in the
211
+ * read-live model (writing the current default value would re-freeze it).
142
212
  */
213
+ remove<K extends keyof EnvironmentVariables>(key: K): WriteResult;
214
+ /** Alias — reset a single setting to the shipped default by removing the override. */
143
215
  resetToDefault<K extends keyof EnvironmentVariables>(key: K): WriteResult;
144
216
  /**
145
- * Reset all settings to defaults
217
+ * True if this key is set as an override in the user's OWN .env file (vs flowing from
218
+ * the shipped .env.defaults). Powers the "your override / shipped default" display.
219
+ */
220
+ isUserOverride<K extends keyof EnvironmentVariables>(key: K): boolean;
221
+ /** All keys the user has overridden in their own .env file (one read — for a display
222
+ * that needs to mark many rows without re-reading the file per row). */
223
+ getOverriddenKeys(): string[];
224
+ /**
225
+ * Reset all LEVERS to defaults by removing their override lines (API keys preserved),
226
+ * so every lever falls back to the shipped `.env.defaults`.
146
227
  */
147
228
  resetAllToDefaults(): Record<string, WriteResult>;
148
229
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"SettingsLoader.d.ts","sourceRoot":"","sources":["../../src/config/SettingsLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SettingsLoader.d.ts","sourceRoot":"","sources":["../../src/config/SettingsLoader.ts"],"names":[],"mappings":"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"}