@msn-control/liftoff 0.8.0 → 0.9.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 (55) hide show
  1. package/README.md +11 -5
  2. package/assets/locks/frontend/package-lock.json +51 -51
  3. package/assets/locks/frontend/package.json +1 -1
  4. package/assets/locks/node-backend/package-lock.json +353 -12
  5. package/assets/locks/node-backend/package.json +3 -3
  6. package/assets/supported-stack.json +9 -9
  7. package/dist/args.js +7 -5
  8. package/dist/args.js.map +1 -1
  9. package/dist/artifact-lifecycle.d.ts +4 -0
  10. package/dist/artifact-lifecycle.js +38 -0
  11. package/dist/artifact-lifecycle.js.map +1 -0
  12. package/dist/commands.js +415 -77
  13. package/dist/commands.js.map +1 -1
  14. package/dist/file-system.d.ts +1 -1
  15. package/dist/file-system.js +171 -29
  16. package/dist/file-system.js.map +1 -1
  17. package/dist/framework-adapters.d.ts +1 -1
  18. package/dist/framework-adapters.js +9 -3
  19. package/dist/framework-adapters.js.map +1 -1
  20. package/dist/framework-validation.d.ts +1 -0
  21. package/dist/framework-validation.js +26 -0
  22. package/dist/framework-validation.js.map +1 -1
  23. package/dist/init-filesystem.js +2 -2
  24. package/dist/init-filesystem.js.map +1 -1
  25. package/dist/interactive.d.ts +13 -0
  26. package/dist/interactive.js +14 -0
  27. package/dist/interactive.js.map +1 -1
  28. package/dist/openspec-profile.d.ts +28 -0
  29. package/dist/openspec-profile.js +172 -0
  30. package/dist/openspec-profile.js.map +1 -0
  31. package/dist/planner.js +19 -1
  32. package/dist/planner.js.map +1 -1
  33. package/dist/power-apps-templates.js +15 -1
  34. package/dist/power-apps-templates.js.map +1 -1
  35. package/dist/reconcile.js +4 -10
  36. package/dist/reconcile.js.map +1 -1
  37. package/dist/repository-governance.js +4 -0
  38. package/dist/repository-governance.js.map +1 -1
  39. package/dist/templates.d.ts +5 -1
  40. package/dist/templates.js +126 -60
  41. package/dist/templates.js.map +1 -1
  42. package/dist/types.d.ts +27 -4
  43. package/docs/cli-reference.md +52 -25
  44. package/docs/configuration-and-manifests.md +39 -24
  45. package/docs/existing-repositories.md +38 -23
  46. package/docs/getting-started.md +17 -7
  47. package/docs/prerequisites.md +17 -0
  48. package/docs/project-structure.md +13 -1
  49. package/docs/repository-governance.md +2 -2
  50. package/docs/safety-and-consent.md +47 -30
  51. package/docs/spec-workflows-and-agents.md +47 -7
  52. package/docs/supported-stack.md +14 -17
  53. package/docs/troubleshooting.md +53 -8
  54. package/docs/workloads.md +9 -8
  55. package/package.json +1 -1
package/dist/templates.js CHANGED
@@ -9,6 +9,7 @@ import { renderOpenTofuProviderLock, renderOpenTofuVersions } from './opentofu-t
9
9
  import { formatCommand } from './process-runner.js';
10
10
  import { formatContainerImage, supportedStack } from './supported-stack.js';
11
11
  import { buildRepositoryGovernanceArtifacts, governancePolicyVersion } from './repository-governance.js';
12
+ import { OPEN_SPEC_DELIVERY, OPEN_SPEC_PROFILE, OPEN_SPEC_WORKFLOW_IDS } from './openspec-profile.js';
12
13
  import { renderFunctionRequirementsAsset, renderPythonLock, renderPythonPyprojectAsset } from './python-template-assets.js';
13
14
  import { workstationRequirementCatalog } from './workstation-catalog.js';
14
15
  const contentHash = (content) => `sha256:${createHash('sha256').update(content, 'utf8').digest('hex')}`;
@@ -68,60 +69,88 @@ const hasFunctionWorker = (plan) => plan.workload === 'genai' && plan.provider.i
68
69
  const functionWorkerName = (plan) => `${plan.pattern.id}-worker`;
