specrails-core 5.0.0 → 5.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.
Files changed (48) hide show
  1. package/README.md +103 -310
  2. package/bin/specrails-core.mjs +3 -1
  3. package/dist/installer/cli.js +4 -0
  4. package/dist/installer/cli.js.map +1 -1
  5. package/dist/installer/commands/framework.js +64 -49
  6. package/dist/installer/commands/framework.js.map +1 -1
  7. package/dist/installer/commands/init.js +108 -66
  8. package/dist/installer/commands/init.js.map +1 -1
  9. package/dist/installer/commands/update.js +86 -74
  10. package/dist/installer/commands/update.js.map +1 -1
  11. package/dist/installer/commands/v5-migration.js +14 -0
  12. package/dist/installer/commands/v5-migration.js.map +1 -1
  13. package/dist/installer/phases/framework-lifecycle.js +2 -0
  14. package/dist/installer/phases/framework-lifecycle.js.map +1 -1
  15. package/dist/installer/phases/scaffold.js +198 -258
  16. package/dist/installer/phases/scaffold.js.map +1 -1
  17. package/dist/installer/runtime/pipeline-state.js +801 -0
  18. package/dist/installer/runtime/pipeline-state.js.map +1 -0
  19. package/dist/installer/util/exec.js +6 -1
  20. package/dist/installer/util/exec.js.map +1 -1
  21. package/dist/installer/util/fs.js +141 -2
  22. package/dist/installer/util/fs.js.map +1 -1
  23. package/dist/installer/util/install-transaction.js +266 -0
  24. package/dist/installer/util/install-transaction.js.map +1 -0
  25. package/dist/installer/util/registry.js +20 -0
  26. package/dist/installer/util/registry.js.map +1 -1
  27. package/docs/ci-cd.md +57 -0
  28. package/docs/user-docs/codex-vs-claude-code.md +23 -151
  29. package/docs/user-docs/core-updates.md +70 -0
  30. package/docs/user-docs/provider-pipelines.md +53 -0
  31. package/integration-contract.json +179 -66
  32. package/package.json +5 -2
  33. package/templates/agents/sr-developer.md +9 -11
  34. package/templates/agents/sr-reviewer.md +26 -33
  35. package/templates/codex-skills/batch-implement/SKILL.md +58 -244
  36. package/templates/codex-skills/implement/SKILL.md +136 -338
  37. package/templates/codex-skills/rails/sr-architect/SKILL.md +7 -0
  38. package/templates/codex-skills/rails/sr-developer/SKILL.md +13 -0
  39. package/templates/codex-skills/rails/sr-reviewer/SKILL.md +39 -5
  40. package/templates/codex-skills/retry/SKILL.md +37 -117
  41. package/templates/commands/specrails/batch-implement.md +16 -288
  42. package/templates/commands/specrails/implement.md +62 -1057
  43. package/templates/commands/specrails/retry.md +22 -314
  44. package/templates/gemini-commands/batch-implement.toml +28 -40
  45. package/templates/gemini-commands/implement.toml +55 -114
  46. package/templates/gemini-commands/retry.toml +21 -0
  47. package/templates/kimi/specrails/run-skill.mjs +51 -2
  48. package/templates/runtime/provider-pipeline.md +55 -0
@@ -4,9 +4,9 @@ import { InstallerError, PrerequisiteError } from '../util/errors.js';
4
4
  import { info, ok, step, warn } from '../util/logger.js';
5
5
  import { copyDir, isDir, pathExists, readTextFile } from '../util/fs.js';
6
6
  import { loadInstallConfig, resolveConfigPath } from '../phases/install-config.js';
7
- import { buildManifest, writeManifestFiles } from '../phases/manifest.js';
8
7
  import { derivedPaths, detectAvailability, resolveProvider } from '../phases/provider-detect.js';
9
- import { frameworkRoot, resolveArtifacts } from '../util/registry.js';
8
+ import { frameworkRoot, resolveArtifacts, recordSuccessfulInstall } from '../util/registry.js';
9
+ import { assertNoCoreDowngrade, currentFrameworkVersion, withFrameworkLifecycleLock, withInstallRollback } from '../util/install-transaction.js';
10
10
  import { migratePreV5Install } from './v5-migration.js';
