openplanr 3.1.0 → 3.1.1

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 CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 3.1.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 4a45357: `openplanr upgrade apply` now updates the copy of OpenPlanr you ran, even when `npm` on your PATH belongs to another Node install. Before, it could install the new version somewhere else, then undo it and say the registry didn't have the release yet. If it can't write to that install, it stops before changing anything and prints the command to run. When an upgrade still fails, the message names the folder it checked, the version it found and every `openplanr` on your PATH, and it only mentions the registry when the release really isn't published.
8
+
9
+ `openplanr doctor` now warns when more than one `openplanr` is on your PATH, and lists each one with its version.
10
+
3
11
  ## 3.1.0
4
12
 
5
13
  ### Minor Changes
package/README.md CHANGED
@@ -12,7 +12,7 @@
12
12
  <p align="center">
13
13
  <a href="https://www.npmjs.com/package/openplanr"><img alt="npm version" src="https://img.shields.io/npm/v/openplanr?style=flat-square&labelColor=08080C&color=237A72&label=openplanr"></a>
14
14
  <a href="https://www.npmjs.com/package/openplanr"><img alt="npm downloads" src="https://img.shields.io/npm/dm/openplanr?style=flat-square&labelColor=08080C&color=237A72"></a>
15
- <a href="https://github.com/openplanr/OpenPlanr/actions/workflows/ci.yml"><img alt="Workspace CI" src="https://img.shields.io/github/actions/workflow/status/openplanr/OpenPlanr/ci.yml?branch=main&style=flat-square&labelColor=08080C&color=237A72&label=CI"></a>
15
+ <a href="https://github.com/openplanr/OpenPlanr/actions/workflows/ci.yml"><img alt="Workspace CI" src="https://img.shields.io/github/actions/workflow/status/openplanr/OpenPlanr/ci.yml?event=merge_group&style=flat-square&labelColor=08080C&color=237A72&label=CI"></a>
16
16
  <a href="https://nodejs.org"><img alt="Supported Node.js versions" src="https://img.shields.io/node/v/openplanr?style=flat-square&labelColor=08080C&color=237A72"></a>
17
17
  <a href="https://github.com/openplanr/OpenPlanr/blob/main/LICENSE"><img alt="MIT license" src="https://img.shields.io/badge/license-MIT-237A72?style=flat-square&labelColor=08080C"></a>
18
18
  </p>
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmLzC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,QA8DzE"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2MzC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,QA8DzE"}
@@ -1,3 +1,4 @@
1
+ import { openPlanrOnPath } from '../../services/global-install-service.js';
1
2
  import { isNonInteractive } from '../../services/interactive-state.js';
2
3
  import { promptConfirm } from '../../services/prompt-service.js';
3
4
  import { summarizeRuntimeChanges } from '../../services/runtime-change-summary.js';
@@ -128,6 +129,28 @@ async function repairInstallation(projectDir, cliVersion, diagnosis, { json, yes
128
129
  ...(packageBackupDir ? { packageBackupDir } : {}),
129
130
  };
130
131
  }