69
70
  export function buildArtifacts(plan) {
70
71
  const artifacts = [];
71
- const add = (logicalName, category, pathParts, content) => {
72
- artifacts.push({ logicalName, category, pathParts, content: ensureTrailingNewline(content) });
73
- };
72
+ const addProject = createArtifactAdder(artifacts, 'project', 'base');
73
+ const addDesiredState = createArtifactAdder(artifacts, 'desired-state');
74
+ const addFramework = createArtifactAdder(artifacts, 'framework');
75
+ const addSeed = createArtifactAdder(artifacts, 'seed');
74
76
  switch (plan.workload) {
75
77
  case 'genai':
76
- addGenAiWorkloadArtifacts(add, plan);
78
+ addGenAiWorkloadArtifacts(addProject, addDesiredState, artifacts, plan);
77
79
  break;
78
80
  case 'standard':
79
- addStandardWorkloadArtifacts(add, plan);
81
+ addStandardWorkloadArtifacts(addProject, addDesiredState, artifacts, plan);
80
82
  break;
81
83
  case 'power-apps-code-app':
82
- addPowerAppsWorkloadArtifacts(add, plan);
84
+ addPowerAppsWorkloadArtifacts(addDesiredState, artifacts, plan);
83
85
  break;
84
86
  }
85
- addSpecWorkflowArtifacts(add, plan);
87
+ addSpecWorkflowArtifacts(addSeed, addFramework, plan);
86
88
  for (const artifact of buildRepositoryGovernanceArtifacts(plan)) {
87
- add(artifact.logicalName, artifact.category, artifact.pathParts, artifact.content);
89
+ artifacts.push({ ...artifact, content: ensureTrailingNewline(artifact.content) });
88
90
  }
89
91
  if (plan.workload !== 'power-apps-code-app' && plan.includeFrontend) {
90
- addFrontendArtifacts(add, plan);
92
+ addFrontendArtifacts(createArtifactAdder(artifacts, 'project', 'frontend'), plan);
91
93
  }
92
94
  assertImmutableGeneratedContainerReferences(artifacts);
93
95
  const manifest = buildManifest(plan, artifacts);
94
96
  artifacts.push({
95
97
  logicalName: 'manifest',
96
98
  category: 'manifest',
99
+ lifecycle: 'manifest',
97
100
  pathParts: ['liftoff.manifest.json'],
98
101
  content: `${JSON.stringify(manifest, null, 2)}\n`
99
102
  });
100
103
  return artifacts;
101
104
  }
