looply-cli 0.5.3 → 0.5.4

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/dist/.src-hash +1 -1
  2. package/dist/agent-exec.d.ts +10 -5
  3. package/dist/agent-exec.d.ts.map +1 -1
  4. package/dist/agent-exec.js.map +1 -1
  5. package/dist/autonomy-tick.d.ts.map +1 -1
  6. package/dist/autonomy-tick.js +23 -0
  7. package/dist/autonomy-tick.js.map +1 -1
  8. package/dist/bin.d.ts.map +1 -1
  9. package/dist/bin.js +110 -82
  10. package/dist/bin.js.map +1 -1
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js +24 -1
  13. package/dist/config.js.map +1 -1
  14. package/dist/daemon-cmd.d.ts.map +1 -1
  15. package/dist/daemon-cmd.js +13 -0
  16. package/dist/daemon-cmd.js.map +1 -1
  17. package/dist/daemon.d.ts +15 -1
  18. package/dist/daemon.d.ts.map +1 -1
  19. package/dist/daemon.js +21 -3
  20. package/dist/daemon.js.map +1 -1
  21. package/dist/init-detect.d.ts.map +1 -1
  22. package/dist/init-detect.js +1 -1
  23. package/dist/init-detect.js.map +1 -1
  24. package/dist/model-routing.d.ts +52 -7
  25. package/dist/model-routing.d.ts.map +1 -1
  26. package/dist/model-routing.js +84 -14
  27. package/dist/model-routing.js.map +1 -1
  28. package/dist/model-settings.d.ts +67 -0
  29. package/dist/model-settings.d.ts.map +1 -0
  30. package/dist/model-settings.js +177 -0
  31. package/dist/model-settings.js.map +1 -0
  32. package/dist/model-transport.d.ts +8 -0
  33. package/dist/model-transport.d.ts.map +1 -1
  34. package/dist/model-transport.js +6 -3
  35. package/dist/model-transport.js.map +1 -1
  36. package/dist/provider-cmd.d.ts +13 -4
  37. package/dist/provider-cmd.d.ts.map +1 -1
  38. package/dist/provider-cmd.js +111 -11
  39. package/dist/provider-cmd.js.map +1 -1
  40. package/dist/provider-ready.d.ts +15 -2
  41. package/dist/provider-ready.d.ts.map +1 -1
  42. package/dist/provider-ready.js +46 -2
  43. package/dist/provider-ready.js.map +1 -1
  44. package/dist/providers.d.ts.map +1 -1
  45. package/dist/providers.js +4 -0
  46. package/dist/providers.js.map +1 -1
  47. package/dist/run-launcher.d.ts +13 -0
  48. package/dist/run-launcher.d.ts.map +1 -1
  49. package/dist/run-launcher.js +27 -0
  50. package/dist/run-launcher.js.map +1 -1
  51. package/dist/server-client.d.ts +12 -2
  52. package/dist/server-client.d.ts.map +1 -1
  53. package/dist/server-client.js +8 -0
  54. package/dist/server-client.js.map +1 -1
  55. package/package.json +2 -2
@@ -28,14 +28,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
28
28
  exports.EFFORT_LEVELS = exports.MODEL_KEYS = exports.MODEL_ROLES = void 0;
29
29
  exports.isBrainOnlyModel = isBrainOnlyModel;
30
30
  exports.modelFor = modelFor;
31
+ exports.effortFor = effortFor;
32
+ exports.resolveRole = resolveRole;
31
33
  exports.modelArgs = modelArgs;
32
34
  exports.checkRoleModels = checkRoleModels;
35
+ const core_1 = require("@looply/core");
33
36
  /** The roles that drive a model, in the order a round meets them. */
34
37
  exports.MODEL_ROLES = ['implementer', 'verifier', 'scanner', 'brain'];
35
38
  /** The keys `agent.models` may carry: every role, plus the one that covers the rest. */
36
39
  exports.MODEL_KEYS = ['default', ...exports.MODEL_ROLES];
37
- /** `--effort`, as Claude Code spells it. Checked against `claude --help` on 2026-09-13. */
38
- exports.EFFORT_LEVELS = ['low', 'medium', 'high', 'xhigh', 'max'];
40
+ /**
41
+ * `--effort`, as Claude Code spells it. Checked against `claude --help` on
42
+ * 2026-09-13. Declared in core, so the server refuses exactly what this does.
43
+ */
44
+ exports.EFFORT_LEVELS = core_1.AGENT_EFFORTS;
39
45
  /**
40
46
  * Which model ids may only be the brain's.
41
47
  *
@@ -45,25 +51,89 @@ exports.EFFORT_LEVELS = ['low', 'medium', 'high', 'xhigh', 'max'];
45
51
  * one should not be able to step around a cost rule with a capital letter.
46
52
  */