132
+ /** Warns when PATH holds more than one OpenPlanr, since upgrades and runs may then use different copies. */
133
+ function globalInstallsDiagnostic() {
134
+ const installs = openPlanrOnPath();
135
+ const listed = installs
136
+ .map((entry) => `${entry.command} (${entry.version ?? 'unknown version'})`)
137
+ .join(', ');
138
+ if (installs.length <= 1) {
139
+ return {
140
+ code: 'openplanr-global-installs',
141
+ status: 'pass',
142
+ message: installs.length
143
+ ? `One openplanr on PATH: ${listed}.`
144
+ : 'No openplanr found on PATH.',
145
+ };
146
+ }
147
+ return {
148
+ code: 'openplanr-global-installs',
149
+ status: 'warn',
150
+ message: `${installs.length} openplanr installs are on PATH; the first one runs: ${listed}.`,
151
+ fix: `Keep one: remove the others with their own npm (\`npm uninstall -g openplanr\`), or put the one you upgrade first on PATH.`,
152
+ };
153
+ }
131
154
  function printDiagnosis(result) {
132
155
  logger.heading('OpenPlanr doctor');
133
156
  result.diagnostics.forEach((diagnostic) => {
@@ -185,7 +208,7 @@ export function registerDoctorCommand(program, cliVersion) {
185
208
  const result = {
186
209
  ...repaired,
187
210
  servers,
188
- diagnostics: [...repaired.diagnostics, serverDiagnostic],
211
+ diagnostics: [...repaired.diagnostics, serverDiagnostic, globalInstallsDiagnostic()],
189
212
  };
190
213
  if (opts.json)
191
214
  display.line(JSON.stringify(result));
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /** One `openplanr` command found on PATH and the package it runs. */
2
+ export interface OpenPlanrOnPath {
3
+ command: string;
4
+ packageRoot: string;
5
+ version: string | null;
6
+ }
7
+ /** The directory holding the running CLI's `package.json`. */
8
+ export declare function runningPackageRoot(): string;
9
+ /** The `version` in `<packageRoot>/package.json`, read from disk on every call. */
10
+ export declare function readPackageVersion(packageRoot: string): string;
11
+ /**
12
+ * The npm prefix whose global folder holds `packageRoot`, or undefined when the
13
+ * package is not at `<folder>/node_modules/openplanr`.
14
+ * POSIX global installs live under `<prefix>/lib/node_modules`; Windows uses `<prefix>/node_modules`.
15
+ */
16
+ export declare function npmPrefixOf(packageRoot: string): string | undefined;
17
+ /** Whether two paths name the same directory, following symlinks when they exist. */
18
+ export declare function samePath(left: string, right: string): boolean;
19
+ /**
20
+ * Every distinct OpenPlanr package an `openplanr` command on PATH runs, in PATH order.
21
+ * Windows npm shims are `.cmd` files beside `<prefix>/node_modules`; POSIX shims are symlinks.
22
+ */
23
+ export declare function openPlanrOnPath(env?: NodeJS.ProcessEnv): OpenPlanrOnPath[];
24
+ //# sourceMappingURL=global-install-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-install-service.d.ts","sourceRoot":"","sources":["../../src/services/global-install-service.ts"],"names":[],"mappings":"AAIA,qEAAqE;AACrE,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,8DAA8D;AAC9D,wBAAgB,kBAAkB,IAAI,MAAM,CAM3C;AAED,mFAAmF;AACnF,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAO9D;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQnE;AAED,qFAAqF;AACrF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAI7D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,eAAe,EAAE,CAkBvF"}
@@ -0,0 +1,68 @@
1
+ import { existsSync, readFileSync, realpathSync } from 'node:fs';
2
+ import path from 'node:path';
3
+ import { fileURLToPath } from 'node:url';
4
+ /** The directory holding the running CLI's `package.json`. */
5
+ export function runningPackageRoot() {
6
+ const here = path.dirname(fileURLToPath(import.meta.url));
7
+ for (const candidate of [path.resolve(here, '../..'), path.resolve(here, '../../..')]) {
8
+ if (existsSync(path.join(candidate, 'package.json')))
9
+ return candidate;
10
+ }
11
+ throw new Error(`No OpenPlanr package.json found above ${here}.`);
12
+ }
13
+ /** The `version` in `<packageRoot>/package.json`, read from disk on every call. */
14
+ export function readPackageVersion(packageRoot) {
15
+ const file = path.join(packageRoot, 'package.json');
16
+ const parsed = JSON.parse(readFileSync(file, 'utf8'));
17
+ if (typeof parsed.version !== 'string' || !parsed.version) {
18
+ throw new Error(`${file} has no version.`);
19
+ }
20
+ return parsed.version;
21
+ }
22
+ /**
23
+ * The npm prefix whose global folder holds `packageRoot`, or undefined when the
24
+ * package is not at `<folder>/node_modules/openplanr`.
25
+ * POSIX global installs live under `<prefix>/lib/node_modules`; Windows uses `<prefix>/node_modules`.
26
+ */
27
+ export function npmPrefixOf(packageRoot) {
28
+ if (path.basename(packageRoot) !== 'openplanr')
29
+ return undefined;
30
+ const folder = path.dirname(packageRoot);
31
+ if (path.basename(folder) !== 'node_modules')
32
+ return undefined;
33
+ const parent = path.dirname(folder);
34
+ return process.platform !== 'win32' && path.basename(parent) === 'lib'
35
+ ? path.dirname(parent)
36
+ : parent;
37
+ }
38
+ /** Whether two paths name the same directory, following symlinks when they exist. */
39
+ export function samePath(left, right) {
40
+ const resolve = (value) => existsSync(value) ? realpathSync(value) : path.resolve(value);
41
+ return resolve(left) === resolve(right);
42
+ }
43
+ /**
44
+ * Every distinct OpenPlanr package an `openplanr` command on PATH runs, in PATH order.
45
+ * Windows npm shims are `.cmd` files beside `<prefix>/node_modules`; POSIX shims are symlinks.
46
+ */
47
+ export function openPlanrOnPath(env = process.env) {
48
+ const windows = process.platform === 'win32';
49
+ const found = [];
50
+ for (const directory of (env.PATH ?? env.Path ?? '').split(path.delimiter).filter(Boolean)) {
51
+ const command = path.join(directory, windows ? 'openplanr.cmd' : 'openplanr');
52
+ if (!existsSync(command))
53
+ continue;
54
+ const packageRoot = windows
55
+ ? path.join(directory, 'node_modules', 'openplanr')
56
+ : path.dirname(path.dirname(realpathSync(command)));
57
+ if (found.some((entry) => samePath(entry.packageRoot, packageRoot)))
58
+ continue;
59
+ const manifest = path.join(packageRoot, 'package.json');
60
+ found.push({
61
+ command,
62
+ packageRoot,
63
+ version: existsSync(manifest) ? readPackageVersion(packageRoot) : null,
64
+ });
65
+ }
66
+ return found;
67
+ }
68
+ //# sourceMappingURL=global-install-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-install-service.js","sourceRoot":"","sources":["../../src/services/global-install-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AASzC,8DAA8D;AAC9D,MAAM,UAAU,kBAAkB;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,KAAK,MAAM,SAAS,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;QACtF,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;IACzE,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,yCAAyC,IAAI,GAAG,CAAC,CAAC;AACpE,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAA0B,CAAC;IAC/E,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,kBAAkB,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC;AACxB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,WAAmB;IAC7C,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,WAAW;QAAE,OAAO,SAAS,CAAC;IACjE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,cAAc;QAAE,OAAO,SAAS,CAAC;IAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACpC,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,KAAK;QACpE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACtB,CAAC,CAAC,MAAM,CAAC;AACb,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,KAAa;IAClD,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,EAAE,CAChC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAChE,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;AAC1C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,MAAyB,OAAO,CAAC,GAAG;IAClE,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;IAC7C,MAAM,KAAK,GAAsB,EAAE,CAAC;IACpC,KAAK,MAAM,SAAS,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3F,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAC9E,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,SAAS;QACnC,MAAM,WAAW,GAAG,OAAO;YACzB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,WAAW,CAAC;YACnD,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACtD,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAAE,SAAS;QAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QACxD,KAAK,CAAC,IAAI,CAAC;YACT,OAAO;YACP,WAAW;YACX,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI;SACvE,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -6,6 +6,7 @@
6
6
  * `executeCliHalfUpgrade`. It never changes the host plugin itself.
7
7
  */
8
8
  import { type ClaudeCommandRunner } from './claude-plugin-service.js';
9
+ import { type OpenPlanrOnPath } from './global-install-service.js';
9
10
  import { type RuntimeId } from './runtime-manager-service.js';
10
11
  /**
11
12
  * The command that registers the bundled `openplanr-local` marketplace and installs
@@ -198,6 +199,8 @@ export interface ExecuteCliHalfUpgradeInput {
198
199
  targetCliVersion: string;
199
200
  /** Injectable npm runner; defaults to the real (or `OPENPLANR_NPM_BIN`) npm. */
200
201
  npmCommandRunner?: NpmCommandRunner;
202
+ /** The installed package to upgrade; defaults to the running CLI's own package. */
203
+ cliPackageRoot?: string;
201
204
  /** Injectable runner for the upgraded CLI; defaults to a new process of this entry point. */
202
205
  installedCliRunner?: InstalledCliRunner;
203
206
  /**
@@ -223,10 +226,21 @@ export interface ExecuteCliHalfUpgradeResult {
223
226
  /** Per-migration results for every registered migration this upgrade crossed. */
224
227
  migrations: MigrationRunResult[];
225
228
  failure?: {
226
- step: 'npm-install' | 'verify' | 'changelog' | 'migration';
229
+ step: 'install-location' | 'npm-install' | 'verify' | 'changelog' | 'migration';
227
230
  message: string;
231
+ diagnostics?: UpgradeInstallDiagnostics;
228
232
  };
229
233
  }
234
+ /** Where the upgrade installed and what it read back, so a failed verify is diagnosable. */
235
+ export interface UpgradeInstallDiagnostics {
236
+ npmGlobalRoot: string;
237
+ cliPackageRoot: string;
238
+ installCommand: string;
239
+ checkedPath: string;
240
+ versionRead: string;
241
+ registryVersion: string | null;
242
+ onPath: OpenPlanrOnPath[];
243
+ }
230
244
  /**
231
245
  * Execute the one half the CLI owns — a global npm install — and
232
246
  * prescribe (never execute) the plugin half.
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade-service.d.ts","sourceRoot":"","sources":["../../src/services/upgrade-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upgrade-service.d.ts","sourceRoot":"","sources":["../../src/services/upgrade-service.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * `executeCliHalfUpgrade`. It never changes the host plugin itself.
7
7
  */
8
8
  import { spawnSync } from 'node:child_process';
9
- import { existsSync, readFileSync } from 'node:fs';
9
+ import { accessSync, existsSync, constants as fsConstants, readFileSync } from 'node:fs';
10
10
  import { mkdir, readFile, writeFile } from 'node:fs/promises';
11
11
  import path from 'node:path';
12
12
  import { fileURLToPath } from 'node:url';
@@ -15,6 +15,7 @@ import { CLI_COMMAND } from '../utils/constants.js';
15
15
  import { parseExternalJson } from '../utils/external-json.js';
16
16
  import { logger } from '../utils/logger.js';
17
17
  import { inspectBundledClaudePluginIntegration, OPENPLANR_CLAUDE_PLUGIN, } from './claude-plugin-service.js';
18
+ import { npmPrefixOf, openPlanrOnPath, readPackageVersion, runningPackageRoot, samePath, } from './global-install-service.js';
18
19
  import { resolvePipelinePackage } from './pipeline-package-service.js';
19
20
  import { readOpenPlanrVersion } from './provenance-service.js';
20
21
  import { RUNTIME_LABELS, summarizeRuntimeChanges } from './runtime-change-summary.js';
@@ -828,6 +829,52 @@ export function readInstalledCliNextSteps(projectDir, runner = defaultInstalledC
828
829
  };
829
830
  }
830
831
  }
832
+ function npmOutput(result) {
833
+ return !result.error && result.status === 0 ? result.stdout.trim() || undefined : undefined;
834
+ }
835
+ function npmFailureDetail(result) {
836
+ return result.error?.message || result.stderr.trim() || `npm exited with status ${result.status}`;
837
+ }
838
+ /**
839
+ * Install into the running CLI's own npm prefix, so the copy the user ran is the one
840
+ * upgraded and verified. Refuses before any change when that prefix cannot be written.
841
+ */
842
+ function resolveInstallLocation(runNpm, cliRoot, target) {
843
+ const rootResult = runNpm(['root', '-g']);
844
+ const npmGlobalRoot = npmOutput(rootResult);
845
+ if (!npmGlobalRoot) {
846
+ return {
847
+ ok: false,
848
+ message: `Could not read npm's global folder with \`npm root -g\`: ${npmFailureDetail(rootResult)}. Nothing was changed.`,
849
+ };
850
+ }
851
+ const cliFolder = path.dirname(cliRoot);
852
+ if (samePath(npmGlobalRoot, cliFolder)) {
853
+ return { ok: true, npmGlobalRoot, prefixArgs: [], checkedRoot: cliRoot };
854
+ }
855
+ const prefix = npmPrefixOf(cliRoot);
856
+ const prefixRoot = prefix ? npmOutput(runNpm(['root', '-g', '--prefix', prefix])) : undefined;
857
+ if (!prefix || !prefixRoot || !samePath(prefixRoot, cliFolder)) {
858
+ return {
859
+ ok: false,
860
+ message: `The running OpenPlanr at ${cliRoot} is not in an npm global folder that npm can install into, and npm on PATH installs into ${npmGlobalRoot}. Nothing was changed. Upgrade the copy you use with its own npm, for example \`npm install -g openplanr@${target}\`.`,
861
+ };
862
+ }
863
+ const command = `npm install -g --prefix "${prefix}" openplanr@${target}`;
864
+ const binFolder = process.platform === 'win32' ? prefix : path.join(prefix, 'bin');
865
+ for (const folder of [cliFolder, binFolder]) {
866
+ try {
867
+ accessSync(folder, fsConstants.W_OK);
868
+ }
869
+ catch (error) {
870
+ return {
871
+ ok: false,
872
+ message: `The running OpenPlanr is in ${cliFolder}, but npm on PATH installs into ${npmGlobalRoot}, and ${folder} is not writable (${error.code ?? 'unknown error'}). Nothing was changed. Run \`${command}\` with permission to write there.`,
873
+ };
874
+ }
875
+ }
876
+ return { ok: true, npmGlobalRoot, prefixArgs: ['--prefix', prefix], checkedRoot: cliRoot };
877
+ }
831
878
  /**
832
879
  * Execute the one half the CLI owns — a global npm install — and
833
880
  * prescribe (never execute) the plugin half.
@@ -842,18 +889,40 @@ export function readInstalledCliNextSteps(projectDir, runner = defaultInstalledC
842
889
  */
843
890
  export async function executeCliHalfUpgrade(input) {
844
891
  const runNpm = input.npmCommandRunner ?? defaultNpmRunner;
892
+ const cliRoot = input.cliPackageRoot ?? runningPackageRoot();
845
893
  // The restorable backup, captured before any mutation: the version we can
846
894
  // always reinstall to undo a bad upgrade.
847
- const previousVersion = readOpenPlanrVersion();
848
- const install = runNpm(['install', '-g', `openplanr@${input.targetCliVersion}`]);
895
+ const previousVersion = readPackageVersion(cliRoot);
896
+ const location = resolveInstallLocation(runNpm, cliRoot, input.targetCliVersion);
897
+ if (!location.ok) {
898
+ return {
899
+ ok: false,
900
+ cliUpgraded: false,
901
+ installedVersion: previousVersion,
902
+ previousVersion,
903
+ changelogBullets: [],
904
+ releaseNotes: [],
905
+ nextSteps: [],
906
+ pluginHalfCommands: [],
907
+ migrations: [],
908
+ failure: { step: 'install-location', message: location.message },
909
+ };
910
+ }
911
+ const installArgs = (version) => [
912
+ 'install',
913
+ '-g',
914
+ ...location.prefixArgs,
915
+ `openplanr@${version}`,
916
+ ];
917
+ const install = runNpm(installArgs(input.targetCliVersion));
849
918
  if (install.error || install.status !== 0) {
850
919
  // A failed global install leaves the previous package in place — npm never
851
920
  // half-replaces a package. Report honestly; render nothing.
852
- const detail = install.error?.message || install.stderr.trim() || `npm exited with status ${install.status}`;
921
+ const detail = npmFailureDetail(install);
853
922
  return {
854
923
  ok: false,
855
924
  cliUpgraded: false,
856
- installedVersion: readOpenPlanrVersion(),
925
+ installedVersion: readPackageVersion(cliRoot),
857
926
  previousVersion,
858
927
  changelogBullets: [],
859
928
  releaseNotes: [],
@@ -866,17 +935,37 @@ export async function executeCliHalfUpgrade(input) {
866
935
  },
867
936
  };
868
937
  }
869
- // Verify-after-write: re-read the on-disk version the install just wrote.
870
- const verifiedVersion = readOpenPlanrVersion();
938
+ // Verify-after-write: re-read the package.json in the folder the install just wrote.
939
+ const checkedPath = path.join(location.checkedRoot, 'package.json');
940
+ const verifiedVersion = readPackageVersion(location.checkedRoot);
871
941
  if (verifiedVersion !== input.targetCliVersion) {
872
942
  // The decisive case: a clean exit that did NOT land the target. Restore
873
- // the captured previous version and never report success.
874
- const restore = runNpm(['install', '-g', `openplanr@${previousVersion}`]);
875
- const restoredVersion = readOpenPlanrVersion();
943
+ // the captured previous version into the same folder and never report success.
944
+ const registryVersion = npmOutput(runNpm(['view', `openplanr@${input.targetCliVersion}`, 'version'])) ?? null;
945
+ const restore = runNpm(installArgs(previousVersion));
946
+ const restoredVersion = readPackageVersion(location.checkedRoot);
876
947
  const restored = !restore.error && restore.status === 0 && restoredVersion === previousVersion;
948
+ const diagnostics = {
949
+ npmGlobalRoot: location.npmGlobalRoot,
950
+ cliPackageRoot: cliRoot,
951
+ installCommand: `npm ${installArgs(input.targetCliVersion).join(' ')}`,
952
+ checkedPath,
953
+ versionRead: verifiedVersion,
954
+ registryVersion,
955
+ onPath: openPlanrOnPath(),
956
+ };
957
+ const onPath = diagnostics.onPath.length
958
+ ? diagnostics.onPath
959
+ .map((entry) => `${entry.command} (${entry.version ?? 'unknown version'})`)
960
+ .join(', ')
961
+ : 'none';
962
+ const found = `npm reported success, but ${checkedPath} has ${verifiedVersion}, not ${input.targetCliVersion}. npm's global folder is ${location.npmGlobalRoot}; openplanr on PATH: ${onPath}.`;
963
+ const cause = registryVersion === input.targetCliVersion
964
+ ? `The registry serves ${input.targetCliVersion}, so the install went somewhere other than ${location.checkedRoot}.`
965
+ : `The registry does not serve openplanr@${input.targetCliVersion} yet; retry \`${CLI_COMMAND} upgrade apply\` once it does.`;
877
966
  const message = restored
878
- ? `npm reported success but installed ${verifiedVersion}, not ${input.targetCliVersion}. Restored the previous version ${previousVersion}. Retry with \`${CLI_COMMAND} upgrade apply\` once the registry serves ${input.targetCliVersion}.`
879
- : `npm reported success but installed ${verifiedVersion}, not ${input.targetCliVersion}, and the automatic restore did not complete (now ${restoredVersion}). Reinstall manually: \`npm install -g openplanr@${previousVersion}\`.`;
967
+ ? `${found} ${cause} Restored the previous version ${previousVersion}.`
968
+ : `${found} ${cause} The automatic restore did not complete (now ${restoredVersion}). Reinstall manually: \`npm ${installArgs(previousVersion).join(' ')}\`.`;
880
969
  return {
881
970
  ok: false,
882
971
  cliUpgraded: false,
@@ -888,7 +977,7 @@ export async function executeCliHalfUpgrade(input) {
888
977
  nextSteps: [],
889
978
  pluginHalfCommands: [],
890
979
  migrations: [],
891
- failure: { step: 'verify', message },
980
+ failure: { step: 'verify', message, diagnostics },
892
981
  };
893
982
  }
894
983
  // The CLI half landed and verified — `cliUpgraded` is now true and stays true
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade-service.js","sourceRoot":"","sources":["../../src/services/upgrade-service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAGL,qCAAqC,EACrC,uBAAuB,GACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtF,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,YAAY,EAEZ,mBAAmB,EACnB,WAAW,GAGZ,MAAM,8BAA8B,CAAC;AAEtC;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,WAAW,sCAAsC,CAAC;AAsEhG;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,6CAA6C,CAAC;AAEtF;;;;GAIG;AACH,MAAM,YAAY,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEpC;;;;GAIG;AACH,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAEvC,SAAS,uBAAuB;IAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,EAAE,IAAI,wBAAwB,CAAC;AACpF,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,sBAAsB,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAC;AAEH,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,UAAU,EAAE,CAAC;SACV,MAAM,CAAC;QACN,GAAG,EAAE,wBAAwB,CAAC,QAAQ,EAAE;QACxC,QAAQ,EAAE,wBAAwB,CAAC,QAAQ,EAAE;QAC7C,MAAM,EAAE,wBAAwB,CAAC,QAAQ,EAAE;QAC3C,WAAW,EAAE,wBAAwB,CAAC,QAAQ,EAAE;KACjD,CAAC;SACD,QAAQ,EAAE;IACb,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,oBAAoB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACjE,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC1D,CAAC,CAAC;AAIH,kFAAkF;AAClF,SAAS,eAAe,CAAC,IAAY,EAAE,QAAgB;IACrD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,EAAE,uBAAuB,EAAE,QAAQ,CAAC,CAAC;QACxE,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,+CAA+C,EAAE,KAAK,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,yFAAyF;AACzF,SAAS,kBAAkB,CAAC,IAA0B;IACpD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACnC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;QAC9F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,GAAG,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QACtE,QAAQ,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QACrF,MAAM,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QAC/E,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO;YACjC,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE;YAC9D,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,EAAE,UAAU;KAClB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,qBAAqB,CAAC,IAA0B;IACvD,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC/E,MAAM,GAAG,GACP,IAAI,CAAC,oBAAoB,EAAE,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,gBAAgB,CAAC,CAAC;IACzF,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACrE,OAAO;QACL,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;QAC9B,QAAQ,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE;QAC1B,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;QACjC,KAAK,EAAE,UAAU;KAClB,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,SAAwD;IAIzE,OAAO;QACL,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/E,CAAC;AACJ,CAAC;AAOD,SAAS,SAAS;IAChB,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;IACvC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAuB,CAAC;QACjF,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1F,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,UAA+B,EAAE,GAAW;IACpE,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;IACvC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAc,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;IAC1D,MAAM,SAAS,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC9E,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,iBAAiB,CAC9B,QAAgB,EAChB,SAAuB,EACvB,SAAiB;IAEjB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,OAAO,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,gDAAgD,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;YAChF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,IAAI,KAAgD,CAAC;IACrD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAC5C,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YACtB,MAAM,CAAC,KAAK,CACV,yCAAyC,QAAQ,oBAAoB,SAAS,IAAI,CACnF,CAAC;YACF,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC,EAAE,SAAS,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,CAAC,KAAK,IAA4B,EAAE;QAClD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;YAC1E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,CAAC,KAAK,CACV,yCAAyC,QAAQ,kBAAkB,QAAQ,CAAC,MAAM,EAAE,CACrF,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC/B,MAAM,CAAC,KAAK,CAAC,yCAAyC,QAAQ,SAAS,EAAE,KAAK,CAAC,CAAC;YAClF,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAChD,CAAC;YAAS,CAAC;QACT,IAAI,KAAK;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,OAAyB;IAEzB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IACtC,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;IAC1B,IAAI,KAAK,IAAI,GAAG,GAAG,KAAK,CAAC,SAAS,GAAG,YAAY,EAAE,CAAC;QAClD,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC3D,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,KAAK,CAAC;IAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,wBAAwB,CAAC;IAChE,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;IAC3C,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACrE,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9D,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC/B,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACpD,CAAC;IAED,IAAI,KAAK;QAAE,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;IAC1E,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;AACrD,CAAC;AAED,kFAAkF;AAClF,SAAS,kBAAkB,CAAC,OAAe;IACzC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAClD,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,cAAc,CAAC,OAAe,EAAE,KAAa;IACpD,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5D,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1C,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC/C,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;IAClD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,sFAAsF;AACtF,SAAS,aAAa,CAAC,OAAsB,EAAE,KAAyB;IACtE,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACrC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,QAAQ,CAAC,SAAwB,EAAE,SAA6B;IACvE,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IAC3C,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACrC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1C,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC/C,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;IAClD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB,CAAC,MAA4B;IAC5D,OAAO,qCAAqC,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;AAClF,CAAC;AAED,6FAA6F;AAC7F,SAAS,mBAAmB,CAAC,UAAkC;IAC7D,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CACrC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,uBAAuB,IAAI,MAAM,CAAC,SAAS,CACxE,CAAC;IACF,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC;QACjD,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,OAAO;YACP,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC;SACnD,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GACZ,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC/F,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC;IACzC,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,EAAE;QACf,OAAO;QACP,SAAS,EAAE,QAAQ;QACnB,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC;KAClE,CAAC;AACJ,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,gBAAgB,CAAC,MAA2B;IAC1D,IAAI,MAAM,CAAC,SAAS,KAAK,KAAK;QAAE,OAAO,GAAG,WAAW,QAAQ,CAAC;IAC9D,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,GAAG,WAAW,cAAc,CAAC;AAC7F,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,uBAAuB,CAAC,cAAqC;IAC3E,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,CAAC;IACzC,IAAI,MAAM,EAAE,SAAS,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IACvE,OAAO,iBAAiB,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,OAAO,uDAAuD,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC;AACxI,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,WAAmB,EACnB,UAA4B,EAAE;IAE9B,MAAM,UAAU,GAAG,oBAAoB,EAAE,CAAC;IAC1C,MAAM,eAAe,GAAG,sBAAsB,CAAC,KAAK,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC;IACvE,MAAM,UAAU,GAAG,wBAAwB,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG;QAChB,GAAG,EAAE,UAAU;QACf,MAAM,EAAE,UAAU,EAAE,OAAO,IAAI,IAAI;QACnC,QAAQ,EAAE,IAAI;KACf,CAAC;IACF,MAAM,aAAa,GAAG,UAAU,CAAC,eAAe,CAAC;IACjD,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEtD,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;IACxF,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,SAAS;YACT,SAAS,EAAE,IAAI;YACf,eAAe;YACf,eAAe;YACf,aAAa;YACb,GAAG,YAAY;SAChB,CAAC;IACJ,CAAC;IAED,qFAAqF;IACrF,qFAAqF;IACrF,wFAAwF;IACxF,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChE,IAAI,YAAqB,CAAC;IAC1B,IAAI,cAAuB,CAAC;IAC5B,IAAI,cAAuB,CAAC;IAC5B,IAAI,iBAA0B,CAAC;IAC/B,IAAI,SAAS,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;QACnC,qFAAqF;QACrF,mFAAmF;QACnF,uFAAuF;QACvF,kDAAkD;QAClD,YAAY,GAAG,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;QAC3C,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,IAAI,eAAe,EAAE,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7F,cAAc,GAAG,QAAQ,IAAI,YAAY,IAAI,cAAc,CAAC;QAC5D,iBAAiB,GAAG,KAAK,CAAC;IAC5B,CAAC;SAAM,CAAC;QACN,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACpE,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC1E,cAAc,GAAG,QAAQ,IAAI,YAAY,IAAI,cAAc,CAAC;QAC5D,6EAA6E;QAC7E,6EAA6E;QAC7E,uEAAuE;QACvE,iBAAiB;YACf,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC;gBAC9D,aAAa,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC;gBACvD,aAAa,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,cAAc,GAAG,sBAAsB,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC/F,6FAA6F;IAC7F,MAAM,MAAM,GACV,cAAc,CAAC,MAAM,KAAK,MAAM;QAC9B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,cAAc,CAAC,MAAM,KAAK,MAAM;YAChC,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,IAAI,YAAY,IAAI,CAAC,cAAc;gBAC/D,CAAC,CAAC,eAAe;gBACjB,CAAC,CAAC,cAAc,CAAC;IAEzB,OAAO;QACL,MAAM;QACN,SAAS;QACT,SAAS;QACT,eAAe;QACf,eAAe;QACf,aAAa;QACb,GAAG,YAAY;KAChB,CAAC;AACJ,CAAC;AAiBD;;;;;;;;;GASG;AACH,SAAS,gBAAgB,CAAC,IAAc;IACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC;IACvD,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;IAC/C,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5E,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1D,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE;QAC7C,QAAQ,EAAE,MAAM;QAChB,WAAW,EAAE,IAAI;QACjB,KAAK,EAAE,CAAC,QAAQ,IAAI,SAAS;KAC9B,CAAC,CAAC;IACH,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;QAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;QAC3B,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,SAAS,qBAAqB,CAAC,CAAS,EAAE,CAAS;IACjD,MAAM,IAAI,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACpC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC;IAC9B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACzC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAQD;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,cAAqC;IAClE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,cAAc,CAAC;IACxD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,qFAAqF;SAC9F,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC;IACrC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO;YACL,OAAO,EAAE,KAAK;YACd,gBAAgB,EAAE,IAAI;YACtB,MAAM,EACJ,cAAc,CAAC,eAAe,KAAK,aAAa;gBAC9C,CAAC,CAAC,aAAa,SAAS,CAAC,GAAG,oFAAoF;gBAChH,CAAC,CAAC,cAAc,CAAC,eAAe,KAAK,OAAO;oBAC1C,CAAC,CAAC,aAAa,SAAS,CAAC,GAAG,wFAAwF;oBACpH,CAAC,CAAC,aAAa,SAAS,CAAC,GAAG,iBAAiB;SACpD,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,KAAK,mBAAmB,EAAE,CAAC;QACnC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,gBAAgB,EAAE,MAAM;YACxB,MAAM,EAAE,aAAa,MAAM,kBAAkB,SAAS,CAAC,GAAG,gBAAgB;SAC3E,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,uBAAuB,CAAC,cAAc,CAAC,CAAC;QACrD,OAAO;YACL,OAAO,EAAE,KAAK;YACd,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,IAAI;gBACV,CAAC,CAAC,aAAa,SAAS,CAAC,GAAG,mBAAmB,IAAI,EAAE;gBACrD,CAAC,CAAC,aAAa,SAAS,CAAC,GAAG,oEAAoE;SACnG,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,KAAK,cAAc,IAAI,qBAAqB,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QAClF,OAAO;YACL,OAAO,EAAE,IAAI;YACb,gBAAgB,EAAE,MAAM;YACxB,MAAM,EAAE,aAAa,MAAM,oCAAoC,SAAS,CAAC,GAAG,iCAAiC;SAC9G,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;QAC9B,OAAO;YACL,OAAO,EAAE,KAAK;YACd,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,aAAa,SAAS,CAAC,GAAG,gFAAgF;SACnH,CAAC;IACJ,CAAC;IACD,OAAO;QACL,OAAO,EAAE,KAAK;QACd,gBAAgB,EAAE,IAAI;QACtB,MAAM,EAAE,sDAAsD;KAC/D,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe;IACtB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,KAAK,MAAM,SAAS,IAAI;QACtB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,oBAAoB,CAAC;QACxC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,uBAAuB,CAAC;KAC5C,EAAE,CAAC;QACF,IAAI,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;IAC9C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY,EAAE,OAAe;IAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,OAAO,OAAO,KAAK,MAAM,OAAO,EAAE,IAAI,OAAO,KAAK,OAAO,OAAO,GAAG,CAAC;AACtE,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,uBAAuB,CAAC,KAAe;IAC9C,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5E,IAAI,OAAO;YAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CAAC,UAAkB,EAAE,UAAkB;IAC9E,MAAM,aAAa,GAAG,eAAe,EAAE,CAAC;IACxC,IAAI,CAAC,aAAa;QAAE,OAAO,EAAE,CAAC;IAC9B,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IACvF,IAAI,UAAU,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAEjC,IAAI,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,IAAI,qBAAqB,GAAG,KAAK,CAAC,MAAM,CAAC;IACzC,KAAK,IAAI,KAAK,GAAG,UAAU,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAClE,IAAI,qBAAqB,KAAK,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAChF,qBAAqB,GAAG,KAAK,CAAC;QAChC,CAAC;QACD,IAAI,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC;YACrD,QAAQ,GAAG,KAAK,CAAC;YACjB,MAAM;QACR,CAAC;IACH,CAAC;IACD,wEAAwE;IACxE,4CAA4C;IAC5C,IAAI,QAAQ,KAAK,KAAK,CAAC,MAAM;QAAE,QAAQ,GAAG,qBAAqB,CAAC;IAEhE,OAAO,uBAAuB,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;AACxE,CAAC;AAQD,MAAM,uBAAuB,GAAG,2DAA2D,CAAC;AAE5F,4FAA4F;AAC5F,MAAM,UAAU,qBAAqB,CACnC,UAAkB,EAClB,UAAkB;IAElB,MAAM,aAAa,GAAG,eAAe,EAAE,CAAC;IACxC,IAAI,CAAC,aAAa;QAAE,OAAO,EAAE,CAAC;IAC9B,OAAO,iBAAiB,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AACxF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,SAAiB,EACjB,UAAkB,EAClB,UAAkB;IAElB,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IACvF,IAAI,UAAU,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IAErF,MAAM,QAAQ,GAAyB,EAAE,CAAC;IAC1C,IAAI,KAA2B,CAAC;IAChC,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,KAAK,IAAI,CAAC,SAAS;YAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACtF,KAAK,GAAG,SAAS,CAAC;QAClB,SAAS,GAAG,KAAK,CAAC;IACpB,CAAC,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3D,IAAI,MAAM,EAAE,CAAC;YACX,UAAU,EAAE,CAAC;YACb,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,CAAC,CAAC,aAAa,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;gBAAE,MAAM;YAC/E,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;YACnD,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,IAAI,EAAE,CAAC;YACT,UAAU,EAAE,CAAC;YACb,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;YAC1D,SAAS,GAAG,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjD,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IACD,UAAU,EAAE,CAAC;IACb,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAClE,CAAC;AAaD,MAAM,qBAAqB,GAA8B;IACvD,aAAa,EAAE,QAAQ;IACvB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,SAAS,eAAe,CACtB,OAAkB,EAClB,KAAyB,EACzB,SAAuC,EACvC,UAA6C;IAE7C,MAAM,WAAW,GAAG,UAAU;SAC3B,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,KAAK,aAAa,CAAC;SAC1D,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtC,8EAA8E;IAC9E,IACE,WAAW,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QACvC,WAAW,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QAC3C,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC9B,CAAC;QACD,OAAO,GAAG,2BAA2B,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;IAC7G,CAAC;IACD,oGAAoG;IACpG,IAAI,OAAO,KAAK,OAAO,IAAI,SAAS,KAAK,gBAAgB,EAAE,CAAC;QAC1D,OAAO,GAAG,WAAW,kCAAkC,KAAK,oCAAoC,CAAC;IACnG,CAAC;IACD,OAAO,GAAG,WAAW,mBAAmB,qBAAqB,CAAC,OAAO,CAAC,YAAY,KAAK,QAAQ,CAAC;AAClG,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,YAAY,CAAC,IAAqB;IAChD,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,WAAW,SAAS,CAAC,CAAC;AAC1D,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,kBAAkB,CAChC,cAAqC,EACrC,SAAqC;IAErC,OAAO,cAAc,CAAC,MAAM,KAAK,SAAS;QACxC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC7D,CAAC,CAAC,EAAE,GAAG,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE;QAChD,CAAC,CAAC,cAAc,CAAC;AACrB,CAAC;AAID;;;GAGG;AACH,KAAK,UAAU,kBAAkB,CAC/B,UAAkB,EAClB,mBAAoD;IAEpD,IAAI,UAAU,GAAwB,EAAE,CAAC;IACzC,IAAI,UAA2C,CAAC;IAChD,IAAI,CAAC;QACH,UAAU,GAAG,MAAM,sBAAsB,CAAC,UAAU,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,CAAC,KAAK,YAAY,mBAAmB,CAAC;YAAE,MAAM,KAAK,CAAC;QACzD,UAAU,GAAG,KAAK,CAAC;IACrB,CAAC;IACD,MAAM,UAAU,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAqB,EAAE,EAAE,CAC3D,OAAO,KAAK,aAAa,IAAI,KAAK,KAAK,MAAM,CAAC;IAChD,MAAM,UAAU,GAAG,mBAAmB,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACtF,IAAI,UAAU,EAAE,SAAS,KAAK,QAAQ,EAAE,CAAC;QACvC,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;IACxE,CAAC;SAAM,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/D,CAAC;AAED,mFAAmF;AACnF,KAAK,UAAU,YAAY,CACzB,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAqB,EAChD,UAAkB,EAClB,mBAAoD;IAEpD,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC;QACjC,UAAU;QACV,UAAU,EAAE,oBAAoB,EAAE;QAClC,OAAO;QACP,KAAK;QACL,MAAM,EAAE,IAAI;QACZ,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CAAC,CAAC;IACH,+FAA+F;IAC/F,MAAM,OAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAC7C,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,KAAK,OAAO,IAAI,UAAU,CAAC,MAAM,KAAK,MAAM,CAC/E,CAAC;IACF,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO;YACL,OAAO;YACP,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC;YAC7B,OAAO,EAAE,GAAG,WAAW,SAAS;YAChC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO;SAC5E,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,uBAAuB,CAAC,OAAO,EAAE;QAC9C,eAAe,EAAE,WAAW,EAAE;QAC9B,OAAO,EAAE,KAAK;KACf,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,OAAO;QAAE,OAAO,SAAS,CAAC;IACvC,OAAO;QACL,OAAO;QACP,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,OAAO,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,iBAAiB,CAAC;QAC9E,MAAM,EAAE,MAAM,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAkB,EAClB,UAAyD,EAAE;IAE3D,MAAM,KAAK,GAAsB,EAAE,CAAC;IACpC,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,OAAmB,EAAE,EAAE;QACvD,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,OAAO,CAAC;YAAE,OAAO;QAChE,MAAM,UAAU,GACd,KAAK,YAAY,mBAAmB,IAAI,KAAK,CAAC,IAAI,KAAK,2BAA2B,CAAC;QACrF,KAAK,CAAC,IAAI,CAAC;YACT,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW;YACrD,OAAO,EAAE,GAAG,WAAW,UAAU,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7D,MAAM,EAAE,KAAK,CAAC,OAAO;SACtB,CAAC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB,CACzD,UAAU,EACV,OAAO,CAAC,mBAAmB,CAC5B,CAAC;IACF,IAAI,UAAU;QAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IACvC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;YACpF,IAAI,IAAI;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;gBAAE,MAAM,KAAK,CAAC;YAC3C,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AA0BD,qFAAqF;AACrF,0EAA0E;AAC1E,SAAS,yBAAyB,CAAC,IAAc;IAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,IAAI,KAAK,CAAC,gDAAgD,CAAC;SACnE,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,EAAE;QAChF,QAAQ,EAAE,MAAM;QAChB,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IACH,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;QAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;QAC3B,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,SAAS,EAAE,CAAC,CAAC,KAAK,CAChB,CAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE;QAC9D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;KACnB,CAAC,CACH;CACF,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC;IACpC,qBAAqB;IACrB,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;CACxD,CAAC,CAAC;AAEH,8FAA8F;AAC9F,MAAM,UAAU,yBAAyB,CACvC,UAAkB,EAClB,SAA6B,yBAAyB;IAEtD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,eAAe,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IACpF,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,sCAAsC,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;IACjG,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;IAC/D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,iBAAiB,CAC9B,MAAM,EACN,qBAAqB,EACrB,GAAG,WAAW,wBAAwB,CACvC,CAAC;QACF,IAAI,WAAW,IAAI,MAAM;YAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;QAClE,OAAO;YACL,SAAS,EAAE,EAAE;YACb,KAAK,EAAE,mDAAmD,MAAM,CAAC,OAAO,EAAE;SAC3E,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAChG,OAAO;YACL,SAAS,EAAE,EAAE;YACb,KAAK,EAAE,wDAAwD,MAAM,CAAC,MAAM,MAAM,MAAM,EAAE;SAC3F,CAAC;IACJ,CAAC;AACH,CAAC;AAsCD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAiC;IAEjC,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,IAAI,gBAAgB,CAAC;IAC1D,0EAA0E;IAC1E,0CAA0C;IAC1C,MAAM,eAAe,GAAG,oBAAoB,EAAE,CAAC;IAE/C,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,aAAa,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IACjF,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1C,2EAA2E;QAC3E,4DAA4D;QAC5D,MAAM,MAAM,GACV,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,0BAA0B,OAAO,CAAC,MAAM,EAAE,CAAC;QAChG,OAAO;YACL,EAAE,EAAE,KAAK;YACT,WAAW,EAAE,KAAK;YAClB,gBAAgB,EAAE,oBAAoB,EAAE;YACxC,eAAe;YACf,gBAAgB,EAAE,EAAE;YACpB,YAAY,EAAE,EAAE;YAChB,SAAS,EAAE,EAAE;YACb,kBAAkB,EAAE,EAAE;YACtB,UAAU,EAAE,EAAE;YACd,OAAO,EAAE;gBACP,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,4BAA4B,KAAK,CAAC,gBAAgB,YAAY,MAAM,0BAA0B,eAAe,gBAAgB;aACvI;SACF,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,MAAM,eAAe,GAAG,oBAAoB,EAAE,CAAC;IAC/C,IAAI,eAAe,KAAK,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC/C,wEAAwE;QACxE,0DAA0D;QAC1D,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,aAAa,eAAe,EAAE,CAAC,CAAC,CAAC;QAC1E,MAAM,eAAe,GAAG,oBAAoB,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,eAAe,KAAK,eAAe,CAAC;QAC/F,MAAM,OAAO,GAAG,QAAQ;YACtB,CAAC,CAAC,sCAAsC,eAAe,SAAS,KAAK,CAAC,gBAAgB,mCAAmC,eAAe,kBAAkB,WAAW,6CAA6C,KAAK,CAAC,gBAAgB,GAAG;YAC3O,CAAC,CAAC,sCAAsC,eAAe,SAAS,KAAK,CAAC,gBAAgB,qDAAqD,eAAe,qDAAqD,eAAe,KAAK,CAAC;QACtO,OAAO;YACL,EAAE,EAAE,KAAK;YACT,WAAW,EAAE,KAAK;YAClB,gBAAgB,EAAE,eAAe;YACjC,UAAU,EAAE,eAAe;YAC3B,eAAe;YACf,gBAAgB,EAAE,EAAE;YACpB,YAAY,EAAE,EAAE;YAChB,SAAS,EAAE,EAAE;YACb,kBAAkB,EAAE,EAAE;YACtB,UAAU,EAAE,EAAE;YACd,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE;SACrC,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,wEAAwE;IACxE,0EAA0E;IAC1E,4EAA4E;IAC5E,oCAAoC;IACpC,MAAM,UAAU,GAAG,KAAK,CAAC,eAAe;QACtC,CAAC,CAAC,MAAM,KAAK,CAAC,eAAe,CAAC,eAAe,EAAE,eAAe,EAAE;YAC5D,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;IACxF,IAAI,eAAe,EAAE,CAAC;QACpB,8EAA8E;QAC9E,uEAAuE;QACvE,6EAA6E;QAC7E,qEAAqE;QACrE,OAAO;YACL,EAAE,EAAE,KAAK;YACT,WAAW,EAAE,IAAI;YACjB,gBAAgB,EAAE,eAAe;YACjC,eAAe;YACf,gBAAgB,EAAE,EAAE;YACpB,YAAY,EAAE,EAAE;YAChB,SAAS,EAAE,EAAE;YACb,kBAAkB,EAAE,EAAE;YACtB,UAAU;YACV,OAAO,EAAE;gBACP,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,uBAAuB,eAAe,sCAAsC,eAAe,CAAC,EAAE,cAAc,eAAe,CAAC,OAAO,8EAA8E,WAAW,+BAA+B;aACrQ;SACF,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,6EAA6E;IAC7E,8EAA8E;IAC9E,8EAA8E;IAC9E,0BAA0B;IAC1B,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;IACrF,IAAI,YAAY,GAAyB,EAAE,CAAC;IAC5C,IAAI,iBAAqC,CAAC;IAC1C,IAAI,CAAC;QACH,YAAY,GAAG,qBAAqB,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;IACzE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,iBAAiB,GAAG,wCAAwC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IACvH,CAAC;IACD,MAAM,IAAI,GAAG,yBAAyB,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAEnF,OAAO;QACL,EAAE,EAAE,IAAI;QACR,WAAW,EAAE,IAAI;QACjB,eAAe;QACf,gBAAgB,EAAE,eAAe;QACjC,gBAAgB;QAChB,YAAY;QACZ,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;QAC9D,UAAU;KACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"upgrade-service.js","sourceRoot":"","sources":["../../src/services/upgrade-service.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,11 @@
3
3
  "schemaVersion": "1.0.0",
4
4
  "protocolVersion": "1.8.0",
5
5
  "pipelineVersion": "0.59.1",
6
- "pluginVersion": "3.1.0",
6
+ "pluginVersion": "3.1.1",
7
7
  "adapters": [
8
8
  {
9
9
  "id": "claude-code",
10
- "version": "3.1.0",
10
+ "version": "3.1.1",
11
11
  "capabilityLevel": "product",
12
12
  "installScopes": [
13
13
  "user",
@@ -19,7 +19,7 @@
19
19
  },
20
20
  {
21
21
  "id": "codex",
22
- "version": "3.1.0",
22
+ "version": "3.1.1",
23
23
  "capabilityLevel": "product",
24
24
  "installScopes": [
25
25
  "user",
@@ -31,7 +31,7 @@
31
31
  },
32
32
  {
33
33
  "id": "cursor",
34
- "version": "3.1.0",
34
+ "version": "3.1.1",
35
35
  "capabilityLevel": "workflow",
36
36
  "installScopes": [
37
37
  "project"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "kind": "openplanr-capability-map",
3
3
  "schemaVersion": "1.0.0",
4
- "pluginVersion": "3.1.0",
4
+ "pluginVersion": "3.1.1",
5
5
  "families": [
6
6
  {
7
7
  "id": "planning",
@@ -5,14 +5,14 @@
5
5
  "name": "OpenPlanr"
6
6
  },
7
7
  "metadata": {
8
- "version": "3.1.0",
8
+ "version": "3.1.1",
9
9
  "description": "Generated local OpenPlanr package."
10
10
  },
11
11
  "plugins": [
12
12
  {
13
13
  "name": "planr",
14
14
  "source": "./openplanr",
15
- "version": "3.1.0",
15
+ "version": "3.1.1",
16
16
  "description": "Close the loop from intent to delivery. Plan, design, build, review, and operate from durable context in your repository.",
17
17
  "strict": true
18
18
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "planr",
3
3
  "displayName": "OpenPlanr",
4
- "version": "3.1.0",
4
+ "version": "3.1.1",
5
5
  "description": "Close the loop from intent to delivery. Plan, design, build, review, and operate from durable context in your repository.",
6
6
  "author": {
7
7
  "name": "OpenPlanr",
@@ -12,7 +12,7 @@
12
12
  },
13
13
  {
14
14
  "path": ".claude-plugin/plugin.json",
15
- "digest": "sha256:f2850c567da9de551ab8f99dc48cc3f5344ef7ef52835fbfc45e1480c9eb4832"
15
+ "digest": "sha256:da8312ed5048fb3162638a0206b377f608cbab9a3458b131cffe420deb916fd7"
16
16
  },
17
17
  {
18
18
  "path": "agents/planr-backend.md",
@@ -60,7 +60,7 @@
60
60
  },
61
61
  {
62
62
  "path": "README.md",
63
- "digest": "sha256:db9965aaa457d7d8deb499cf4b61acd171ea80d1b748710f0e3d29c6d06e96a7"
63
+ "digest": "sha256:2eb77dce6bb5132ba8b49cd51b0b192cb3aaacfe04efb0c36ff44b1d50cc906e"
64
64
  },
65
65
  {
66
66
  "path": "references/agents/shared/modes/default/backend.md",
@@ -1127,5 +1127,5 @@
1127
1127
  "digest": "sha256:79cb62f3f8b0c36ef55c9424ca694a37448f90170183d13d0654d500613da414"
1128
1128
  }
1129
1129
  ],
1130
- "contentDigest": "sha256:52878a8addd33242af3f97ef5be8970433905a0ea9c9a28652fd6d19e23e7451"
1130
+ "contentDigest": "sha256:349f3b53d9f70ce7ebc1f708beb9ba7bf818f06a177805428d9a8608c6a45e4e"
1131
1131
  }
@@ -17,7 +17,7 @@ Follow with `/planr:plan` to decompose the specification into stories and tasks,
17
17
  ## Install the CLI
18
18
 
19
19
  Several skills call the deterministic `openplanr` CLI from the `openplanr` npm package, which ships
20
- this plugin at the same version (3.1.0):
20
+ this plugin at the same version (3.1.1):
21
21
 
22
22
  ```bash
23
23
  npm install -g openplanr
@@ -16,7 +16,7 @@
16
16
  },
17
17
  {
18
18
  "path": "manifest.json",
19
- "digest": "sha256:6893f105f30ad5300dd8a617575929ba3662809840a2903dce386802d93ad501"
19
+ "digest": "sha256:4a0bbb1c9f13a14c31bd45251b8e4c7e64d6470b646a96ed42da422366c83746"
20
20
  },
21
21
  {
22
22
  "path": "rules/planr-artifact.mdc",
@@ -979,5 +979,5 @@
979
979
  "digest": "sha256:b4db7b75b694c2aef2a37be2128e4635302f3473e09236aa1f37a33dcf3590b4"
980
980
  }
981
981
  ],
982
- "contentDigest": "sha256:d596cc6a5f40c22e7deff61709e528e5bde7e58a1e8455b7fe676e505af83d1f"
982
+ "contentDigest": "sha256:387fcd82565278f8879376c3f07e63f0fa1c5ab438940d47878505f9faf62269"
983
983
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openplanr",
3
- "version": "3.1.0",
3
+ "version": "3.1.1",
4
4
  "ruleCount": 30,
5
5
  "rules": [
6
6
  "rules/planr-artifact.mdc",
@@ -4,14 +4,14 @@
4
4
  "name": "OpenPlanr"
5
5
  },
6
6
  "metadata": {
7
- "version": "3.1.0",
7
+ "version": "3.1.1",
8
8
  "description": "Generated local OpenPlanr package."
9
9
  },
10
10
  "plugins": [
11
11
  {
12
12
  "name": "planr",
13
13
  "source": "./openplanr",
14
- "version": "3.1.0",
14
+ "version": "3.1.1",
15
15
  "description": "Close the loop from intent to delivery. Plan, design, build, review, and operate from durable context in your repository.",
16
16
  "strict": true
17
17
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "planr",
3
- "version": "3.1.0",
3
+ "version": "3.1.1",
4
4
  "description": "Close the loop from intent to delivery. Plan, design, build, review, and operate from durable context in your repository.",
5
5
  "author": {
6
6
  "name": "OpenPlanr",
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": ".codex-plugin/plugin.json",
11
- "digest": "sha256:07a02189b2c82e4d332cbd759135409524910bbd4717ccfe6c2e74b96321cfc4"
11
+ "digest": "sha256:6f288d371a3eaa379bab8f5bf403db7d7d01735586127fbbc9de7a147611c1bc"
12
12
  },
13
13
  {
14
14
  "path": "CONNECTORS.md",
@@ -1219,5 +1219,5 @@
1219
1219
  "digest": "sha256:79cb62f3f8b0c36ef55c9424ca694a37448f90170183d13d0654d500613da414"
1220
1220
  }
1221
1221
  ],
1222
- "contentDigest": "sha256:372c149e069a573b51ae4e828ebbd08202b7ea43b70fcd2ba669de4477ea68d3"
1222
+ "contentDigest": "sha256:3999bf32674be1c5c7cc99c3f1d4a3e698711b947ee85c04d0386521882f82c0"
1223
1223
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openplanr",
3
- "version": "3.1.0",
3
+ "version": "3.1.1",
4
4
  "description": "Deterministic OpenPlanr utilities for planning storage, validation, rendering, setup, diagnostics, and GitHub/Linear synchronization",
5
5
  "type": "module",
6
6
  "main": "./dist/cli/index.js",