102
- function addGenAiWorkloadArtifacts(add, plan) {
103
- addBaseArtifacts(add, plan);
105
+ function createArtifactAdder(artifacts, lifecycle, provisioningGroup) {
106
+ return (logicalName, category, pathParts, content) => {
107
+ const normalizedContent = ensureTrailingNewline(content);
108
+ if (lifecycle === 'project') {
109
+ if (!provisioningGroup) {
110
+ throw new Error(`Project artifact ${logicalName} is missing a provisioning group.`);
111
+ }
112
+ artifacts.push({
113
+ logicalName,
114
+ category,
115
+ lifecycle,
116
+ provisioningGroup,
117
+ pathParts,
118
+ content: normalizedContent
119
+ });
120
+ return;
121
+ }
122
+ artifacts.push({
123
+ logicalName,
124
+ category,
125
+ lifecycle,
126
+ pathParts,
127
+ content: normalizedContent
128
+ });
129
+ };
130
+ }
131
+ function addGenAiWorkloadArtifacts(add, addDesiredState, artifacts, plan) {
132
+ addBaseArtifacts(add, addDesiredState, plan);
104
133
  addGenAiExtensionArtifacts(add, plan, {
105
134
  backend: addBackendArtifacts,
106
135
  database: addDatabaseArtifacts,
107
136
  pattern: addPatternArtifacts,
108
137
  functions: addFunctionArtifacts
109
138
  });
110
- addApiWorkloadOperations(add, plan);
139
+ addApiWorkloadOperations(add, artifacts, plan);
111
140
  }
112
- function addStandardWorkloadArtifacts(add, plan) {
113
- addBaseArtifacts(add, plan);
141
+ function addStandardWorkloadArtifacts(add, addDesiredState, artifacts, plan) {
142
+ addBaseArtifacts(add, addDesiredState, plan);
114
143
  addStandardStackArtifacts(add, plan);
115
- addApiWorkloadOperations(add, plan);
144
+ addApiWorkloadOperations(add, artifacts, plan);
116
145
  }
117
- function addPowerAppsWorkloadArtifacts(add, plan) {
118
- addPowerAppsCodeAppArtifacts(add, plan);
119
- addPowerAppsProjectConfig(add, plan);
146
+ function addPowerAppsWorkloadArtifacts(addDesiredState, artifacts, plan) {
147
+ addPowerAppsCodeAppArtifacts(createArtifactAdder(artifacts, 'project', 'power-apps-starter'), plan);
148
+ addPowerAppsProjectConfig(addDesiredState, plan);
120
149
  }
121
- function addApiWorkloadOperations(add, plan) {
122
- addEnvironmentArtifacts(add, plan);
150
+ function addApiWorkloadOperations(add, artifacts, plan) {
151
+ addEnvironmentArtifacts(artifacts, plan);
123
152
  addDockerArtifacts(add, plan);
124
- addInfrastructureArtifacts(add, plan);
153
+ addInfrastructureArtifacts(add, artifacts, plan);
125
154
  }
126
155
  export function partitionGeneratedArtifacts(artifacts) {
127
156
  const manifest = artifacts.find((artifact) => artifact.logicalName === 'manifest');
@@ -129,9 +158,14 @@ export function partitionGeneratedArtifacts(artifacts) {
129
158
  throw new Error('Generated artifacts are missing the Liftoff manifest.');
130
159
  }
131
160
  return {
132
- durable: artifacts.filter((artifact) => artifact.logicalName !== 'manifest' && artifact.category !== 'seed' && artifact.category !== 'framework'),
133
- framework: artifacts.filter((artifact) => artifact.category === 'framework'),
134
- seed: artifacts.filter((artifact) => artifact.category === 'seed'),
161
+ liftoff: artifacts.filter((artifact) => artifact.lifecycle === 'managed-core' ||
162
+ artifact.lifecycle === 'project' ||
163
+ artifact.lifecycle === 'desired-state'),
164
+ managedCore: artifacts.filter((artifact) => artifact.lifecycle === 'managed-core'),
165
+ project: artifacts.filter((artifact) => artifact.lifecycle === 'project'),
166
+ desiredState: artifacts.filter((artifact) => artifact.lifecycle === 'desired-state'),
167
+ framework: artifacts.filter((artifact) => artifact.lifecycle === 'framework'),
168
+ seed: artifacts.filter((artifact) => artifact.lifecycle === 'seed'),
135
169
  manifest
136
170
  };
137
171
  }
@@ -163,7 +197,7 @@ export function buildManifest(plan, artifacts, options = {}) {
163
197
  environments: plan.environments.map((environment) => environment.id)
164
198
  };
165
199
  return {
166
- artifactVersion: 5,
200
+ artifactVersion: 6,
167
201
  generatedBy: 'Mission Control Liftoff',
168
202
  liftoffVersion,
169
203
  project: {
@@ -188,20 +222,30 @@ export function buildManifest(plan, artifacts, options = {}) {
188
222
  policyVersion: governancePolicyVersion,
189
223
  state: 'handoff-generated'
190
224
  },
191
- artifacts: artifacts
192
- .filter((artifact) => artifact.category !== 'seed' && artifact.category !== 'framework')
225
+ managedArtifacts: artifacts
226
+ .filter((artifact) => artifact.lifecycle === 'managed-core')
193
227
  .map((artifact) => ({
194
228
  logicalName: artifact.logicalName,
195
229
  category: artifact.category,
196
230
  pathParts: artifact.pathParts,
197
231
  contentHash: contentHash(artifact.content)
232
+ })),
233
+ projectArtifacts: options.projectArtifacts ?? artifacts
234
+ .filter((artifact) => artifact.lifecycle === 'project')
235
+ .map((artifact) => ({
236
+ logicalName: artifact.logicalName,
237
+ category: artifact.category,
238
+ pathParts: artifact.pathParts,
239
+ generatedBy: liftoffVersion,
240
+ generationHash: contentHash(artifact.content),
241
+ provisioningGroup: artifact.provisioningGroup
198
242
  }))
199
243
  };
200
244
  }
201
- function addBaseArtifacts(add, plan) {
245
+ function addBaseArtifacts(add, addDesiredState, plan) {
202
246
  add('root-readme', 'documentation', ['README.md'], renderRootReadme(plan));
203
247
  add('root-gitignore', 'project', ['.gitignore'], renderGeneratedGitignore());
204
- add('liftoff-config', 'project', ['liftoff.config.json'], JSON.stringify({
248
+ addDesiredState('liftoff-config', 'project', ['liftoff.config.json'], JSON.stringify({
205
249
  projectName: plan.projectName,
206
250
  projectType: plan.projectType.id,
207
251
  apiStack: plan.apiStack.id,
@@ -294,8 +338,9 @@ function addFunctionArtifacts(add, plan) {
294
338
  add('function-worker-funcignore', 'functions', [...workerBase, '.funcignore'], renderFunctionFuncIgnore());
295
339
  add('function-worker-gitignore', 'functions', [...workerBase, '.gitignore'], renderFunctionGitIgnore());
296
340
  }
297
- function addEnvironmentArtifacts(add, plan) {
341
+ function addEnvironmentArtifacts(artifacts, plan) {
298
342
  for (const environment of plan.environments) {
343
+ const add = createArtifactAdder(artifacts, 'project', `environment:${environment.id}`);
299
344
  add(`environment-${environment.id}-backend`, 'environment', ['environments', environment.id, 'backend.env'], plan.workload === 'genai' ? renderBackendEnv(plan, environment.id) : renderStandardEnv(plan, environment.id));
300
345
  if (plan.workload === 'genai' && hasFunctionWorker(plan)) {
301
346
  add(`environment-${environment.id}-functions`, 'environment', ['environments', environment.id, 'functions.env'], renderFunctionsEnv(plan, environment.id));
@@ -305,7 +350,7 @@ function addEnvironmentArtifacts(add, plan) {
305
350
  function addDockerArtifacts(add, plan) {
306
351
  add('docker-compose', 'local-development', ['docker-compose.yml'], renderDockerCompose(plan));
307
352
  }
308
- function addInfrastructureArtifacts(add, plan) {
353
+ function addInfrastructureArtifacts(add, artifacts, plan) {
309
354
  const base = ['infrastructure', 'opentofu', 'azure'];
310
355
  add('opentofu-versions', 'infrastructure', [...base, 'versions.tf'], renderOpenTofuVersions());
311
356
  add('opentofu-provider-lock', 'infrastructure', [...base, '.terraform.lock.hcl'], renderOpenTofuProviderLock());
@@ -317,46 +362,46 @@ function addInfrastructureArtifacts(add, plan) {
317
362
  add('opentofu-remote-state-example', 'infrastructure', [...base, 'backend.remote.example.tf'], renderTofuRemoteStateExample());
318
363
  add('opentofu-readme', 'infrastructure', [...base, 'README.md'], renderTofuReadme(plan));
319
364
  for (const environment of plan.environments) {
320
- add(`opentofu-${environment.id}-tfvars`, 'infrastructure', [...base, 'environments', `${environment.id}.tfvars`], renderTofuTfvars(plan, environment.id));
365
+ createArtifactAdder(artifacts, 'project', `environment:${environment.id}`)(`opentofu-${environment.id}-tfvars`, 'infrastructure', [...base, 'environments', `${environment.id}.tfvars`], renderTofuTfvars(plan, environment.id));
321
366
  }
322
367
  }
323
- function addSpecWorkflowArtifacts(add, plan) {
368
+ function addSpecWorkflowArtifacts(addSeed, addFramework, plan) {
324
369
  if (plan.workload === 'power-apps-code-app') {
325
370
  if (plan.specWorkflow.id === 'openspec') {
326
371
  const changeName = `bootstrap-${plan.safeProjectName}`;
327
- add('openspec-config', 'seed', ['openspec', 'config.yaml'], renderPowerAppsOpenSpecConfig(plan));
328
- add('openspec-seed-change-metadata', 'seed', ['openspec', 'changes', changeName, '.openspec.yaml'], 'schema: spec-driven');
329
- add('openspec-seed-proposal', 'seed', ['openspec', 'changes', changeName, 'proposal.md'], renderPowerAppsSeedProposal(plan));
330
- add('openspec-seed-design', 'seed', ['openspec', 'changes', changeName, 'design.md'], renderPowerAppsSeedDesign(plan));
331
- add('openspec-seed-tasks', 'seed', ['openspec', 'changes', changeName, 'tasks.md'], renderSeedTasks());
332
- add('openspec-spec-placeholder', 'seed', ['openspec', 'specs', '.gitkeep'], '');
372
+ addSeed('openspec-config', 'seed', ['openspec', 'config.yaml'], renderPowerAppsOpenSpecConfig(plan));
373
+ addSeed('openspec-seed-change-metadata', 'seed', ['openspec', 'changes', changeName, '.openspec.yaml'], 'schema: spec-driven');
374
+ addSeed('openspec-seed-proposal', 'seed', ['openspec', 'changes', changeName, 'proposal.md'], renderPowerAppsSeedProposal(plan));
375
+ addSeed('openspec-seed-design', 'seed', ['openspec', 'changes', changeName, 'design.md'], renderPowerAppsSeedDesign(plan));
376
+ addSeed('openspec-seed-tasks', 'seed', ['openspec', 'changes', changeName, 'tasks.md'], renderSeedTasks());
377
+ addSeed('openspec-spec-placeholder', 'seed', ['openspec', 'specs', '.gitkeep'], '');
333
378
  }
334
379
  else {
335
- add('spec-kit-constitution', 'seed', ['.specify', 'memory', 'constitution.md'], renderPowerAppsSpecKitConstitution(plan));
336
- add('spec-kit-spec-template', 'framework', ['.specify', 'templates', 'spec-template.md'], renderSpecKitSpecTemplate());
337
- add('spec-kit-plan-template', 'framework', ['.specify', 'templates', 'plan-template.md'], renderSpecKitPlanTemplate());
338
- add('specs-placeholder', 'seed', ['specs', '.gitkeep'], '');
380
+ addSeed('spec-kit-constitution', 'seed', ['.specify', 'memory', 'constitution.md'], renderPowerAppsSpecKitConstitution(plan));
381
+ addFramework('spec-kit-spec-template', 'framework', ['.specify', 'templates', 'spec-template.md'], renderSpecKitSpecTemplate());
382
+ addFramework('spec-kit-plan-template', 'framework', ['.specify', 'templates', 'plan-template.md'], renderSpecKitPlanTemplate());
383
+ addSeed('specs-placeholder', 'seed', ['specs', '.gitkeep'], '');
339
384
  }
340
385
  return;
341
386
  }
342
387
  if (plan.specWorkflow.id === 'openspec') {
343
388
  const changeName = `bootstrap-${plan.safeProjectName}`;
344
- add('openspec-config', 'seed', ['openspec', 'config.yaml'], renderOpenSpecConfig(plan));
345
- add('openspec-seed-change-metadata', 'seed', ['openspec', 'changes', changeName, '.openspec.yaml'], 'schema: spec-driven');
346
- add('openspec-seed-proposal', 'seed', ['openspec', 'changes', changeName, 'proposal.md'], renderSeedProposal(plan));
347
- add('openspec-seed-design', 'seed', ['openspec', 'changes', changeName, 'design.md'], renderSeedDesign(plan));
348
- add('openspec-seed-tasks', 'seed', ['openspec', 'changes', changeName, 'tasks.md'], renderSeedTasks());
349
- add('openspec-spec-placeholder', 'seed', ['openspec', 'specs', '.gitkeep'], '');
389
+ addSeed('openspec-config', 'seed', ['openspec', 'config.yaml'], renderOpenSpecConfig(plan));
390
+ addSeed('openspec-seed-change-metadata', 'seed', ['openspec', 'changes', changeName, '.openspec.yaml'], 'schema: spec-driven');
391
+ addSeed('openspec-seed-proposal', 'seed', ['openspec', 'changes', changeName, 'proposal.md'], renderSeedProposal(plan));
392
+ addSeed('openspec-seed-design', 'seed', ['openspec', 'changes', changeName, 'design.md'], renderSeedDesign(plan));
393
+ addSeed('openspec-seed-tasks', 'seed', ['openspec', 'changes', changeName, 'tasks.md'], renderSeedTasks());
394
+ addSeed('openspec-spec-placeholder', 'seed', ['openspec', 'specs', '.gitkeep'], '');
350
395
  }
351
396
  else {
352
- add('spec-kit-constitution', 'seed', ['.specify', 'memory', 'constitution.md'], renderSpecKitConstitution(plan));
353
- add('spec-kit-spec-template', 'framework', ['.specify', 'templates', 'spec-template.md'], renderSpecKitSpecTemplate());
354
- add('spec-kit-plan-template', 'framework', ['.specify', 'templates', 'plan-template.md'], renderSpecKitPlanTemplate());
355
- add('specs-placeholder', 'seed', ['specs', '.gitkeep'], '');
397
+ addSeed('spec-kit-constitution', 'seed', ['.specify', 'memory', 'constitution.md'], renderSpecKitConstitution(plan));
398
+ addFramework('spec-kit-spec-template', 'framework', ['.specify', 'templates', 'spec-template.md'], renderSpecKitSpecTemplate());
399
+ addFramework('spec-kit-plan-template', 'framework', ['.specify', 'templates', 'plan-template.md'], renderSpecKitPlanTemplate());
400
+ addSeed('specs-placeholder', 'seed', ['specs', '.gitkeep'], '');
356
401
  }
357
402
  }
358
403
  function renderPowerAppsOpenSpecConfig(plan) {
359
- return `schema: spec-driven
404
+ return `schema: spec-driven${renderOpenSpecCopilotConfig(plan)}
360
405
  context: |
361
406
  Project: ${plan.projectName}
362
407
  Workload: Microsoft Power Apps code app
@@ -374,6 +419,14 @@ rules:
374
419
  - Include npm lint and build verification.
375
420
  `;
376
421
  }
422
+ function renderOpenSpecCopilotConfig(plan) {
423
+ return plan.agents.some((agent) => agent.id === 'github-copilot')
424
+ ? `
425
+ githubCopilot:
426
+ cloudAgent: ${plan.copilotCloud}
427
+ `
428
+ : '\n';
429
+ }
377
430
  function renderPowerAppsSeedProposal(plan) {
378
431
  return `# Proposal: bootstrap-${plan.safeProjectName}
379
432
 
@@ -520,13 +573,22 @@ function renderAdvisoryReadinessGuide(plan) {
520
573
  function renderSpecWorkflowGuide(plan) {
521
574
  const agents = plan.agents.map((agent) => `${agent.label}${plan.defaultAgent?.id === agent.id ? ' (default integration)' : ''}`).join(', ');
522
575
  const ownership = plan.specWorkflow.id === 'openspec'
523
- ? 'OpenSpec core files and the selected Copilot or Claude skill integrations'
576
+ ? 'OpenSpec workflow skills, commands, configuration, and optional cloud-agent files'
524
577
  : 'Spec Kit core files, integration state, and the selected Copilot or Claude skill integrations';
578
+ const openSpecDetails = plan.specWorkflow.id === 'openspec'
579
+ ? [
580
+ `- OpenSpec profile: ${OPEN_SPEC_PROFILE}; delivery: ${OPEN_SPEC_DELIVERY}; workflows: ${OPEN_SPEC_WORKFLOW_IDS.join(', ')}`,
581
+ ...(plan.agents.some((agent) => agent.id === 'github-copilot')
582
+ ? ['- GitHub Copilot cloud agent: controlled by `githubCopilot.cloudAgent` in `openspec/config.yaml`']
583
+ : [])
584
+ ].join('\n')
585
+ : '';
525
586
  return `## Spec-Driven Workflow And Validation
526
587
 
527
588
  - Workflow: ${plan.specWorkflow.label} ${plan.framework.version}
528
589
  - AI coding agents: ${agents}
529
- - Framework ownership: the official initializer owns ${ownership}. Liftoff validates these files but excludes framework-owned output and one-time seed content from durable manifest hashes.
590
+ ${openSpecDetails ? `${openSpecDetails}\n` : ''}
591
+ - Framework ownership: the official initializer owns ${ownership}. Liftoff validates these files but excludes framework-owned output and one-time seed content from managed-core hashes.
530
592
  - Deferred tools: advisory workstation checks may be deferred. Liftoff never claims they are installed and never installs them without \`--install-tools\`.
531
593
 
532
594
  If \`liftoff doctor\` reports a selected advisory tool as missing, use its registered readiness remedy:
@@ -539,6 +601,8 @@ Validate the scaffold and workstation after setup:
539
601
  liftoff validate
540
602
  liftoff doctor
541
603
  \`\`\`
604
+
605
+ For an existing OpenSpec project, change workflow delivery with \`openspec config profile\` and refresh framework-owned files with \`openspec update\`. Plain \`liftoff update\` does not regenerate OpenSpec integrations.
542
606
  `;
543
607
  }
544
608
  function renderGeneratedConfigurationGuide(plan) {
@@ -569,9 +633,11 @@ function renderGeneratedUpdateGuide() {
569
633
 
570
634
  \`single-maintainer-gitflow\` repository governance generates a local handoff only. Review \`.liftoff/governance/README.md\`, commit and push the project, then run a selected-agent launcher for read-only Phase 0. Live enforcement requires a separately approved governance change.
571
635
 
572
- \`liftoff update\` immediately applies safe managed changes without prompting in interactive, redirected, and automated environments. Use \`liftoff update --check\` for a read-only human drift report, or \`liftoff update --check --json\` as an automation gate that exits 0 when clean and 2 when drift exists.
636
+ \`liftoff update\` maintains only explicit Liftoff core files, currently the repository-governance policy, context, guide, and selected-agent launchers. Use \`liftoff update --check\` for a read-only core report, or \`liftoff update --check --json\` as an automation gate that exits 0 when core state is clean and 2 when maintenance is available.
637
+
638
+ Application source, tests, dependencies and locks, schemas, containers, environment files, documentation, and infrastructure become project-owned after generation. No update mode, including \`--force\`, can restore or replace them. Enabling a previously absent frontend or environment in \`liftoff.config.json\` may provision that component once at absent destinations; a collision blocks the whole component and cannot be forced.
573
639
 
574
- Local or user-owned conflicts are skipped by default. Review the reported paths, commit or copy local work, and use \`liftoff update --force\` only when every listed overwrite is intended. An occupied destination with different user bytes remains preserved without force, while an identical destination is adopted without rewriting it. Update never deletes orphans or installs dependencies. A failed transaction is rolled back, but Liftoff retains no backup after a successful overwrite.
640
+ Project template modernization is a separately reviewed production change and is not performed by ordinary update or by the existing non-Liftoff \`migrate\` command. Managed-core conflicts are skipped by default; after reviewing every listed core path, \`liftoff update --force\` may replace only those core conflicts. Managed-core orphans remain on disk, and update never installs dependencies. A failed transaction is rolled back, but Liftoff retains no backup after a successful core overwrite.
575
641
 
576
642
  Liftoff rejects malformed, traversal, absolute, drive-qualified, UNC, separator-containing, or symlink-escaping manifest paths before artifact access. If the manifest is unsafe or malformed, restore \`liftoff.manifest.json\` from version control or regenerate the project with a matching Liftoff version; do not hand-edit unsafe paths. Run \`liftoff <command> --help\` for command-specific syntax because unknown flags, subcommands, values, and extra arguments fail before any write.
577
643
  `;
@@ -2526,7 +2592,7 @@ function renderOpenSpecConfig(plan) {
2526
2592
  : plan.apiStack.id === 'node-fastify'
2527
2593
  ? 'Keep backend API code under backend/src.'
2528
2594
  : 'Keep the Go entrypoint under backend/cmd/api and reusable code under backend/internal.';
2529
- return `schema: spec-driven
2595
+ return `schema: spec-driven${renderOpenSpecCopilotConfig(plan)}
2530
2596
 
2531
2597
  context: |
2532
2598
  Project generated by Mission Control Liftoff.
@@ -2562,7 +2628,7 @@ rules:
2562
2628
  const functionsRule = hasFunctionWorker(plan) ? `
2563
2629
  - Keep Azure Functions trigger adapters under functions/${functionWorkerName(plan)}.
2564
2630
  - Keep reusable GenAI orchestration under backend/orchestration.` : '';
2565
- return `schema: spec-driven
2631
+ return `schema: spec-driven${renderOpenSpecCopilotConfig(plan)}
2566
2632
 
2567
2633
  context: |
2568
2634
  Project generated by Mission Control Liftoff.
@@ -1 +1 @@
1
- {"version":3,"file":"templates.js","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"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"}