47
53
  function isBrainOnlyModel(model) {
48
- return /fable/i.test(model);
54
+ return (0, core_1.isBrainOnlyModelId)(model);
49
55
  }
50
- /** The model a role runs under this configuration, or undefined to leave it to the provider. */
56
+ /** The model config.yaml names for a role, or undefined when it names none. */
51
57
  function modelFor(role, models) {
52
58
  return models?.[role] ?? models?.default;
53
59
  }
60
+ /**
61
+ * The effort config.yaml names for a role. `agent.effort` is either one level
62
+ * for every role (the original shape, still byte-compatible) or a map with an
63
+ * optional `default`.
64
+ */
65
+ function effortFor(role, effort) {
66
+ if (effort === undefined)
67
+ return undefined;
68
+ if (typeof effort === 'string')
69
+ return effort;
70
+ return effort[role] ?? effort.default;
71
+ }
72
+ /**
73
+ * The model and effort a role runs on the BUILT-IN provider, field by field:
74
+ *
75
+ * config.yaml > remote project settings > DEFAULT_AGENT_SETTINGS
76
+ *
77
+ * config.yaml wins because it is a person's decision written in the repository
78
+ * on the machine itself; remote settings (console, integrations) fill what the
79
+ * file leaves unsaid; the built-in table fills the rest. Model and effort are
80
+ * resolved independently, so a file naming only an effort still takes the
81
+ * remote or default model.
82
+ *
83
+ * ⚠️ A remote Fable model for a non-brain role is ignored here even though the
84
+ * validator refuses it at the API: the cache is a file on disk, and the rule
85
+ * is cheap to hold twice.
86
+ */
87
+ function resolveRole(role, spec, remote) {
88
+ const fallback = core_1.DEFAULT_AGENT_SETTINGS[role];
89
+ const fromRemote = remote?.[role];
90
+ let model;
91
+ let modelFrom;
92
+ const configured = modelFor(role, spec.models);
93
+ const remoteModel = fromRemote?.model;
94
+ if (configured !== undefined) {
95
+ model = configured;
96
+ modelFrom = 'config.yaml';
97
+ }
98
+ else if (remoteModel !== undefined && (role === 'brain' || !(0, core_1.isBrainOnlyModelId)(remoteModel))) {
99
+ model = remoteModel;
100
+ modelFrom = 'remote';
101
+ }
102
+ else {
103
+ model = fallback.model;
104
+ modelFrom = 'default';
105
+ }
106
+ let effort;
107
+ let effortFrom;
108
+ const configuredEffort = effortFor(role, spec.effort);
109
+ if (configuredEffort !== undefined) {
110
+ effort = configuredEffort;
111
+ effortFrom = 'config.yaml';
112
+ }
113
+ else if (fromRemote?.effort !== undefined) {
114
+ effort = fromRemote.effort;
115
+ effortFrom = 'remote';
116
+ }
117
+ else {
118
+ effort = fallback.effort;
119
+ effortFrom = 'default';
120
+ }
121
+ return { model, effort, modelFrom, effortFrom };
122
+ }
54
123
  /**
55
124
  * The arguments that put a role on its model, ready to splice into a Claude
56
- * Code command line. Empty when nothing is configured, so a project that says
57
- * nothing about models produces the byte-identical invocation it did before.
125
+ * Code command line.
126
+ *
127
+ * ⚠️ CHANGED DELIBERATELY: this used to be EMPTY when nothing was configured,
128
+ * so the provider's own default ran (whatever Claude Code happened to pick on
129
+ * that machine). Every built-in turn now names its model and effort — from
130
+ * config.yaml, the project's remote settings, or `DEFAULT_AGENT_SETTINGS` — so
131
+ * what a role runs is a Looply decision that `looply doctor` can print, not an
132
+ * accident of the machine. Only ever called on the built-in branch.
58
133
  */