11
11
  import { ensureFramework, installOpenSpecProject, reassembleWorkspaceProviders, snapshotWorkspaceProviderSelections, warnUnknownSelectedAgents, } from './init.js';
12
12
  const VALID_ONLY = new Set([
@@ -28,9 +28,8 @@ export async function runUpdate(flags) {
28
28
  // workspace (desktop's registry entry already exists, so even `allocate:false`
29
29
  // returns it). All Specrails artifacts (the specrails-version marker, manifest,
30
30
  // install-config) live under `artifactRoot`.
31
- const relocate = flags.relocate === true || process.env.SPECRAILS_RELOCATE === '1';
32
31
  const { artifactRoot, codeRoot } = resolveArtifacts(repoRoot, {
33
- allocate: relocate,
32
+ allocate: false,
34
33
  allocator: 'core-standalone',
35
34
  home: process.env.SPECRAILS_REGISTRY_HOME,
36
35
  coreVersion: currentVersion,
@@ -45,8 +44,9 @@ export async function runUpdate(flags) {
45
44
  if (!pathExists(marker)) {
46
45
  throw new PrerequisiteError(`No existing specrails install detected at ${repoRoot}. Run \`npx specrails-core init\` first.`);
47
46
  }
48
- const previousVersion = readExistingVersion(artifactRoot);
49
- const previousSelections = snapshotWorkspaceProviderSelections(artifactRoot);
47
+ let previousVersion = readExistingVersion(artifactRoot);
48
+ assertNoCoreDowngrade(previousVersion, currentVersion);
49
+ assertNoCoreDowngrade(currentFrameworkVersion(frameworkRoot(process.env.SPECRAILS_REGISTRY_HOME)), currentVersion);
50
50
  // Provider can be FORCED via --provider (e.g. specrails-desktop updating one
51
51
  // provider on a multi-provider workspace, where auto-detection would always
52
52
  // resolve `.claude` first and never reach codex/gemini/kimi). Absent ⇒ auto-detect
@@ -68,15 +68,6 @@ export async function runUpdate(flags) {
68
68
  }
69
69
  const { providerDir } = derivedPaths(provider);
70
70
  ok(`Detected provider: ${provider} (${providerDir})`);
71
- if (artifactRoot !== codeRoot) {
72
- resolveArtifacts(repoRoot, {
73
- allocate: true,
74
- allocator: 'core-standalone',
75
- home: process.env.SPECRAILS_REGISTRY_HOME,
76
- providers: [provider],
77
- coreVersion: currentVersion,
78
- });
79
- }
80
71
  // ─── Resolve --only scope ────────────────────────────────────────
81
72
  const scope = resolveScope(flags.only);
82
73
  if (scope === 'web-manager') {
@@ -95,66 +86,87 @@ export async function runUpdate(flags) {
95
86
  `for ${previousVersion ?? '(unknown)'} → ${currentVersion}.`);
96
87
  return { repoRoot, previousVersion, currentVersion, provider, dryRun, scope };
97
88
  }
98
- // ─── v5 migration: remove artefacts a pre-v5 install left behind ─────
99
- // Runs BEFORE the re-scaffold so obsolete agents/commands/staging are gone
100
- // before the fresh v5 template set is placed. Reserved paths (profiles, custom-*)
101
- // and files the installer never owned are left untouched.
102
- if (scope === 'all' || scope === 'core') {
103
- migratePreV5Install({ artifactRoot, providerDir });
104
- }
105
- step(`Update: refreshing scaffold [scope=${scope}] (${previousVersion ?? '?'} → ${currentVersion})`);
106
- if (scope === 'all' || scope === 'core') {
107
- // Bundled-framework update: re-materialize the framework to the (possibly
108
- // new) version dir, atomically swap `current`, then RE-ASSEMBLE the
109
- // workspace (re-link the static subtrees at the new `current` + re-seed the
110
- // project layer). `assembleProjectWorkspace` rewrites the manifest itself.
111
- const fwDir = frameworkRoot(process.env.SPECRAILS_REGISTRY_HOME);
112
- ensureFramework({
113
- scriptDir,
114
- frameworkDir: fwDir,
115
- provider,
116
- providerDir,
117
- version: currentVersion,
118
- selectedAgents,
89
+ const fwDir = frameworkRoot(process.env.SPECRAILS_REGISTRY_HOME);
90
+ return withFrameworkLifecycleLock(fwDir, async () => {
91
+ previousVersion = readExistingVersion(artifactRoot);
92
+ if (!pathExists(marker))
93
+ throw new PrerequisiteError('No existing specrails install detected at ' + repoRoot + '. Run init first.');
94
+ assertNoCoreDowngrade(previousVersion, currentVersion);
95
+ assertNoCoreDowngrade(currentFrameworkVersion(fwDir), currentVersion);
96
+ const previousSelections = snapshotWorkspaceProviderSelections(artifactRoot);
97
+ const surfaces = [
98
+ ...['.claude', '.codex', '.gemini', '.kimi-code', 'AGENTS.md', 'GEMINI.md', '.gitignore'].map((name) => path.join(artifactRoot, name)),
99
+ ...['specrails-version', 'specrails-manifest.json', 'setup-templates', 'runtime'].map((name) => path.join(artifactRoot, '.specrails', name)),
100
+ path.join(fwDir, 'current'),
101
+ // Contents deliberately NOT snapshotted: `installFramework` rebuilds a
102
+ // version tree whenever its content stamp does not match and stages
103
+ // through a temp dir, so copying the whole framework store per install
104
+ // insured a risk that is already covered. A version dir this install
105
+ // CREATED is still removed on rollback.
106
+ { path: path.join(fwDir, currentVersion), snapshotContents: false },
107
+ ];
108
+ return withInstallRollback(surfaces, async () => {
109
+ // ─── v5 migration: remove artefacts a pre-v5 install left behind ─────
110
+ // Runs BEFORE the re-scaffold so obsolete agents/commands/staging are gone
111
+ // before the fresh v5 template set is placed. Reserved paths (profiles, custom-*)
112
+ // and files the installer never owned are left untouched.
113
+ if (scope === 'all' || scope === 'core') {
114
+ for (const installedProvider of new Set([provider, ...Object.keys(previousSelections)])) {
115
+ migratePreV5Install({ artifactRoot, providerDir: derivedPaths(installedProvider).providerDir });
116
+ }
117
+ }
118
+ step(`Update: refreshing scaffold [scope=${scope}] (${previousVersion ?? '?'} → ${currentVersion})`);
119
+ if (scope === 'all' || scope === 'core') {
120
+ // Bundled-framework update: re-materialize the framework to the (possibly
121
+ // new) version dir, atomically swap `current`, then RE-ASSEMBLE the
122
+ // workspace (re-link the static subtrees at the new `current` + re-seed the
123
+ // project layer). `assembleProjectWorkspace` rewrites the manifest itself.
124
+ ensureFramework({
125
+ scriptDir,
126
+ frameworkDir: fwDir,
127
+ provider,
128
+ providerDir,
129
+ version: currentVersion,
130
+ selectedAgents,
131
+ requiredProviders: Object.keys(previousSelections),
132
+ });
133
+ reassembleWorkspaceProviders({
134
+ workspace: artifactRoot,
135
+ frameworkDir: fwDir,
136
+ version: currentVersion,
137
+ codeRoot,
138
+ scriptDir,
139
+ selectedProvider: provider,
140
+ selectedAgents: config?.provider === provider
141
+ ? selectedAgents
142
+ : previousSelections[provider] ?? selectedAgents,
143
+ previousSelections,
144
+ // In-repo updates COPY real files; relocated workspaces symlink.
145
+ copyStatics: artifactRoot === codeRoot,
146
+ });
147
+ if (provider === 'kimi' || provider === 'gemini') {
148
+ await installOpenSpecProject(codeRoot, provider, artifactRoot);
149
+ }
150
+ ok(`Re-linked ${providerDir}/ at framework ${currentVersion} + rewrote manifest`);
151
+ }
152
+ else if (scope === 'rules' || scope === 'agents') {
153
+ rescaffoldComponent(scope, { scriptDir, artifactRoot });
154
+ info(`Refreshed ${scope}; complete framework remains ${previousVersion ?? 'unknown'}. Run a full update to advance its version.`);
155
+ }
156
+ const installedVersion = readExistingVersion(artifactRoot);
157
+ if ((scope === 'all' || scope === 'core') && installedVersion !== currentVersion) {
158
+ throw new InstallerError(`Update did not install the expected framework ${currentVersion}; found ${installedVersion ?? 'none'}`, 41);
159
+ }
160
+ if (artifactRoot !== codeRoot && (scope === 'all' || scope === 'core')) {
161
+ recordSuccessfulInstall(repoRoot, { home: process.env.SPECRAILS_REGISTRY_HOME, providers: [provider], coreVersion: currentVersion });
162
+ }
163
+ step('Update complete');
164
+ info(`specrails-core ${previousVersion ?? '?'} → ${installedVersion ?? '?'}`);
165
+ // Terminal sentinel for programmatic consumers (see comment in init.ts).
166
+ ok('update complete');
167
+ return { repoRoot, previousVersion, currentVersion, provider, dryRun: false, scope, installedVersion };
119
168
  });
120
- reassembleWorkspaceProviders({
121
- workspace: artifactRoot,
122
- frameworkDir: fwDir,
123
- version: currentVersion,
124
- codeRoot,
125
- scriptDir,
126
- selectedProvider: provider,
127
- selectedAgents: config?.provider === provider
128
- ? selectedAgents
129
- : previousSelections[provider] ?? selectedAgents,
130
- previousSelections,
131
- // In-repo updates COPY real files; relocated workspaces symlink.
132
- copyStatics: artifactRoot === codeRoot,
133
- });
134
- if (provider === 'kimi') {
135
- await installOpenSpecProject(codeRoot, provider, artifactRoot);
136
- }
137
- ok(`Re-linked ${providerDir}/ at framework ${currentVersion} + rewrote manifest`);
138
- }
139
- else if (scope === 'rules' || scope === 'agents') {
140
- rescaffoldComponent(scope, { scriptDir, artifactRoot });
141
- step('Update: rewriting manifest');
142
- const manifest = buildManifest({
143
- scriptDir,
144
- repoRoot: artifactRoot,
145
- version: currentVersion,
146
- providers: [provider],
147
- primaryProvider: provider,
148
- });
149
- const { manifestPath, versionPath } = writeManifestFiles(artifactRoot, manifest);
150
- ok(`Wrote ${path.relative(artifactRoot, manifestPath)}`);
151
- ok(`Wrote ${path.relative(artifactRoot, versionPath)}`);
152
- }
153
- step('Update complete');
154
- info(`specrails-core ${previousVersion ?? '?'} → ${currentVersion}`);
155
- // Terminal sentinel for programmatic consumers (see comment in init.ts).
156
- ok('update complete');
157
- return { repoRoot, previousVersion, currentVersion, provider, dryRun: false, scope };
169
+ });
158
170
  }
159
171
  /**
160
172
  * Re-applies a single subtree (rules or agents) from the bundled
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/installer/commands/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/installer/commands/update.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import path from 'node:path';
2
+ import { lstatSync } from 'node:fs';
2
3
  import { info, ok } from '../util/logger.js';
3
4
  import { pathExists, removePath } from '../util/fs.js';
4
5
  import { isReservedPath, repoRelative } from '../util/paths.js';
@@ -53,6 +54,19 @@ export function migratePreV5Install(input) {
53
54
  const remove = (abs) => {
54
55
  if (!pathExists(abs))
55
56
  return;
57
+ // Parent symlinks/junctions belong to an immutable shared framework. The
58
+ // new assembly replaces the workspace link; never delete its old target.
59
+ for (let parent = path.dirname(abs); parent !== artifactRoot; parent = path.dirname(parent)) {
60
+ if (parent === path.dirname(parent))
61
+ return;
62
+ try {
63
+ if (lstatSync(parent).isSymbolicLink())
64
+ return;
65
+ }
66
+ catch {
67
+ return;
68
+ }
69
+ }
56
70
  const rel = repoRelative(artifactRoot, abs);
57
71
  if (isReservedPath(rel))
58
72
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"v5-migration.js","sourceRoot":"","sources":["../../../src/installer/commands/v5-migration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"v5-migration.js","sourceRoot":"","sources":["../../../src/installer/commands/v5-migration.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import path from 'node:path';
2
+ import { assertNoCoreDowngrade, currentFrameworkVersion } from '../util/install-transaction.js';
2
3
  import { InstallerError } from '../util/errors.js';
3
4
  import { isDir, pathExists } from '../util/fs.js';
4
5
  import { readRegistryOrEmpty } from '../util/registry.js';
@@ -105,6 +106,7 @@ export function assertFrameworkVersionComplete(frameworkDir, version, requiredPr
105
106
  * fails, existing workspaces continue resolving through the previous version.
106
107
  */
107
108
  export function materializeFrameworkVersion(input) {
109
+ assertNoCoreDowngrade(currentFrameworkVersion(input.frameworkDir), input.version);
108
110
  const required = resolveRequiredFrameworkProviders(input);
109
111
  if (required.length === 0) {
110
112
  throw new InstallerError(`framework version ${input.version} has no requested or registered provider`, 41);
@@ -1 +1 @@
1
- {"version":3,"file":"framework-lifecycle.js","sourceRoot":"","sources":["../../../src/installer/phases/framework-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,EACL,YAAY,GAEb,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,oBAAoB,EACpB,+BAA+B,EAC/B,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,eAAe,CAAA;AAEtB;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAwB;IACtD,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,MAAM;CACP,CAAA;AAgBD,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,CACL,KAAK,KAAK,QAAQ;QAClB,KAAK,KAAK,OAAO;QACjB,KAAK,KAAK,QAAQ;QAClB,KAAK,KAAK,MAAM,CACjB,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,MAA0B;IACjD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAA;IAC9B,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;AACvE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CACxC,YAAoB,EACpB,OAAe;IAEf,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACnD,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC7C,MAAM,EAAE,WAAW,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;QAC9C,OAAO,CACL,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAC9C,UAAU,CAAC,kBAAkB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CACxD,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iCAAiC,CAC/C,KAA6C;IAE7C,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAW,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;IAEzD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IACxD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrD,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YAC7C,IAAI,UAAU,CAAC,QAAQ,CAAC;gBAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAClD,CAAC;QACD,IAAI,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC;YAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IAC5E,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,0BAA0B,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,CAAC,EAAE,CAAC;QACjF,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACxB,CAAC;IAED,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAA;AAClC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,8BAA8B,CAC5C,YAAoB,EACpB,OAAe,EACf,iBAAsC;IAEtC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACnD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,cAAc,CACtB,qBAAqB,OAAO,2BAA2B,UAAU,EAAE,EACnE,EAAE,CACH,CAAA;IACH,CAAC;IAED,MAAM,QAAQ,GACZ,iBAAiB,CAAC,MAAM,GAAG,CAAC;QAC1B,CAAC,CAAC,eAAe,CAAC,iBAAiB,CAAC;QACpC,CAAC,CAAC,0BAA0B,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IAEvD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,cAAc,CACtB,qBAAqB,OAAO,8CAA8C,EAC1E,EAAE,CACH,CAAA;IACH,CAAC;IAED,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,KAAK,MAAM,QAAQ,IAAI,QAAQ,EAAE,CAAC;QAChC,MAAM,EAAE,WAAW,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;QAC9C,MAAM,OAAO,GAAG,+BAA+B,CAC7C,UAAU,EACV,OAAO,EACP,QAAQ,EACR,WAAW,CACZ,CAAA;QACD,IAAI,OAAO;YAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,KAAK,OAAO,EAAE,CAAC,CAAA;IACvD,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,cAAc,CACtB,qBAAqB,OAAO,4CAA4C;YACtE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EACrB,EAAE,CACH,CAAA;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAuC;IAEvC,MAAM,QAAQ,GAAG,iCAAiC,CAAC,KAAK,CAAC,CAAA;IACzD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,cAAc,CACtB,qBAAqB,KAAK,CAAC,OAAO,0CAA0C,EAC5E,EAAE,CACH,CAAA;IACH,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,QAAQ,EAAE,CAAC;QAChC,gBAAgB,CAAC;YACf,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,QAAQ;YACR,WAAW,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,WAAW;YAC/C,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC,CAAA;IACJ,CAAC;IAED,8BAA8B,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC3E,oBAAoB,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IACvD,OAAO,QAAQ,CAAA;AACjB,CAAC"}
1
+ {"version":3,"file":"framework-lifecycle.js","sourceRoot":"","sources":["../../../src/installer/phases/framework-lifecycle.ts"],"names":[],"mappings":"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"}