@msn-control/liftoff 0.1.1 → 0.2.0
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/README.md +13 -1
- package/dist/cli.js +0 -0
- package/dist/commands.d.ts +12 -0
- package/dist/commands.js +509 -26
- package/dist/commands.js.map +1 -1
- package/dist/file-system.d.ts +6 -1
- package/dist/file-system.js +48 -4
- package/dist/file-system.js.map +1 -1
- package/dist/migrate-plan.d.ts +10 -0
- package/dist/migrate-plan.js +85 -0
- package/dist/migrate-plan.js.map +1 -0
- package/dist/reconcile.d.ts +14 -0
- package/dist/reconcile.js +0 -0
- package/dist/reconcile.js.map +1 -0
- package/dist/scan.d.ts +21 -0
- package/dist/scan.js +140 -0
- package/dist/scan.js.map +1 -0
- package/dist/semver.d.ts +1 -0
- package/dist/semver.js +53 -0
- package/dist/semver.js.map +1 -0
- package/dist/templates.js +267 -4
- package/dist/templates.js.map +1 -1
- package/dist/types.d.ts +3 -1
- package/dist/version.d.ts +1 -0
- package/dist/version.js +8 -0
- package/dist/version.js.map +1 -0
- package/package.json +3 -3
package/dist/templates.js
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
|
+
import { createHash } from 'node:crypto';
|
|
2
|
+
import { liftoffVersion } from './version.js';
|
|
3
|
+
const contentHash = (content) => `sha256:${createHash('sha256').update(content, 'utf8').digest('hex')}`;
|
|
1
4
|
const pyModule = (value) => value.replace(/-/g, '_');
|
|
2
5
|
const titleCase = (value) => value.replace(/(^|[-_\s])([a-z])/g, (_match, prefix, letter) => `${prefix ? ' ' : ''}${letter.toUpperCase()}`).trim();
|
|
6
|
+
const hasFunctionWorker = (plan) => plan.provider.id === 'azure' && plan.pattern.worker;
|
|
7
|
+
const functionWorkerName = (plan) => `${plan.pattern.id}-worker`;
|
|
3
8
|
export function buildArtifacts(plan) {
|
|
4
9
|
const artifacts = [];
|
|
5
10
|
const add = (logicalName, category, pathParts, content) => {
|
|
@@ -9,6 +14,7 @@ export function buildArtifacts(plan) {
|
|
|
9
14
|
addBackendArtifacts(add, plan);
|
|
10
15
|
addDatabaseArtifacts(add, plan);
|
|
11
16
|
addPatternArtifacts(add, plan);
|
|
17
|
+
addFunctionArtifacts(add, plan);
|
|
12
18
|
addEnvironmentArtifacts(add, plan);
|
|
13
19
|
addDockerArtifacts(add, plan);
|
|
14
20
|
addInfrastructureArtifacts(add, plan);
|
|
@@ -27,8 +33,9 @@ export function buildArtifacts(plan) {
|
|
|
27
33
|
}
|
|
28
34
|
export function buildManifest(plan, artifacts) {
|
|
29
35
|
return {
|
|
30
|
-
artifactVersion:
|
|
36
|
+
artifactVersion: 2,
|
|
31
37
|
generatedBy: 'Mission Control Liftoff',
|
|
38
|
+
liftoffVersion,
|
|
32
39
|
project: {
|
|
33
40
|
name: plan.projectName,
|
|
34
41
|
pattern: plan.pattern.id,
|
|
@@ -41,7 +48,8 @@ export function buildManifest(plan, artifacts) {
|
|
|
41
48
|
artifacts: artifacts.map((artifact) => ({
|
|
42
49
|
logicalName: artifact.logicalName,
|
|
43
50
|
category: artifact.category,
|
|
44
|
-
pathParts: artifact.pathParts
|
|
51
|
+
pathParts: artifact.pathParts,
|
|
52
|
+
contentHash: contentHash(artifact.content)
|
|
45
53
|
}))
|
|
46
54
|
};
|
|
47
55
|
}
|
|
@@ -104,9 +112,28 @@ function addPatternArtifacts(add, plan) {
|
|
|
104
112
|
add('fine-tuned-eval-dataset', 'pattern', ['backend', 'evaluation', 'datasets', 'sample.jsonl'], '{"input":"Example request","expected":"Expected response placeholder"}');
|
|
105
113
|
}
|
|
106
114
|
}
|
|
115
|
+
function addFunctionArtifacts(add, plan) {
|
|
116
|
+
if (!hasFunctionWorker(plan)) {
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
const workerName = functionWorkerName(plan);
|
|
120
|
+
const workerBase = ['functions', workerName];
|
|
121
|
+
add('functions-readme', 'functions', ['functions', 'README.md'], renderFunctionsReadme());
|
|
122
|
+
add('function-worker-readme', 'functions', [...workerBase, 'README.md'], renderFunctionWorkerReadme(plan));
|
|
123
|
+
add('function-worker-host', 'functions', [...workerBase, 'host.json'], renderFunctionHostJson());
|
|
124
|
+
add('function-worker-local-settings', 'functions', [...workerBase, 'local.settings.example.json'], renderFunctionLocalSettings(plan));
|
|
125
|
+
add('function-worker-requirements', 'functions', [...workerBase, 'requirements.txt'], renderFunctionRequirements());
|
|
126
|
+
add('function-worker-app', 'functions', [...workerBase, 'function_app.py'], renderFunctionApp(plan));
|
|
127
|
+
add('function-worker-test', 'functions-test', [...workerBase, 'tests', 'test_function_app.py'], renderFunctionTest());
|
|
128
|
+
add('function-worker-funcignore', 'functions', [...workerBase, '.funcignore'], renderFunctionFuncIgnore());
|
|
129
|
+
add('function-worker-gitignore', 'functions', [...workerBase, '.gitignore'], renderFunctionGitIgnore());
|
|
130
|
+
}
|
|
107
131
|
function addEnvironmentArtifacts(add, plan) {
|
|
108
132
|
for (const environment of plan.environments) {
|
|
109
133
|
add(`environment-${environment.id}-backend`, 'environment', ['environments', environment.id, 'backend.env'], renderBackendEnv(plan, environment.id));
|
|
134
|
+
if (hasFunctionWorker(plan)) {
|
|
135
|
+
add(`environment-${environment.id}-functions`, 'environment', ['environments', environment.id, 'functions.env'], renderFunctionsEnv(plan, environment.id));
|
|
136
|
+
}
|
|
110
137
|
}
|
|
111
138
|
}
|
|
112
139
|
function addDockerArtifacts(add, plan) {
|
|
@@ -154,6 +181,13 @@ function addFrontendArtifacts(add, plan) {
|
|
|
154
181
|
add('frontend-dockerfile', 'frontend', ['frontend', 'Dockerfile'], renderFrontendDockerfile());
|
|
155
182
|
}
|
|
156
183
|
function renderRootReadme(plan) {
|
|
184
|
+
const functionsStackLine = hasFunctionWorker(plan) ? `- Azure Functions worker: Python v2 Service Bus trigger under \`functions/${functionWorkerName(plan)}\`
|
|
185
|
+
` : '';
|
|
186
|
+
const functionsSection = hasFunctionWorker(plan) ? `
|
|
187
|
+
## Azure Functions Worker
|
|
188
|
+
|
|
189
|
+
Azure Functions trigger adapters live under \`functions/${functionWorkerName(plan)}\`. Keep reusable GenAI orchestration under \`backend/orchestration\`; \`backend/workers\` remains the place for backend-adjacent or containerized worker code.
|
|
190
|
+
` : '';
|
|
157
191
|
return `# ${plan.projectName}
|
|
158
192
|
|
|
159
193
|
Generated by Mission Control Liftoff.
|
|
@@ -168,6 +202,7 @@ Generated by Mission Control Liftoff.
|
|
|
168
202
|
- Cache and local messaging: Redis
|
|
169
203
|
- Observability: Langfuse
|
|
170
204
|
- Local development: Docker Compose
|
|
205
|
+
${functionsStackLine}
|
|
171
206
|
${plan.includeFrontend ? '- Frontend: Vue 3 with Tailwind\n' : ''}
|
|
172
207
|
## Local Development
|
|
173
208
|
|
|
@@ -190,6 +225,7 @@ tofu apply -var-file=environments/dev.tfvars
|
|
|
190
225
|
## Spec-Driven Workflow
|
|
191
226
|
|
|
192
227
|
Selected workflow: ${plan.specWorkflow.label}.
|
|
228
|
+
${functionsSection}
|
|
193
229
|
`;
|
|
194
230
|
}
|
|
195
231
|
function renderGeneratedGitignore() {
|
|
@@ -199,6 +235,7 @@ __pycache__/
|
|
|
199
235
|
node_modules/
|
|
200
236
|
dist/
|
|
201
237
|
.env
|
|
238
|
+
migration/legacy/
|
|
202
239
|
*.tfstate
|
|
203
240
|
*.tfstate.*
|
|
204
241
|
.terraform/
|
|
@@ -594,6 +631,123 @@ function renderPatternWorker(plan) {
|
|
|
594
631
|
return None
|
|
595
632
|
`;
|
|
596
633
|
}
|
|
634
|
+
function renderFunctionsReadme() {
|
|
635
|
+
return `# Azure Functions Workers
|
|
636
|
+
|
|
637
|
+
Azure Functions trigger adapters live under \`functions/<worker-name>\`.
|
|
638
|
+
|
|
639
|
+
Keep reusable GenAI orchestration, model configuration, prompt handling, and domain logic under \`backend/orchestration\`. Use \`backend/workers\` for backend-adjacent or containerized workers; use this folder for Azure Functions runtime files such as \`host.json\`, trigger bindings, local settings, and Function app tests.
|
|
640
|
+
`;
|
|
641
|
+
}
|
|
642
|
+
function renderFunctionWorkerReadme(plan) {
|
|
643
|
+
const workerName = functionWorkerName(plan);
|
|
644
|
+
return `# ${workerName}
|
|
645
|
+
|
|
646
|
+
Azure Functions worker scaffold for ${plan.pattern.label}.
|
|
647
|
+
|
|
648
|
+
This Function app uses the Python v2 decorator programming model and a Service Bus queue trigger. The trigger adapter should stay thin: decode the message, validate the envelope, and call shared code from \`backend/orchestration\` after that shared code is packaged with the Function app.
|
|
649
|
+
|
|
650
|
+
## Local Development
|
|
651
|
+
|
|
652
|
+
\`\`\`bash
|
|
653
|
+
python -m venv .venv
|
|
654
|
+
source .venv/bin/activate
|
|
655
|
+
pip install -r requirements.txt
|
|
656
|
+
cp local.settings.example.json local.settings.json
|
|
657
|
+
func start
|
|
658
|
+
\`\`\`
|
|
659
|
+
|
|
660
|
+
On Windows, activate the virtual environment with \`.venv\\Scripts\\activate\`.
|
|
661
|
+
`;
|
|
662
|
+
}
|
|
663
|
+
function renderFunctionHostJson() {
|
|
664
|
+
return JSON.stringify({
|
|
665
|
+
version: '2.0',
|
|
666
|
+
extensionBundle: {
|
|
667
|
+
id: 'Microsoft.Azure.Functions.ExtensionBundle',
|
|
668
|
+
version: '[4.*, 5.0.0)'
|
|
669
|
+
}
|
|
670
|
+
}, null, 2);
|
|
671
|
+
}
|
|
672
|
+
function renderFunctionLocalSettings(plan) {
|
|
673
|
+
return JSON.stringify({
|
|
674
|
+
IsEncrypted: false,
|
|
675
|
+
Values: {
|
|
676
|
+
AzureWebJobsStorage: 'UseDevelopmentStorage=true',
|
|
677
|
+
FUNCTIONS_WORKER_RUNTIME: 'python',
|
|
678
|
+
SERVICEBUS_QUEUE_NAME: 'events',
|
|
679
|
+
ServiceBusConnection__fullyQualifiedNamespace: '<service-bus-namespace>.servicebus.windows.net',
|
|
680
|
+
GENAI_PATTERN: plan.pattern.id,
|
|
681
|
+
SHARED_ORCHESTRATION_ROOT: '../../backend'
|
|
682
|
+
}
|
|
683
|
+
}, null, 2);
|
|
684
|
+
}
|
|
685
|
+
function renderFunctionRequirements() {
|
|
686
|
+
return `azure-functions>=1.21.0
|
|
687
|
+
pytest>=8.2
|
|
688
|
+
`;
|
|
689
|
+
}
|
|
690
|
+
function renderFunctionApp(plan) {
|
|
691
|
+
const moduleName = pyModule(plan.pattern.id);
|
|
692
|
+
return `import json
|
|
693
|
+
import logging
|
|
694
|
+
|
|
695
|
+
import azure.functions as func
|
|
696
|
+
|
|
697
|
+
|
|
698
|
+
app = func.FunctionApp()
|
|
699
|
+
|
|
700
|
+
|
|
701
|
+
def decode_message_payload(body: str) -> dict:
|
|
702
|
+
try:
|
|
703
|
+
value = json.loads(body)
|
|
704
|
+
except json.JSONDecodeError:
|
|
705
|
+
return {"raw": body}
|
|
706
|
+
if isinstance(value, dict):
|
|
707
|
+
return value
|
|
708
|
+
return {"value": value}
|
|
709
|
+
|
|
710
|
+
|
|
711
|
+
@app.service_bus_queue_trigger(
|
|
712
|
+
arg_name="message",
|
|
713
|
+
queue_name="%SERVICEBUS_QUEUE_NAME%",
|
|
714
|
+
connection="ServiceBusConnection",
|
|
715
|
+
)
|
|
716
|
+
def process_${moduleName}_work(message: func.ServiceBusMessage) -> None:
|
|
717
|
+
payload = decode_message_payload(message.get_body().decode("utf-8"))
|
|
718
|
+
logging.info("Received ${plan.pattern.id} worker message with keys: %s", sorted(payload.keys()))
|
|
719
|
+
# Keep this adapter thin; call backend.orchestration code from packaged shared modules.
|
|
720
|
+
`;
|
|
721
|
+
}
|
|
722
|
+
function renderFunctionTest() {
|
|
723
|
+
return `from function_app import decode_message_payload
|
|
724
|
+
|
|
725
|
+
|
|
726
|
+
def test_decode_message_payload_for_json_object():
|
|
727
|
+
assert decode_message_payload('{"source_uri":"az://documents/example.pdf"}') == {
|
|
728
|
+
"source_uri": "az://documents/example.pdf"
|
|
729
|
+
}
|
|
730
|
+
|
|
731
|
+
|
|
732
|
+
def test_decode_message_payload_for_plain_text():
|
|
733
|
+
assert decode_message_payload("plain text") == {"raw": "plain text"}
|
|
734
|
+
`;
|
|
735
|
+
}
|
|
736
|
+
function renderFunctionFuncIgnore() {
|
|
737
|
+
return `.venv/
|
|
738
|
+
__pycache__/
|
|
739
|
+
.pytest_cache/
|
|
740
|
+
local.settings.json
|
|
741
|
+
tests/
|
|
742
|
+
`;
|
|
743
|
+
}
|
|
744
|
+
function renderFunctionGitIgnore() {
|
|
745
|
+
return `.venv/
|
|
746
|
+
__pycache__/
|
|
747
|
+
.pytest_cache/
|
|
748
|
+
local.settings.json
|
|
749
|
+
`;
|
|
750
|
+
}
|
|
597
751
|
function renderBackendEnv(plan, environment) {
|
|
598
752
|
const transport = environment === 'dev' ? 'redis-streams' : 'azure-service-bus';
|
|
599
753
|
return `APP_ENV=${environment}
|
|
@@ -608,6 +762,17 @@ BLOB_ENDPOINT=
|
|
|
608
762
|
LANGFUSE_HOST=
|
|
609
763
|
`;
|
|
610
764
|
}
|
|
765
|
+
function renderFunctionsEnv(plan, environment) {
|
|
766
|
+
return `APP_ENV=${environment}
|
|
767
|
+
APP_NAME=${plan.safeProjectName}
|
|
768
|
+
GENAI_PATTERN=${plan.pattern.id}
|
|
769
|
+
FUNCTIONS_WORKER_RUNTIME=python
|
|
770
|
+
SERVICEBUS_QUEUE_NAME=events
|
|
771
|
+
ServiceBusConnection__fullyQualifiedNamespace=<service-bus-namespace>.servicebus.windows.net
|
|
772
|
+
AzureWebJobsStorage__accountName=<storage-account-name>
|
|
773
|
+
SHARED_ORCHESTRATION_ROOT=../../backend
|
|
774
|
+
`;
|
|
775
|
+
}
|
|
611
776
|
function renderDockerCompose(plan) {
|
|
612
777
|
const frontendService = plan.includeFrontend ? `
|
|
613
778
|
frontend:
|
|
@@ -689,6 +854,19 @@ function renderTofuProviders() {
|
|
|
689
854
|
`;
|
|
690
855
|
}
|
|
691
856
|
function renderTofuVariables(plan) {
|
|
857
|
+
const functionVariables = hasFunctionWorker(plan) ? `
|
|
858
|
+
variable "function_worker_queue_name" {
|
|
859
|
+
type = string
|
|
860
|
+
default = "events"
|
|
861
|
+
description = "Service Bus queue consumed by the generated Azure Functions worker."
|
|
862
|
+
}
|
|
863
|
+
|
|
864
|
+
variable "functions_python_version" {
|
|
865
|
+
type = string
|
|
866
|
+
default = "3.12"
|
|
867
|
+
description = "Python runtime version for the generated Azure Functions worker."
|
|
868
|
+
}
|
|
869
|
+
` : '';
|
|
692
870
|
return `variable "environment" {
|
|
693
871
|
type = string
|
|
694
872
|
description = "Deployment environment name."
|
|
@@ -716,6 +894,7 @@ variable "enable_private_networking" {
|
|
|
716
894
|
default = false
|
|
717
895
|
description = "Enable production-oriented private-networking-ready settings."
|
|
718
896
|
}
|
|
897
|
+
${functionVariables}
|
|
719
898
|
`;
|
|
720
899
|
}
|
|
721
900
|
function renderTofuMain(plan) {
|
|
@@ -744,6 +923,58 @@ resource "azurerm_container_app" "frontend" {
|
|
|
744
923
|
}
|
|
745
924
|
}
|
|
746
925
|
}
|
|
926
|
+
` : '';
|
|
927
|
+
const functionWorker = hasFunctionWorker(plan) ? `
|
|
928
|
+
resource "azurerm_service_plan" "functions" {
|
|
929
|
+
name = "asp-\${local.name_prefix}-functions"
|
|
930
|
+
resource_group_name = azurerm_resource_group.main.name
|
|
931
|
+
location = azurerm_resource_group.main.location
|
|
932
|
+
os_type = "Linux"
|
|
933
|
+
sku_name = "Y1"
|
|
934
|
+
}
|
|
935
|
+
|
|
936
|
+
resource "azurerm_linux_function_app" "worker" {
|
|
937
|
+
name = "func-${plan.safeProjectName}-\${var.environment}-\${var.resource_suffix}"
|
|
938
|
+
resource_group_name = azurerm_resource_group.main.name
|
|
939
|
+
location = azurerm_resource_group.main.location
|
|
940
|
+
service_plan_id = azurerm_service_plan.functions.id
|
|
941
|
+
storage_account_name = azurerm_storage_account.main.name
|
|
942
|
+
storage_account_access_key = azurerm_storage_account.main.primary_access_key
|
|
943
|
+
|
|
944
|
+
identity {
|
|
945
|
+
type = "UserAssigned"
|
|
946
|
+
identity_ids = [azurerm_user_assigned_identity.app.id]
|
|
947
|
+
}
|
|
948
|
+
|
|
949
|
+
site_config {
|
|
950
|
+
application_stack {
|
|
951
|
+
python_version = var.functions_python_version
|
|
952
|
+
}
|
|
953
|
+
}
|
|
954
|
+
|
|
955
|
+
app_settings = {
|
|
956
|
+
APP_ENV = var.environment
|
|
957
|
+
APP_NAME = "${plan.safeProjectName}"
|
|
958
|
+
GENAI_PATTERN = "${plan.pattern.id}"
|
|
959
|
+
FUNCTIONS_WORKER_RUNTIME = "python"
|
|
960
|
+
SERVICEBUS_QUEUE_NAME = var.function_worker_queue_name
|
|
961
|
+
ServiceBusConnection__fullyQualifiedNamespace = "\${azurerm_servicebus_namespace.main.name}.servicebus.windows.net"
|
|
962
|
+
AzureWebJobsStorage__accountName = azurerm_storage_account.main.name
|
|
963
|
+
SHARED_ORCHESTRATION_ROOT = "../../backend"
|
|
964
|
+
}
|
|
965
|
+
}
|
|
966
|
+
|
|
967
|
+
resource "azurerm_role_assignment" "function_servicebus_receiver" {
|
|
968
|
+
scope = azurerm_servicebus_namespace.main.id
|
|
969
|
+
role_definition_name = "Azure Service Bus Data Receiver"
|
|
970
|
+
principal_id = azurerm_user_assigned_identity.app.principal_id
|
|
971
|
+
}
|
|
972
|
+
|
|
973
|
+
resource "azurerm_role_assignment" "function_storage_blob_contributor" {
|
|
974
|
+
scope = azurerm_storage_account.main.id
|
|
975
|
+
role_definition_name = "Storage Blob Data Contributor"
|
|
976
|
+
principal_id = azurerm_user_assigned_identity.app.principal_id
|
|
977
|
+
}
|
|
747
978
|
` : '';
|
|
748
979
|
return `locals {
|
|
749
980
|
name_prefix = "${plan.safeProjectName}-\${var.environment}"
|
|
@@ -849,6 +1080,7 @@ resource "azurerm_servicebus_queue" "events" {
|
|
|
849
1080
|
name = "events"
|
|
850
1081
|
namespace_id = azurerm_servicebus_namespace.main.id
|
|
851
1082
|
}
|
|
1083
|
+
${functionWorker}
|
|
852
1084
|
|
|
853
1085
|
resource "azurerm_communication_service" "main" {
|
|
854
1086
|
name = "acs-\${local.name_prefix}"
|
|
@@ -868,6 +1100,15 @@ data "azurerm_client_config" "current" {}
|
|
|
868
1100
|
`;
|
|
869
1101
|
}
|
|
870
1102
|
function renderTofuOutputs(plan) {
|
|
1103
|
+
const functionOutputs = hasFunctionWorker(plan) ? `
|
|
1104
|
+
output "function_app_name" {
|
|
1105
|
+
value = azurerm_linux_function_app.worker.name
|
|
1106
|
+
}
|
|
1107
|
+
|
|
1108
|
+
output "function_worker_queue_name" {
|
|
1109
|
+
value = azurerm_servicebus_queue.events.name
|
|
1110
|
+
}
|
|
1111
|
+
` : '';
|
|
871
1112
|
return `output "backend_url" {
|
|
872
1113
|
value = azurerm_container_app.backend.ingress[0].fqdn
|
|
873
1114
|
}
|
|
@@ -875,7 +1116,7 @@ function renderTofuOutputs(plan) {
|
|
|
875
1116
|
${plan.includeFrontend ? `output "frontend_url" {
|
|
876
1117
|
value = azurerm_container_app.frontend.ingress[0].fqdn
|
|
877
1118
|
}
|
|
878
|
-
` : ''}output "container_registry" {
|
|
1119
|
+
` : ''}${functionOutputs}output "container_registry" {
|
|
879
1120
|
value = azurerm_container_registry.main.login_server
|
|
880
1121
|
}
|
|
881
1122
|
`;
|
|
@@ -899,6 +1140,11 @@ function renderTofuRemoteStateExample() {
|
|
|
899
1140
|
}
|
|
900
1141
|
function renderTofuReadme(plan) {
|
|
901
1142
|
const env = plan.environments[0]?.id ?? 'dev';
|
|
1143
|
+
const functionSection = hasFunctionWorker(plan) ? `
|
|
1144
|
+
## Azure Functions Worker
|
|
1145
|
+
|
|
1146
|
+
This project includes an Azure Functions worker under \`functions/${functionWorkerName(plan)}\`. The OpenTofu configuration provisions Function app hosting, app settings, managed identity access to Service Bus, and worker outputs for the selected environments.
|
|
1147
|
+
` : '';
|
|
902
1148
|
return `# Azure OpenTofu
|
|
903
1149
|
|
|
904
1150
|
Azure is the complete V1 provider for this Liftoff project.
|
|
@@ -911,17 +1157,27 @@ tofu output
|
|
|
911
1157
|
\`\`\`
|
|
912
1158
|
|
|
913
1159
|
Local OpenTofu state is generated by default. Use \`backend.remote.example.tf\` as the starting point for team remote state.
|
|
1160
|
+
${functionSection}
|
|
914
1161
|
`;
|
|
915
1162
|
}
|
|
916
1163
|
function renderTofuTfvars(plan, environment) {
|
|
1164
|
+
const functionValues = hasFunctionWorker(plan) ? `function_worker_queue_name = "events"
|
|
1165
|
+
functions_python_version = "3.12"
|
|
1166
|
+
` : '';
|
|
917
1167
|
return `environment = "${environment}"
|
|
918
1168
|
location = "${plan.region.slug}"
|
|
919
1169
|
resource_suffix = "${plan.safeProjectName.replace(/-/g, '')}${environment}"
|
|
920
1170
|
enable_private_networking = ${environment === 'prod' ? 'true' : 'false'}
|
|
1171
|
+
${functionValues}
|
|
921
1172
|
`;
|
|
922
1173
|
}
|
|
923
1174
|
function renderOpenSpecConfig(plan) {
|
|
924
1175
|
const frontendRule = plan.includeFrontend ? '\n - Keep frontend code under frontend.' : '';
|
|
1176
|
+
const functionsContext = hasFunctionWorker(plan) ? `
|
|
1177
|
+
Azure Functions worker: functions/${functionWorkerName(plan)}.` : '';
|
|
1178
|
+
const functionsRule = hasFunctionWorker(plan) ? `
|
|
1179
|
+
- Keep Azure Functions trigger adapters under functions/${functionWorkerName(plan)}.
|
|
1180
|
+
- Keep reusable GenAI orchestration under backend/orchestration.` : '';
|
|
925
1181
|
return `schema: spec-driven
|
|
926
1182
|
|
|
927
1183
|
context: |
|
|
@@ -936,6 +1192,7 @@ context: |
|
|
|
936
1192
|
Cache and local messaging: Redis.
|
|
937
1193
|
Observability: Langfuse.
|
|
938
1194
|
Environments: ${plan.environments.map((environment) => environment.id).join(', ')}.
|
|
1195
|
+
${functionsContext}
|
|
939
1196
|
|
|
940
1197
|
rules:
|
|
941
1198
|
specs:
|
|
@@ -946,6 +1203,7 @@ rules:
|
|
|
946
1203
|
- Use Pydantic settings models for runtime configuration.
|
|
947
1204
|
- Use OpenTofu for infrastructure changes.${frontendRule}
|
|
948
1205
|
- Keep backend API code under backend/apis.
|
|
1206
|
+
${functionsRule}
|
|
949
1207
|
- Keep database artifacts under database.
|
|
950
1208
|
tasks:
|
|
951
1209
|
- Include local Docker Compose verification.
|
|
@@ -953,6 +1211,7 @@ rules:
|
|
|
953
1211
|
`;
|
|
954
1212
|
}
|
|
955
1213
|
function renderSeedProposal(plan) {
|
|
1214
|
+
const functionsChange = hasFunctionWorker(plan) ? '\n- Establish Azure Functions worker trigger adapters for event-driven processing.' : '';
|
|
956
1215
|
return `## Why
|
|
957
1216
|
|
|
958
1217
|
Bootstrap the generated ${plan.pattern.label} application baseline created by Mission Control Liftoff.
|
|
@@ -961,6 +1220,7 @@ Bootstrap the generated ${plan.pattern.label} application baseline created by Mi
|
|
|
961
1220
|
|
|
962
1221
|
- Establish the approved backend, infrastructure, local development, and governance baseline.
|
|
963
1222
|
- Capture follow-up product requirements through spec-driven changes.
|
|
1223
|
+
${functionsChange}
|
|
964
1224
|
|
|
965
1225
|
## Capabilities
|
|
966
1226
|
|
|
@@ -978,6 +1238,7 @@ Bootstrap the generated ${plan.pattern.label} application baseline created by Mi
|
|
|
978
1238
|
`;
|
|
979
1239
|
}
|
|
980
1240
|
function renderSeedDesign(plan) {
|
|
1241
|
+
const functionsDecision = hasFunctionWorker(plan) ? '\n- Keep Azure Functions trigger adapters under functions/' + functionWorkerName(plan) + ' and shared GenAI logic under backend/orchestration.' : '';
|
|
981
1242
|
return `## Context
|
|
982
1243
|
|
|
983
1244
|
This project was generated with Liftoff using ${plan.pattern.label}, Azure, OpenTofu, and ${plan.specWorkflow.label}.
|
|
@@ -997,6 +1258,7 @@ This project was generated with Liftoff using ${plan.pattern.label}, Azure, Open
|
|
|
997
1258
|
- Use FastAPI and PydanticAI for backend APIs and orchestration.
|
|
998
1259
|
- Use OpenTofu for Azure infrastructure.
|
|
999
1260
|
- Use Docker Compose for local development.
|
|
1261
|
+
${functionsDecision}
|
|
1000
1262
|
|
|
1001
1263
|
## Risks / Trade-offs
|
|
1002
1264
|
|
|
@@ -1012,13 +1274,14 @@ function renderSeedTasks() {
|
|
|
1012
1274
|
`;
|
|
1013
1275
|
}
|
|
1014
1276
|
function renderSpecKitConstitution(plan) {
|
|
1277
|
+
const functionsLayout = hasFunctionWorker(plan) ? ` Azure Functions trigger adapters live under functions/${functionWorkerName(plan)} and call shared orchestration from backend/orchestration.` : '';
|
|
1015
1278
|
return `# Mission Control Liftoff Constitution
|
|
1016
1279
|
|
|
1017
1280
|
## Principle 1: Approved Application Stack
|
|
1018
1281
|
Generated backend services MUST use FastAPI, PydanticAI, Pydantic configuration models, and Scalar for API documentation.
|
|
1019
1282
|
|
|
1020
1283
|
## Principle 2: Standard Project Layout
|
|
1021
|
-
Backend APIs live under backend/apis. Database artifacts live under database.${plan.includeFrontend ? ' Frontend code lives under frontend.' : ''}
|
|
1284
|
+
Backend APIs live under backend/apis. Database artifacts live under database.${plan.includeFrontend ? ' Frontend code lives under frontend.' : ''}${functionsLayout}
|
|
1022
1285
|
|
|
1023
1286
|
## Principle 3: Infrastructure As Code
|
|
1024
1287
|
Cloud infrastructure MUST be defined with OpenTofu. Azure is the supported V1 provider.
|
package/dist/templates.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AAIA,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAC7D,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,MAAc,EAAE,MAAc,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AAE3K,MAAM,UAAU,cAAc,CAAC,IAAiB;IAC9C,MAAM,SAAS,GAAwB,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAgB,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,SAAS,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAChG,CAAC,CAAC;IAEF,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5B,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC/B,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAChC,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC/B,uBAAuB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACnC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC9B,0BAA0B,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACtC,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAClC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAChD,SAAS,CAAC,IAAI,CAAC;QACb,WAAW,EAAE,UAAU;QACvB,QAAQ,EAAE,UAAU;QACpB,SAAS,EAAE,CAAC,uBAAuB,CAAC;QACpC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;KAClD,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAiB,EAAE,SAA8B;IAC7E,OAAO;QACL,eAAe,EAAE,CAAC;QAClB,WAAW,EAAE,yBAAyB;QACtC,OAAO,EAAE;YACP,IAAI,EAAE,IAAI,CAAC,WAAW;YACtB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;YACxB,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACxB,QAAQ,EAAE,IAAI,CAAC,eAAe;YAC9B,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE;YAClC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;SACrE;QACD,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACtC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,SAAS,EAAE,QAAQ,CAAC,SAAS;SAC9B,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAgB,EAAE,IAAiB;IAC3D,GAAG,CAAC,aAAa,EAAE,eAAe,EAAE,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3E,GAAG,CAAC,gBAAgB,EAAE,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,wBAAwB,EAAE,CAAC,CAAC;IAC7E,GAAG,CAAC,gBAAgB,EAAE,SAAS,EAAE,CAAC,qBAAqB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;QACvE,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;QACxB,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;QACvB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;QACxB,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;QACpE,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE;KACnC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACb,GAAG,CAAC,aAAa,EAAE,eAAe,EAAE,CAAC,cAAc,CAAC,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9E,GAAG,CAAC,oBAAoB,EAAE,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,uBAAuB,EAAE,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAgB,EAAE,IAAiB;IAC9D,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC9C,GAAG,CAAC,mBAAmB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,EAAE,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;IACjG,GAAG,CAAC,iBAAiB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IAClE,GAAG,CAAC,qBAAqB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9E,GAAG,CAAC,cAAc,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;IACrG,GAAG,CAAC,uBAAuB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC1G,GAAG,CAAC,wBAAwB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,KAAK,CAAC,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IACxH,GAAG,CAAC,wBAAwB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3F,GAAG,CAAC,yBAAyB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC;IAClH,GAAG,CAAC,wBAAwB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IACnF,GAAG,CAAC,kBAAkB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/F,GAAG,CAAC,+BAA+B,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IACjG,GAAG,CAAC,sBAAsB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;IACjH,GAAG,CAAC,wBAAwB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,uBAAuB,EAAE,CAAC,CAAC;IAC3H,GAAG,CAAC,uBAAuB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IAClG,GAAG,CAAC,uBAAuB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,YAAY,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;IACrG,GAAG,CAAC,+BAA+B,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IACjG,GAAG,CAAC,qBAAqB,EAAE,cAAc,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,gBAAgB,CAAC,EAAE,uBAAuB,EAAE,CAAC,CAAC;AAChH,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAgB,EAAE,IAAiB;IAC/D,GAAG,CAAC,sBAAsB,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC;IACzF,GAAG,CAAC,sBAAsB,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAClG,GAAG,CAAC,4BAA4B,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,iBAAiB,CAAC,EAAE,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;IACvI,GAAG,CAAC,iBAAiB,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;AACvG,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAgB,EAAE,IAAiB;IAC9D,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC9C,GAAG,CAAC,eAAe,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG,WAAW,WAAW,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7H,GAAG,CAAC,gBAAgB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/H,GAAG,CAAC,uBAAuB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IACnG,GAAG,CAAC,uBAAuB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAEpH,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;QAC9B,GAAG,CAAC,kBAAkB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,iBAAiB,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC;QACtH,GAAG,CAAC,uBAAuB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IACxG,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACxB,GAAG,CAAC,gBAAgB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,WAAW,YAAY,CAAC,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;QAChH,GAAG,CAAC,yBAAyB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,YAAY,EAAE,CAAC;QACrC,GAAG,CAAC,yBAAyB,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE,wEAAwE,CAAC,CAAC;IAC7K,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAgB,EAAE,IAAiB;IAClE,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;QAC5C,GAAG,CAAC,eAAe,WAAW,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,cAAc,EAAE,WAAW,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;IACvJ,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAgB,EAAE,IAAiB;IAC7D,GAAG,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,CAAC,oBAAoB,CAAC,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;AAChG,CAAC;AAED,SAAS,0BAA0B,CAAC,GAAgB,EAAE,IAAiB;IACrE,MAAM,IAAI,GAAG,CAAC,gBAAgB,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACrD,GAAG,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,aAAa,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC3F,GAAG,CAAC,oBAAoB,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,cAAc,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC;IAC9F,GAAG,CAAC,oBAAoB,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,cAAc,CAAC,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAClG,GAAG,CAAC,eAAe,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,SAAS,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;IACnF,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,YAAY,CAAC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5F,GAAG,CAAC,sBAAsB,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,kBAAkB,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC;IACrG,GAAG,CAAC,+BAA+B,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,2BAA2B,CAAC,EAAE,4BAA4B,EAAE,CAAC,CAAC;IAC/H,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;IACzF,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;QAC5C,GAAG,CAAC,YAAY,WAAW,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,cAAc,EAAE,GAAG,WAAW,CAAC,EAAE,SAAS,CAAC,EAAE,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5J,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAgB,EAAE,IAAiB;IACjE,IAAI,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;QACxC,MAAM,UAAU,GAAG,aAAa,IAAI,CAAC,eAAe,EAAE,CAAC;QACvD,GAAG,CAAC,iBAAiB,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9F,GAAG,CAAC,+BAA+B,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,CAAC,EAAE,qBAAqB,CAAC,CAAC;QACjI,GAAG,CAAC,wBAAwB,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1H,GAAG,CAAC,sBAAsB,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;QACpH,GAAG,CAAC,qBAAqB,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC;QAC7G,GAAG,CAAC,2BAA2B,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;IACxF,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,uBAAuB,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,iBAAiB,CAAC,EAAE,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;QACvH,GAAG,CAAC,wBAAwB,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,kBAAkB,CAAC,EAAE,yBAAyB,EAAE,CAAC,CAAC;QACxH,GAAG,CAAC,wBAAwB,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,kBAAkB,CAAC,EAAE,yBAAyB,EAAE,CAAC,CAAC;QACxH,GAAG,CAAC,mBAAmB,EAAE,YAAY,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAgB,EAAE,IAAiB;IAC/D,GAAG,CAAC,kBAAkB,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/F,GAAG,CAAC,gBAAgB,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IACzF,GAAG,CAAC,eAAe,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACvF,GAAG,CAAC,cAAc,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;IACzF,GAAG,CAAC,iBAAiB,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC;IAC9F,GAAG,CAAC,sBAAsB,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,gBAAgB,CAAC,EAAE,wBAAwB,EAAE,CAAC,CAAC;IACpG,GAAG,CAAC,0BAA0B,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,oBAAoB,CAAC,EAAE,4BAA4B,EAAE,CAAC,CAAC;IAChH,GAAG,CAAC,qBAAqB,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,wBAAwB,EAAE,CAAC,CAAC;AACjG,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAiB;IACzC,OAAO,KAAK,IAAI,CAAC,WAAW;;;;;;;aAOjB,IAAI,CAAC,OAAO,CAAC,KAAK;WACpB,IAAI,CAAC,QAAQ,CAAC,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI;;gDAEH,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE;;;;EAIxG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;qBAqB5C,IAAI,CAAC,YAAY,CAAC,KAAK;CAC3C,CAAC;AACF,CAAC;AAED,SAAS,wBAAwB;IAC/B,OAAO;;;;;;;;;CASR,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAiB;IACzC,OAAO;WACE,IAAI,CAAC,eAAe;gBACf,IAAI,CAAC,OAAO,CAAC,EAAE;iBACd,IAAI,CAAC,QAAQ,CAAC,EAAE;eAClB,IAAI,CAAC,MAAM,CAAC,IAAI;oEACqC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;;;;;CAK1G,CAAC;AACF,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO;;;;;;;;;;;;;;;;CAgBR,CAAC;AACF,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAiB;IAC/C,OAAO;UACC,IAAI,CAAC,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8B7B,CAAC;AACF,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAiB,EAAE,WAAmB;IAC/D,OAAO;;;;;;;0CAOiC,WAAW;;;;;;;;qBAQhC,WAAW;;;;;;;;CAQ/B,CAAC;AACF,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO;;;;;;;;;;;;;CAaR,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAiB;IAC5C,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,GAAG,UAAU,QAAQ,CAAC;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;IACxC,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO;;;oCAGyB,SAAS;;6BAEhB,MAAM,aAAa,IAAI,CAAC,OAAO,CAAC,EAAE;;;;;;CAM9D,CAAC;IACA,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;QAC9B,OAAO;;;oCAGyB,SAAS;;6BAEhB,MAAM;;;;;;;;;;;;;;;;;;;CAmBlC,CAAC;IACA,CAAC;IAED,MAAM,SAAS,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC;IAC5E,OAAO;;;oCAG2B,SAAS,eAAe,UAAU;;6BAEzC,MAAM,aAAa,IAAI,CAAC,OAAO,CAAC,EAAE;;;QAGvD,SAAS;;;;;yBAKQ,SAAS;uBACX,UAAU;CAChC,CAAC;AACF,CAAC;AAED,SAAS,oBAAoB;IAC3B,OAAO;;;;;;;;;;CAUR,CAAC;AACF,CAAC;AAED,SAAS,cAAc,CAAC,IAAiB;IACvC,OAAO;;;;;;;uBAOc,IAAI,CAAC,WAAW;;4BAEX,IAAI,CAAC,OAAO,CAAC,EAAE;6BACd,IAAI,CAAC,QAAQ,CAAC,EAAE;2BAClB,IAAI,CAAC,MAAM,CAAC,IAAI;;;;;;;;;;;CAW1C,CAAC;AACF,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAiB;IAC1C,OAAO;;;;;;;oCAO2B,IAAI,CAAC,OAAO,CAAC,EAAE;CAClD,CAAC;AACF,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;CAwBR,CAAC;AACF,CAAC;AAED,SAAS,aAAa;IACpB,OAAO;;;;;;;CAOR,CAAC;AACF,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO;;;;;;;;;;CAUR,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO;;;CAGR,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO;;;;;;;;;;CAUR,CAAC;AACF,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAiB;IAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,2DAA2D,CAAC,CAAC,CAAC,EAAE,CAAC;IACrH,OAAO;;;;;;;;;;EAUP,eAAe;;;;;;;;;;;CAWhB,CAAC;AACF,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAiB;IAC7C,OAAO;;;;;;EAMP,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAClF,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAiB;IAC3C,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7C,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;QAC9B,OAAO;;;;;;;;;;;;;;;CAeV,CAAC;IACA,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO;;;CAGV,CAAC;IACA,CAAC;IACD,OAAO,iBAAiB,UAAU;;mDAEe,IAAI,CAAC,OAAO,CAAC,KAAK;;;CAGpE,CAAC;AACF,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAiB;IAC7C,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK;;yBAEP,IAAI,CAAC,OAAO,CAAC,KAAK;;;CAG1C,CAAC;AACF,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO;;;CAGR,CAAC;AACF,CAAC;AAED,SAAS,iBAAiB;IACxB,OAAO;;;;;;;;;;;CAWR,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAiB;IAC5C,OAAO;gBACO,IAAI,CAAC,OAAO,CAAC,KAAK;;CAEjC,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAiB,EAAE,WAAmB;IAC9D,MAAM,SAAS,GAAG,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAChF,OAAO,WAAW,WAAW;WACpB,IAAI,CAAC,eAAe;gBACf,IAAI,CAAC,OAAO,CAAC,EAAE;iBACd,IAAI,CAAC,QAAQ,CAAC,EAAE;eAClB,IAAI,CAAC,MAAM,CAAC,IAAI;oEACqC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;;sBAErF,SAAS;;;CAG9B,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAiB;IAC5C,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;;;;;;;;CAQhD,CAAC,CAAC,CAAC,EAAE,CAAC;IACL,OAAO;;;;;;;;;;;;;;EAcP,eAAe;;;;;;qBAMI,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;mEAyBO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;;;;;CAKzG,CAAC;AACF,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO;;;;;;;;;CASR,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO;;;CAGR,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAiB;IAC5C,OAAO;;;;;;;;mBAQU,IAAI,CAAC,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;CAmBlC,CAAC;AACF,CAAC;AAED,SAAS,cAAc,CAAC,IAAiB;IACvC,MAAM,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;;uCAEZ,IAAI,CAAC,eAAe;;;;;;;;mEAQQ,IAAI,CAAC,eAAe;;;;;;;;;;;;;;;CAetF,CAAC,CAAC,CAAC,EAAE,CAAC;IACL,OAAO;mBACU,IAAI,CAAC,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uCA6BA,IAAI,CAAC,eAAe;;;;;;;;;;;;;mEAaQ,IAAI,CAAC,eAAe;;;;;;;;;;;;;;;EAerF,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8DlB,CAAC;AACF,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAiB;IAC1C,OAAO;;;;EAIP,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;;;CAGxB,CAAC,CAAC,CAAC,EAAE;;;CAGL,CAAC;AACF,CAAC;AAED,SAAS,oBAAoB;IAC3B,OAAO;;CAER,CAAC;AACF,CAAC;AAED,SAAS,4BAA4B;IACnC,OAAO;;;;;;;;;CASR,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAiB;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,KAAK,CAAC;IAC9C,OAAO;;;;;;mCAM0B,GAAG;oCACF,GAAG;;;;;CAKtC,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAiB,EAAE,WAAmB;IAC9D,OAAO,kBAAkB,WAAW;cACxB,IAAI,CAAC,MAAM,CAAC,IAAI;qBACT,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,WAAW;8BAC3C,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;CACtE,CAAC;AACF,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAiB;IAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9F,OAAO;;;;mBAIU,IAAI,CAAC,OAAO,CAAC,KAAK;;;;0BAIX,IAAI,CAAC,MAAM,CAAC,IAAI;;;;;kBAKxB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;;;gDASnC,YAAY;;;;;;CAM3D,CAAC;AACF,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAiB;IAC3C,OAAO;;0BAEiB,IAAI,CAAC,OAAO,CAAC,KAAK;;;;;;;;;;;MAWtC,IAAI,CAAC,OAAO,CAAC,EAAE;;;;;;;;;CASpB,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAiB;IACzC,OAAO;;gDAEuC,IAAI,CAAC,OAAO,CAAC,KAAK,0BAA0B,IAAI,CAAC,YAAY,CAAC,KAAK;;;;;;;;;;;;;;;;;;;;;CAqBlH,CAAC;AACF,CAAC;AAED,SAAS,eAAe;IACtB,OAAO;;;;;CAKR,CAAC;AACF,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAiB;IAClD,OAAO;;;;;;+EAMsE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC,EAAE;;;;;;;;;+FASlD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;CAC/J,CAAC;AACF,CAAC;AAED,SAAS,yBAAyB;IAChC,OAAO;;;;;;;CAOR,CAAC;AACF,CAAC;AAED,SAAS,yBAAyB;IAChC,OAAO;;;;;;;CAOR,CAAC;AACF,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAiB;IAC9C,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,IAAI,EAAE,GAAG,IAAI,CAAC,eAAe,WAAW;QACxC,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE;YACP,GAAG,EAAE,MAAM;YACX,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,cAAc;SACxB;QACD,YAAY,EAAE;YACZ,oBAAoB,EAAE,QAAQ;YAC9B,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,SAAS;YACd,WAAW,EAAE,QAAQ;YACrB,YAAY,EAAE,UAAU;YACxB,OAAO,EAAE,SAAS;SACnB;KACF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAiB;IAC5C,OAAO,gFAAgF,IAAI,CAAC,WAAW,UAAU,CAAC;AACpH,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO;;;;;CAKR,CAAC;AACF,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAiB;IAC1C,OAAO;iBACQ,IAAI,CAAC,WAAW;mBACd,IAAI,CAAC,eAAe;mBACpB,IAAI,CAAC,OAAO,CAAC,KAAK;;;;;;;;;;;;;;;;;;;CAmBpC,CAAC;AACF,CAAC;AAED,SAAS,oBAAoB;IAC3B,OAAO;;;CAGR,CAAC;AACF,CAAC;AAED,SAAS,wBAAwB;IAC/B,OAAO;;;;CAIR,CAAC;AACF,CAAC;AAED,SAAS,4BAA4B;IACnC,OAAO;;;;;;;CAOR,CAAC;AACF,CAAC;AAED,SAAS,wBAAwB;IAC/B,OAAO;;;;;;;;;CASR,CAAC;AACF,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAe;IAC5C,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC;AAC3D,CAAC"}
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -73,10 +73,12 @@ export interface ManifestArtifact {
|
|
|
73
73
|
logicalName: string;
|
|
74
74
|
category: string;
|
|
75
75
|
pathParts: string[];
|
|
76
|
+
contentHash: string;
|
|
76
77
|
}
|
|
77
78
|
export interface LiftoffManifest {
|
|
78
|
-
artifactVersion:
|
|
79
|
+
artifactVersion: 2;
|
|
79
80
|
generatedBy: 'Mission Control Liftoff';
|
|
81
|
+
liftoffVersion: string;
|
|
80
82
|
project: {
|
|
81
83
|
name: string;
|
|
82
84
|
pattern: PatternId;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const liftoffVersion: string;
|
package/dist/version.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
4
|
+
// Resolves from src/ (tests), dist/ (built), and the packed npm layout alike:
|
|
5
|
+
// package.json is always one level above this module's directory.
|
|
6
|
+
const packagePath = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', 'package.json');
|
|
7
|
+
export const liftoffVersion = JSON.parse(readFileSync(packagePath, 'utf8')).version;
|
|
8
|
+
//# sourceMappingURL=version.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,8EAA8E;AAC9E,kEAAkE;AAClE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;AAErG,MAAM,CAAC,MAAM,cAAc,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAyB,CAAC,OAAO,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@msn-control/liftoff",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Mission Control Liftoff CLI for scaffolding enterprise GenAI applications.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "GPL-3.0-only",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"repository": {
|
|
12
12
|
"type": "git",
|
|
13
13
|
"url": "git+https://github.com/voyager163/mission-control.git",
|
|
14
|
-
"directory": "
|
|
14
|
+
"directory": "tools/liftoff-cli"
|
|
15
15
|
},
|
|
16
16
|
"keywords": [
|
|
17
17
|
"genai",
|
|
@@ -48,4 +48,4 @@
|
|
|
48
48
|
"typescript": "^5.5.4",
|
|
49
49
|
"vitest": "^4.1.9"
|
|
50
50
|
}
|
|
51
|
-
}
|
|
51
|
+
}
|