59
- function modelArgs(role, spec) {
60
- const out = [];
61
- const model = modelFor(role, spec.models);
62
- if (model !== undefined)
63
- out.push('--model', model);
64
- if (spec.effort !== undefined)
65
- out.push('--effort', spec.effort);
66
- return out;
134
+ function modelArgs(role, spec, remote) {
135
+ const r = resolveRole(role, spec, remote);
136
+ return ['--model', r.model, '--effort', r.effort];
67
137
  }
68
138
  /**
69
139
  * Is this `agent.models` block one looply will drive?
@@ -1 +1 @@
1
- {"version":3,"file":"model-routing.js","sourceRoot":"","sources":["../src/model-routing.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;;;AA4BH,4CAEC;AAGD,4BAEC;AAOD,8BASC;AAWD,0CAiCC;AA7FD,qEAAqE;AACxD,QAAA,WAAW,GAAG,CAAC,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AAGpF,wFAAwF;AAC3E,QAAA,UAAU,GAAG,CAAC,SAAS,EAAE,GAAG,mBAAW,CAAU,CAAC;AAG/D,2FAA2F;AAC9E,QAAA,aAAa,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAU,CAAC;AAShF;;;;;;;GAOG;AACH,SAAgB,gBAAgB,CAAC,KAAa;IAC5C,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED,gGAAgG;AAChG,SAAgB,QAAQ,CAAC,IAAe,EAAE,MAA8B;IACtE,OAAO,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,OAAO,CAAC;AAC3C,CAAC;AAED;;;;GAIG;AACH,SAAgB,SAAS,CACvB,IAAe,EACf,IAA8C;IAE9C,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACpD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACjE,OAAO,GAAG,CAAC;AACb,CAAC;AAID;;;;;;GAMG;AACH,SAAgB,eAAe,CAAC,MAAkB;IAChD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,CAAE,kBAAgC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACrD,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,GAAG,EAAE,gBAAgB,GAAG,EAAE;gBAC1B,OAAO,EAAE,iBAAiB,GAAG,cAAc,kBAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;aACnE,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACrD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,gBAAgB,GAAG,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC;QAClF,CAAC;QACD,2EAA2E;QAC3E,8CAA8C;QAC9C,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,GAAG,EAAE,gBAAgB,GAAG,EAAE;gBAC1B,OAAO,EAAE,mCAAmC,KAAK,kCAAkC;aACpF,CAAC;QACJ,CAAC;QACD,IAAI,GAAG,KAAK,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,GAAG,EAAE,gBAAgB,GAAG,EAAE;gBAC1B,OAAO,EACL,SAAS,KAAK,yCAAyC;oBACvD,mFAAmF;oBACnF,2FAA2F;aAC9F,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"model-routing.js","sourceRoot":"","sources":["../src/model-routing.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ import { type AgentSettings } from '@looply/core';
2
+ import { type Effort, type RoleEfforts, type RoleModels } from './model-routing';
3
+ /**
4
+ * THE PROJECT'S REMOTE MODEL SETTINGS, AS THIS MACHINE LAST HEARD THEM.
5
+ *
6
+ * The server holds per-project model/effort choices (set from the console or
7
+ * by an integration). The standalone daemon pulls them on start and every few
8
+ * minutes and writes them HERE; every built-in model turn — a daemon-launched
9
+ * run, `looply run`, `scan`, `verify` — reads this file at launch time.
10
+ *
11
+ * Why a cached file rather than a field on a payload the run already fetches:
12
+ * a run may start with the server unreachable, and a machine that goes offline
13
+ * must keep running the models it was last told to — not silently fall back to
14
+ * the defaults mid-night. One writer (the daemon), many readers, and a reader
15
+ * that finds nothing, or something malformed, gets the defaults.
16
+ *
17
+ * The value is re-validated on every read with the same core rule the server
18
+ * applies on write, so a hand-edited or corrupted file cannot put a Fable
19
+ * model on an agent role or smuggle a flag into the command line.
20
+ */
21
+ export declare const AGENT_SETTINGS_FILE = "agent-settings.json";
22
+ /** How often the daemon asks the server. */
23
+ export declare const DEFAULT_AGENT_SETTINGS_POLL_MS: number;
24
+ export interface AgentSettingsCache {
25
+ /** Null means "back to defaults", which is an answer, not an absence. */
26
+ settings: AgentSettings | null;
27
+ /** When the server says the settings last changed. */
28
+ updatedAt: string | null;
29
+ /** When this machine last heard it. */
30
+ fetchedAt: string;
31
+ }
32
+ /** The cached answer, or null when there is none or it does not validate. */
33
+ export declare function readAgentSettingsCache(stateDir: string): AgentSettingsCache | null;
34
+ /** Atomic: a reader never sees half a file. */
35
+ export declare function writeAgentSettingsCache(stateDir: string, value: AgentSettingsCache): void;
36
+ /**
37
+ * The remote settings that apply to a project directory (a worktree resolves
38
+ * to its repository's shared state), or null. Never throws: a model turn must
39
+ * not fail because a cache could not be read — it runs the defaults instead.
40
+ */
41
+ export declare function remoteAgentSettingsFor(projectDir: string): AgentSettings | null;
42
+ export interface AgentSettingsPullDeps {
43
+ /** `GET /v1/projects/:id/agent-settings`. */
44
+ fetch(): Promise<unknown>;
45
+ stateDir: string;
46
+ log(line: string): void;
47
+ now(): number;
48
+ }
49
+ export type AgentSettingsPullResult = 'updated' | 'unchanged' | 'failed';
50
+ /**
51
+ * One pull: ask the server, and write the cache when the answer changed.
52
+ *
53
+ * A failure keeps whatever the cache holds — an outage must not reset a
54
+ * machine to defaults. Offline is reported by the heartbeat already; anything
55
+ * else (an older server without the route, a malformed answer) is said once
56
+ * per outage rather than every five minutes.
57
+ */
58
+ export declare function makeAgentSettingsPull(deps: AgentSettingsPullDeps): () => Promise<AgentSettingsPullResult>;
59
+ /**
60
+ * The lines `looply doctor` and `looply status` print: per role, the model and
61
+ * effort and where each came from.
62
+ */
63
+ export declare function describeModelRouting(spec: {
64
+ models?: RoleModels;
65
+ effort?: Effort | RoleEfforts;
66
+ }, builtIn: boolean, remote: AgentSettings | null): string[];
67
+ //# sourceMappingURL=model-settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-settings.d.ts","sourceRoot":"","sources":["../src/model-settings.ts"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAEzE,OAAO,EAA4B,KAAK,MAAM,EAAE,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG3G;;;;;;;;;;;;;;;;;GAiBG;AAEH,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AAEzD,4CAA4C;AAC5C,eAAO,MAAM,8BAA8B,QAAa,CAAC;AAEzD,MAAM,WAAW,kBAAkB;IACjC,yEAAyE;IACzE,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;IAC/B,sDAAsD;IACtD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,6EAA6E;AAC7E,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI,CAoBlF;AAED,+CAA+C;AAC/C,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAMzF;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAM/E;AAED,MAAM,WAAW,qBAAqB;IACpC,6CAA6C;IAC7C,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,GAAG,IAAI,MAAM,CAAC;CACf;AAED,MAAM,MAAM,uBAAuB,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEzE;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,OAAO,CAAC,uBAAuB,CAAC,CA4DzG;AAYD;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,CAAA;CAAE,EAC5D,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,aAAa,GAAG,IAAI,GAC3B,MAAM,EAAE,CAeV"}
@@ -0,0 +1,177 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_AGENT_SETTINGS_POLL_MS = exports.AGENT_SETTINGS_FILE = void 0;
4
+ exports.readAgentSettingsCache = readAgentSettingsCache;
5
+ exports.writeAgentSettingsCache = writeAgentSettingsCache;
6
+ exports.remoteAgentSettingsFor = remoteAgentSettingsFor;
7
+ exports.makeAgentSettingsPull = makeAgentSettingsPull;
8
+ exports.describeModelRouting = describeModelRouting;
9
+ const node_fs_1 = require("node:fs");
10
+ const node_path_1 = require("node:path");
11
+ const core_1 = require("@looply/core");
12
+ const git_driver_1 = require("./git-driver");
13
+ const model_routing_1 = require("./model-routing");
14
+ const server_client_1 = require("./server-client");
15
+ /**
16
+ * THE PROJECT'S REMOTE MODEL SETTINGS, AS THIS MACHINE LAST HEARD THEM.
17
+ *
18
+ * The server holds per-project model/effort choices (set from the console or
19
+ * by an integration). The standalone daemon pulls them on start and every few
20
+ * minutes and writes them HERE; every built-in model turn — a daemon-launched
21
+ * run, `looply run`, `scan`, `verify` — reads this file at launch time.
22
+ *
23
+ * Why a cached file rather than a field on a payload the run already fetches:
24
+ * a run may start with the server unreachable, and a machine that goes offline
25
+ * must keep running the models it was last told to — not silently fall back to
26
+ * the defaults mid-night. One writer (the daemon), many readers, and a reader
27
+ * that finds nothing, or something malformed, gets the defaults.
28
+ *
29
+ * The value is re-validated on every read with the same core rule the server
30
+ * applies on write, so a hand-edited or corrupted file cannot put a Fable
31
+ * model on an agent role or smuggle a flag into the command line.
32
+ */
33
+ exports.AGENT_SETTINGS_FILE = 'agent-settings.json';
34
+ /** How often the daemon asks the server. */
35
+ exports.DEFAULT_AGENT_SETTINGS_POLL_MS = 5 * 60_000;
36
+ /** The cached answer, or null when there is none or it does not validate. */
37
+ function readAgentSettingsCache(stateDir) {
38
+ let raw;
39
+ try {
40
+ raw = JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.join)(stateDir, exports.AGENT_SETTINGS_FILE), 'utf8'));
41
+ }
42
+ catch {
43
+ return null;
44
+ }
45
+ if (typeof raw !== 'object' || raw === null)
46
+ return null;
47
+ const r = raw;
48
+ let settings = null;
49
+ if (r['settings'] !== null && r['settings'] !== undefined) {
50
+ const v = (0, core_1.validateAgentSettings)(r['settings']);
51
+ if (!v.ok)
52
+ return null;
53
+ settings = v.settings;
54
+ }
55
+ return {
56
+ settings,
57
+ updatedAt: typeof r['updatedAt'] === 'string' ? r['updatedAt'] : null,
58
+ fetchedAt: typeof r['fetchedAt'] === 'string' ? r['fetchedAt'] : '',
59
+ };
60
+ }
61
+ /** Atomic: a reader never sees half a file. */
62
+ function writeAgentSettingsCache(stateDir, value) {
63
+ (0, node_fs_1.mkdirSync)(stateDir, { recursive: true });
64
+ const target = (0, node_path_1.join)(stateDir, exports.AGENT_SETTINGS_FILE);
65
+ const tmp = `${target}.${process.pid}.tmp`;
66
+ (0, node_fs_1.writeFileSync)(tmp, JSON.stringify(value, null, 2) + '\n', 'utf8');
67
+ (0, node_fs_1.renameSync)(tmp, target);
68
+ }
69
+ /**
70
+ * The remote settings that apply to a project directory (a worktree resolves
71
+ * to its repository's shared state), or null. Never throws: a model turn must
72
+ * not fail because a cache could not be read — it runs the defaults instead.
73
+ */
74
+ function remoteAgentSettingsFor(projectDir) {
75
+ try {
76
+ return readAgentSettingsCache((0, git_driver_1.projectStateDir)(projectDir))?.settings ?? null;
77
+ }
78
+ catch {
79
+ return null;
80
+ }
81
+ }
82
+ /**
83
+ * One pull: ask the server, and write the cache when the answer changed.
84
+ *
85
+ * A failure keeps whatever the cache holds — an outage must not reset a
86
+ * machine to defaults. Offline is reported by the heartbeat already; anything
87
+ * else (an older server without the route, a malformed answer) is said once
88
+ * per outage rather than every five minutes.
89
+ */
90
+ function makeAgentSettingsPull(deps) {
91
+ let failureReported = false;
92
+ const reportOnce = (why) => {
93
+ if (failureReported)
94
+ return;
95
+ failureReported = true;
96
+ deps.log(`models : could not refresh the project's model settings — ${why}`);
97
+ };
98
+ return async () => {
99
+ let body;
100
+ try {
101
+ body = await deps.fetch();
102
+ }
103
+ catch (e) {
104
+ if (!(e instanceof server_client_1.ServerError && (e.isOffline || e.isAuth)))
105
+ reportOnce(e.message);
106
+ return 'failed';
107
+ }
108
+ // A 200 is not an answer: a proxy page parses as a string. The envelope is
109
+ // checked before it is allowed to replace what the machine runs.
110
+ const b = body;
111
+ if (typeof b !== 'object' || b === null || !('settings' in b)) {
112
+ reportOnce('the server answered with something that is not a settings envelope');
113
+ return 'failed';
114
+ }
115
+ let settings = null;
116
+ if (b.settings !== null) {
117
+ const v = (0, core_1.validateAgentSettings)(b.settings);
118
+ if (!v.ok) {
119
+ reportOnce(`the server sent settings this build refuses (${v.key}: ${v.because})`);
120
+ return 'failed';
121
+ }
122
+ settings = v.settings;
123
+ }
124
+ const updatedAt = typeof b.updatedAt === 'string' ? b.updatedAt : null;
125
+ failureReported = false;
126
+ const before = readAgentSettingsCache(deps.stateDir);
127
+ if (before !== null &&
128
+ before.updatedAt === updatedAt &&
129
+ JSON.stringify(before.settings) === JSON.stringify(settings)) {
130
+ return 'unchanged';
131
+ }
132
+ try {
133
+ writeAgentSettingsCache(deps.stateDir, {
134
+ settings,
135
+ updatedAt,
136
+ fetchedAt: new Date(deps.now()).toISOString(),
137
+ });
138
+ }
139
+ catch (e) {
140
+ deps.log(`models : could not write the model settings cache (${e.message})`);
141
+ return 'failed';
142
+ }
143
+ deps.log(settings === null
144
+ ? 'models : project model settings are the defaults'
145
+ : `models : project model settings updated (${describeOverrides(settings)})`);
146
+ return 'updated';
147
+ };
148
+ }
149
+ function describeOverrides(s) {
150
+ const parts = [];
151
+ for (const role of model_routing_1.MODEL_ROLES) {
152
+ const r = s[role];
153
+ if (!r || (r.model === undefined && r.effort === undefined))
154
+ continue;
155
+ parts.push(`${role} ${[r.model, r.effort].filter((x) => x !== undefined).join(' ')}`);
156
+ }
157
+ return parts.length === 0 ? 'nothing overridden' : parts.join(', ');
158
+ }
159
+ /**
160
+ * The lines `looply doctor` and `looply status` print: per role, the model and
161
+ * effort and where each came from.
162
+ */
163
+ function describeModelRouting(spec, builtIn, remote) {
164
+ if (!builtIn) {
165
+ return [
166
+ 'models : a configured agent.command — Looply passes it no --model or --effort;',
167
+ ' the binary chooses its own model.',
168
+ ];
169
+ }
170
+ const lines = ['models : (built-in Claude Code; precedence config.yaml > remote > default)'];
171
+ for (const role of model_routing_1.MODEL_ROLES) {
172
+ const r = (0, model_routing_1.resolveRole)(role, spec, remote);
173
+ lines.push(` ${role.padEnd(11)} ${r.model} (${r.modelFrom}) · effort ${r.effort} (${r.effortFrom})`);
174
+ }
175
+ return lines;
176
+ }
177
+ //# sourceMappingURL=model-settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-settings.js","sourceRoot":"","sources":["../src/model-settings.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { type AgentInvoke, type AgentSpec } from './agent-exec';
3
3
  import { checkProviderAuth } from './provider-state';
