opensip-cli 0.1.16 → 0.1.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bootstrap/bootstrap-diagnostics-buffer.d.ts +1 -0
- package/dist/bootstrap/bootstrap-diagnostics-buffer.d.ts.map +1 -1
- package/dist/bootstrap/bootstrap-diagnostics-buffer.js +1 -0
- package/dist/bootstrap/bootstrap-diagnostics-buffer.js.map +1 -1
- package/dist/bootstrap/build-per-run-scope.d.ts +7 -0
- package/dist/bootstrap/build-per-run-scope.d.ts.map +1 -1
- package/dist/bootstrap/build-per-run-scope.js +11 -23
- package/dist/bootstrap/build-per-run-scope.js.map +1 -1
- package/dist/bootstrap/discovery-diagnostics.d.ts +2 -1
- package/dist/bootstrap/discovery-diagnostics.d.ts.map +1 -1
- package/dist/bootstrap/discovery-diagnostics.js +5 -5
- package/dist/bootstrap/discovery-diagnostics.js.map +1 -1
- package/dist/bootstrap/execute-post-bailout-bootstrap.d.ts.map +1 -1
- package/dist/bootstrap/execute-post-bailout-bootstrap.js +103 -65
- package/dist/bootstrap/execute-post-bailout-bootstrap.js.map +1 -1
- package/dist/bootstrap/index.d.ts +3 -0
- package/dist/bootstrap/index.d.ts.map +1 -1
- package/dist/bootstrap/index.js +41 -23
- package/dist/bootstrap/index.js.map +1 -1
- package/dist/bootstrap/pre-action-runtime.d.ts +2 -0
- package/dist/bootstrap/pre-action-runtime.d.ts.map +1 -1
- package/dist/bootstrap/register-authored-tools.d.ts +7 -5
- package/dist/bootstrap/register-authored-tools.d.ts.map +1 -1
- package/dist/bootstrap/register-authored-tools.js +14 -9
- package/dist/bootstrap/register-authored-tools.js.map +1 -1
- package/dist/bootstrap/register-tools-discovery.d.ts +6 -1
- package/dist/bootstrap/register-tools-discovery.d.ts.map +1 -1
- package/dist/bootstrap/register-tools-discovery.js +17 -5
- package/dist/bootstrap/register-tools-discovery.js.map +1 -1
- package/dist/bootstrap/render.d.ts.map +1 -1
- package/dist/bootstrap/render.js +35 -11
- package/dist/bootstrap/render.js.map +1 -1
- package/dist/bootstrap/startup-timing.d.ts +16 -0
- package/dist/bootstrap/startup-timing.d.ts.map +1 -0
- package/dist/bootstrap/startup-timing.js +42 -0
- package/dist/bootstrap/startup-timing.js.map +1 -0
- package/dist/bootstrap/tool-trust.d.ts +46 -6
- package/dist/bootstrap/tool-trust.d.ts.map +1 -1
- package/dist/bootstrap/tool-trust.js +149 -7
- package/dist/bootstrap/tool-trust.js.map +1 -1
- package/dist/bootstrap/validate-tool.d.ts +2 -2
- package/dist/bootstrap/validate-tool.js +2 -2
- package/dist/commands/tools/create-templates.d.ts.map +1 -1
- package/dist/commands/tools/create-templates.js +7 -8
- package/dist/commands/tools/create-templates.js.map +1 -1
- package/dist/commands/tools/create.d.ts.map +1 -1
- package/dist/commands/tools/create.js +22 -6
- package/dist/commands/tools/create.js.map +1 -1
- package/dist/commands/tools/install.d.ts.map +1 -1
- package/dist/commands/tools/install.js +14 -4
- package/dist/commands/tools/install.js.map +1 -1
- package/dist/commands/tools/list.d.ts +1 -0
- package/dist/commands/tools/list.d.ts.map +1 -1
- package/dist/commands/tools/list.js +44 -7
- package/dist/commands/tools/list.js.map +1 -1
- package/dist/commands/tools/trust-config.d.ts +8 -0
- package/dist/commands/tools/trust-config.d.ts.map +1 -0
- package/dist/commands/tools/trust-config.js +64 -0
- package/dist/commands/tools/trust-config.js.map +1 -0
- package/dist/commands/tools/uninstall.d.ts.map +1 -1
- package/dist/commands/tools/uninstall.js +7 -0
- package/dist/commands/tools/uninstall.js.map +1 -1
- package/dist/env/host-env-specs.js +13 -13
- package/dist/env/host-env-specs.js.map +1 -1
- package/dist/error-handler.js +1 -1
- package/dist/error-handler.js.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/ui/views/tools-views.d.ts.map +1 -1
- package/dist/ui/views/tools-views.js +5 -3
- package/dist/ui/views/tools-views.js.map +1 -1
- package/package.json +34 -34
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* snapshot onto the per-run scope in `buildPerRunScope`.
|
|
7
7
|
*/
|
|
8
8
|
import { BootstrapDiagnosticsCollector, type CliDiagnostic } from '@opensip-cli/core';
|
|
9
|
+
export { createStartupTimer, type StartupTimingEvent } from './startup-timing.js';
|
|
9
10
|
/** Reset and return a fresh bootstrap diagnostics buffer (call once per bootstrap). */
|
|
10
11
|
export declare function resetBootstrapDiagnosticsBuffer(): BootstrapDiagnosticsCollector;
|
|
11
12
|
/** The active bootstrap buffer, lazily created when callers record outside bootstrap. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap-diagnostics-buffer.d.ts","sourceRoot":"","sources":["../../src/bootstrap/bootstrap-diagnostics-buffer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,6BAA6B,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"bootstrap-diagnostics-buffer.d.ts","sourceRoot":"","sources":["../../src/bootstrap/bootstrap-diagnostics-buffer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,6BAA6B,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEtF,OAAO,EAAE,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAIlF,uFAAuF;AACvF,wBAAgB,+BAA+B,IAAI,6BAA6B,CAG/E;AAED,yFAAyF;AACzF,wBAAgB,6BAA6B,IAAI,6BAA6B,CAG7E;AAED,wEAAwE;AACxE,wBAAgB,wBAAwB,IAAI,SAAS,aAAa,EAAE,CAEnE"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* snapshot onto the per-run scope in `buildPerRunScope`.
|
|
7
7
|
*/
|
|
8
8
|
import { BootstrapDiagnosticsCollector } from '@opensip-cli/core';
|
|
9
|
+
export { createStartupTimer } from './startup-timing.js';
|
|
9
10
|
let buffer;
|
|
10
11
|
/** Reset and return a fresh bootstrap diagnostics buffer (call once per bootstrap). */
|
|
11
12
|
export function resetBootstrapDiagnosticsBuffer() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap-diagnostics-buffer.js","sourceRoot":"","sources":["../../src/bootstrap/bootstrap-diagnostics-buffer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,6BAA6B,EAAsB,MAAM,mBAAmB,CAAC;AAEtF,IAAI,MAAiD,CAAC;AAEtD,uFAAuF;AACvF,MAAM,UAAU,+BAA+B;IAC7C,MAAM,GAAG,IAAI,6BAA6B,EAAE,CAAC;IAC7C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,6BAA6B;IAC3C,MAAM,KAAK,IAAI,6BAA6B,EAAE,CAAC;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,wBAAwB;IACtC,OAAO,6BAA6B,EAAE,CAAC,IAAI,EAAE,CAAC;AAChD,CAAC"}
|
|
1
|
+
{"version":3,"file":"bootstrap-diagnostics-buffer.js","sourceRoot":"","sources":["../../src/bootstrap/bootstrap-diagnostics-buffer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,6BAA6B,EAAsB,MAAM,mBAAmB,CAAC;AAEtF,OAAO,EAAE,kBAAkB,EAA2B,MAAM,qBAAqB,CAAC;AAElF,IAAI,MAAiD,CAAC;AAEtD,uFAAuF;AACvF,MAAM,UAAU,+BAA+B;IAC7C,MAAM,GAAG,IAAI,6BAA6B,EAAE,CAAC;IAC7C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,6BAA6B;IAC3C,MAAM,KAAK,IAAI,6BAA6B,EAAE,CAAC;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,wBAAwB;IACtC,OAAO,6BAA6B,EAAE,CAAC,IAAI,EAAE,CAAC;AAChD,CAAC"}
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
*/
|
|
20
20
|
import { type CliDiagnostic, type LanguageRegistry, type Logger, type ProjectContext, RunScope, type ToolPluginManifest, type ToolProvenance, type ToolRegistry } from '@opensip-cli/core';
|
|
21
21
|
import type { loadCliDefaults } from './cli-defaults.js';
|
|
22
|
+
import type { StartupTimingEvent } from './startup-timing.js';
|
|
22
23
|
/** Inputs required to build a fully wired per-run scope. */
|
|
23
24
|
export interface BuildPerRunScopeInput {
|
|
24
25
|
readonly project: ProjectContext;
|
|
@@ -52,6 +53,12 @@ export interface BuildPerRunScopeInput {
|
|
|
52
53
|
* Startup bootstrap diagnostics gathered before this scope was built (ADR-0060).
|
|
53
54
|
*/
|
|
54
55
|
readonly bootstrapDiagnostics?: readonly CliDiagnostic[];
|
|
56
|
+
/**
|
|
57
|
+
* Process-startup phase timings gathered before Commander preAction entered
|
|
58
|
+
* this run scope. Re-emitted here so normal CommandOutcome diagnostics carry
|
|
59
|
+
* the same local timing facts as logs.
|
|
60
|
+
*/
|
|
61
|
+
readonly startupTimings?: readonly StartupTimingEvent[];
|
|
55
62
|
readonly apiKey?: string;
|
|
56
63
|
readonly noCloud?: boolean;
|
|
57
64
|
readonly logger: Logger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-per-run-scope.d.ts","sourceRoot":"","sources":["../../src/bootstrap/build-per-run-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH,OAAO,EAKL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,MAAM,EAEX,KAAK,cAAc,EAGnB,QAAQ,EAIR,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAS3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"build-per-run-scope.d.ts","sourceRoot":"","sources":["../../src/bootstrap/build-per-run-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH,OAAO,EAKL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,MAAM,EAEX,KAAK,cAAc,EAGnB,QAAQ,EAIR,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAS3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAoD9D,4DAA4D;AAC5D,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IACzD,QAAQ,CAAC,UAAU,EAAE;QACnB,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;QACrC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;KAC9B,CAAC;IACF,QAAQ,CAAC,SAAS,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAClD;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,SAAS,cAAc,EAAE,CAAC;IAC/C;;OAEG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IACzD;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACxD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,EAAE;QACX,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;KACrC,CAAC;CACH;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,QAAQ,CA8MvE"}
|
|
@@ -67,7 +67,7 @@ function installScopeContribution(scope, tool, contribution) {
|
|
|
67
67
|
* but all inputs are explicit and side effects are contained.
|
|
68
68
|
*/
|
|
69
69
|
export function buildPerRunScope(input) {
|
|
70
|
-
const { project, runId, cliDefaults, registries, manifests, provenance, bootstrapDiagnostics, apiKey, noCloud, logger, ui, } = input;
|
|
70
|
+
const { project, runId, cliDefaults, registries, manifests, provenance, bootstrapDiagnostics, startupTimings, apiKey, noCloud, logger, ui, } = input;
|
|
71
71
|
const { languages, tools } = registries;
|
|
72
72
|
const scopeBootstrapDiagnostics = new BootstrapDiagnosticsCollector();
|
|
73
73
|
for (const diagnostic of bootstrapDiagnostics ?? []) {
|
|
@@ -156,6 +156,15 @@ export function buildPerRunScope(input) {
|
|
|
156
156
|
// Close the datastore on scope teardown — the "consumer responsibility"
|
|
157
157
|
// RunScope.dispose() documents. No-op when no command opened it.
|
|
158
158
|
scope.onDispose(datastoreThunk.dispose);
|
|
159
|
+
for (const timing of startupTimings ?? []) {
|
|
160
|
+
scope.diagnostics.event('load', 'debug', `startup phase '${timing.name}' completed`, {
|
|
161
|
+
source: 'startup',
|
|
162
|
+
phase: timing.name,
|
|
163
|
+
durationMs: timing.durationMs,
|
|
164
|
+
sinceStartMs: timing.sinceStartMs,
|
|
165
|
+
...(timing.skipped === true ? { skipped: true } : {}),
|
|
166
|
+
});
|
|
167
|
+
}
|
|
159
168
|
// Observability of the assembly step (consistent with the contributeScope /
|
|
160
169
|
// capabilities diagnostics below). Do NOT log the `repo` VALUE at debug — it
|
|
161
170
|
// can be a filesystem path; log the boolean `hasRepo` instead.
|
|
@@ -233,22 +242,7 @@ export function buildPerRunScope(input) {
|
|
|
233
242
|
scope.diagnostics.event('validate', 'debug', `config composed for ${toolConfigNamespaces} tool namespace(s)`);
|
|
234
243
|
return scope;
|
|
235
244
|
}
|
|
236
|
-
/**
|
|
237
|
-
* Assemble the cloud-aware {@link RunCorrelation} bag (B2). Extracted from
|
|
238
|
-
* {@link buildPerRunScope} so the builder stays under the cognitive-complexity
|
|
239
|
-
* cap and the cloud-active gate + repo derivation read as one cohesive unit.
|
|
240
|
-
*
|
|
241
|
-
* `cloudActive` mirrors `resolveSignalSink`'s gate (a resolved key AND not
|
|
242
|
-
* `--no-cloud` AND `sync !== false`): an API key resolves (flag → env → config),
|
|
243
|
-
* egress is not opted out, and the user/project did not set `sync: false`.
|
|
244
|
-
*
|
|
245
|
-
* The free-form `repo` join key (project-root basename, or cwd basename when
|
|
246
|
-
* there is no project — cwd is the floor, Assumption 2) is attached ONLY when
|
|
247
|
-
* `cloudActive`; never an empty sentinel. `repoId`/`tenantId` are NOT locally
|
|
248
|
-
* resolvable in the OSS CLI today, so they are omitted (the future
|
|
249
|
-
* locally-cached surrogate slot). Returns `cloudActive`/`traceId` alongside the
|
|
250
|
-
* bag for the assembly-step diagnostics.
|
|
251
|
-
*/
|
|
245
|
+
/** Assemble the cloud-aware {@link RunCorrelation} bag and diagnostics facts. */
|
|
252
246
|
function assembleCorrelation(input) {
|
|
253
247
|
const cloudActive = resolveApiKey(input.apiKey) !== undefined &&
|
|
254
248
|
input.noCloud !== true &&
|
|
@@ -265,15 +259,9 @@ function assembleCorrelation(input) {
|
|
|
265
259
|
};
|
|
266
260
|
return { correlation, cloudActive, traceId };
|
|
267
261
|
}
|
|
268
|
-
// Helper duplicated from pre-action-hook for now (small, can be shared later if it grows).
|
|
269
262
|
function configDocumentSlot(project, configDocument) {
|
|
270
263
|
return project.scope === 'project' && project.configPath !== undefined
|
|
271
264
|
? { configDocument: configDocument }
|
|
272
265
|
: {};
|
|
273
266
|
}
|
|
274
|
-
// Note: resolveUserPaths is used above but was in the original hook import from core.
|
|
275
|
-
// In real extraction we would import it here. For this focused GA step we keep the
|
|
276
|
-
// construction close to original to minimize diff while still thinning the hook.
|
|
277
|
-
// The important win is that pre-action-hook no longer contains the 60+ lines of
|
|
278
|
-
// scope assembly + wiring.
|
|
279
267
|
//# sourceMappingURL=build-per-run-scope.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-per-run-scope.js","sourceRoot":"","sources":["../../src/bootstrap/build-per-run-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,EACxB,kBAAkB,EAClB,0BAA0B,EAI1B,uBAAuB,EAGvB,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,GAMjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACpG,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"build-per-run-scope.js","sourceRoot":"","sources":["../../src/bootstrap/build-per-run-scope.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,11 +3,12 @@
|
|
|
3
3
|
* discovery legs (ADR-0060, Phase 3).
|
|
4
4
|
*/
|
|
5
5
|
import { type BootstrapDiagnosticsCollector, type CliDiagnostic } from '@opensip-cli/core';
|
|
6
|
+
import { type ToolTrustReason } from './tool-trust.js';
|
|
6
7
|
import type { ToolRuntimeLoad } from './admit-tool-package.js';
|
|
7
8
|
/** Manifest read failed for a discovered installed package. */
|
|
8
9
|
export declare function recordInstalledManifestInvalid(packageName: string, collector?: BootstrapDiagnosticsCollector): CliDiagnostic;
|
|
9
10
|
/** Installed tool blocked by the deny-by-default trust gate. */
|
|
10
|
-
export declare function recordInstalledTrustDenied(toolId: string, packageName: string, packageDir: string, collector?: BootstrapDiagnosticsCollector): CliDiagnostic;
|
|
11
|
+
export declare function recordInstalledTrustDenied(toolId: string, packageName: string, packageDir: string, reason?: ToolTrustReason, collector?: BootstrapDiagnosticsCollector): CliDiagnostic;
|
|
11
12
|
/** Runtime import/shape failure for an admitted installed package. */
|
|
12
13
|
export declare function recordInstalledLoadFailure(name: string, load: Extract<ToolRuntimeLoad, {
|
|
13
14
|
ok: false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-diagnostics.d.ts","sourceRoot":"","sources":["../../src/bootstrap/discovery-diagnostics.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,KAAK,6BAA6B,EAClC,KAAK,aAAa,EAEnB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"discovery-diagnostics.d.ts","sourceRoot":"","sources":["../../src/bootstrap/discovery-diagnostics.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,KAAK,6BAA6B,EAClC,KAAK,aAAa,EAEnB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAgC,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAErF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAY/D,+DAA+D;AAC/D,wBAAgB,8BAA8B,CAC5C,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,6BAA6B,GACxC,aAAa,CASf;AAED,gEAAgE;AAChE,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,MAAM,GAAE,eAA0B,EAClC,SAAS,CAAC,EAAE,6BAA6B,GACxC,aAAa,CAef;AAED,sEAAsE;AACtE,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,CAAC,eAAe,EAAE;IAAE,EAAE,EAAE,KAAK,CAAA;CAAE,CAAC,EAC7C,SAAS,CAAC,EAAE,6BAA6B,GACxC,aAAa,CAoCf;AAED,yEAAyE;AACzE,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,6BAA6B,GACxC,aAAa,CAef"}
|
|
@@ -22,18 +22,18 @@ export function recordInstalledManifestInvalid(packageName, collector) {
|
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
24
|
/** Installed tool blocked by the deny-by-default trust gate. */
|
|
25
|
-
export function recordInstalledTrustDenied(toolId, packageName, packageDir, collector) {
|
|
25
|
+
export function recordInstalledTrustDenied(toolId, packageName, packageDir, reason = 'denied', collector) {
|
|
26
26
|
return record(collector, {
|
|
27
27
|
severity: 'warning',
|
|
28
28
|
code: CLI_DIAGNOSTIC_CODES.OPENSIP_DISCOVERY_TOOL_TRUST_DENIED,
|
|
29
29
|
category: 'discovery',
|
|
30
30
|
message: `Installed tool ${packageName} (${toolId}) is not trusted to load (deny-by-default). ` +
|
|
31
|
-
`
|
|
32
|
-
`
|
|
31
|
+
`Install it with \`opensip tools install\`, list project-local installs in tools.trusted, ` +
|
|
32
|
+
`or use ${INSTALLED_TOOL_ALLOWLIST_ENV}='${toolId}' as an override.`,
|
|
33
33
|
impact: INSTALLED_TOOL_SKIPPED_IMPACT,
|
|
34
|
-
action: '
|
|
34
|
+
action: 'Use opensip tools install for managed trust, tools.trusted for project-local trust, or the env var for incident response.',
|
|
35
35
|
provenance: { toolId, packageName, discoverySource: 'installed' },
|
|
36
|
-
detail: packageDir
|
|
36
|
+
detail: `${reason}: ${packageDir}`,
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
39
|
/** Runtime import/shape failure for an admitted installed package. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-diagnostics.js","sourceRoot":"","sources":["../../src/bootstrap/discovery-diagnostics.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,0BAA0B,GAI3B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,4BAA4B,
|
|
1
|
+
{"version":3,"file":"discovery-diagnostics.js","sourceRoot":"","sources":["../../src/bootstrap/discovery-diagnostics.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute-post-bailout-bootstrap.d.ts","sourceRoot":"","sources":["../../src/bootstrap/execute-post-bailout-bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,eAAe,EAEf,UAAU,EAGV,KAAK,MAAM,EACX,KAAK,QAAQ,EACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAmB,MAAM,uBAAuB,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"execute-post-bailout-bootstrap.d.ts","sourceRoot":"","sources":["../../src/bootstrap/execute-post-bailout-bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,eAAe,EAEf,UAAU,EAGV,KAAK,MAAM,EACX,KAAK,QAAQ,EACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAmB,MAAM,uBAAuB,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAQrF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAShE,qDAAqD;AACrD,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;AAEpD,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC;IACrC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,eAAe,CAAC;IAClD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,gBAAgB,CAAC;IACpD,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,UAAU,CAAC;IACxC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC;IACxC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,cAAc,CAAC;IAChD,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,cAAc,CAAC;IAChD,QAAQ,CAAC,yBAAyB,CAAC,EAAE,OAAO,yBAAyB,CAAC;IACtE,QAAQ,CAAC,0BAA0B,CAAC,EAAE,OAAO,0BAA0B,CAAC;IACxE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,iBAAiB,CAAC;CACvD;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AA2BD;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,yBAAyB,EAChC,IAAI,GAAE,wBAA6B,GAClC,OAAO,CAAC,0BAA0B,CAAC,CAqJrC"}
|
|
@@ -13,6 +13,7 @@ import { loadOwningToolCapabilities } from './load-tool-capabilities.js';
|
|
|
13
13
|
import { maybeInitializeOwningTool, resolveOwningTool } from './owning-tool-init.js';
|
|
14
14
|
import { PRE_ACTION_PHASES } from './pre-action-bootstrap-phases.js';
|
|
15
15
|
import { isDedicatedBootstrapDiagnosticCommand, renderRelevantBootstrapDiagnostics, } from './render-bootstrap-diagnostics.js';
|
|
16
|
+
import { createStartupTimer } from './startup-timing.js';
|
|
16
17
|
const MODULE_TAG = 'cli:bootstrap';
|
|
17
18
|
const CLI_PACKAGE_NAME = 'opensip-cli';
|
|
18
19
|
function noopPhaseRecord() {
|
|
@@ -38,13 +39,23 @@ export async function executePostBailoutBootstrap(input, deps = {}) {
|
|
|
38
39
|
const record = deps.recordPhase ?? noopPhaseRecord;
|
|
39
40
|
const { plan, runtime, version, noCloud, apiKey } = input;
|
|
40
41
|
const { languages, tools, manifests, provenance, bootstrapDiagnostics } = runtime;
|
|
42
|
+
const preActionTimer = createStartupTimer();
|
|
43
|
+
let emittedTimingCount = 0;
|
|
44
|
+
const emitNewTimings = (scope) => {
|
|
45
|
+
const events = preActionTimer.events();
|
|
46
|
+
emitPreActionTimingEvents(scope, events.slice(emittedTimingCount));
|
|
47
|
+
emittedTimingCount = events.length;
|
|
48
|
+
};
|
|
41
49
|
record(PRE_ACTION_PHASES.projectSideEffects);
|
|
42
|
-
const runLogger =
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
50
|
+
const { runLogger, update } = preActionTimer.measure(PRE_ACTION_PHASES.projectSideEffects, () => {
|
|
51
|
+
const createdRunLogger = d.createRunLogger(plan.runLoggerOptions);
|
|
52
|
+
const bannerSize = plan.cliDefaults.ui?.banner ?? 'mini';
|
|
53
|
+
const checkedUpdate = preActionTimer.measure('update-check', () => d.checkForUpdate({ name: CLI_PACKAGE_NAME, version }));
|
|
54
|
+
if (checkedUpdate && (bannerSize !== 'mini' || plan.jsonOutput)) {
|
|
55
|
+
process.stderr.write(formatUpdateNag(version, checkedUpdate));
|
|
56
|
+
}
|
|
57
|
+
return { runLogger: createdRunLogger, update: checkedUpdate };
|
|
58
|
+
});
|
|
48
59
|
record(PRE_ACTION_PHASES.buildScope);
|
|
49
60
|
// B2 / GAP e: parentCommand is the FIRST segment of the invoked command path
|
|
50
61
|
// (e.g. `graph`, `fit`) — NOT a child's own `graph-shard-worker`. toolName is
|
|
@@ -52,76 +63,103 @@ export async function executePostBailoutBootstrap(input, deps = {}) {
|
|
|
52
63
|
// owning-tool resolution the preflight uses); fall back to parentCommand when
|
|
53
64
|
// the command belongs to no tool (CLI-only commands have a 1:1 name).
|
|
54
65
|
const parentCommand = plan.commandPath.split(' ')[0] ?? plan.commandName;
|
|
55
|
-
const owningTool =
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
66
|
+
const { owningTool, scope } = preActionTimer.measure(PRE_ACTION_PHASES.buildScope, () => {
|
|
67
|
+
const resolvedOwningTool = d.resolveOwningTool(tools, plan.commandName);
|
|
68
|
+
const toolName = resolvedOwningTool?.metadata.id ?? parentCommand;
|
|
69
|
+
return {
|
|
70
|
+
owningTool: resolvedOwningTool,
|
|
71
|
+
scope: d.buildPerRunScope({
|
|
72
|
+
project: plan.project,
|
|
73
|
+
runId: plan.runId,
|
|
74
|
+
cwd: plan.cwd,
|
|
75
|
+
parentCommand,
|
|
76
|
+
toolName,
|
|
77
|
+
cliDefaults: plan.cliDefaults,
|
|
78
|
+
registries: { languages, tools },
|
|
79
|
+
manifests,
|
|
80
|
+
provenance,
|
|
81
|
+
bootstrapDiagnostics,
|
|
82
|
+
startupTimings: runtime.startupTimings,
|
|
83
|
+
apiKey,
|
|
84
|
+
noCloud,
|
|
85
|
+
logger: runLogger,
|
|
86
|
+
ui: { version, update },
|
|
87
|
+
}),
|
|
88
|
+
};
|
|
72
89
|
});
|
|
90
|
+
const toolName = owningTool?.metadata.id ?? parentCommand;
|
|
73
91
|
record(PRE_ACTION_PHASES.enterScope);
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
plan.
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
scope.diagnostics.event('load', 'debug', `${tools.list().length} tool(s) loaded`);
|
|
87
|
-
scope.diagnostics.counter('tools.loaded', tools.list().length);
|
|
88
|
-
getMeter('opensip-cli').createCounter('opensip_cli.commands.started').add(1, {
|
|
89
|
-
command: plan.commandName,
|
|
90
|
-
});
|
|
91
|
-
scope.diagnostics.event('validate', 'debug', `project config resolved (scope: ${plan.project.scope})`);
|
|
92
|
-
runLogger.info({
|
|
93
|
-
evt: 'cli.run.start',
|
|
94
|
-
module: MODULE_TAG,
|
|
95
|
-
runId: plan.runId,
|
|
96
|
-
command: plan.commandName,
|
|
97
|
-
cwd: plan.cwd,
|
|
98
|
-
projectRoot: plan.project.projectRoot,
|
|
99
|
-
scope: plan.project.scope,
|
|
92
|
+
preActionTimer.measure(PRE_ACTION_PHASES.enterScope, () => {
|
|
93
|
+
d.enterScope(scope); // resilience-ok: Commander postAction in pre-action-hook.ts disposes the entered RunScope after the action completes.
|
|
94
|
+
if (!isDedicatedBootstrapDiagnosticCommand(plan.commandPath) &&
|
|
95
|
+
plan.jsonOutput !== true &&
|
|
96
|
+
plan.opts.help !== true) {
|
|
97
|
+
renderRelevantBootstrapDiagnostics(scope.bootstrapDiagnostics, toolName);
|
|
98
|
+
}
|
|
99
|
+
if (!d.isScopeEntered()) {
|
|
100
|
+
throw new SystemError('Scope was not entered before command dispatch', {
|
|
101
|
+
code: 'SYSTEM.SCOPE.NOT_ENTERED',
|
|
102
|
+
});
|
|
103
|
+
}
|
|
100
104
|
});
|
|
101
|
-
|
|
105
|
+
emitNewTimings(scope);
|
|
106
|
+
record(PRE_ACTION_PHASES.hostStartEffects);
|
|
107
|
+
preActionTimer.measure(PRE_ACTION_PHASES.hostStartEffects, () => {
|
|
108
|
+
scope.diagnostics.event('load', 'debug', `${tools.list().length} tool(s) loaded`);
|
|
109
|
+
scope.diagnostics.counter('tools.loaded', tools.list().length);
|
|
110
|
+
getMeter('opensip-cli').createCounter('opensip_cli.commands.started').add(1, {
|
|
111
|
+
command: plan.commandName,
|
|
112
|
+
});
|
|
113
|
+
scope.diagnostics.event('validate', 'debug', `project config resolved (scope: ${plan.project.scope})`);
|
|
102
114
|
runLogger.info({
|
|
103
|
-
evt: 'cli.
|
|
115
|
+
evt: 'cli.run.start',
|
|
104
116
|
module: MODULE_TAG,
|
|
105
117
|
runId: plan.runId,
|
|
118
|
+
command: plan.commandName,
|
|
106
119
|
cwd: plan.cwd,
|
|
107
120
|
projectRoot: plan.project.projectRoot,
|
|
108
|
-
|
|
121
|
+
scope: plan.project.scope,
|
|
109
122
|
});
|
|
110
|
-
|
|
111
|
-
|
|
123
|
+
if (plan.project.walkedUp > 0) {
|
|
124
|
+
runLogger.info({
|
|
125
|
+
evt: 'cli.project.discovered',
|
|
126
|
+
module: MODULE_TAG,
|
|
127
|
+
runId: plan.runId,
|
|
128
|
+
cwd: plan.cwd,
|
|
129
|
+
projectRoot: plan.project.projectRoot,
|
|
130
|
+
walkedUp: plan.project.walkedUp,
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
d.startProfiling(scope, plan.commandName);
|
|
134
|
+
});
|
|
135
|
+
emitNewTimings(scope);
|
|
112
136
|
record(PRE_ACTION_PHASES.toolPreflight);
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
137
|
+
await preActionTimer.measureAsync(PRE_ACTION_PHASES.toolPreflight, async () => {
|
|
138
|
+
// ADR-0054 M4-F: pass provenance so an EXTERNAL owning tool's initialize is
|
|
139
|
+
// skipped in-host (it runs worker-side under dispatch); bundled runs in-host.
|
|
140
|
+
await preActionTimer.measureAsync('owning-tool-initialize', () => d.maybeInitializeOwningTool(tools, plan.commandName, plan.runId, provenance));
|
|
141
|
+
const driven = await preActionTimer.measureAsync('owning-capability-load', () => d.loadOwningToolCapabilities({
|
|
142
|
+
owningTool,
|
|
143
|
+
projectDir: plan.project.projectRoot,
|
|
144
|
+
pluginsConfig: scope.configDocument?.plugins ?? {},
|
|
145
|
+
}));
|
|
146
|
+
if (driven > 0) {
|
|
147
|
+
scope.diagnostics.event('load', 'debug', `drove ${String(driven)} owning-tool capability domain(s) (see per-domain 'capability ... loaded' events for contribution counts + errors)`);
|
|
148
|
+
scope.diagnostics.counter('capabilities.driven', driven);
|
|
149
|
+
}
|
|
120
150
|
});
|
|
121
|
-
|
|
122
|
-
scope.diagnostics.event('load', 'debug', `drove ${String(driven)} owning-tool capability domain(s) (see per-domain 'capability ... loaded' events for contribution counts + errors)`);
|
|
123
|
-
scope.diagnostics.counter('capabilities.driven', driven);
|
|
124
|
-
}
|
|
151
|
+
emitNewTimings(scope);
|
|
125
152
|
return { scope, runLogger };
|
|
126
153
|
}
|
|
154
|
+
function emitPreActionTimingEvents(scope, timings) {
|
|
155
|
+
for (const timing of timings) {
|
|
156
|
+
scope.diagnostics.event('load', 'debug', `pre-action phase '${timing.name}' completed`, {
|
|
157
|
+
source: 'pre-action',
|
|
158
|
+
phase: timing.name,
|
|
159
|
+
durationMs: timing.durationMs,
|
|
160
|
+
sinceStartMs: timing.sinceStartMs,
|
|
161
|
+
...(timing.skipped === true ? { skipped: true } : {}),
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
}
|
|
127
165
|
//# sourceMappingURL=execute-post-bailout-bootstrap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute-post-bailout-bootstrap.js","sourceRoot":"","sources":["../../src/bootstrap/execute-post-bailout-bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,WAAW,GAGZ,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EACL,qCAAqC,EACrC,kCAAkC,GACnC,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"execute-post-bailout-bootstrap.js","sourceRoot":"","sources":["../../src/bootstrap/execute-post-bailout-bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
* See tool-lifecycle.ts for the ordered steps and phase split.
|
|
13
13
|
*/
|
|
14
14
|
import { type CliDiagnostic, type LanguageRegistry, type ToolPluginManifest, type ToolProvenance, type ToolRegistry } from '@opensip-cli/core';
|
|
15
|
+
import { type StartupTimingEvent } from './bootstrap-diagnostics-buffer.js';
|
|
15
16
|
export { mountAllToolCommands, EXPECTED_SCAFFOLDING_TOOL_IDS } from './register-tools.js';
|
|
16
17
|
export { admitToolPackage, importToolRuntime, type AdmissionReport, type AdmissionSection, type AdmissionSectionResult, type AdmitToolPackageOptions, } from './admit-tool-package.js';
|
|
17
18
|
export { renderResult } from './render.js';
|
|
@@ -83,5 +84,7 @@ export interface BootstrapResult {
|
|
|
83
84
|
* Transferred onto the per-run {@link RunScope} by the composition root.
|
|
84
85
|
*/
|
|
85
86
|
readonly bootstrapDiagnostics: readonly CliDiagnostic[];
|
|
87
|
+
/** Startup phase timings captured before Commander preAction enters the run scope. */
|
|
88
|
+
readonly startupTimings: readonly StartupTimingEvent[];
|
|
86
89
|
}
|
|
87
90
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bootstrap/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAKL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bootstrap/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAKL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAK3B,OAAO,EAIL,KAAK,kBAAkB,EAExB,MAAM,mCAAmC,CAAC;AAc3C,OAAO,EAAE,oBAAoB,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAI1F,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,GAC7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAoHnF;AAED,oEAAoE;AACpE,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,SAAS,cAAc,EAAE,CAAC;IAC/C;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAClD;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,EAAE,SAAS,aAAa,EAAE,CAAC;IACxD,sFAAsF;IACtF,QAAQ,CAAC,cAAc,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACxD"}
|