myshell-tools 2.0.0-alpha.0 → 2.1.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/CHANGELOG.md +13 -1
- package/README.md +6 -3
- package/dist/cli.js +85 -30
- package/dist/cli.js.map +1 -1
- package/dist/commands/doctor.d.ts +3 -2
- package/dist/commands/doctor.js +9 -5
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/login.d.ts +20 -0
- package/dist/commands/login.js +60 -0
- package/dist/commands/login.js.map +1 -0
- package/dist/core/orchestrate.js +80 -28
- package/dist/core/orchestrate.js.map +1 -1
- package/dist/core/policy.d.ts +10 -0
- package/dist/core/policy.js +40 -0
- package/dist/core/policy.js.map +1 -1
- package/dist/core/review.d.ts +5 -0
- package/dist/core/review.js +2 -2
- package/dist/core/review.js.map +1 -1
- package/dist/infra/atomic.d.ts +0 -3
- package/dist/infra/atomic.js +1 -1
- package/dist/infra/atomic.js.map +1 -1
- package/dist/infra/config.d.ts +23 -0
- package/dist/infra/config.js +64 -0
- package/dist/infra/config.js.map +1 -0
- package/dist/infra/conversation-store.d.ts +42 -0
- package/dist/infra/conversation-store.js +14 -0
- package/dist/infra/conversation-store.js.map +1 -0
- package/dist/infra/conversations.d.ts +18 -0
- package/dist/infra/conversations.js +296 -0
- package/dist/infra/conversations.js.map +1 -0
- package/dist/infra/insights.d.ts +66 -0
- package/dist/infra/insights.js +105 -0
- package/dist/infra/insights.js.map +1 -0
- package/dist/infra/ledger.d.ts +4 -6
- package/dist/infra/ledger.js.map +1 -1
- package/dist/interface/menu.d.ts +112 -0
- package/dist/interface/menu.js +622 -0
- package/dist/interface/menu.js.map +1 -0
- package/dist/providers/claude.d.ts +4 -13
- package/dist/providers/claude.js +5 -4
- package/dist/providers/claude.js.map +1 -1
- package/dist/providers/codex.d.ts +6 -12
- package/dist/providers/codex.js +6 -4
- package/dist/providers/codex.js.map +1 -1
- package/dist/providers/detect.d.ts +63 -14
- package/dist/providers/detect.js +123 -27
- package/dist/providers/detect.js.map +1 -1
- package/dist/ui/tui.d.ts +127 -0
- package/dist/ui/tui.js +316 -0
- package/dist/ui/tui.js.map +1 -0
- package/package.json +4 -1
- package/dist/core/index.d.ts +0 -13
- package/dist/core/index.js +0 -12
- package/dist/core/index.js.map +0 -1
- package/dist/infra/index.d.ts +0 -9
- package/dist/infra/index.js +0 -7
- package/dist/infra/index.js.map +0 -1
- package/dist/providers/index.d.ts +0 -9
- package/dist/providers/index.js +0 -7
- package/dist/providers/index.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -11,7 +11,19 @@ and the project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.
|
|
|
11
11
|
- Cross-OS CI execution (requires a public remote).
|
|
12
12
|
- First npm publish.
|
|
13
13
|
|
|
14
|
-
## [2.
|
|
14
|
+
## [2.1.0]
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
- **Sessions-first interactive control panel** (default when you run `myshell-tools`):
|
|
18
|
+
a boxed provider-status header, a recent-conversations list, and a sectioned menu
|
|
19
|
+
(continue / new / resume / manage conversations, login, settings, doctor, cost).
|
|
20
|
+
- **Persistent conversations**: create, resume, rename, delete; auto-titled from the
|
|
21
|
+
first message; stored under `~/.myshell-tools/conversations/`.
|
|
22
|
+
- **First-run setup** and **`login`** that delegates to each provider's own OAuth.
|
|
23
|
+
- **Modes**: cost-saver / balanced / quality-first policy presets, switchable in Settings.
|
|
24
|
+
- **TUI kit** (box / menu / bar / badge / separator / panel) — one honest visual language.
|
|
25
|
+
|
|
26
|
+
## [2.0.0]
|
|
15
27
|
|
|
16
28
|
A ground-up rebuild. The architecture is hexagonal (a pure, injected orchestration
|
|
17
29
|
core behind a `Provider` port), and the first principle is the **Honesty Contract**:
|
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
`myshell-tools` routes each task to the *cheapest* model likely to succeed, runs it on your real codebase, optionally has a **different vendor** review the result, and shows you exactly what it did and what it truly cost — with **no fabricated data, ever**.
|
|
6
6
|
|
|
7
|
-
> **Status: `2.
|
|
7
|
+
> **Status: `2.1.0` — honest, tested, and real.** Both the Claude and Codex paths work, and provider auth is detected for real. Install with `npm i -g myshell-tools`, or from source (below).
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -50,8 +50,10 @@ npm link
|
|
|
50
50
|
myshell-tools [command] [options]
|
|
51
51
|
|
|
52
52
|
Commands:
|
|
53
|
+
(none) Open the interactive control panel (default)
|
|
53
54
|
run <task...> Run a one-shot task and exit
|
|
54
|
-
repl
|
|
55
|
+
repl Plain line REPL (no menu)
|
|
56
|
+
login [prov] Sign in to a provider (claude or codex) via its own OAuth
|
|
55
57
|
doctor Check providers, auth, environment
|
|
56
58
|
cost Show real spend + the cost-routing counterfactual
|
|
57
59
|
|
|
@@ -81,8 +83,9 @@ The confidence (`100%`) is **parsed from the model's own structured reply**, not
|
|
|
81
83
|
$ myshell-tools doctor
|
|
82
84
|
Providers
|
|
83
85
|
✓ claude — installed, version: 2.1.157 (Claude Code)
|
|
84
|
-
auth:
|
|
86
|
+
auth: signed in (pro)
|
|
85
87
|
✓ codex — installed, version: codex-cli 0.135.0
|
|
88
|
+
auth: signed in
|
|
86
89
|
Ready — at least one provider is available.
|
|
87
90
|
```
|
|
88
91
|
|
package/dist/cli.js
CHANGED
|
@@ -12,9 +12,17 @@ import { createLedger } from './infra/ledger.js';
|
|
|
12
12
|
import { DEFAULT_POLICY } from './core/policy.js';
|
|
13
13
|
import { runTask } from './interface/run.js';
|
|
14
14
|
import { startRepl } from './interface/repl.js';
|
|
15
|
+
import { startMenu } from './interface/menu.js';
|
|
15
16
|
import { buildProviders } from './providers/registry.js';
|
|
17
|
+
import { detectEnvironment } from './providers/detect.js';
|
|
18
|
+
import { createFileConversationStore } from './infra/conversations.js';
|
|
19
|
+
import { loadConfig } from './infra/config.js';
|
|
16
20
|
import { runDoctor } from './commands/doctor.js';
|
|
17
21
|
import { runCost } from './commands/cost.js';
|
|
22
|
+
import { runLogin } from './commands/login.js';
|
|
23
|
+
import { banner } from './ui/banner.js';
|
|
24
|
+
import { createSpinner } from './ui/spinner.js';
|
|
25
|
+
import { dim } from './ui/theme.js';
|
|
18
26
|
const require = createRequire(import.meta.url);
|
|
19
27
|
const pkg = require('../package.json');
|
|
20
28
|
const version = pkg.version;
|
|
@@ -28,20 +36,43 @@ Options:
|
|
|
28
36
|
-v, --version Print version number
|
|
29
37
|
|
|
30
38
|
Commands:
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
39
|
+
(none) Open the interactive control panel (default)
|
|
40
|
+
run <task...> Run a one-shot task and exit
|
|
41
|
+
repl Start the plain line REPL (no menu)
|
|
42
|
+
login [provider] Sign in to a provider (claude or codex) via its own OAuth
|
|
43
|
+
doctor Check provider installation, auth, and environment health
|
|
44
|
+
cost Show real spend from the ledger with a per-model breakdown
|
|
35
45
|
|
|
36
46
|
Examples:
|
|
47
|
+
myshell-tools # open the control panel
|
|
37
48
|
myshell-tools run "refactor the auth module"
|
|
38
|
-
myshell-tools
|
|
39
|
-
myshell-tools doctor
|
|
40
|
-
myshell-tools cost
|
|
41
|
-
myshell-tools
|
|
49
|
+
myshell-tools login
|
|
42
50
|
|
|
43
51
|
Repository: https://github.com/hey-vera/myshell-tools
|
|
44
52
|
`;
|
|
53
|
+
/** Build the orchestration dependencies (includes provider detection). */
|
|
54
|
+
async function buildDeps(cwd) {
|
|
55
|
+
return {
|
|
56
|
+
clock: systemClock,
|
|
57
|
+
session: createSessionWriter({ cwd, id: systemClock.uuid() }),
|
|
58
|
+
ledger: createLedger({ cwd }),
|
|
59
|
+
policy: DEFAULT_POLICY,
|
|
60
|
+
providers: await buildProviders(cwd),
|
|
61
|
+
cwd,
|
|
62
|
+
sandbox: 'workspace-write',
|
|
63
|
+
timeoutMs: 120000,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
/** Honest one-line welcome: which providers were actually detected. */
|
|
67
|
+
function welcome(deps, color) {
|
|
68
|
+
const ready = Object.keys(deps.providers);
|
|
69
|
+
if (ready.length > 0) {
|
|
70
|
+
return dim(`Providers: ${ready.join(', ')}. Type a task and press Enter, or /help. ` +
|
|
71
|
+
`Not signed in? run: myshell-tools login`, color);
|
|
72
|
+
}
|
|
73
|
+
return dim('No providers detected. Install Claude Code or Codex, then run: myshell-tools login ' +
|
|
74
|
+
'(diagnose: myshell-tools doctor)', color);
|
|
75
|
+
}
|
|
45
76
|
async function main() {
|
|
46
77
|
const args = process.argv.slice(2);
|
|
47
78
|
if (args.includes('--help') || args.includes('-h')) {
|
|
@@ -52,50 +83,74 @@ async function main() {
|
|
|
52
83
|
process.stdout.write(`${version}\n`);
|
|
53
84
|
process.exit(0);
|
|
54
85
|
}
|
|
55
|
-
// ---------------------------------------------------------------------------
|
|
56
|
-
// Build shared infrastructure
|
|
57
|
-
// ---------------------------------------------------------------------------
|
|
58
86
|
const cwd = process.cwd();
|
|
59
87
|
const out = {
|
|
60
|
-
write: (s) => {
|
|
88
|
+
write: (s) => {
|
|
89
|
+
process.stdout.write(s);
|
|
90
|
+
},
|
|
61
91
|
color: process.stdout.isTTY === true && !process.env['NO_COLOR'],
|
|
62
92
|
isTty: process.stdout.isTTY === true,
|
|
63
93
|
};
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
policy: DEFAULT_POLICY,
|
|
69
|
-
providers: await buildProviders(cwd),
|
|
70
|
-
cwd,
|
|
71
|
-
sandbox: 'workspace-write',
|
|
72
|
-
timeoutMs: 120000,
|
|
73
|
-
};
|
|
74
|
-
// ---------------------------------------------------------------------------
|
|
75
|
-
// Dispatch
|
|
76
|
-
// ---------------------------------------------------------------------------
|
|
94
|
+
// ---- Commands that do NOT need provider detection --------------------------
|
|
95
|
+
if (args[0] === 'login') {
|
|
96
|
+
process.exit(await runLogin(out, args[1]));
|
|
97
|
+
}
|
|
77
98
|
if (args[0] === 'doctor') {
|
|
78
99
|
process.exit(await runDoctor(out));
|
|
79
100
|
}
|
|
80
101
|
if (args[0] === 'cost') {
|
|
81
102
|
process.exit(await runCost(cwd, out));
|
|
82
103
|
}
|
|
104
|
+
// ---- One-shot run ----------------------------------------------------------
|
|
83
105
|
if (args[0] === 'run') {
|
|
84
106
|
const taskParts = args.slice(1);
|
|
85
107
|
if (taskParts.length === 0) {
|
|
86
108
|
process.stderr.write('myshell-tools run: expected a task description\n');
|
|
87
109
|
process.exit(1);
|
|
88
110
|
}
|
|
89
|
-
const
|
|
90
|
-
const
|
|
91
|
-
const code = await runTask(task, deps, out, ac.signal);
|
|
111
|
+
const deps = await buildDeps(cwd);
|
|
112
|
+
const code = await runTask(taskParts.join(' '), deps, out, new AbortController().signal);
|
|
92
113
|
process.exit(code);
|
|
93
114
|
}
|
|
94
|
-
|
|
115
|
+
// ---- Interactive Menu (default — sessions-first control panel) ------------
|
|
116
|
+
if (args.length === 0) {
|
|
117
|
+
const spinner = createSpinner(out);
|
|
118
|
+
spinner.start('Detecting providers…');
|
|
119
|
+
const [providers, env, config] = await Promise.all([
|
|
120
|
+
buildProviders(cwd),
|
|
121
|
+
detectEnvironment(),
|
|
122
|
+
loadConfig(),
|
|
123
|
+
]);
|
|
124
|
+
spinner.stop();
|
|
125
|
+
const store = createFileConversationStore({ clock: systemClock });
|
|
126
|
+
const ledger = createLedger({ cwd });
|
|
127
|
+
const menuCtx = {
|
|
128
|
+
version,
|
|
129
|
+
clock: systemClock,
|
|
130
|
+
ledger,
|
|
131
|
+
providers,
|
|
132
|
+
env,
|
|
133
|
+
store,
|
|
134
|
+
config,
|
|
135
|
+
cwd,
|
|
136
|
+
sandbox: 'workspace-write',
|
|
137
|
+
timeoutMs: 120000,
|
|
138
|
+
};
|
|
139
|
+
await startMenu(menuCtx, out);
|
|
140
|
+
process.exit(0);
|
|
141
|
+
}
|
|
142
|
+
// ---- Interactive REPL (legacy subcommand) ----------------------------------
|
|
143
|
+
if (args[0] === 'repl') {
|
|
144
|
+
out.write(banner(version, out.color) + '\n');
|
|
145
|
+
const spinner = createSpinner(out);
|
|
146
|
+
spinner.start('Detecting providers…');
|
|
147
|
+
const deps = await buildDeps(cwd);
|
|
148
|
+
spinner.stop();
|
|
149
|
+
out.write(welcome(deps, out.color) + '\n\n');
|
|
95
150
|
await startRepl(deps, out);
|
|
96
151
|
process.exit(0);
|
|
97
152
|
}
|
|
98
|
-
// Unknown command
|
|
153
|
+
// ---- Unknown command -------------------------------------------------------
|
|
99
154
|
process.stderr.write(`myshell-tools: unknown command "${args[0] ?? ''}"\nRun myshell-tools --help for usage.\n`);
|
|
100
155
|
process.exit(1);
|
|
101
156
|
}
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,9 @@
|
|
|
5
5
|
* an honest, human-readable report to an OutputSink. All displayed data comes
|
|
6
6
|
* from real detection results — no fabricated values.
|
|
7
7
|
*
|
|
8
|
-
* Honesty contract: authentication status
|
|
9
|
-
*
|
|
8
|
+
* Honesty contract: authentication status is based on real CLI probes
|
|
9
|
+
* (`claude auth status`, `codex login status`). Plan labels are only shown
|
|
10
|
+
* when the CLI output clearly provides them; plan is never fabricated.
|
|
10
11
|
*/
|
|
11
12
|
import type { OutputSink } from '../interface/render.js';
|
|
12
13
|
import type { EnvironmentStatus } from '../providers/detect.js';
|
package/dist/commands/doctor.js
CHANGED
|
@@ -5,8 +5,9 @@
|
|
|
5
5
|
* an honest, human-readable report to an OutputSink. All displayed data comes
|
|
6
6
|
* from real detection results — no fabricated values.
|
|
7
7
|
*
|
|
8
|
-
* Honesty contract: authentication status
|
|
9
|
-
*
|
|
8
|
+
* Honesty contract: authentication status is based on real CLI probes
|
|
9
|
+
* (`claude auth status`, `codex login status`). Plan labels are only shown
|
|
10
|
+
* when the CLI output clearly provides them; plan is never fabricated.
|
|
10
11
|
*/
|
|
11
12
|
import { access, mkdir, writeFile, rm } from 'node:fs/promises';
|
|
12
13
|
import { join } from 'node:path';
|
|
@@ -48,9 +49,12 @@ export function buildDoctorReport(env, extras, color) {
|
|
|
48
49
|
if (ps.installed) {
|
|
49
50
|
const versionStr = ps.version !== null ? ps.version : 'unknown';
|
|
50
51
|
lines.push(` ${green('✓', color)} ${bold(ps.id, color)} — installed, version: ${versionStr}`);
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
lines.push(` ${label('auth', color)}: ${
|
|
52
|
+
if (ps.authenticated) {
|
|
53
|
+
const planLabel = ps.plan !== null ? ` (${ps.plan})` : '';
|
|
54
|
+
lines.push(` ${label('auth', color)}: ${green('signed in', color)}${planLabel}`);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
lines.push(` ${label('auth', color)}: ${yellow('not signed in', color)} — run: myshell-tools login`);
|
|
54
58
|
}
|
|
55
59
|
}
|
|
56
60
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* src/commands/login.ts — `myshell-tools login [claude|codex]`.
|
|
3
|
+
*
|
|
4
|
+
* Frictionless authentication: rather than make the user remember each vendor's
|
|
5
|
+
* CLI auth command, we delegate to the provider's OWN OAuth flow and inherit the
|
|
6
|
+
* terminal so the browser/device sign-in works in place.
|
|
7
|
+
*
|
|
8
|
+
* Security: myshell-tools never sees, handles, or stores raw credentials. Each
|
|
9
|
+
* CLI manages its own tokens; we only trigger its login. (This is what keeps the
|
|
10
|
+
* "use your subscription, no API keys" model honest.)
|
|
11
|
+
*/
|
|
12
|
+
import type { OutputSink } from '../interface/render.js';
|
|
13
|
+
import type { ProviderId } from '../providers/port.js';
|
|
14
|
+
export declare function isProviderId(value: string): value is ProviderId;
|
|
15
|
+
/**
|
|
16
|
+
* Run the interactive sign-in flow for one provider (or all installed providers
|
|
17
|
+
* when no argument is given). Returns 0 on success, 1 only for an invalid
|
|
18
|
+
* argument — individual sign-in failures are reported but do not fail the command.
|
|
19
|
+
*/
|
|
20
|
+
export declare function runLogin(out: OutputSink, providerArg?: string): Promise<number>;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* src/commands/login.ts — `myshell-tools login [claude|codex]`.
|
|
3
|
+
*
|
|
4
|
+
* Frictionless authentication: rather than make the user remember each vendor's
|
|
5
|
+
* CLI auth command, we delegate to the provider's OWN OAuth flow and inherit the
|
|
6
|
+
* terminal so the browser/device sign-in works in place.
|
|
7
|
+
*
|
|
8
|
+
* Security: myshell-tools never sees, handles, or stores raw credentials. Each
|
|
9
|
+
* CLI manages its own tokens; we only trigger its login. (This is what keeps the
|
|
10
|
+
* "use your subscription, no API keys" model honest.)
|
|
11
|
+
*/
|
|
12
|
+
import { execa } from 'execa';
|
|
13
|
+
import { detectProvider, getInstallCommand } from '../providers/detect.js';
|
|
14
|
+
import { bold, dim, green, red } from '../ui/theme.js';
|
|
15
|
+
/** Each provider's interactive sign-in command. */
|
|
16
|
+
const LOGIN_COMMAND = {
|
|
17
|
+
claude: { bin: 'claude', args: ['auth', 'login'] },
|
|
18
|
+
codex: { bin: 'codex', args: ['login'] },
|
|
19
|
+
};
|
|
20
|
+
export function isProviderId(value) {
|
|
21
|
+
return value === 'claude' || value === 'codex';
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Run the interactive sign-in flow for one provider (or all installed providers
|
|
25
|
+
* when no argument is given). Returns 0 on success, 1 only for an invalid
|
|
26
|
+
* argument — individual sign-in failures are reported but do not fail the command.
|
|
27
|
+
*/
|
|
28
|
+
export async function runLogin(out, providerArg) {
|
|
29
|
+
let targets;
|
|
30
|
+
if (providerArg !== undefined) {
|
|
31
|
+
if (!isProviderId(providerArg)) {
|
|
32
|
+
out.write(red(`Unknown provider "${providerArg}". Use: claude or codex.\n`, out.color));
|
|
33
|
+
return 1;
|
|
34
|
+
}
|
|
35
|
+
targets = [providerArg];
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
targets = ['claude', 'codex'];
|
|
39
|
+
}
|
|
40
|
+
for (const id of targets) {
|
|
41
|
+
const status = await detectProvider(id);
|
|
42
|
+
if (!status.installed) {
|
|
43
|
+
out.write(dim(`${id}: not installed — skipping. Install with: ${getInstallCommand(id)}\n`, out.color));
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
out.write(bold(`\nSigning in to ${id} — a browser window may open…\n`, out.color));
|
|
47
|
+
const { bin, args } = LOGIN_COMMAND[id];
|
|
48
|
+
// stdio:'inherit' hands the terminal to the provider CLI so its OAuth/device
|
|
49
|
+
// flow runs in place. reject:false so we report rather than throw.
|
|
50
|
+
const result = await execa(bin, [...args], { stdio: 'inherit', reject: false });
|
|
51
|
+
if (result.exitCode === 0) {
|
|
52
|
+
out.write(green(`✓ ${id} sign-in complete.\n`, out.color));
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
out.write(red(`✗ ${id} sign-in did not complete (exit ${result.exitCode ?? 'unknown'}).\n`, out.color));
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return 0;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=login.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAG9B,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAEvD,mDAAmD;AACnD,MAAM,aAAa,GAAmF;IACpG,MAAM,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAClD,KAAK,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;CACzC,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,OAAO,CAAC;AACjD,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,GAAe,EAAE,WAAoB;IAClE,IAAI,OAAqB,CAAC;IAC1B,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/B,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,WAAW,4BAA4B,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YACxF,OAAO,CAAC,CAAC;QACX,CAAC;QACD,OAAO,GAAG,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,GAAG,CAAC,KAAK,CACP,GAAG,CAAC,GAAG,EAAE,6CAA6C,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAC5F,CAAC;YACF,SAAS;QACX,CAAC;QAED,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,EAAE,iCAAiC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACnF,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;QACxC,6EAA6E;QAC7E,mEAAmE;QACnE,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAEhF,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,sBAAsB,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,KAAK,CACP,GAAG,CAAC,KAAK,EAAE,mCAAmC,MAAM,CAAC,QAAQ,IAAI,SAAS,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAC7F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAC;AACX,CAAC"}
|
package/dist/core/orchestrate.js
CHANGED
|
@@ -103,6 +103,12 @@ export async function* orchestrate(task, deps, signal) {
|
|
|
103
103
|
let attempts = 0;
|
|
104
104
|
let totalCostUsd = 0;
|
|
105
105
|
let lastOutput = '';
|
|
106
|
+
/**
|
|
107
|
+
* Track which attempt indices have already been reviewed so that re-runs
|
|
108
|
+
* (e.g. after a revise verdict) are not reviewed a second time and we
|
|
109
|
+
* cannot enter an infinite review loop.
|
|
110
|
+
*/
|
|
111
|
+
const reviewedAttempts = new Set();
|
|
106
112
|
// -------------------------------------------------------------------------
|
|
107
113
|
// (f) Main orchestration loop
|
|
108
114
|
// -------------------------------------------------------------------------
|
|
@@ -252,16 +258,22 @@ export async function* orchestrate(task, deps, signal) {
|
|
|
252
258
|
break mainLoop; // already at manager; emit failing final below
|
|
253
259
|
}
|
|
254
260
|
}
|
|
255
|
-
// 2) Cross-vendor review for
|
|
256
|
-
|
|
261
|
+
// 2) Cross-vendor review for high/critical risk or needsReview — any tier
|
|
262
|
+
// Guard: each attempt is reviewed at most once (prevents infinite loops).
|
|
263
|
+
// Guard: skip review if the only available reviewer is the same vendor
|
|
264
|
+
// (cross-vendor review is required; same-vendor-only → skip).
|
|
265
|
+
if (shouldReview(classification, assessment) && !reviewedAttempts.has(attempts)) {
|
|
257
266
|
const reviewerId = pickReviewer(available, decision.provider);
|
|
258
|
-
|
|
267
|
+
// Only proceed with a DIFFERENT-vendor reviewer (cross-vendor requirement).
|
|
268
|
+
const reviewerProvider = reviewerId !== null && reviewerId !== decision.provider
|
|
269
|
+
? deps.providers[reviewerId]
|
|
270
|
+
: undefined;
|
|
259
271
|
if (reviewerId !== null && reviewerProvider !== undefined) {
|
|
260
|
-
|
|
272
|
+
reviewedAttempts.add(attempts);
|
|
261
273
|
yield {
|
|
262
274
|
type: 'notice',
|
|
263
275
|
level: 'info',
|
|
264
|
-
message: `Review by ${reviewerId} (
|
|
276
|
+
message: `Review by ${reviewerId} (cross-vendor)`,
|
|
265
277
|
};
|
|
266
278
|
// Route reviewer at manager tier
|
|
267
279
|
const reviewDecision = route('manager', [reviewerId], deps.policy);
|
|
@@ -365,33 +377,73 @@ export async function* orchestrate(task, deps, signal) {
|
|
|
365
377
|
};
|
|
366
378
|
// Parse verdict and act on it
|
|
367
379
|
const verdict = parseReviewVerdict(reviewText ?? '');
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
380
|
+
// Risk-indexed fail-open: when parsing failed (verdict.parsed === false)
|
|
381
|
+
// AND the task is high/critical risk, do NOT silently auto-approve —
|
|
382
|
+
// escalate (or warn if already at manager) rather than letting
|
|
383
|
+
// unparseable output pass as approved.
|
|
384
|
+
if (!verdict.parsed && (classification.risk === 'high' || classification.risk === 'critical')) {
|
|
385
|
+
if (currentTier !== 'manager') {
|
|
386
|
+
yield {
|
|
387
|
+
type: 'notice',
|
|
388
|
+
level: 'warn',
|
|
389
|
+
message: 'review inconclusive — not auto-approving',
|
|
390
|
+
};
|
|
391
|
+
yield { type: 'escalate', from: currentTier, to: 'manager', reason: 'review inconclusive' };
|
|
392
|
+
currentTier = 'manager';
|
|
393
|
+
continue mainLoop;
|
|
394
|
+
}
|
|
395
|
+
else {
|
|
396
|
+
// Already at manager (top tier): a high/critical-risk review came back
|
|
397
|
+
// inconclusive and there is no higher tier to escalate to. Do NOT ship
|
|
398
|
+
// it as a clean success — surface the inconclusive result honestly.
|
|
399
|
+
yield {
|
|
400
|
+
type: 'notice',
|
|
401
|
+
level: 'warn',
|
|
402
|
+
message: 'review inconclusive — not auto-approving',
|
|
403
|
+
};
|
|
404
|
+
yield {
|
|
405
|
+
type: 'final',
|
|
406
|
+
success: false,
|
|
407
|
+
output: lastOutput,
|
|
408
|
+
tier: currentTier,
|
|
409
|
+
totalCostUsd,
|
|
410
|
+
sessionId: deps.session.id,
|
|
411
|
+
attempts,
|
|
412
|
+
};
|
|
413
|
+
return;
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
else {
|
|
374
417
|
yield {
|
|
375
|
-
type: '
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
tier: currentTier,
|
|
379
|
-
totalCostUsd,
|
|
380
|
-
sessionId: deps.session.id,
|
|
381
|
-
attempts,
|
|
418
|
+
type: 'notice',
|
|
419
|
+
level: 'info',
|
|
420
|
+
message: `Review verdict: ${verdict.verdict}`,
|
|
382
421
|
};
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
422
|
+
if (verdict.verdict === 'approve') {
|
|
423
|
+
yield {
|
|
424
|
+
type: 'final',
|
|
425
|
+
success: true,
|
|
426
|
+
output: lastOutput,
|
|
427
|
+
tier: currentTier,
|
|
428
|
+
totalCostUsd,
|
|
429
|
+
sessionId: deps.session.id,
|
|
430
|
+
attempts,
|
|
431
|
+
};
|
|
432
|
+
return;
|
|
433
|
+
}
|
|
434
|
+
if (verdict.verdict === 'revise') {
|
|
435
|
+
// Retry current tier with reviewer's notes
|
|
436
|
+
managerNotes = verdict.notes;
|
|
437
|
+
continue mainLoop;
|
|
438
|
+
}
|
|
439
|
+
// verdict === 'escalate'
|
|
440
|
+
const escalateTo = nextTierUp(currentTier);
|
|
441
|
+
if (escalateTo !== null) {
|
|
442
|
+
yield { type: 'escalate', from: currentTier, to: escalateTo, reason: 'reviewer escalation' };
|
|
443
|
+
currentTier = escalateTo;
|
|
444
|
+
}
|
|
389
445
|
continue mainLoop;
|
|
390
446
|
}
|
|
391
|
-
// verdict === 'escalate'
|
|
392
|
-
yield { type: 'escalate', from: 'ic', to: 'manager', reason: 'reviewer escalation' };
|
|
393
|
-
currentTier = 'manager';
|
|
394
|
-
continue mainLoop;
|
|
395
447
|
}
|
|
396
448
|
}
|
|
397
449
|
// 3) Confidence-based escalation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrate.js","sourceRoot":"","sources":["../../src/core/orchestrate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"orchestrate.js","sourceRoot":"","sources":["../../src/core/orchestrate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEpE,8EAA8E;AAC9E,+DAA+D;AAC/D,8EAA8E;AAE9E,SAAS,YAAY,CAAC,cAA8B,EAAE,UAAsB;IAC1E,OAAO,CACL,cAAc,CAAC,IAAI,KAAK,MAAM;QAC9B,cAAc,CAAC,IAAI,KAAK,UAAU;QAClC,UAAU,CAAC,WAAW,KAAK,IAAI,CAChC,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,WAAW,CAChC,IAAY,EACZ,IAAqB,EACrB,MAAmB;IAEnB,4EAA4E;IAC5E,wBAAwB;IACxB,4EAA4E;IAC5E,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC;IAE7C,4EAA4E;IAC5E,kCAAkC;IAClC,4EAA4E;IAC5E,MAAM,SAAS,GAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAwC,CAAC,MAAM,CAC1F,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,SAAS,CACzB,CAAC;IAElB,4EAA4E;IAC5E,wBAAwB;IACxB,4EAA4E;IAC5E,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM;YACJ,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,OAAO;YACd,OAAO,EACL,6EAA6E;gBAC7E,kCAAkC;SACrC,CAAC;QACF,MAAM;YACJ,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,yBAAyB;YACjC,IAAI,EAAE,cAAc,CAAC,IAAI;YACzB,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;YAC1B,QAAQ,EAAE,CAAC;SACZ,CAAC;QACF,OAAO;IACT,CAAC;IAED,4EAA4E;IAC5E,gEAAgE;IAChE,4EAA4E;IAC5E,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACxB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;QAC9B,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,4EAA4E;IAC5E,iBAAiB;IACjB,4EAA4E;IAC5E,IAAI,WAAW,GAAS,cAAc,CAAC,IAAI,CAAC;IAC5C,IAAI,YAAgC,CAAC;IACrC,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB;;;;OAIG;IACH,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE3C,4EAA4E;IAC5E,8BAA8B;IAC9B,4EAA4E;IAC5E,QAAQ,EAAE,OAAO,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QACpD,QAAQ,EAAE,CAAC;QAEX,iCAAiC;QACjC,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAE5D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM;gBACJ,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,OAAO;gBACd,OAAO,EAAE,aAAa,QAAQ,CAAC,QAAQ,iEAAiE;aACzG,CAAC;YACF,MAAM,QAAQ,CAAC;QACjB,CAAC;QAED,qEAAqE;QACrE,MAAM,MAAM,GACV,WAAW,KAAK,IAAI,IAAI,YAAY,KAAK,SAAS;YAChD,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,EAAE,YAAY,CAAC;YAC9C,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAErC,2BAA2B;QAC3B,MAAM;YACJ,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,OAAO,EAAE,QAAQ;SAClB,CAAC;QAEF,8CAA8C;QAC9C,MAAM,GAAG,GAAoB;YAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,MAAM;YACN,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAE/B,IAAI,SAA6B,CAAC;QAClC,IAAI,OAA6B,CAAC;QAClC,IAAI,KAAwB,CAAC;QAC7B,IAAI,eAAmC,CAAC;QAExC,yCAAyC;QACzC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;YAC9D,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,uCAAuC;gBAC/C,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,YAAY;gBACZ,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC1B,QAAQ;aACT,CAAC;YACF,OAAO;QACT,CAAC;QAED,iCAAiC;QACjC,IAAI,KAAK,EAAE,MAAM,EAAE,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;YACjD,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YAEjE,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACvB,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC;gBACpB,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBAClD,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;gBACnB,CAAC;gBACD,IAAI,EAAE,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC7B,eAAe,GAAG,EAAE,CAAC,OAAO,CAAC;gBAC/B,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC/B,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC;YACrB,CAAC;iBAAM,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACtD,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;YACnB,CAAC;YAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;gBAC9D,MAAM;oBACJ,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,qBAAqB;oBAC7B,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,YAAY;oBACZ,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;oBAC1B,QAAQ;iBACT,CAAC;gBACF,OAAO;YACT,CAAC;QACH,CAAC;QAED,kCAAkC;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QAC5C,MAAM,OAAO,GAAG,OAAO,IAAI,IAAI,CAAC;QAEhC,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QACnE,MAAM,GAAG,GACP,eAAe;YACf,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS;gBAC3C,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC;gBAC/D,CAAC,CAAC,CAAC,CAAC,CAAC;QACT,YAAY,IAAI,GAAG,CAAC;QAEpB,wBAAwB;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QAE3C,2BAA2B;QAC3B,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACvB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YAC9B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;YAC1B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YACzB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,WAAW,EAAE,KAAK,EAAE,WAAW,IAAI,CAAC;YACpC,YAAY,EAAE,KAAK,EAAE,YAAY,IAAI,CAAC;YACtC,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,IAAI,CAAC;YAChD,GAAG;YACH,UAAU;YACV,OAAO;SACR,CAAC,CAAC;QAEH,yCAAyC;QACzC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YACxB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YAC9B,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,SAAS,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;YAC9C,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,OAAO,EAAE,GAAG;YACZ,UAAU;SACX,CAAC,CAAC;QAEH,0BAA0B;QAC1B,MAAM;YACJ,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,OAAO;YACP,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,OAAO,EAAE,GAAG;YACZ,UAAU;SACX,CAAC;QAEF,UAAU,GAAG,SAAS,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QAEnD,0EAA0E;QAC1E,gBAAgB;QAChB,0EAA0E;QAE1E,uEAAuE;QACvE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;gBAC1F,WAAW,GAAG,SAAS,CAAC;gBACxB,SAAS,QAAQ,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,CAAC,CAAC,+CAA+C;YACjE,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,6EAA6E;QAC7E,0EAA0E;QAC1E,wEAAwE;QACxE,IAAI,YAAY,CAAC,cAAc,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChF,MAAM,UAAU,GAAG,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC9D,4EAA4E;YAC5E,MAAM,gBAAgB,GACpB,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,QAAQ,CAAC,QAAQ;gBACrD,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;gBAC5B,CAAC,CAAC,SAAS,CAAC;YAEhB,IAAI,UAAU,KAAK,IAAI,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;gBAC1D,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC/B,MAAM;oBACJ,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE,aAAa,UAAU,iBAAiB;iBAClD,CAAC;gBAEF,iCAAiC;gBACjC,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnE,MAAM,YAAY,GAAG,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;gBAEzD,kCAAkC;gBAClC,MAAM;oBACJ,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,SAAiB;oBACvB,QAAQ,EAAE,UAAU;oBACpB,KAAK,EAAE,cAAc,CAAC,KAAK;oBAC3B,OAAO,EAAE,QAAQ;iBAClB,CAAC;gBAEF,MAAM,SAAS,GAAoB;oBACjC,KAAK,EAAE,cAAc,CAAC,KAAK;oBAC3B,MAAM,EAAE,YAAY;oBACpB,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;iBAC1B,CAAC;gBACF,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;gBAErC,IAAI,UAA8B,CAAC;gBACnC,IAAI,aAAmC,CAAC;gBACxC,IAAI,WAA8B,CAAC;gBACnC,IAAI,qBAAyC,CAAC;gBAE9C,wCAAwC;gBACxC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;oBAC9D,MAAM;wBACJ,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE,KAAK;wBACd,MAAM,EAAE,qBAAqB;wBAC7B,IAAI,EAAE,WAAW;wBACjB,YAAY;wBACZ,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;wBAC1B,QAAQ;qBACT,CAAC;oBACF,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;oBAChE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;oBAE9D,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBACxB,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC;wBACtB,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;4BACzD,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC;wBAC1B,CAAC;wBACD,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;4BAC9B,qBAAqB,GAAG,GAAG,CAAC,OAAO,CAAC;wBACtC,CAAC;oBACH,CAAC;yBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBAChC,aAAa,GAAG,GAAG,CAAC,KAAK,CAAC;oBAC5B,CAAC;yBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;wBAC7D,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC;oBAC1B,CAAC;oBAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACnB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;wBAC9D,MAAM;4BACJ,IAAI,EAAE,OAAO;4BACb,OAAO,EAAE,KAAK;4BACd,MAAM,EAAE,qBAAqB;4BAC7B,IAAI,EAAE,WAAW;4BACjB,YAAY;4BACZ,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;4BAC1B,QAAQ;yBACT,CAAC;wBACF,OAAO;oBACT,CAAC;gBACH,CAAC;gBAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC;gBACxD,MAAM,aAAa,GAAG,aAAa,IAAI,IAAI,CAAC;gBAE5C,MAAM,aAAa,GAAG,eAAe,CAAC,UAAU,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;gBACxE,MAAM,SAAS,GACb,qBAAqB;oBACrB,CAAC,WAAW,KAAK,SAAS,IAAI,aAAa,KAAK,SAAS;wBACvD,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,YAAY,EAAE,aAAa,CAAC;wBACjF,CAAC,CAAC,CAAC,CAAC,CAAC;gBACT,YAAY,IAAI,SAAS,CAAC;gBAE1B,gCAAgC;gBAChC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;oBACvB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;oBAC9B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;oBAC1B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;oBACzB,QAAQ,EAAE,UAAU;oBACpB,KAAK,EAAE,cAAc,CAAC,KAAK;oBAC3B,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,WAAW,EAAE,WAAW,IAAI,CAAC;oBAC1C,YAAY,EAAE,WAAW,EAAE,YAAY,IAAI,CAAC;oBAC5C,iBAAiB,EAAE,WAAW,EAAE,iBAAiB,IAAI,CAAC;oBACtD,GAAG,EAAE,SAAS;oBACd,UAAU,EAAE,gBAAgB;oBAC5B,OAAO,EAAE,aAAa;iBACvB,CAAC,CAAC;gBAEH,+BAA+B;gBAC/B,MAAM;oBACJ,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,SAAiB;oBACvB,OAAO,EAAE,aAAa;oBACtB,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,SAAS;oBAClB,UAAU,EAAE,gBAAgB;iBAC7B,CAAC;gBAEF,8BAA8B;gBAC9B,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;gBAErD,yEAAyE;gBACzE,qEAAqE;gBACrE,+DAA+D;gBAC/D,uCAAuC;gBACvC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,KAAK,MAAM,IAAI,cAAc,CAAC,IAAI,KAAK,UAAU,CAAC,EAAE,CAAC;oBAC9F,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;wBAC9B,MAAM;4BACJ,IAAI,EAAE,QAAQ;4BACd,KAAK,EAAE,MAAM;4BACb,OAAO,EAAE,0CAA0C;yBACpD,CAAC;wBACF,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC;wBAC5F,WAAW,GAAG,SAAS,CAAC;wBACxB,SAAS,QAAQ,CAAC;oBACpB,CAAC;yBAAM,CAAC;wBACN,uEAAuE;wBACvE,uEAAuE;wBACvE,oEAAoE;wBACpE,MAAM;4BACJ,IAAI,EAAE,QAAQ;4BACd,KAAK,EAAE,MAAM;4BACb,OAAO,EAAE,0CAA0C;yBACpD,CAAC;wBACF,MAAM;4BACJ,IAAI,EAAE,OAAO;4BACb,OAAO,EAAE,KAAK;4BACd,MAAM,EAAE,UAAU;4BAClB,IAAI,EAAE,WAAW;4BACjB,YAAY;4BACZ,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;4BAC1B,QAAQ;yBACT,CAAC;wBACF,OAAO;oBACT,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM;wBACJ,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,MAAM;wBACb,OAAO,EAAE,mBAAmB,OAAO,CAAC,OAAO,EAAE;qBAC9C,CAAC;oBAEF,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;wBAClC,MAAM;4BACJ,IAAI,EAAE,OAAO;4BACb,OAAO,EAAE,IAAI;4BACb,MAAM,EAAE,UAAU;4BAClB,IAAI,EAAE,WAAW;4BACjB,YAAY;4BACZ,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;4BAC1B,QAAQ;yBACT,CAAC;wBACF,OAAO;oBACT,CAAC;oBAED,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;wBACjC,2CAA2C;wBAC3C,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC;wBAC7B,SAAS,QAAQ,CAAC;oBACpB,CAAC;oBAED,yBAAyB;oBACzB,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;oBAC3C,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;wBACxB,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC;wBAC7F,WAAW,GAAG,UAAU,CAAC;oBAC3B,CAAC;oBACD,SAAS,QAAQ,CAAC;gBACpB,CAAC;YACH,CAAC;QACH,CAAC;QAED,iCAAiC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC3E,MAAM,OAAO,GACX,UAAU,CAAC,QAAQ;YACnB,CAAC,UAAU,CAAC,UAAU,KAAK,IAAI,IAAI,UAAU,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;QAExE,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;QACzC,IAAI,OAAO,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACjC,MAAM,cAAc,GAClB,UAAU,CAAC,MAAM,KAAK,0BAA0B;gBAChD,UAAU,CAAC,MAAM,KAAK,wBAAwB;gBAC5C,CAAC,CAAC,UAAU,CAAC,MAAM;gBACnB,CAAC,CAAC,gBAAgB,CAAC;YACvB,MAAM;gBACJ,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,QAAQ;gBACZ,MAAM,EAAE,cAAc;aACvB,CAAC;YACF,WAAW,GAAG,QAAQ,CAAC;YACvB,SAAS,QAAQ,CAAC;QACpB,CAAC;QAED,oCAAoC;QACpC,MAAM;YACJ,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,UAAU;YAClB,IAAI,EAAE,WAAW;YACjB,YAAY;YACZ,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;YAC1B,QAAQ;SACT,CAAC;QACF,OAAO;IACT,CAAC;IAED,yCAAyC;IACzC,MAAM;QACJ,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,UAAU;QAClB,IAAI,EAAE,WAAW;QACjB,YAAY;QACZ,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;QAC1B,QAAQ;KACT,CAAC;AACJ,CAAC"}
|
package/dist/core/policy.d.ts
CHANGED
|
@@ -7,3 +7,13 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import type { Policy } from './types.js';
|
|
9
9
|
export declare const DEFAULT_POLICY: Policy;
|
|
10
|
+
/**
|
|
11
|
+
* Named policy presets selectable from the Settings screen.
|
|
12
|
+
*
|
|
13
|
+
* - cost-saver : raises escalation thresholds so it rarely escalates; stays
|
|
14
|
+
* on cheaper worker/IC tiers as long as possible.
|
|
15
|
+
* - balanced : identical to DEFAULT_POLICY; good for most work.
|
|
16
|
+
* - quality-first: lowers escalation thresholds so it escalates sooner and
|
|
17
|
+
* reviews more; prioritises quality over token cost.
|
|
18
|
+
*/
|
|
19
|
+
export declare const POLICY_PRESETS: Record<'cost-saver' | 'balanced' | 'quality-first', Policy>;
|