4
4
  import { type ToolRole } from './tool-bridge';
5
5
  import type { OwnedChildren } from './owned-children';
6
+ import type { AgentSettings } from '@looply/core';
6
7
  import { type SiblingMount } from './sibling-repos';
7
8
  /**
8
9
  * THE MODEL RUNS HERE; THE MODEL'S TOOLS DO NOT.
@@ -79,6 +80,13 @@ export declare function mcpConfigJson(launch: McpLaunch): string;
79
80
  */
80
81
  export declare function mcpMainPath(deps?: ModelTransportDeps): string;
81
82
  export interface ModelTransportDeps {
83
+ /**
84
+ * The project's remote model settings, when the caller already holds them.
85
+ * Absent: read from the daemon's cache (`model-settings.ts`) at each launch,
86
+ * so a change made in the console reaches the next turn of a running night.
87
+ * Null: no remote settings — config.yaml, then the built-in defaults.
88
+ */
89
+ agentSettings?: AgentSettings | null;
82
90
  /**
83
91
  * The run these invocations belong to, so its budget reservation can be
84
92
  * settled at what it ACTUALLY cost rather than left to expire at an estimate.
@@ -1 +1 @@
1
- {"version":3,"file":"model-transport.d.ts","sourceRoot":"","sources":["../src/model-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAK3C,OAAO,EAAiB,KAAK,WAAW,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAS/E,OAAO,EAAyB,iBAAiB,EAAsB,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAiB,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAItD,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,0BAA0B,QAAkB,CAAC;AAE1D,+CAA+C;AAC/C,MAAM,WAAW,SAAS;IACxB,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAE,MAAkB,GAAG,MAAM,CAKvG;AAED,6EAA6E;AAC7E,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAMvD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,IAAI,GAAE,kBAAuB,GAAG,MAAM,CAIjE;AAED,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,QAAQ,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IACnC,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB,yFAAyF;IACzF,SAAS,CAAC,EAAE,OAAO,iBAAiB,CAAC;IACrC,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;GAYG;AACH;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAE1D;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAavF;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,GAAG,MAAM,EAAE,CAG3E;AAkBD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAEjE,CAAC;AAEH;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,QAAQ,EACd,IAAI,GAAE,SAAyB,EAC/B,IAAI,GAAE,kBAAuB;AAC7B;;;;;;;;;;;;;;;;GAgBG;AACH,KAAK,CAAC,EAAE,aAAa,GACpB,WAAW,CAkYb"}
1
+ {"version":3,"file":"model-transport.d.ts","sourceRoot":"","sources":["../src/model-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAK3C,OAAO,EAAiB,KAAK,WAAW,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAS/E,OAAO,EAAyB,iBAAiB,EAAsB,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAiB,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAKtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,0BAA0B,QAAkB,CAAC;AAE1D,+CAA+C;AAC/C,MAAM,WAAW,SAAS;IACxB,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAE,MAAkB,GAAG,MAAM,CAKvG;AAED,6EAA6E;AAC7E,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAMvD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,IAAI,GAAE,kBAAuB,GAAG,MAAM,CAIjE;AAED,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACrC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,QAAQ,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IACnC,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB,yFAAyF;IACzF,SAAS,CAAC,EAAE,OAAO,iBAAiB,CAAC;IACrC,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;GAYG;AACH;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAE1D;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAavF;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,GAAG,MAAM,EAAE,CAG3E;AAkBD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAEjE,CAAC;AAEH;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,QAAQ,EACd,IAAI,GAAE,SAAyB,EAC/B,IAAI,GAAE,kBAAuB;AAC7B;;;;;;;;;;;;;;;;GAgBG;AACH,KAAK,CAAC,EAAE,aAAa,GACpB,WAAW,CAoYb"}
@@ -25,6 +25,7 @@ const tool_bridge_1 = require("./tool-bridge");
25
25
  const agent_envelope_1 = require("./agent-envelope");
26
26
  const spend_ledger_1 = require("./spend-ledger");
27
27
  const model_routing_1 = require("./model-routing");
28
+ const model_settings_1 = require("./model-settings");
28
29
  const sibling_repos_1 = require("./sibling-repos");
29
30
  /**
30
31
  * THE MODEL RUNS HERE; THE MODEL'S TOOLS DO NOT.
@@ -378,14 +379,16 @@ owned) {
378
379
  return fail(`the agent did not run: provider_${ready.reason} — ${ready.because}`);
379
380
  }
380
381
  // The role's model and effort sit between the mediation flags and the
381
- // tool allowlist: nothing configured means nothing added, so a project
382
- // that says nothing about models gets the invocation it always did.
382
+ // tool allowlist. ALWAYS present now: config.yaml, then the project's
383
+ // remote settings, then the built-in defaults (`resolveRole`), so no
384
+ // built-in turn runs whatever Claude Code happens to default to.
385
+ const remote = deps.agentSettings !== undefined ? deps.agentSettings : (0, model_settings_1.remoteAgentSettingsFor)(projectDir);
383
386
  argv = [
384
387
  ...claudeMediatedArgv(launch, requested),
385
388
  // The prover is a TOOL role, not a model role: it runs the model the
386
389
  // implementer's routing names, exactly as it did while it borrowed the
387
390
  // implementer's transport. Only its tools narrowed.
388
- ...(0, model_routing_1.modelArgs)(role === 'prover' ? 'implementer' : role, spec),
391
+ ...(0, model_routing_1.modelArgs)(role === 'prover' ? 'implementer' : role, spec, remote),
389
392
  ...allowedToolArgs(role, launch),
390
393
  ];
391
394
  }
@@ -1 +1 @@
1
- {"version":3,"file":"model-transport.js","sourceRoot":"","sources":["../src/model-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-transport.js","sourceRoot":"","sources":["../src/model-transport.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,9 @@ import { type ProviderAuthState } from './provider-state';
5
5
  * `looply provider` — IS CLAUDE CODE READY ON THIS MACHINE, AND IF NOT, FIX IT.
6
6
  *
7
7
  * looply provider [status] where Claude Code was found, and whether Looply's profile is logged in
8
- * looply provider install [--yes] install Claude Code (`npm i -g @anthropic-ai/claude-code`)
8
+ * looply provider install [--yes] install Claude Code (`npm i -g @anthropic-ai/claude-code@latest`)
9
+ * looply provider update [--yes] update Claude Code (the same npm command) — an outdated one
10
+ * refuses the models Looply asks for (`MIN_CLAUDE_CODE_VERSION`)
9
11
  * looply provider login sign Looply's own Claude Code profile in
10
12
  *
11
13
  * `looply connect` runs the same check up front (`ensureProviderReady`), so a
@@ -18,7 +20,10 @@ import { type ProviderAuthState } from './provider-state';
18
20
  * Looply ready, which is exactly what tripped the first real user.
19
21
  */
20
22
  export declare const PROVIDER_USAGE: string;
21
- export declare const INSTALL_COMMAND = "npm i -g @anthropic-ai/claude-code";
23
+ /** `@latest`, so an install never lands a version too old for the configured models. */
24
+ export declare const INSTALL_COMMAND = "npm i -g @anthropic-ai/claude-code@latest";
25
+ /** An update is the same command: npm replaces the global install with the latest. */
26
+ export declare const UPDATE_COMMAND = "npm i -g @anthropic-ai/claude-code@latest";
22
27
  export interface ProviderDeps {
23
28
  readonly platform: NodeJS.Platform;
24
29
  readonly interactive: boolean;
@@ -27,14 +32,16 @@ export interface ProviderDeps {
27
32
  readonly profile: string;
28
33
  discover(): ProviderDiscovery;
29
34
  checkAuth(executable: string): ProviderAuthState;
30
- /** Run the npm install in the foreground; its exit code. */
35
+ /** `<exe> --version`'s first `x.y.z`, or null when it cannot be read (never treated as outdated). */
36
+ version(executable: string): string | null;
37
+ /** Run the npm install (also the update) in the foreground; its exit code. */
31
38
  install(): Promise<number>;
32
39
  /** Run `<exe> auth login` in the foreground with CLAUDE_CONFIG_DIR=<profile>; its exit code. */
33
40
  login(executable: string): Promise<number>;
34
41
  out(line: string): void;
35
42
  err(line: string): void;
36
43
  }
37
- export declare function readinessOf(deps: Pick<ProviderDeps, 'discover' | 'checkAuth'>): ProviderReadiness;
44
+ export declare function readinessOf(deps: Pick<ProviderDeps, 'discover' | 'checkAuth' | 'version'>): ProviderReadiness;
38
45
  /** The exact command a person types to log Looply's profile in, in their own shell. */
39
46
  export declare function loginCommandLine(executable: string, profile: string, platform: NodeJS.Platform): string;
40
47
  /**
@@ -43,6 +50,8 @@ export declare function loginCommandLine(executable: string, profile: string, pl
43
50
  *
44
51
  * - Not installed: explain, then install — asking y/N on a terminal, without
45
52
  * asking under `yes`, and otherwise printing the exact command.
53
+ * - Outdated (older than `MIN_CLAUDE_CODE_VERSION`): explain, then update —
54
+ * asked, automatic or printed exactly as for an install — and check again.
46
55
  * - Not logged in: run the login on a terminal; otherwise print the command.
47
56
  */
48
57
  export declare function ensureProviderReady(deps: ProviderDeps, opts: {
@@ -1 +1 @@
1
- {"version":3,"file":"provider-cmd.d.ts","sourceRoot":"","sources":["../src/provider-cmd.ts"],"names":[],"mappings":"AAMA,OAAO,EAAkC,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAyB,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAyC,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGjG;;;;;;;;;;;;;;;GAeG;AAEH,eAAO,MAAM,cAAc,QAIf,CAAC;AAEb,eAAO,MAAM,eAAe,uCAAuC,CAAC;AAEpE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IACnC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,IAAI,iBAAiB,CAAC;IAC9B,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,iBAAiB,CAAC;IACjD,4DAA4D;IAC5D,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3B,gGAAgG;IAChG,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,WAAW,CAAC,GAAG,iBAAiB,CAIjG;AAED,uFAAuF;AACvF,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAIvG;AAYD;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAiEhH;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAwDlG;AAgDD,wBAAgB,gBAAgB,CAAC,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;CAAO,GAAG,YAAY,CAuB5H"}
1
+ {"version":3,"file":"provider-cmd.d.ts","sourceRoot":"","sources":["../src/provider-cmd.ts"],"names":[],"mappings":"AAMA,OAAO,EAAkC,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAuC,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC/F,OAAO,EAAyC,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGjG;;;;;;;;;;;;;;;;;GAiBG;AAEH,eAAO,MAAM,cAAc,QAKf,CAAC;AAEb,wFAAwF;AACxF,eAAO,MAAM,eAAe,8CAA8C,CAAC;AAC3E,sFAAsF;AACtF,eAAO,MAAM,cAAc,8CAAkB,CAAC;AAK9C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IACnC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,IAAI,iBAAiB,CAAC;IAC9B,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,iBAAiB,CAAC;IACjD,qGAAqG;IACrG,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3C,8EAA8E;IAC9E,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3B,gGAAgG;IAChG,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC,GAAG,iBAAiB,CAK7G;AAgCD,uFAAuF;AACvF,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAIvG;AAaD;;;;;;;;;GASG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAuFhH;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CA0ElG;AAgDD,wBAAgB,gBAAgB,CAAC,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;CAAO,GAAG,YAAY,CAuC5H"}