@phamvuhoang/otto-core 0.28.3 → 0.30.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.
- package/dist/cli-help.d.ts +6 -0
- package/dist/cli-help.d.ts.map +1 -1
- package/dist/cli-help.js +7 -1
- package/dist/cli-help.js.map +1 -1
- package/dist/context-lifecycle.d.ts +99 -0
- package/dist/context-lifecycle.d.ts.map +1 -0
- package/dist/context-lifecycle.js +130 -0
- package/dist/context-lifecycle.js.map +1 -0
- package/dist/context-report-cli.d.ts.map +1 -1
- package/dist/context-report-cli.js +24 -0
- package/dist/context-report-cli.js.map +1 -1
- package/dist/context-report.d.ts +8 -1
- package/dist/context-report.d.ts.map +1 -1
- package/dist/context-report.js +9 -3
- package/dist/context-report.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/input-sharpness.d.ts +80 -0
- package/dist/input-sharpness.d.ts.map +1 -0
- package/dist/input-sharpness.js +125 -0
- package/dist/input-sharpness.js.map +1 -0
- package/dist/inspect.d.ts.map +1 -1
- package/dist/inspect.js +5 -0
- package/dist/inspect.js.map +1 -1
- package/dist/loop.d.ts +6 -0
- package/dist/loop.d.ts.map +1 -1
- package/dist/loop.js +40 -2
- package/dist/loop.js.map +1 -1
- package/dist/run-bin.d.ts.map +1 -1
- package/dist/run-bin.js +5 -0
- package/dist/run-bin.js.map +1 -1
- package/dist/run-report.d.ts +8 -0
- package/dist/run-report.d.ts.map +1 -1
- package/dist/run-report.js.map +1 -1
- package/package.json +1 -1
- package/templates/plan.md +2 -0
package/dist/cli-help.d.ts
CHANGED
|
@@ -54,6 +54,10 @@ export type CliFlags = {
|
|
|
54
54
|
* validated, stage-scoped skill guidance into live stages (or OTTO_USE_SKILLS=1
|
|
55
55
|
* / `.otto/config.json` `skills.enabled`). Off = byte-for-byte unchanged runs. */
|
|
56
56
|
useSkills: boolean;
|
|
57
|
+
/** `--sharpen-input` toggle (default false; opt-in, issue #180 P23). In --plan
|
|
58
|
+
* mode, injects bounded sharpening guidance into the plan stage when the input
|
|
59
|
+
* omits dimensions. Off or a sharp input ⇒ the plan prompt is unchanged. */
|
|
60
|
+
sharpenInput: boolean;
|
|
57
61
|
/** `--fan-out` toggle (default false; opt-in, issue #66 P11). Runs independent
|
|
58
62
|
* plan tasks as isolated worktree sub-agents before the sequential loop. */
|
|
59
63
|
fanOut: boolean;
|
|
@@ -192,6 +196,8 @@ export type PrintConfigOptions = {
|
|
|
192
196
|
modelRouting?: boolean;
|
|
193
197
|
/** Resolved tier → model ladder, shown when model routing is on (issue #66 P11). */
|
|
194
198
|
tierLadder?: TierLadder;
|
|
199
|
+
/** Input sharpening enabled (issue #180 P23). */
|
|
200
|
+
sharpenInput?: boolean;
|
|
195
201
|
/** Sub-agent fan-out enabled (issue #66 P11). */
|
|
196
202
|
fanOut?: boolean;
|
|
197
203
|
/** Max concurrent sub-agents per fan-out wave (issue #66 P11). */
|
package/dist/cli-help.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-help.d.ts","sourceRoot":"","sources":["../src/cli-help.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAC1B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB;yEACqE;IACrE,aAAa,EAAE,OAAO,CAAC;IACvB;+EAC2E;IAC3E,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;uFACmF;IACnF,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC;;;;OAIG;IACH,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAC/B,6EAA6E;IAC7E,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB;mDAC+C;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,wEAAwE;IACxE,cAAc,EAAE,OAAO,CAAC;IACxB;mFAC+E;IAC/E,cAAc,EAAE,OAAO,CAAC;IACxB;kFAC8E;IAC9E,YAAY,EAAE,OAAO,CAAC;IACtB;;uFAEmF;IACnF,SAAS,EAAE,OAAO,CAAC;IACnB;iFAC6E;IAC7E,MAAM,EAAE,OAAO,CAAC;IAChB;+BAC2B;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,OAAO,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;+EAC2E;IAC3E,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB;sDACkD;IAClD,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB,CAAC;AAEF,2FAA2F;AAC3F,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAWnD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAmBjD;AAED,sCAAsC;AACtC,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,CAAC;CAC/C,CAAC;AAEF,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,GAAE,iBAAsB,GAC3B,QAAQ,
|
|
1
|
+
{"version":3,"file":"cli-help.d.ts","sourceRoot":"","sources":["../src/cli-help.ts"],"names":[],"mappings":"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"}
|
package/dist/cli-help.js
CHANGED
|
@@ -80,6 +80,7 @@ export function parseFlags(argv, opts = {}) {
|
|
|
80
80
|
let explainRouting = false;
|
|
81
81
|
let modelRouting = false;
|
|
82
82
|
let useSkills = false;
|
|
83
|
+
let sharpenInput = false;
|
|
83
84
|
let fanOut = false;
|
|
84
85
|
let fanOutConcurrency = 3;
|
|
85
86
|
let expectingFanOutConcurrency = false;
|
|
@@ -264,6 +265,8 @@ export function parseFlags(argv, opts = {}) {
|
|
|
264
265
|
modelRouting = true;
|
|
265
266
|
else if (a === "--use-skills")
|
|
266
267
|
useSkills = true;
|
|
268
|
+
else if (a === "--sharpen-input")
|
|
269
|
+
sharpenInput = true;
|
|
267
270
|
else if (a === "--context-compressor")
|
|
268
271
|
expectingContextCompressor = true;
|
|
269
272
|
else if (a === "--fan-out")
|
|
@@ -376,6 +379,7 @@ export function parseFlags(argv, opts = {}) {
|
|
|
376
379
|
explainRouting,
|
|
377
380
|
modelRouting,
|
|
378
381
|
useSkills,
|
|
382
|
+
sharpenInput,
|
|
379
383
|
fanOut,
|
|
380
384
|
fanOutConcurrency,
|
|
381
385
|
watch,
|
|
@@ -451,6 +455,7 @@ Flags:
|
|
|
451
455
|
--explain-routing print the adaptive router's per-iteration reasoning (change class, risk, chosen depth/lenses); requires --adaptive-router (or OTTO_EXPLAIN_ROUTING=1; default: off)
|
|
452
456
|
--model-routing route each stage to a model tier by difficulty + change risk, escalating on repeated failure; a pinned --model/OTTO_MODEL overrides it (or OTTO_MODEL_ROUTING=1; default: off)
|
|
453
457
|
--use-skills inject validated, stage-scoped skill guidance (from .otto/skills) into live stages, bounded + attributed (or OTTO_USE_SKILLS=1 / config "skills.enabled"; default: off)
|
|
458
|
+
--sharpen-input in --plan mode, when the input omits dimensions (goal/constraints/success criteria/…), inject bounded sharpening guidance so the plan author records an explicit assumption per gap (or OTTO_SHARPEN_INPUT=1; default: off)
|
|
454
459
|
--fan-out run independent plan tasks (from a .otto/tasks/<key>/tasks.json) as isolated worktree sub-agents before the sequential loop (or OTTO_FAN_OUT=1; default: off)
|
|
455
460
|
--fan-out-concurrency <n> max concurrent sub-agents per fan-out wave (default: 3)
|
|
456
461
|
--branch <mode> where Otto commits: current (default) | branch (new branch) | worktree (isolated checkout)
|
|
@@ -501,7 +506,7 @@ Environment variables:
|
|
|
501
506
|
`);
|
|
502
507
|
}
|
|
503
508
|
export function printConfig(bin, workspaceDir, packageDir, opts = {}) {
|
|
504
|
-
const { cliVersion, noKeepAlive = false, maxRetries = DEFAULT_MAX_RETRIES, detach = false, detachLogPath, notify = false, budget, cooldownMs, tokenMode = "off", tokenModeError, contextCompressor = "off", agentId = "claude", agentDisplayName = "Claude Code", agentSource = "default", agentError, fallbackAgentId, fallbackAgentDisplayName, fallbackSource, autoSwitchOnLimit = false, fallbackError, verbose = false, reviewLenses = [], adaptiveRouter = false, explainRouting = false, modelRouting = false, tierLadder, fanOut = false, fanOutConcurrency = 3, watch = false, watchIntervalSec, watchLabel = process.env.OTTO_WATCH_LABEL?.trim() || "otto", watchScope, issue, includeSubIssues = false, maxWaitMs, mode, branchStrategy, branchPrefix, branchConvention, } = opts;
|
|
509
|
+
const { cliVersion, noKeepAlive = false, maxRetries = DEFAULT_MAX_RETRIES, detach = false, detachLogPath, notify = false, budget, cooldownMs, tokenMode = "off", tokenModeError, contextCompressor = "off", agentId = "claude", agentDisplayName = "Claude Code", agentSource = "default", agentError, fallbackAgentId, fallbackAgentDisplayName, fallbackSource, autoSwitchOnLimit = false, fallbackError, verbose = false, reviewLenses = [], adaptiveRouter = false, explainRouting = false, modelRouting = false, tierLadder, sharpenInput = false, fanOut = false, fanOutConcurrency = 3, watch = false, watchIntervalSec, watchLabel = process.env.OTTO_WATCH_LABEL?.trim() || "otto", watchScope, issue, includeSubIssues = false, maxWaitMs, mode, branchStrategy, branchPrefix, branchConvention, } = opts;
|
|
505
510
|
const core = readCoreVersion();
|
|
506
511
|
const cli = cliVersion ?? "?";
|
|
507
512
|
const runner = process.env.OTTO_RUNNER?.trim() === "host" ? "host" : "sandbox";
|
|
@@ -584,6 +589,7 @@ export function printConfig(bin, workspaceDir, packageDir, opts = {}) {
|
|
|
584
589
|
review ${reviewStatus}
|
|
585
590
|
routing ${routingStatus}
|
|
586
591
|
model routing ${modelRoutingStatus}
|
|
592
|
+
sharpen input ${sharpenInput ? "on" : "off"}
|
|
587
593
|
fan-out ${fanOut ? `on (concurrency ${fanOutConcurrency})` : "off"}
|
|
588
594
|
branch ${branchStatus}
|
|
589
595
|
watch ${watchStatus}
|
package/dist/cli-help.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-help.js","sourceRoot":"","sources":["../src/cli-help.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EACL,YAAY,GAGb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,cAAc,EAAkB,MAAM,aAAa,CAAC;AAuH7D,2FAA2F;AAC3F,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC9C,IAAI,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,IAAI,KAAK,CACb,gEAAgE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CACtF,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IACzB,MAAM,MAAM,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,OAAO,CAAC,GAAG,MAAM,CAAC;AACpB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACrB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACxD,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;SAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,0FAA0F,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAChH,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAWD,MAAM,UAAU,UAAU,CACxB,IAAc,EACd,OAA0B,EAAE;IAE5B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,aAAa,CAAC;IACpD,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,UAA8B,CAAC;IACnC,IAAI,mBAAmB,GAAG,KAAK,CAAC;IAChC,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,GAAuB,CAAC;IAC5B,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,MAA0B,CAAC;IAC/B,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,UAA8B,CAAC;IACnC,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,IAAI,SAAgC,CAAC;IACrC,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,IAAI,iBAA6C,CAAC;IAClD,IAAI,0BAA0B,GAAG,KAAK,CAAC;IACvC,IAAI,KAAiC,CAAC;IACtC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,aAAyC,CAAC;IAC9C,IAAI,sBAAsB,GAAG,KAAK,CAAC;IACnC,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,IAAI,0BAA0B,GAAG,KAAK,CAAC;IACvC,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,gBAAoC,CAAC;IACzC,IAAI,sBAAsB,GAAG,KAAK,CAAC;IACnC,IAAI,KAAkC,CAAC;IACvC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,SAA6B,CAAC;IAClC,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,WAA+B,CAAC;IACpC,IAAI,oBAAoB,GAAG,KAAK,CAAC;IACjC,IAAI,MAAqD,CAAC;IAC1D,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,YAAgC,CAAC;IACrC,IAAI,qBAAqB,GAAG,KAAK,CAAC;IAClC,IAAI,gBAAoC,CAAC;IACzC,IAAI,yBAAyB,GAAG,KAAK,CAAC;IACtC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,mBAAmB,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CACb,sDAAsD,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAC1E,CAAC;YACJ,CAAC;YACD,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpC,mBAAmB,GAAG,KAAK,CAAC;YAC5B,SAAS;QACX,CAAC;QACD,IAAI,0BAA0B,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnD,MAAM,IAAI,KAAK,CACb,0DAA0D,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAC9E,CAAC;YACJ,CAAC;YACD,iBAAiB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3C,0BAA0B,GAAG,KAAK,CAAC;YACnC,SAAS;QACX,CAAC;QACD,IAAI,YAAY,EAAE,CAAC;YACjB,GAAG,GAAG,CAAC,CAAC;YACR,YAAY,GAAG,KAAK,CAAC;YACrB,SAAS;QACX,CAAC;QACD,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CACb,4CAA4C,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAChE,CAAC;YACJ,CAAC;YACD,MAAM,GAAG,CAAC,CAAC;YACX,eAAe,GAAG,KAAK,CAAC;YACxB,SAAS;QACX,CAAC;QACD,IAAI,iBAAiB,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CACb,wDAAwD,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAC5E,CAAC;YACJ,CAAC;YACD,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpC,iBAAiB,GAAG,KAAK,CAAC;YAC1B,SAAS;QACX,CAAC;QACD,IAAI,kBAAkB,EAAE,CAAC;YACvB,SAAS,GAAG,cAAc,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;YAC9C,kBAAkB,GAAG,KAAK,CAAC;YAC3B,SAAS;QACX,CAAC;QACD,IAAI,0BAA0B,EAAE,CAAC;YAC/B,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,UAAU,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CACb,0DAA0D,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAC9E,CAAC;YACJ,CAAC;YACD,iBAAiB,GAAG,CAAC,CAAC;YACtB,0BAA0B,GAAG,KAAK,CAAC;YACnC,SAAS;QACX,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACnB,KAAK,GAAG,YAAY,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YACnC,cAAc,GAAG,KAAK,CAAC;YACvB,SAAS;QACX,CAAC;QACD,IAAI,sBAAsB,EAAE,CAAC;YAC3B,aAAa,GAAG,YAAY,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;YACpD,sBAAsB,GAAG,KAAK,CAAC;YAC/B,SAAS;QACX,CAAC;QACD,IAAI,sBAAsB,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpD,MAAM,IAAI,KAAK,CACb,+DAA+D,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CACnF,CAAC;YACJ,CAAC;YACD,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1C,sBAAsB,GAAG,KAAK,CAAC;YAC/B,SAAS;QACX,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACnB,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YACtB,cAAc,GAAG,KAAK,CAAC;YACvB,SAAS;QACX,CAAC;QACD,IAAI,gBAAgB,EAAE,CAAC;YACrB,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YAC/B,gBAAgB,GAAG,KAAK,CAAC;YACzB,SAAS;QACX,CAAC;QACD,IAAI,oBAAoB,EAAE,CAAC;YACzB,WAAW,GAAG,CAAC,CAAC;YAChB,oBAAoB,GAAG,KAAK,CAAC;YAC7B,SAAS;QACX,CAAC;QACD,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,UAAU,EAAE,CAAC;gBAC1D,MAAM,IAAI,KAAK,CACb,yDAAyD,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAC7E,CAAC;YACJ,CAAC;YACD,MAAM,GAAG,CAAC,CAAC;YACX,eAAe,GAAG,KAAK,CAAC;YACxB,SAAS;QACX,CAAC;QACD,IAAI,qBAAqB,EAAE,CAAC;YAC1B,YAAY,GAAG,CAAC,CAAC;YACjB,qBAAqB,GAAG,KAAK,CAAC;YAC9B,SAAS;QACX,CAAC;QACD,IAAI,yBAAyB,EAAE,CAAC;YAC9B,gBAAgB,GAAG,CAAC,CAAC;YACrB,yBAAyB,GAAG,KAAK,CAAC;YAClC,SAAS;QACX,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACd,aAAa,GAAG,KAAK,CAAC;YACtB,SAAS;QACX,CAAC;QACD,IAAI,gBAAgB,EAAE,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,gBAAgB,GAAG,KAAK,CAAC;YACzB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,QAAQ;YAAE,IAAI,GAAG,IAAI,CAAC;aACzC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,WAAW;YAAE,OAAO,GAAG,IAAI,CAAC;aACpD,IAAI,CAAC,KAAK,gBAAgB;YAAE,WAAW,GAAG,IAAI,CAAC;aAC/C,IAAI,CAAC,KAAK,kBAAkB;YAAE,aAAa,GAAG,IAAI,CAAC;aACnD,IAAI,CAAC,KAAK,eAAe;YAAE,UAAU,GAAG,IAAI,CAAC;aAC7C,IAAI,CAAC,KAAK,iBAAiB;YAAE,WAAW,GAAG,IAAI,CAAC;aAChD,IAAI,CAAC,KAAK,eAAe;YAAE,mBAAmB,GAAG,IAAI,CAAC;aACtD,IAAI,CAAC,KAAK,UAAU;YAAE,MAAM,GAAG,IAAI,CAAC;aACpC,IAAI,CAAC,KAAK,OAAO;YAAE,YAAY,GAAG,IAAI,CAAC;aACvC,IAAI,CAAC,KAAK,UAAU;YAAE,MAAM,GAAG,IAAI,CAAC;aACpC,IAAI,CAAC,KAAK,UAAU;YAAE,eAAe,GAAG,IAAI,CAAC;aAC7C,IAAI,CAAC,KAAK,YAAY;YAAE,iBAAiB,GAAG,IAAI,CAAC;aACjD,IAAI,CAAC,KAAK,cAAc;YAAE,kBAAkB,GAAG,IAAI,CAAC;aACpD,IAAI,CAAC,KAAK,SAAS;YAAE,cAAc,GAAG,IAAI,CAAC;aAC3C,IAAI,CAAC,KAAK,kBAAkB;YAAE,sBAAsB,GAAG,IAAI,CAAC;aAC5D,IAAI,CAAC,KAAK,wBAAwB;YAAE,iBAAiB,GAAG,IAAI,CAAC;aAC7D,IAAI,CAAC,KAAK,gBAAgB;YAAE,WAAW,GAAG,IAAI,CAAC;aAC/C,IAAI,CAAC,KAAK,WAAW;YAAE,OAAO,GAAG,IAAI,CAAC;aACtC,IAAI,CAAC,KAAK,mBAAmB;YAAE,cAAc,GAAG,IAAI,CAAC;aACrD,IAAI,CAAC,KAAK,mBAAmB;YAAE,cAAc,GAAG,IAAI,CAAC;aACrD,IAAI,CAAC,KAAK,iBAAiB;YAAE,YAAY,GAAG,IAAI,CAAC;aACjD,IAAI,CAAC,KAAK,cAAc;YAAE,SAAS,GAAG,IAAI,CAAC;aAC3C,IAAI,CAAC,KAAK,sBAAsB;YAAE,0BAA0B,GAAG,IAAI,CAAC;aACpE,IAAI,CAAC,KAAK,WAAW;YAAE,MAAM,GAAG,IAAI,CAAC;aACrC,IAAI,CAAC,KAAK,uBAAuB;YAAE,0BAA0B,GAAG,IAAI,CAAC;aACrE,IAAI,CAAC,KAAK,SAAS;YAAE,KAAK,GAAG,IAAI,CAAC;aAClC,IAAI,CAAC,KAAK,kBAAkB;YAAE,sBAAsB,GAAG,IAAI,CAAC;aAC5D,IAAI,CAAC,KAAK,SAAS;YAAE,cAAc,GAAG,IAAI,CAAC;aAC3C,IAAI,CAAC,KAAK,sBAAsB;YAAE,gBAAgB,GAAG,IAAI,CAAC;aAC1D,IAAI,CAAC,KAAK,YAAY;YAAE,gBAAgB,GAAG,IAAI,CAAC;aAChD,IAAI,CAAC,KAAK,SAAS;YAAE,KAAK,GAAG,IAAI,CAAC;aAClC,IAAI,CAAC,KAAK,UAAU;YAAE,MAAM,GAAG,IAAI,CAAC;aACpC,IAAI,CAAC,KAAK,QAAQ;YAAE,IAAI,GAAG,IAAI,CAAC;aAChC,IAAI,CAAC,KAAK,gBAAgB;YAAE,oBAAoB,GAAG,IAAI,CAAC;aACxD,IAAI,CAAC,KAAK,UAAU;YAAE,eAAe,GAAG,IAAI,CAAC;aAC7C,IAAI,CAAC,KAAK,iBAAiB;YAAE,qBAAqB,GAAG,IAAI,CAAC;aAC1D,IAAI,CAAC,KAAK,qBAAqB;YAAE,yBAAyB,GAAG,IAAI,CAAC;aAClE,IAAI,CAAC,KAAK,QAAQ;YAAE,aAAa,GAAG,IAAI,CAAC;aACzC,IAAI,CAAC,KAAK,WAAW;YAAE,gBAAgB,GAAG,IAAI,CAAC;;YAC/C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,IAAI,mBAAmB,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,kBAAkB,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,sBAAsB,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,sBAAsB,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,oBAAoB,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,qBAAqB,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,yBAAyB,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,GAAG,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO;QACL,IAAI;QACJ,OAAO;QACP,WAAW;QACX,aAAa;QACb,UAAU;QACV,WAAW;QACX,UAAU;QACV,MAAM;QACN,GAAG;QACH,MAAM;QACN,MAAM;QACN,UAAU;QACV,SAAS;QACT,iBAAiB;QACjB,KAAK;QACL,aAAa;QACb,iBAAiB;QACjB,WAAW;QACX,OAAO;QACP,cAAc;QACd,cAAc;QACd,YAAY;QACZ,SAAS;QACT,MAAM;QACN,iBAAiB;QACjB,KAAK;QACL,gBAAgB;QAChB,KAAK;QACL,gBAAgB;QAChB,SAAS;QACT,KAAK;QACL,MAAM;QACN,IAAI;QACJ,WAAW;QACX,MAAM;QACN,YAAY;QACZ,gBAAgB;QAChB,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QACd,KAAK;QACL,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;QACpB,QAAQ;QACR,IAAI;KACL,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe;IAC7B,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAEnD,CAAC;QACF,OAAO,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAW,EAAE,UAAmB;IAC3D,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,UAAU,IAAI,GAAG,CAAC;IAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,GAAG,UAAU,IAAI,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,SAAS,CACvB,GAAW,EACX,KAAa,EACb,WAAmB;IAEnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,WAAW;;;IAG1C,GAAG,IAAI,KAAK;IACZ,GAAG;IACH,GAAG;IACH,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwEN,CAAC,CAAC;AACH,CAAC;AAwED,MAAM,UAAU,WAAW,CACzB,GAAW,EACX,YAAoB,EACpB,UAAkB,EAClB,OAA2B,EAAE;IAE7B,MAAM,EACJ,UAAU,EACV,WAAW,GAAG,KAAK,EACnB,UAAU,GAAG,mBAAmB,EAChC,MAAM,GAAG,KAAK,EACd,aAAa,EACb,MAAM,GAAG,KAAK,EACd,MAAM,EACN,UAAU,EACV,SAAS,GAAG,KAAK,EACjB,cAAc,EACd,iBAAiB,GAAG,KAAK,EACzB,OAAO,GAAG,QAAQ,EAClB,gBAAgB,GAAG,aAAa,EAChC,WAAW,GAAG,SAAS,EACvB,UAAU,EACV,eAAe,EACf,wBAAwB,EACxB,cAAc,EACd,iBAAiB,GAAG,KAAK,EACzB,aAAa,EACb,OAAO,GAAG,KAAK,EACf,YAAY,GAAG,EAAE,EACjB,cAAc,GAAG,KAAK,EACtB,cAAc,GAAG,KAAK,EACtB,YAAY,GAAG,KAAK,EACpB,UAAU,EACV,MAAM,GAAG,KAAK,EACd,iBAAiB,GAAG,CAAC,EACrB,KAAK,GAAG,KAAK,EACb,gBAAgB,EAChB,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,IAAI,MAAM,EAC3D,UAAU,EACV,KAAK,EACL,gBAAgB,GAAG,KAAK,EACxB,SAAS,EACT,IAAI,EACJ,cAAc,EACd,YAAY,EACZ,gBAAgB,GACjB,GAAG,IAAI,CAAC;IACT,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,UAAU,IAAI,GAAG,CAAC;IAE9B,MAAM,MAAM,GACV,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC;IACpD,MAAM,SAAS,GACb,MAAM,KAAK,MAAM;QACf,CAAC,CAAC,mBAAmB;QACrB,CAAC,CAAC,MAAM;YACN,CAAC,CAAC,kBAAkB,MAAM,EAAE;YAC5B,CAAC,CAAC,wCAAwC,CAAC;IAEjD,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,wBAAwB,CAAC;IACvE,MAAM,YAAY,GAChB,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,YAAY,aAAa,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;IACjE,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3C,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,QAAQ;QAC1B,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,MAAM,GAAG;QACzC,CAAC,CAAC,GAAG,OAAO,sBAAsB,OAAO,CAAC,WAAW,EAAE,4BAA4B,CAAC;IAEtF,MAAM,aAAa,GAAG,UAAU;QAC9B,CAAC,CAAC,YAAY,UAAU,GAAG;QAC3B,CAAC,CAAC,GAAG,OAAO,KAAK,gBAAgB,GAAG,CAAC;IACvC,MAAM,mBAAmB,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC;IAC3D,+EAA+E;IAC/E,6EAA6E;IAC7E,MAAM,cAAc,GAAG,aAAa;QAClC,CAAC,CAAC,YAAY,aAAa,GAAG;QAC9B,CAAC,CAAC,eAAe;YACf,CAAC,CAAC,GAAG,eAAe,KAAK,wBAAwB,KAAK,cAAc,mBAAmB,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE;YACzH,CAAC,CAAC,iBAAiB;gBACjB,CAAC,CAAC,wCAAwC;gBAC1C,CAAC,CAAC,KAAK,CAAC;IACd,MAAM,YAAY,GAAG,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IACtE,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC9D,MAAM,eAAe,GAAG,cAAc;QACpC,CAAC,CAAC,YAAY,SAAS,KAAK,cAAc,GAAG;QAC7C,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM;QACtC,CAAC,CAAC,UAAU,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACrC,CAAC,CAAC,iBAAiB,CAAC;IACtB,MAAM,aAAa,GAAG,cAAc;QAClC,CAAC,CAAC,WAAW,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE;QACpD,CAAC,CAAC,cAAc;YACd,CAAC,CAAC,iDAAiD;YACnD,CAAC,CAAC,KAAK,CAAC;IACZ,MAAM,kBAAkB,GAAG,YAAY;QACrC,CAAC,CAAC,UAAU;YACV,CAAC,CAAC,aAAa,UAAU,CAAC,KAAK,IAAI,SAAS,SAAS,UAAU,CAAC,GAAG,IAAI,SAAS,YAAY,UAAU,CAAC,MAAM,IAAI,SAAS,GAAG;YAC7H,CAAC,CAAC,IAAI;QACR,CAAC,CAAC,KAAK,CAAC;IACV,MAAM,WAAW,GAAG,KAAK;QACvB,CAAC,CAAC,aAAa,gBAAgB,IAAI,GAAG,aAAa,UAAU,IAAI;QACjE,CAAC,CAAC,KAAK,CAAC;IACV,MAAM,WAAW,GAAG,UAAU,IAAI,iCAAiC,CAAC;IACpE,8EAA8E;IAC9E,8CAA8C;IAC9C,MAAM,WAAW,GACf,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1E,MAAM,eAAe,GACnB,gBAAgB,IAAI,IAAI;QACtB,CAAC,CAAC,eAAe,gBAAgB,GAAG;QACpC,CAAC,CAAC,WAAW,YAAY,IAAI,OAAO,GAAG,CAAC;IAC5C,MAAM,YAAY,GAAG,GAAG,cAAc,IAAI,SAAS,KAAK,eAAe,GAAG,CAAC;IAE3E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG;0BACJ,GAAG,IAAI,GAAG,UAAU,IAAI;0BACxB,IAAI,IAAI,KAAK;yBACd,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB;0BAClE,UAAU;0BACV,aAAa;0BACb,mBAAmB;0BACnB,cAAc;yBACf,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa;0BACpD,SAAS;0BACT,WAAW;0BACX,eAAe;0BACf,UAAU;0BACV,YAAY;0BACZ,YAAY;0BACZ,YAAY;0BACZ,cAAc;0BACd,eAAe;0BACf,iBAAiB;0BACjB,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc;0BACxE,OAAO;0BACP,YAAY;0BACZ,aAAa;0BACb,kBAAkB;0BAClB,MAAM,CAAC,CAAC,CAAC,mBAAmB,iBAAiB,GAAG,CAAC,CAAC,CAAC,KAAK;0BACxD,YAAY;0BACZ,WAAW;0BACX,WAAW;0BACX,WAAW;0BACX,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;CACxD,CAAC,CAAC;IAED,4EAA4E;IAC5E,uDAAuD;IACvD,MAAM,SAAS,GAAG,YAAY,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,SAAS;SAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;SACpE,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;GACpB,GAAG;EACJ,cAAc;CACf,CAAC,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli-help.js","sourceRoot":"","sources":["../src/cli-help.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context lifecycle taxonomy (issue #66 P11, slice T1 — "name what is freeable").
|
|
3
|
+
*
|
|
4
|
+
* A pure, orthogonal axis derived from the existing `ContextCategory`
|
|
5
|
+
* (`context-report.ts`): where category answers *which section* the prompt is
|
|
6
|
+
* made of, lifecycle answers *why it is still in the window and whether it could
|
|
7
|
+
* be freed*. Modelled on the governed-memory design where `trust`/`confidence`/
|
|
8
|
+
* `status` are kept as separate orthogonal axes — lifecycle does not replace
|
|
9
|
+
* category, it is computed from it.
|
|
10
|
+
*
|
|
11
|
+
* INERT on the loop — nothing here runs a stage or mutates a prompt; it only
|
|
12
|
+
* classifies and rolls up an already-measured `ContextBreakdown`.
|
|
13
|
+
*/
|
|
14
|
+
import { type ContextBreakdown, type ContextCategory } from "./context-report.js";
|
|
15
|
+
/**
|
|
16
|
+
* The four roadmap lifecycle classes (`docs/HARNESS_ROADMAP_PHASE5.md` P22):
|
|
17
|
+
*
|
|
18
|
+
* - `required-now` — stage contract, current task, active diff. Must stay.
|
|
19
|
+
* - `resolved` — previous-iteration discussion / completed subtasks. Retirable.
|
|
20
|
+
* - `durable` — governed memory and final decisions. Kept, but compactable.
|
|
21
|
+
* - `retrievable` — logs, issue bodies, command output, screenshots. Produced by
|
|
22
|
+
* the `evidence` category (the ghafk issue-body tags); finer producers
|
|
23
|
+
* (command-output spills, screenshots) join the same category in later slices.
|
|
24
|
+
*/
|
|
25
|
+
export type ContextLifecycle = "required-now" | "resolved" | "durable" | "retrievable";
|
|
26
|
+
/**
|
|
27
|
+
* Total mapping from a context category to its lifecycle class. Pure and
|
|
28
|
+
* exhaustive over every `ContextCategory`:
|
|
29
|
+
*
|
|
30
|
+
* - `playbook` / `inputs` → `required-now`
|
|
31
|
+
* - `commits` → `resolved`
|
|
32
|
+
* - `learnings` → `durable`
|
|
33
|
+
* - `evidence` → `retrievable`
|
|
34
|
+
*/
|
|
35
|
+
export declare function classifyLifecycle(category: ContextCategory): ContextLifecycle;
|
|
36
|
+
/**
|
|
37
|
+
* Plain-language "why is this still in context?" rationale for each lifecycle
|
|
38
|
+
* class — the breakdown the P22 roadmap asks the report to surface alongside the
|
|
39
|
+
* "can be freed" estimate. Pure and total over {@link ContextLifecycle}.
|
|
40
|
+
*/
|
|
41
|
+
export declare function lifecycleRationale(lifecycle: ContextLifecycle): string;
|
|
42
|
+
export type LifecycleTotals = {
|
|
43
|
+
lifecycle: ContextLifecycle;
|
|
44
|
+
chars: number;
|
|
45
|
+
estimatedTokens: number;
|
|
46
|
+
};
|
|
47
|
+
export type LifecycleSummary = {
|
|
48
|
+
totalChars: number;
|
|
49
|
+
estimatedTokens: number;
|
|
50
|
+
/** Per-lifecycle footprint, sorted by chars descending; empty classes omitted. */
|
|
51
|
+
byLifecycle: LifecycleTotals[];
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Roll a measured `ContextBreakdown` up by lifecycle class. Char totals partition
|
|
55
|
+
* the prompt exactly (every segment maps to one lifecycle); token totals sum the
|
|
56
|
+
* per-segment estimates so the rollup is rounding-stable against the breakdown's
|
|
57
|
+
* own segment tokens.
|
|
58
|
+
*/
|
|
59
|
+
export declare function summarizeLifecycle(breakdown: ContextBreakdown): LifecycleSummary;
|
|
60
|
+
/**
|
|
61
|
+
* What could be done to a freeable lifecycle class without losing information
|
|
62
|
+
* the run still needs:
|
|
63
|
+
*
|
|
64
|
+
* - `retire` — settled prior-iteration discussion (`resolved`) can drop out of
|
|
65
|
+
* the window entirely; it is reconstructable from the commit log.
|
|
66
|
+
* - `compress` — bulky reconstructable context (`retrievable`: logs, issue
|
|
67
|
+
* bodies, command output) can be summarized/spilled rather than dropped.
|
|
68
|
+
*/
|
|
69
|
+
export type FreeableAction = "retire" | "compress";
|
|
70
|
+
export type FreeableSegment = {
|
|
71
|
+
lifecycle: ContextLifecycle;
|
|
72
|
+
action: FreeableAction;
|
|
73
|
+
chars: number;
|
|
74
|
+
estimatedTokens: number;
|
|
75
|
+
};
|
|
76
|
+
export type FreeableContextAssessment = {
|
|
77
|
+
/** Chars that could be freed (retired + compressed); 0 when nothing is freeable. */
|
|
78
|
+
freeableChars: number;
|
|
79
|
+
/** Estimated tokens that could be freed; 0 when nothing is freeable. */
|
|
80
|
+
freeableTokens: number;
|
|
81
|
+
/** Per-lifecycle freeable footprint, sorted by tokens descending; empty omitted. */
|
|
82
|
+
segments: FreeableSegment[];
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* Dry-run "freeable context" recommendation: name the `resolved` context as
|
|
86
|
+
* _retirable_ and the `retrievable` context as _compressible_, with estimated
|
|
87
|
+
* token savings. `required-now` and `durable` are never freeable. Pure: returns
|
|
88
|
+
* a recommendation, mutates nothing — retiring/compressing for real is a later
|
|
89
|
+
* slice gated on this report being trusted. Token totals sum the per-segment
|
|
90
|
+
* estimates so they are rounding-stable against the breakdown's own segments.
|
|
91
|
+
*/
|
|
92
|
+
export declare function assessFreeableContext(breakdown: ContextBreakdown): FreeableContextAssessment;
|
|
93
|
+
/**
|
|
94
|
+
* Render a freeable-context assessment as a short, human-readable line. The `~`
|
|
95
|
+
* prefix marks the estimated-token figure. Names each freeable class and its
|
|
96
|
+
* action; falls back to an explicit "none" line when nothing is freeable.
|
|
97
|
+
*/
|
|
98
|
+
export declare function formatFreeableContext(a: FreeableContextAssessment): string;
|
|
99
|
+
//# sourceMappingURL=context-lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-lifecycle.d.ts","sourceRoot":"","sources":["../src/context-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAC;AAE7B;;;;;;;;;GASG;AACH,MAAM,MAAM,gBAAgB,GACxB,cAAc,GACd,UAAU,GACV,SAAS,GACT,aAAa,CAAC;AAElB;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,eAAe,GAAG,gBAAgB,CAY7E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,GAAG,MAAM,CAWtE;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,kFAAkF;IAClF,WAAW,EAAE,eAAe,EAAE,CAAC;CAChC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,gBAAgB,GAC1B,gBAAgB,CAoBlB;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,UAAU,CAAC;AAQnD,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,oFAAoF;IACpF,aAAa,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,cAAc,EAAE,MAAM,CAAC;IACvB,oFAAoF;IACpF,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,gBAAgB,GAC1B,yBAAyB,CAyB3B;AAID;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,yBAAyB,GAAG,MAAM,CAY1E"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context lifecycle taxonomy (issue #66 P11, slice T1 — "name what is freeable").
|
|
3
|
+
*
|
|
4
|
+
* A pure, orthogonal axis derived from the existing `ContextCategory`
|
|
5
|
+
* (`context-report.ts`): where category answers *which section* the prompt is
|
|
6
|
+
* made of, lifecycle answers *why it is still in the window and whether it could
|
|
7
|
+
* be freed*. Modelled on the governed-memory design where `trust`/`confidence`/
|
|
8
|
+
* `status` are kept as separate orthogonal axes — lifecycle does not replace
|
|
9
|
+
* category, it is computed from it.
|
|
10
|
+
*
|
|
11
|
+
* INERT on the loop — nothing here runs a stage or mutates a prompt; it only
|
|
12
|
+
* classifies and rolls up an already-measured `ContextBreakdown`.
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Total mapping from a context category to its lifecycle class. Pure and
|
|
16
|
+
* exhaustive over every `ContextCategory`:
|
|
17
|
+
*
|
|
18
|
+
* - `playbook` / `inputs` → `required-now`
|
|
19
|
+
* - `commits` → `resolved`
|
|
20
|
+
* - `learnings` → `durable`
|
|
21
|
+
* - `evidence` → `retrievable`
|
|
22
|
+
*/
|
|
23
|
+
export function classifyLifecycle(category) {
|
|
24
|
+
switch (category) {
|
|
25
|
+
case "playbook":
|
|
26
|
+
case "inputs":
|
|
27
|
+
return "required-now";
|
|
28
|
+
case "commits":
|
|
29
|
+
return "resolved";
|
|
30
|
+
case "learnings":
|
|
31
|
+
return "durable";
|
|
32
|
+
case "evidence":
|
|
33
|
+
return "retrievable";
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Plain-language "why is this still in context?" rationale for each lifecycle
|
|
38
|
+
* class — the breakdown the P22 roadmap asks the report to surface alongside the
|
|
39
|
+
* "can be freed" estimate. Pure and total over {@link ContextLifecycle}.
|
|
40
|
+
*/
|
|
41
|
+
export function lifecycleRationale(lifecycle) {
|
|
42
|
+
switch (lifecycle) {
|
|
43
|
+
case "required-now":
|
|
44
|
+
return "the active task and stage contract — must stay in the window";
|
|
45
|
+
case "resolved":
|
|
46
|
+
return "settled prior-iteration work — reconstructable from the commit log, so retirable";
|
|
47
|
+
case "durable":
|
|
48
|
+
return "governed memory and final decisions — kept, but compactable";
|
|
49
|
+
case "retrievable":
|
|
50
|
+
return "reconstructable evidence (issue bodies, logs, command output) — re-fetchable on demand, so compressible";
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Roll a measured `ContextBreakdown` up by lifecycle class. Char totals partition
|
|
55
|
+
* the prompt exactly (every segment maps to one lifecycle); token totals sum the
|
|
56
|
+
* per-segment estimates so the rollup is rounding-stable against the breakdown's
|
|
57
|
+
* own segment tokens.
|
|
58
|
+
*/
|
|
59
|
+
export function summarizeLifecycle(breakdown) {
|
|
60
|
+
const byLifecycle = new Map();
|
|
61
|
+
for (const segment of breakdown.segments) {
|
|
62
|
+
const lifecycle = classifyLifecycle(segment.category);
|
|
63
|
+
const entry = byLifecycle.get(lifecycle) ?? {
|
|
64
|
+
lifecycle,
|
|
65
|
+
chars: 0,
|
|
66
|
+
estimatedTokens: 0,
|
|
67
|
+
};
|
|
68
|
+
entry.chars += segment.chars;
|
|
69
|
+
entry.estimatedTokens += segment.estimatedTokens;
|
|
70
|
+
byLifecycle.set(lifecycle, entry);
|
|
71
|
+
}
|
|
72
|
+
const totals = [...byLifecycle.values()].sort((a, b) => b.chars - a.chars);
|
|
73
|
+
return {
|
|
74
|
+
totalChars: totals.reduce((a, b) => a + b.chars, 0),
|
|
75
|
+
estimatedTokens: totals.reduce((a, b) => a + b.estimatedTokens, 0),
|
|
76
|
+
byLifecycle: totals,
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
/** Lifecycle classes a dry-run report may name as freeable, and how. */
|
|
80
|
+
const FREEABLE_ACTIONS = {
|
|
81
|
+
resolved: "retire",
|
|
82
|
+
retrievable: "compress",
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* Dry-run "freeable context" recommendation: name the `resolved` context as
|
|
86
|
+
* _retirable_ and the `retrievable` context as _compressible_, with estimated
|
|
87
|
+
* token savings. `required-now` and `durable` are never freeable. Pure: returns
|
|
88
|
+
* a recommendation, mutates nothing — retiring/compressing for real is a later
|
|
89
|
+
* slice gated on this report being trusted. Token totals sum the per-segment
|
|
90
|
+
* estimates so they are rounding-stable against the breakdown's own segments.
|
|
91
|
+
*/
|
|
92
|
+
export function assessFreeableContext(breakdown) {
|
|
93
|
+
const byLifecycle = new Map();
|
|
94
|
+
for (const segment of breakdown.segments) {
|
|
95
|
+
const lifecycle = segment.lifecycle ?? classifyLifecycle(segment.category);
|
|
96
|
+
const action = FREEABLE_ACTIONS[lifecycle];
|
|
97
|
+
if (!action)
|
|
98
|
+
continue;
|
|
99
|
+
const entry = byLifecycle.get(lifecycle) ?? {
|
|
100
|
+
lifecycle,
|
|
101
|
+
action,
|
|
102
|
+
chars: 0,
|
|
103
|
+
estimatedTokens: 0,
|
|
104
|
+
};
|
|
105
|
+
entry.chars += segment.chars;
|
|
106
|
+
entry.estimatedTokens += segment.estimatedTokens;
|
|
107
|
+
byLifecycle.set(lifecycle, entry);
|
|
108
|
+
}
|
|
109
|
+
const segments = [...byLifecycle.values()].sort((a, b) => b.estimatedTokens - a.estimatedTokens);
|
|
110
|
+
return {
|
|
111
|
+
freeableChars: segments.reduce((a, b) => a + b.chars, 0),
|
|
112
|
+
freeableTokens: segments.reduce((a, b) => a + b.estimatedTokens, 0),
|
|
113
|
+
segments,
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
const num = new Intl.NumberFormat("en-US");
|
|
117
|
+
/**
|
|
118
|
+
* Render a freeable-context assessment as a short, human-readable line. The `~`
|
|
119
|
+
* prefix marks the estimated-token figure. Names each freeable class and its
|
|
120
|
+
* action; falls back to an explicit "none" line when nothing is freeable.
|
|
121
|
+
*/
|
|
122
|
+
export function formatFreeableContext(a) {
|
|
123
|
+
if (a.freeableTokens === 0) {
|
|
124
|
+
return "freeable context: none — no resolved or retrievable context to free";
|
|
125
|
+
}
|
|
126
|
+
const parts = a.segments.map((s) => `${s.action} ${s.lifecycle} (~${num.format(s.estimatedTokens)} tokens)`);
|
|
127
|
+
return (`freeable context: ~${num.format(a.freeableTokens)} tokens ` +
|
|
128
|
+
`(${num.format(a.freeableChars)} chars) — ${parts.join(", ")}`);
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=context-lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-lifecycle.js","sourceRoot":"","sources":["../src/context-lifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-report-cli.d.ts","sourceRoot":"","sources":["../src/context-report-cli.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context-report-cli.d.ts","sourceRoot":"","sources":["../src/context-report-cli.ts"],"names":[],"mappings":"AAUA,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,iBAAiB,CAAC;AAGzB;;;;;;;;;GASG;AAEH,mFAAmF;AACnF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3B,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5B,CAAC;AAgBF;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,WAAW,EAAE,GACpB,MAAM,CAmGR;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,GAAE,iBAA+B,GACpC,OAAO,CAAC,MAAM,CAAC,CAejB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { resolve } from "node:path";
|
|
2
2
|
import { summarizeToolCompression } from "./context-compressor.js";
|
|
3
|
+
import { assessFreeableContext, formatFreeableContext, lifecycleRationale, summarizeLifecycle, } from "./context-lifecycle.js";
|
|
3
4
|
import { listRunIds, readStageRecords, } from "./run-report.js";
|
|
4
5
|
import { formatCacheEfficiency, summarizeCacheEfficiency } from "./tokens.js";
|
|
5
6
|
const defaultDeps = {
|
|
@@ -53,6 +54,29 @@ export function formatContextReportRun(runId, stages) {
|
|
|
53
54
|
const trend = deltaPct > 10 ? "growing" : deltaPct < -10 ? "shrinking" : "flat";
|
|
54
55
|
lines.push(` Slope (~tokens/stage): first-third avg ~${num.format(Math.round(firstAvg))} → last-third avg ~${num.format(Math.round(lastAvg))} (${deltaPct >= 0 ? "+" : ""}${pct.format(deltaPct)}%, ${trend})`);
|
|
55
56
|
}
|
|
57
|
+
// Lifecycle rollup + freeable-context dry run (issue #66 P11, T4) — aggregate
|
|
58
|
+
// every measured breakdown's segments by lifecycle class, so the operator sees
|
|
59
|
+
// which part of the window is required-now vs resolved/durable and what a dry
|
|
60
|
+
// run could free. Read-only: `assessFreeableContext` recommends, mutates nothing.
|
|
61
|
+
const allSegments = measured.flatMap((s) => s.contextBreakdown.segments);
|
|
62
|
+
const combined = {
|
|
63
|
+
totalChars: allSegments.reduce((a, b) => a + b.chars, 0),
|
|
64
|
+
estimatedTokens: allSegments.reduce((a, b) => a + b.estimatedTokens, 0),
|
|
65
|
+
segments: allSegments,
|
|
66
|
+
};
|
|
67
|
+
const lifecycle = summarizeLifecycle(combined);
|
|
68
|
+
lines.push("", ` Lifecycle: ${lifecycle.byLifecycle
|
|
69
|
+
.map((t) => `${t.lifecycle} ~${num.format(t.estimatedTokens)} tokens`)
|
|
70
|
+
.join(" · ")}`, ` ${formatFreeableContext(assessFreeableContext(combined))}`);
|
|
71
|
+
// "Why is this still in context?" — a per-class rationale for the classes
|
|
72
|
+
// actually present this run, closing P22 scope bullet 2 (the plain-language
|
|
73
|
+
// breakdown alongside the freeable estimate above).
|
|
74
|
+
if (lifecycle.byLifecycle.length > 0) {
|
|
75
|
+
lines.push(" Why is this still in context?");
|
|
76
|
+
for (const t of lifecycle.byLifecycle) {
|
|
77
|
+
lines.push(` ${t.lifecycle}: ${lifecycleRationale(t.lifecycle)}`);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
56
80
|
// Cache efficiency (slice 4) — authoritative provider usage, independent of
|
|
57
81
|
// the estimated-token composition above. Drawn from EVERY stage's usage (not
|
|
58
82
|
// just measured ones); omitted when no input tokens were billed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-report-cli.js","sourceRoot":"","sources":["../src/context-report-cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context-report-cli.js","sourceRoot":"","sources":["../src/context-report-cli.ts"],"names":[],"mappings":"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"}
|
package/dist/context-report.d.ts
CHANGED
|
@@ -12,11 +12,18 @@
|
|
|
12
12
|
* module answers the orthogonal *composition* question ("which section is the
|
|
13
13
|
* prompt made of") that a single usage total cannot.
|
|
14
14
|
*/
|
|
15
|
-
|
|
15
|
+
import { type ContextLifecycle } from "./context-lifecycle.js";
|
|
16
|
+
export type ContextCategory = "commits" | "learnings" | "inputs" | "evidence" | "playbook";
|
|
16
17
|
export type ContextSegment = {
|
|
17
18
|
category: ContextCategory;
|
|
18
19
|
chars: number;
|
|
19
20
|
estimatedTokens: number;
|
|
21
|
+
/**
|
|
22
|
+
* The orthogonal lifecycle class derived from `category` (see
|
|
23
|
+
* `context-lifecycle.ts`) — *why* the segment is still in the window and
|
|
24
|
+
* whether it could be freed. Optional so older serialized breakdowns parse.
|
|
25
|
+
*/
|
|
26
|
+
lifecycle?: ContextLifecycle;
|
|
20
27
|
};
|
|
21
28
|
export type ContextBreakdown = {
|
|
22
29
|
totalChars: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-report.d.ts","sourceRoot":"","sources":["../src/context-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,MAAM,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"context-report.d.ts","sourceRoot":"","sources":["../src/context-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,eAAe,GACvB,SAAS,GACT,WAAW,GACX,QAAQ,GACR,UAAU,GACV,UAAU,CAAC;AAEf,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,eAAe,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,oFAAoF;IACpF,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC5B,CAAC;AAEF,qEAAqE;AACrE,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEpD;AAqCD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAyB/D;AAKD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAa/D"}
|
package/dist/context-report.js
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
* module answers the orthogonal *composition* question ("which section is the
|
|
13
13
|
* prompt made of") that a single usage total cannot.
|
|
14
14
|
*/
|
|
15
|
+
import { classifyLifecycle, } from "./context-lifecycle.js";
|
|
15
16
|
/** Standard rough token estimate: ~4 chars per token, rounded up. */
|
|
16
17
|
export function estimateTokens(chars) {
|
|
17
18
|
return Math.ceil(Math.max(0, chars) / 4);
|
|
@@ -26,9 +27,13 @@ const BLOCK_CATEGORY = {
|
|
|
26
27
|
commits: "commits",
|
|
27
28
|
learnings: "learnings",
|
|
28
29
|
inputs: "inputs",
|
|
29
|
-
issue
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
// ghafk issue-body tags are reconstructable evidence (`gh issue view`
|
|
31
|
+
// re-fetches them), not the active task — `evidence` → `retrievable`, so the
|
|
32
|
+
// report names a multi-KB pasted issue body as compressible rather than
|
|
33
|
+
// load-bearing. The afk `<inputs>` block (the active plan/PRD) stays `inputs`.
|
|
34
|
+
issue: "evidence",
|
|
35
|
+
"issues-summary": "evidence",
|
|
36
|
+
"issues-full-file": "evidence",
|
|
32
37
|
};
|
|
33
38
|
/** Sum the char footprint of every recognized `<tag>…</tag>` span, by category. */
|
|
34
39
|
function recognizedSpans(prompt) {
|
|
@@ -61,6 +66,7 @@ export function analyzeContext(prompt) {
|
|
|
61
66
|
category,
|
|
62
67
|
chars,
|
|
63
68
|
estimatedTokens: estimateTokens(chars),
|
|
69
|
+
lifecycle: classifyLifecycle(category),
|
|
64
70
|
}))
|
|
65
71
|
.sort((a, b) => b.chars - a.chars);
|
|
66
72
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-report.js","sourceRoot":"","sources":["../src/context-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;
|
|
1
|
+
{"version":3,"file":"context-report.js","sourceRoot":"","sources":["../src/context-report.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export { claudeRuntime, getAgentRuntime, runStage, type AgentRuntime, type Stage
|
|
|
10
10
|
export { AGENT_DISPLAY_NAMES, DEFAULT_AGENT, parseAgentId, readAgentConfig, resolveAgentRuntime, type AgentRuntimeId, type AgentSelectionSource, type ResolvedAgentRuntime, } from "./agent-runtime.js";
|
|
11
11
|
export { emptyTokenUsage, formatCacheEfficiency, parseTokenMode, parseTokenUsage, summarizeCacheEfficiency, type CacheEfficiency, type TokenMode, type TokenUsage, } from "./tokens.js";
|
|
12
12
|
export { analyzeContext, estimateTokens, formatContextReport, type ContextBreakdown, type ContextCategory, type ContextSegment, } from "./context-report.js";
|
|
13
|
+
export { assessFreeableContext, classifyLifecycle, formatFreeableContext, lifecycleRationale, summarizeLifecycle, type ContextLifecycle, type FreeableAction, type FreeableContextAssessment, type FreeableSegment, type LifecycleSummary, type LifecycleTotals, } from "./context-lifecycle.js";
|
|
13
14
|
export { DEFAULT_COMMITS_BUDGET_CHARS, compactCommits, formatCompactedCommits, parseCommitLog, type CommitEntry, type CompactedCommits, } from "./iteration-compaction.js";
|
|
14
15
|
export { DEFAULT_CONTEXT_BUDGET_FRACTION, DEFAULT_CONTEXT_WINDOW_TOKENS, assessContextBudget, formatContextBudget, modelContextBudget, modelContextWindow, type BudgetRecommendation, type ContextBudgetAssessment, type ContextBudgetContext, } from "./context-budget.js";
|
|
15
16
|
export { emptyReadLedger, fingerprintContent, formatReadReference, recordRead, summarizeReads, type DedupResult, type DedupSummary, type ReadFingerprint, type ReadLedger, type ReadStatus, } from "./read-dedup.js";
|
|
@@ -54,6 +55,7 @@ export { runLinear, defaultLinearCliDeps, type LinearCliDeps, } from "./linear-c
|
|
|
54
55
|
export { parsePlanProgress, type PlanProgress, type PlanProgressItem, } from "./plan-progress.js";
|
|
55
56
|
export { parsePlanTasks, planParallelGroups, readPlanTasks, type PlanTask, } from "./plan-tasks.js";
|
|
56
57
|
export { reviewsFanoutInsteadOfReplan } from "./plan-fanout.js";
|
|
58
|
+
export { INPUT_DIMENSIONS, formatInputSharpness, formatSharpeningGuidance, scoreInputSharpness, type InputDimension, type InputDimensionResult, type InputSharpnessScore, } from "./input-sharpness.js";
|
|
57
59
|
export { createWorktree, reapWorktrees } from "./worktree.js";
|
|
58
60
|
export { runFanout, type FanoutResult, type FanoutTaskOutcome, type FanoutTaskStatus, type RunFanoutOptions, } from "./fanout.js";
|
|
59
61
|
export { buildRunView, formatDoneCard, formatLiveTree, type RunView, type RunViewStage, } from "./run-view.js";
|