container-superposition 0.1.7 → 0.1.9
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 +24 -15
- package/dist/scripts/init.js +1 -1537
- package/dist/scripts/init.js.map +1 -1
- package/dist/tool/cli/args.d.ts +20 -0
- package/dist/tool/cli/args.d.ts.map +1 -0
- package/dist/tool/cli/args.js +325 -0
- package/dist/tool/cli/args.js.map +1 -0
- package/dist/tool/cli/run.d.ts +2 -0
- package/dist/tool/cli/run.d.ts.map +1 -0
- package/dist/tool/cli/run.js +318 -0
- package/dist/tool/cli/run.js.map +1 -0
- package/dist/tool/commands/adopt.js +1 -1
- package/dist/tool/commands/adopt.js.map +1 -1
- package/dist/tool/commands/doctor.d.ts +1 -0
- package/dist/tool/commands/doctor.d.ts.map +1 -1
- package/dist/tool/commands/doctor.js +1510 -78
- package/dist/tool/commands/doctor.js.map +1 -1
- package/dist/tool/commands/explain.d.ts.map +1 -1
- package/dist/tool/commands/explain.js +9 -0
- package/dist/tool/commands/explain.js.map +1 -1
- package/dist/tool/commands/migrate.d.ts +7 -0
- package/dist/tool/commands/migrate.d.ts.map +1 -0
- package/dist/tool/commands/migrate.js +52 -0
- package/dist/tool/commands/migrate.js.map +1 -0
- package/dist/tool/questionnaire/answers.d.ts +16 -0
- package/dist/tool/questionnaire/answers.d.ts.map +1 -0
- package/dist/tool/questionnaire/answers.js +102 -0
- package/dist/tool/questionnaire/answers.js.map +1 -0
- package/dist/tool/questionnaire/composer.d.ts +6 -4
- package/dist/tool/questionnaire/composer.d.ts.map +1 -1
- package/dist/tool/questionnaire/composer.js +778 -45
- package/dist/tool/questionnaire/composer.js.map +1 -1
- package/dist/tool/questionnaire/presets.d.ts +60 -0
- package/dist/tool/questionnaire/presets.d.ts.map +1 -0
- package/dist/tool/questionnaire/presets.js +165 -0
- package/dist/tool/questionnaire/presets.js.map +1 -0
- package/dist/tool/questionnaire/questionnaire.d.ts +10 -0
- package/dist/tool/questionnaire/questionnaire.d.ts.map +1 -0
- package/dist/tool/questionnaire/questionnaire.js +582 -0
- package/dist/tool/questionnaire/questionnaire.js.map +1 -0
- package/dist/tool/schema/manifest-migrations.d.ts +5 -0
- package/dist/tool/schema/manifest-migrations.d.ts.map +1 -1
- package/dist/tool/schema/manifest-migrations.js +45 -0
- package/dist/tool/schema/manifest-migrations.js.map +1 -1
- package/dist/tool/schema/overlay-loader.d.ts.map +1 -1
- package/dist/tool/schema/overlay-loader.js +24 -0
- package/dist/tool/schema/overlay-loader.js.map +1 -1
- package/dist/tool/schema/project-config.d.ts +13 -1
- package/dist/tool/schema/project-config.d.ts.map +1 -1
- package/dist/tool/schema/project-config.js +188 -10
- package/dist/tool/schema/project-config.js.map +1 -1
- package/dist/tool/schema/target-rules.d.ts +78 -0
- package/dist/tool/schema/target-rules.d.ts.map +1 -0
- package/dist/tool/schema/target-rules.js +367 -0
- package/dist/tool/schema/target-rules.js.map +1 -0
- package/dist/tool/schema/types.d.ts +42 -3
- package/dist/tool/schema/types.d.ts.map +1 -1
- package/dist/tool/utils/parameters.d.ts +76 -0
- package/dist/tool/utils/parameters.d.ts.map +1 -0
- package/dist/tool/utils/parameters.js +125 -0
- package/dist/tool/utils/parameters.js.map +1 -0
- package/dist/tool/utils/paths.d.ts +2 -0
- package/dist/tool/utils/paths.d.ts.map +1 -0
- package/dist/tool/utils/paths.js +31 -0
- package/dist/tool/utils/paths.js.map +1 -0
- package/docs/deployment-targets.md +88 -56
- package/docs/examples.md +20 -17
- package/docs/filesystem-contract.md +5 -0
- package/docs/minimal-and-editor.md +65 -5
- package/docs/overlay-imports.md +92 -14
- package/docs/overlays.md +231 -135
- package/docs/specs/001-verbose-plan-graph/spec.md +5 -12
- package/docs/specs/002-superposition-config-file/spec.md +5 -12
- package/docs/specs/003-mkdocs2-overlay/spec.md +2 -9
- package/docs/specs/004-doctor-fix/spec.md +1 -8
- package/docs/specs/005-cuda-overlay/spec.md +2 -9
- package/docs/specs/006-rocm-overlay/spec.md +3 -10
- package/docs/specs/007-target-aware-generation/spec.md +119 -0
- package/docs/specs/008-project-file-canonical/spec.md +82 -0
- package/docs/specs/009-project-env/spec.md +140 -0
- package/docs/specs/010-compose-env-materialization/spec.md +123 -0
- package/docs/specs/011-overlay-parameters/spec.md +228 -0
- package/docs/specs/012-ollama-cli-overlay/spec.md +47 -0
- package/docs/specs/013-doctor-dependency-check/spec.md +250 -0
- package/docs/specs/014-doctor-compose-port-cross-validation/spec.md +276 -0
- package/docs/specs/015-doctor-env-example-drift/spec.md +248 -0
- package/docs/specs/016-doctor-reproducibility-check/spec.md +276 -0
- package/docs/specs/017-doctor-dry-run/spec.md +276 -0
- package/docs/specs/018-init-project-file/spec.md +59 -0
- package/docs/specs/taxonomy.md +186 -0
- package/overlays/.presets/full-observability.yml +113 -0
- package/overlays/.presets/k8s-dev.yml +174 -0
- package/overlays/.presets/local-llm.yml +105 -0
- package/overlays/.presets/vector-ai.yml +150 -0
- package/overlays/.shared/README.md +27 -2
- package/overlays/.shared/compose/nvidia-gpu-devcontainer.yml +22 -0
- package/overlays/.shared/vscode/js-ts-settings.json +19 -0
- package/overlays/.shared/vscode/markdown-extensions.json +8 -0
- package/overlays/alertmanager/devcontainer.patch.json +0 -1
- package/overlays/alertmanager/docker-compose.yml +8 -0
- package/overlays/alertmanager/overlay.yml +1 -0
- package/overlays/amp/devcontainer.patch.json +4 -1
- package/overlays/bun/devcontainer.patch.json +1 -10
- package/overlays/bun/overlay.yml +8 -1
- package/overlays/claude-code/devcontainer.patch.json +6 -1
- package/overlays/codex/devcontainer.patch.json +5 -0
- package/overlays/comfyui/.env.example +34 -0
- package/overlays/comfyui/README.md +342 -0
- package/overlays/comfyui/devcontainer.patch.json +15 -0
- package/overlays/comfyui/docker-compose.yml +40 -0
- package/overlays/comfyui/overlay.yml +24 -0
- package/overlays/comfyui/setup.sh +36 -0
- package/overlays/comfyui/verify.sh +103 -0
- package/overlays/commitlint/devcontainer.patch.json +1 -6
- package/overlays/docker-sock/overlay.yml +1 -0
- package/overlays/dotnet/overlay.yml +4 -1
- package/overlays/fuseki/.env.example +5 -0
- package/overlays/fuseki/README.md +173 -0
- package/overlays/fuseki/devcontainer.patch.json +18 -0
- package/overlays/fuseki/docker-compose.yml +29 -0
- package/overlays/fuseki/overlay.yml +42 -0
- package/overlays/fuseki/verify.sh +58 -0
- package/overlays/gemini-cli/devcontainer.patch.json +4 -1
- package/overlays/go/overlay.yml +6 -1
- package/overlays/grafana/devcontainer.patch.json +0 -1
- package/overlays/grafana/docker-compose.yml +8 -2
- package/overlays/grafana/overlay.yml +6 -1
- package/overlays/jaeger/.env.example +11 -0
- package/overlays/jaeger/README.md +33 -4
- package/overlays/jaeger/devcontainer.patch.json +9 -1
- package/overlays/jaeger/docker-compose.yml +17 -0
- package/overlays/jaeger/overlay.yml +1 -12
- package/overlays/java/overlay.yml +6 -1
- package/overlays/jupyter/docker-compose.yml +1 -0
- package/overlays/jupyter/overlay.yml +1 -0
- package/overlays/k3d/README.md +201 -0
- package/overlays/k3d/devcontainer.patch.json +9 -0
- package/overlays/k3d/overlay.yml +19 -0
- package/overlays/k3d/setup.sh +34 -0
- package/overlays/k3d/verify.sh +38 -0
- package/overlays/keycloak/devcontainer.patch.json +0 -1
- package/overlays/keycloak/docker-compose.yml +1 -0
- package/overlays/keycloak/overlay.yml +15 -0
- package/overlays/localstack/docker-compose.yml +1 -0
- package/overlays/localstack/overlay.yml +19 -1
- package/overlays/loki/devcontainer.patch.json +0 -1
- package/overlays/loki/docker-compose.yml +8 -0
- package/overlays/loki/overlay.yml +1 -0
- package/overlays/mailpit/docker-compose.yml +1 -0
- package/overlays/mailpit/overlay.yml +1 -0
- package/overlays/minio/devcontainer.patch.json +1 -1
- package/overlays/minio/docker-compose.yml +1 -0
- package/overlays/minio/overlay.yml +23 -2
- package/overlays/mkdocs/devcontainer.patch.json +1 -5
- package/overlays/mkdocs/overlay.yml +3 -1
- package/overlays/mkdocs2/devcontainer.patch.json +1 -5
- package/overlays/mkdocs2/overlay.yml +2 -0
- package/overlays/mongodb/docker-compose.yml +2 -0
- package/overlays/mongodb/overlay.yml +26 -2
- package/overlays/mysql/docker-compose.yml +2 -0
- package/overlays/mysql/overlay.yml +36 -2
- package/overlays/nats/docker-compose.yml +1 -0
- package/overlays/nats/overlay.yml +18 -2
- package/overlays/nodejs/devcontainer.patch.json +1 -12
- package/overlays/nodejs/overlay.yml +8 -1
- package/overlays/ollama/.env.example +14 -0
- package/overlays/ollama/README.md +326 -0
- package/overlays/ollama/devcontainer.patch.json +14 -0
- package/overlays/ollama/docker-compose.yml +25 -0
- package/overlays/ollama/overlay.yml +27 -0
- package/overlays/ollama/verify.sh +76 -0
- package/overlays/ollama-cli/README.md +90 -0
- package/overlays/ollama-cli/devcontainer.patch.json +3 -0
- package/overlays/ollama-cli/overlay.yml +19 -0
- package/overlays/ollama-cli/setup.sh +103 -0
- package/overlays/ollama-cli/verify.sh +49 -0
- package/overlays/open-webui/.env.example +5 -0
- package/overlays/open-webui/README.md +162 -0
- package/overlays/open-webui/devcontainer.patch.json +14 -0
- package/overlays/open-webui/docker-compose.yml +24 -0
- package/overlays/open-webui/overlay.yml +45 -0
- package/overlays/opencode/devcontainer.patch.json +4 -1
- package/overlays/otel-collector/README.md +4 -0
- package/overlays/otel-collector/devcontainer.patch.json +4 -1
- package/overlays/otel-collector/docker-compose.yml +8 -4
- package/overlays/otel-collector/overlay.yml +1 -0
- package/overlays/otel-demo-nodejs/devcontainer.patch.json +0 -1
- package/overlays/otel-demo-nodejs/docker-compose.yml +1 -0
- package/overlays/otel-demo-nodejs/overlay.yml +9 -1
- package/overlays/otel-demo-python/devcontainer.patch.json +0 -1
- package/overlays/otel-demo-python/docker-compose.yml +1 -0
- package/overlays/otel-demo-python/overlay.yml +6 -1
- package/overlays/pandoc/README.md +10 -0
- package/overlays/pandoc/devcontainer.patch.json +0 -5
- package/overlays/pandoc/overlay.yml +2 -0
- package/overlays/pandoc/setup.sh +10 -0
- package/overlays/pgvector/.env.example +6 -0
- package/overlays/pgvector/README.md +215 -0
- package/overlays/pgvector/devcontainer.patch.json +29 -0
- package/overlays/pgvector/docker-compose.yml +33 -0
- package/overlays/pgvector/overlay.yml +47 -0
- package/overlays/playwright/devcontainer.patch.json +0 -5
- package/overlays/playwright/overlay.yml +2 -1
- package/overlays/postgres/.env.example +5 -5
- package/overlays/postgres/devcontainer.patch.json +4 -4
- package/overlays/postgres/docker-compose.yml +11 -6
- package/overlays/postgres/overlay.yml +23 -2
- package/overlays/pre-commit/devcontainer.patch.json +1 -7
- package/overlays/prometheus/devcontainer.patch.json +0 -1
- package/overlays/prometheus/docker-compose.yml +8 -0
- package/overlays/prometheus/overlay.yml +1 -0
- package/overlays/promtail/devcontainer.patch.json +1 -2
- package/overlays/promtail/docker-compose.yml +8 -0
- package/overlays/promtail/overlay.yml +1 -0
- package/overlays/qdrant/.env.example +4 -0
- package/overlays/qdrant/README.md +216 -0
- package/overlays/qdrant/devcontainer.patch.json +20 -0
- package/overlays/qdrant/docker-compose.yml +26 -0
- package/overlays/qdrant/overlay.yml +44 -0
- package/overlays/rabbitmq/docker-compose.yml +1 -0
- package/overlays/rabbitmq/overlay.yml +25 -2
- package/overlays/redis/docker-compose.yml +7 -0
- package/overlays/redis/overlay.yml +15 -1
- package/overlays/redpanda/docker-compose.yml +1 -0
- package/overlays/redpanda/overlay.yml +15 -3
- package/overlays/rocm/overlay.yml +2 -1
- package/overlays/rust/overlay.yml +3 -1
- package/overlays/skaffold/README.md +256 -0
- package/overlays/skaffold/devcontainer.patch.json +9 -0
- package/overlays/skaffold/overlay.yml +20 -0
- package/overlays/skaffold/setup.sh +33 -0
- package/overlays/skaffold/verify.sh +24 -0
- package/overlays/sqlserver/docker-compose.yml +1 -0
- package/overlays/sqlserver/overlay.yml +17 -0
- package/overlays/tempo/devcontainer.patch.json +0 -1
- package/overlays/tempo/docker-compose.yml +8 -0
- package/overlays/tempo/overlay.yml +1 -0
- package/overlays/windsurf-cli/devcontainer.patch.json +4 -1
- package/package.json +3 -2
- package/tool/schema/config.schema.json +31 -1
- package/tool/schema/overlay-manifest.schema.json +33 -0
- package/overlays/.shared/otel/otel-base-config.yaml +0 -30
package/docs/overlays.md
CHANGED
|
@@ -18,40 +18,44 @@ This document provides a comprehensive reference for all available overlays in c
|
|
|
18
18
|
|
|
19
19
|
.NET 10 SDK with C# DevKit
|
|
20
20
|
|
|
21
|
-
| Property
|
|
22
|
-
|
|
|
23
|
-
| **Category**
|
|
24
|
-
| **
|
|
21
|
+
| Property | Value |
|
|
22
|
+
| ------------- | --------------------------------------- |
|
|
23
|
+
| **Category** | language |
|
|
24
|
+
| **Conflicts** | `mysql`, `redpanda`, `otel-demo-nodejs` |
|
|
25
|
+
| **Tags** | `language`, `dotnet`, `csharp` |
|
|
25
26
|
|
|
26
27
|
### Bun (`bun`)
|
|
27
28
|
|
|
28
29
|
Bun runtime - faster JavaScript runtime and package manager
|
|
29
30
|
|
|
30
|
-
| Property
|
|
31
|
-
|
|
|
32
|
-
| **Category**
|
|
33
|
-
| **
|
|
34
|
-
| **
|
|
31
|
+
| Property | Value |
|
|
32
|
+
| ------------- | ---------------------------------------------------------------- |
|
|
33
|
+
| **Category** | language |
|
|
34
|
+
| **Conflicts** | `grafana`, `open-webui`, `mysql`, `redpanda`, `otel-demo-nodejs` |
|
|
35
|
+
| **Tags** | `language`, `bun`, `javascript`, `typescript` |
|
|
36
|
+
| **Ports** | 3000, 8080 |
|
|
35
37
|
|
|
36
38
|
### Go (`go`)
|
|
37
39
|
|
|
38
40
|
Go latest stable with gopls and delve debugger
|
|
39
41
|
|
|
40
|
-
| Property
|
|
41
|
-
|
|
|
42
|
-
| **Category**
|
|
43
|
-
| **
|
|
44
|
-
| **
|
|
42
|
+
| Property | Value |
|
|
43
|
+
| ------------- | ---------------------------------------------------------------------- |
|
|
44
|
+
| **Category** | language |
|
|
45
|
+
| **Conflicts** | `mysql`, `redpanda`, `mongodb`, `otel-demo-nodejs`, `otel-demo-python` |
|
|
46
|
+
| **Tags** | `language`, `go`, `golang` |
|
|
47
|
+
| **Ports** | 8080, 8081 |
|
|
45
48
|
|
|
46
49
|
### Java (`java`)
|
|
47
50
|
|
|
48
51
|
Eclipse Temurin JDK 21 with Maven and Gradle
|
|
49
52
|
|
|
50
|
-
| Property
|
|
51
|
-
|
|
|
52
|
-
| **Category**
|
|
53
|
-
| **
|
|
54
|
-
| **
|
|
53
|
+
| Property | Value |
|
|
54
|
+
| ------------- | ---------------------------------------------------------------------- |
|
|
55
|
+
| **Category** | language |
|
|
56
|
+
| **Conflicts** | `mysql`, `redpanda`, `mongodb`, `otel-demo-nodejs`, `otel-demo-python` |
|
|
57
|
+
| **Tags** | `language`, `java`, `maven`, `gradle` |
|
|
58
|
+
| **Ports** | 8080, 8081 |
|
|
55
59
|
|
|
56
60
|
### Jupyter (`jupyter`)
|
|
57
61
|
|
|
@@ -65,26 +69,15 @@ Jupyter notebook server for interactive computing and data science
|
|
|
65
69
|
| **Tags** | `language`, `jupyter`, `python`, `notebook`, `data-science` |
|
|
66
70
|
| **Ports** | 8888 |
|
|
67
71
|
|
|
68
|
-
### MkDocs (`mkdocs`)
|
|
69
|
-
|
|
70
|
-
Material for MkDocs - professional documentation generator
|
|
71
|
-
|
|
72
|
-
| Property | Value |
|
|
73
|
-
| ------------- | ----------------------------------- |
|
|
74
|
-
| **Category** | language |
|
|
75
|
-
| **Requires** | `python` |
|
|
76
|
-
| **Conflicts** | `mkdocs2` |
|
|
77
|
-
| **Tags** | `documentation`, `mkdocs`, `python` |
|
|
78
|
-
| **Ports** | 8000 |
|
|
79
|
-
|
|
80
72
|
### Node.js (`nodejs`)
|
|
81
73
|
|
|
82
74
|
Node.js LTS with TypeScript and tooling
|
|
83
75
|
|
|
84
|
-
| Property
|
|
85
|
-
|
|
|
86
|
-
| **Category**
|
|
87
|
-
| **
|
|
76
|
+
| Property | Value |
|
|
77
|
+
| ------------- | ---------------------------------------------------------------- |
|
|
78
|
+
| **Category** | language |
|
|
79
|
+
| **Conflicts** | `grafana`, `open-webui`, `mysql`, `redpanda`, `otel-demo-nodejs` |
|
|
80
|
+
| **Tags** | `language`, `nodejs`, `javascript`, `typescript` |
|
|
88
81
|
|
|
89
82
|
### PowerShell (`powershell`)
|
|
90
83
|
|
|
@@ -108,14 +101,27 @@ Python 3.12 with linting and formatting
|
|
|
108
101
|
|
|
109
102
|
Rust stable with cargo, rustfmt, and clippy
|
|
110
103
|
|
|
111
|
-
| Property
|
|
112
|
-
|
|
|
113
|
-
| **Category**
|
|
114
|
-
| **
|
|
115
|
-
| **
|
|
104
|
+
| Property | Value |
|
|
105
|
+
| ------------- | --------------------------- |
|
|
106
|
+
| **Category** | language |
|
|
107
|
+
| **Conflicts** | `grafana`, `open-webui` |
|
|
108
|
+
| **Tags** | `language`, `rust`, `cargo` |
|
|
109
|
+
| **Ports** | 8080, 3000 |
|
|
116
110
|
|
|
117
111
|
## Database Overlays
|
|
118
112
|
|
|
113
|
+
### Apache Jena Fuseki (`fuseki`)
|
|
114
|
+
|
|
115
|
+
SPARQL 1.1 server and triplestore backed by Apache Jena TDB
|
|
116
|
+
|
|
117
|
+
| Property | Value |
|
|
118
|
+
| ------------ | --------------------------------------------------------------------------------- |
|
|
119
|
+
| **Category** | database |
|
|
120
|
+
| **Supports** | compose |
|
|
121
|
+
| **Suggests** | `java`, `python`, `nodejs` |
|
|
122
|
+
| **Tags** | `database`, `rdf`, `sparql`, `triplestore`, `semantic-web`, `linked-data`, `jena` |
|
|
123
|
+
| **Ports** | 3030/http |
|
|
124
|
+
|
|
119
125
|
### DuckDB (`duckdb`)
|
|
120
126
|
|
|
121
127
|
In-process analytical database for OLAP workloads
|
|
@@ -130,67 +136,78 @@ In-process analytical database for OLAP workloads
|
|
|
130
136
|
|
|
131
137
|
S3-compatible object storage with web console
|
|
132
138
|
|
|
133
|
-
| Property
|
|
134
|
-
|
|
|
135
|
-
| **Category**
|
|
136
|
-
| **Supports**
|
|
137
|
-
| **
|
|
138
|
-
| **
|
|
139
|
+
| Property | Value |
|
|
140
|
+
| ------------- | ------------------------------------------------------ |
|
|
141
|
+
| **Category** | database |
|
|
142
|
+
| **Supports** | compose |
|
|
143
|
+
| **Suggests** | `prometheus`, `grafana` |
|
|
144
|
+
| **Conflicts** | `localstack` |
|
|
145
|
+
| **Tags** | `database`, `storage`, `s3`, `object-storage`, `minio` |
|
|
146
|
+
| **Ports** | 9000, 9001 |
|
|
139
147
|
|
|
140
148
|
### MongoDB (`mongodb`)
|
|
141
149
|
|
|
142
150
|
MongoDB 8 with Mongo Express web UI
|
|
143
151
|
|
|
144
|
-
| Property
|
|
145
|
-
|
|
|
146
|
-
| **Category**
|
|
147
|
-
| **Supports**
|
|
148
|
-
| **
|
|
149
|
-
| **
|
|
152
|
+
| Property | Value |
|
|
153
|
+
| ------------- | -------------------------------------------- |
|
|
154
|
+
| **Category** | database |
|
|
155
|
+
| **Supports** | compose |
|
|
156
|
+
| **Suggests** | `prometheus`, `grafana` |
|
|
157
|
+
| **Conflicts** | `redpanda`, `otel-demo-python`, `go`, `java` |
|
|
158
|
+
| **Tags** | `database`, `nosql`, `mongodb`, `document` |
|
|
159
|
+
| **Ports** | 27017/tcp, 8081/http |
|
|
150
160
|
|
|
151
161
|
### MySQL (`mysql`)
|
|
152
162
|
|
|
153
163
|
MySQL 8 with phpMyAdmin web UI
|
|
154
164
|
|
|
155
|
-
| Property
|
|
156
|
-
|
|
|
157
|
-
| **Category**
|
|
158
|
-
| **Supports**
|
|
159
|
-
| **
|
|
160
|
-
| **
|
|
165
|
+
| Property | Value |
|
|
166
|
+
| ------------- | ----------------------------------------------------------------------- |
|
|
167
|
+
| **Category** | database |
|
|
168
|
+
| **Supports** | compose |
|
|
169
|
+
| **Suggests** | `prometheus`, `grafana` |
|
|
170
|
+
| **Conflicts** | `redpanda`, `nodejs`, `bun`, `go`, `java`, `dotnet`, `otel-demo-nodejs` |
|
|
171
|
+
| **Tags** | `database`, `sql`, `mysql` |
|
|
172
|
+
| **Ports** | 3306/tcp, 8080/http |
|
|
161
173
|
|
|
162
|
-
###
|
|
174
|
+
### pgvector (PostgreSQL + vector) (`pgvector`)
|
|
163
175
|
|
|
164
|
-
|
|
176
|
+
PostgreSQL 16 with the pgvector extension for vector similarity search
|
|
165
177
|
|
|
166
|
-
| Property
|
|
167
|
-
|
|
|
168
|
-
| **Category**
|
|
169
|
-
| **Supports**
|
|
170
|
-
| **
|
|
171
|
-
| **
|
|
178
|
+
| Property | Value |
|
|
179
|
+
| ------------- | ----------------------------------------------------------------- |
|
|
180
|
+
| **Category** | database |
|
|
181
|
+
| **Supports** | compose |
|
|
182
|
+
| **Suggests** | `ollama`, `python`, `nodejs`, `prometheus`, `grafana` |
|
|
183
|
+
| **Conflicts** | `postgres` |
|
|
184
|
+
| **Tags** | `database`, `sql`, `vector`, `embeddings`, `postgres`, `pgvector` |
|
|
185
|
+
| **Ports** | 5432/tcp |
|
|
172
186
|
|
|
173
187
|
### PostgreSQL (`postgres`)
|
|
174
188
|
|
|
175
189
|
PostgreSQL 16 database
|
|
176
190
|
|
|
177
|
-
| Property
|
|
178
|
-
|
|
|
179
|
-
| **Category**
|
|
180
|
-
| **Supports**
|
|
181
|
-
| **
|
|
182
|
-
| **
|
|
191
|
+
| Property | Value |
|
|
192
|
+
| ------------- | ----------------------------- |
|
|
193
|
+
| **Category** | database |
|
|
194
|
+
| **Supports** | compose |
|
|
195
|
+
| **Suggests** | `prometheus`, `grafana` |
|
|
196
|
+
| **Conflicts** | `pgvector` |
|
|
197
|
+
| **Tags** | `database`, `sql`, `postgres` |
|
|
198
|
+
| **Ports** | 5432/tcp |
|
|
183
199
|
|
|
184
|
-
###
|
|
200
|
+
### Qdrant (`qdrant`)
|
|
185
201
|
|
|
186
|
-
|
|
202
|
+
High-performance vector database for similarity search and embeddings
|
|
187
203
|
|
|
188
|
-
| Property | Value
|
|
189
|
-
| ------------ |
|
|
190
|
-
| **Category** | database
|
|
191
|
-
| **Supports** | compose
|
|
192
|
-
| **
|
|
193
|
-
| **
|
|
204
|
+
| Property | Value |
|
|
205
|
+
| ------------ | ----------------------------------------------------------------------- |
|
|
206
|
+
| **Category** | database |
|
|
207
|
+
| **Supports** | compose |
|
|
208
|
+
| **Suggests** | `ollama`, `python`, `nodejs`, `prometheus`, `grafana`, `otel-collector` |
|
|
209
|
+
| **Tags** | `database`, `vector`, `embeddings`, `search`, `qdrant` |
|
|
210
|
+
| **Ports** | 6333/http, 6334/grpc |
|
|
194
211
|
|
|
195
212
|
### Redis (`redis`)
|
|
196
213
|
|
|
@@ -200,19 +217,9 @@ Redis 7 cache
|
|
|
200
217
|
| ------------ | ---------------------------- |
|
|
201
218
|
| **Category** | database |
|
|
202
219
|
| **Supports** | compose |
|
|
220
|
+
| **Suggests** | `prometheus`, `grafana` |
|
|
203
221
|
| **Tags** | `database`, `cache`, `redis` |
|
|
204
|
-
| **Ports** |
|
|
205
|
-
|
|
206
|
-
### Redpanda (`redpanda`)
|
|
207
|
-
|
|
208
|
-
Kafka-compatible event streaming with web console
|
|
209
|
-
|
|
210
|
-
| Property | Value |
|
|
211
|
-
| ------------ | --------------------------------------------------------- |
|
|
212
|
-
| **Category** | database |
|
|
213
|
-
| **Supports** | compose |
|
|
214
|
-
| **Tags** | `database`, `messaging`, `streaming`, `kafka`, `redpanda` |
|
|
215
|
-
| **Ports** | 9092, 8080, 8081, 8082, 9644 |
|
|
222
|
+
| **Ports** | 6379/tcp |
|
|
216
223
|
|
|
217
224
|
### SQL Server (`sqlserver`)
|
|
218
225
|
|
|
@@ -222,7 +229,7 @@ SQL Server 2022 for Linux
|
|
|
222
229
|
| ------------ | ------------------------------------------- |
|
|
223
230
|
| **Category** | database |
|
|
224
231
|
| **Supports** | compose |
|
|
225
|
-
| **Suggests** | `dotnet`
|
|
232
|
+
| **Suggests** | `dotnet`, `prometheus`, `grafana` |
|
|
226
233
|
| **Tags** | `database`, `sql`, `sqlserver`, `microsoft` |
|
|
227
234
|
| **Ports** | 1433 |
|
|
228
235
|
|
|
@@ -242,13 +249,13 @@ SQLite with litecli and VS Code extensions
|
|
|
242
249
|
|
|
243
250
|
Distributed tracing backend
|
|
244
251
|
|
|
245
|
-
| Property | Value
|
|
246
|
-
| ------------- |
|
|
247
|
-
| **Category** | observability
|
|
248
|
-
| **Supports** | compose
|
|
249
|
-
| **Conflicts** | `tempo`
|
|
250
|
-
| **Tags** | `observability`, `tracing`, `jaeger`
|
|
251
|
-
| **Ports** |
|
|
252
|
+
| Property | Value |
|
|
253
|
+
| ------------- | ------------------------------------ |
|
|
254
|
+
| **Category** | observability |
|
|
255
|
+
| **Supports** | compose |
|
|
256
|
+
| **Conflicts** | `tempo` |
|
|
257
|
+
| **Tags** | `observability`, `tracing`, `jaeger` |
|
|
258
|
+
| **Ports** | 16686/http |
|
|
252
259
|
|
|
253
260
|
### Loki (`loki`)
|
|
254
261
|
|
|
@@ -260,7 +267,7 @@ Log aggregation system
|
|
|
260
267
|
| **Supports** | compose |
|
|
261
268
|
| **Suggests** | `promtail` |
|
|
262
269
|
| **Tags** | `observability`, `logs`, `loki` |
|
|
263
|
-
| **Ports** |
|
|
270
|
+
| **Ports** | 3100/http |
|
|
264
271
|
|
|
265
272
|
### Prometheus (`prometheus`)
|
|
266
273
|
|
|
@@ -272,7 +279,7 @@ Metrics collection and monitoring
|
|
|
272
279
|
| **Supports** | compose |
|
|
273
280
|
| **Suggests** | `alertmanager` |
|
|
274
281
|
| **Tags** | `observability`, `metrics`, `prometheus` |
|
|
275
|
-
| **Ports** |
|
|
282
|
+
| **Ports** | 9090/http |
|
|
276
283
|
|
|
277
284
|
### Tempo (`tempo`)
|
|
278
285
|
|
|
@@ -326,40 +333,43 @@ Log shipping agent for Loki with Docker auto-discovery
|
|
|
326
333
|
|
|
327
334
|
Observability visualization dashboard with auto-provisioning
|
|
328
335
|
|
|
329
|
-
| Property
|
|
330
|
-
|
|
|
331
|
-
| **Category**
|
|
332
|
-
| **Supports**
|
|
333
|
-
| **Requires**
|
|
334
|
-
| **Suggests**
|
|
335
|
-
| **
|
|
336
|
-
| **
|
|
336
|
+
| Property | Value |
|
|
337
|
+
| ------------- | -------------------------------------- |
|
|
338
|
+
| **Category** | observability |
|
|
339
|
+
| **Supports** | compose |
|
|
340
|
+
| **Requires** | `prometheus` |
|
|
341
|
+
| **Suggests** | `loki`, `jaeger`, `tempo`, `promtail` |
|
|
342
|
+
| **Conflicts** | `open-webui`, `nodejs`, `bun`, `rust` |
|
|
343
|
+
| **Tags** | `observability`, `ui`, `visualization` |
|
|
344
|
+
| **Ports** | 3000/http |
|
|
337
345
|
|
|
338
346
|
### OTel Demo (Node.js) (`otel-demo-nodejs`)
|
|
339
347
|
|
|
340
348
|
Sample Node.js app with OpenTelemetry instrumentation
|
|
341
349
|
|
|
342
|
-
| Property
|
|
343
|
-
|
|
|
344
|
-
| **Category**
|
|
345
|
-
| **Supports**
|
|
346
|
-
| **Requires**
|
|
347
|
-
| **Suggests**
|
|
348
|
-
| **
|
|
349
|
-
| **
|
|
350
|
+
| Property | Value |
|
|
351
|
+
| ------------- | ------------------------------------------------------------ |
|
|
352
|
+
| **Category** | observability |
|
|
353
|
+
| **Supports** | compose |
|
|
354
|
+
| **Requires** | `otel-collector` |
|
|
355
|
+
| **Suggests** | `jaeger`, `tempo`, `prometheus`, `loki`, `grafana` |
|
|
356
|
+
| **Conflicts** | `mysql`, `redpanda`, `nodejs`, `bun`, `go`, `java`, `dotnet` |
|
|
357
|
+
| **Tags** | `observability`, `demo`, `nodejs`, `opentelemetry` |
|
|
358
|
+
| **Ports** | 8080 |
|
|
350
359
|
|
|
351
360
|
### OTel Demo (Python) (`otel-demo-python`)
|
|
352
361
|
|
|
353
362
|
Sample Python Flask app with OpenTelemetry instrumentation
|
|
354
363
|
|
|
355
|
-
| Property
|
|
356
|
-
|
|
|
357
|
-
| **Category**
|
|
358
|
-
| **Supports**
|
|
359
|
-
| **Requires**
|
|
360
|
-
| **Suggests**
|
|
361
|
-
| **
|
|
362
|
-
| **
|
|
364
|
+
| Property | Value |
|
|
365
|
+
| ------------- | -------------------------------------------------- |
|
|
366
|
+
| **Category** | observability |
|
|
367
|
+
| **Supports** | compose |
|
|
368
|
+
| **Requires** | `otel-collector` |
|
|
369
|
+
| **Suggests** | `jaeger`, `tempo`, `prometheus`, `loki`, `grafana` |
|
|
370
|
+
| **Conflicts** | `mongodb`, `redpanda`, `go`, `java` |
|
|
371
|
+
| **Tags** | `observability`, `demo`, `python`, `opentelemetry` |
|
|
372
|
+
| **Ports** | 8081 |
|
|
363
373
|
|
|
364
374
|
## Cloud Tool Overlays
|
|
365
375
|
|
|
@@ -390,6 +400,18 @@ Google Cloud Platform command-line tools (gcloud, gsutil, bq)
|
|
|
390
400
|
| **Category** | cloud |
|
|
391
401
|
| **Tags** | `cloud`, `gcp`, `google`, `cli` |
|
|
392
402
|
|
|
403
|
+
### k3d (`k3d`)
|
|
404
|
+
|
|
405
|
+
Lightweight local Kubernetes clusters using k3s in Docker
|
|
406
|
+
|
|
407
|
+
| Property | Value |
|
|
408
|
+
| ------------- | ----------------------------------------------------- |
|
|
409
|
+
| **Category** | cloud |
|
|
410
|
+
| **Requires** | `docker-in-docker` |
|
|
411
|
+
| **Suggests** | `kubectl-helm` |
|
|
412
|
+
| **Conflicts** | `kind` |
|
|
413
|
+
| **Tags** | `cloud`, `kubernetes`, `k8s`, `k3d`, `k3s`, `testing` |
|
|
414
|
+
|
|
393
415
|
### kind (Kubernetes in Docker) (`kind`)
|
|
394
416
|
|
|
395
417
|
Local Kubernetes cluster for development and testing
|
|
@@ -415,13 +437,14 @@ Kubernetes CLI and Helm package manager
|
|
|
415
437
|
|
|
416
438
|
Local AWS cloud stack for development and testing
|
|
417
439
|
|
|
418
|
-
| Property
|
|
419
|
-
|
|
|
420
|
-
| **Category**
|
|
421
|
-
| **Supports**
|
|
422
|
-
| **Suggests**
|
|
423
|
-
| **
|
|
424
|
-
| **
|
|
440
|
+
| Property | Value |
|
|
441
|
+
| ------------- | --------------------------------------- |
|
|
442
|
+
| **Category** | cloud |
|
|
443
|
+
| **Supports** | compose |
|
|
444
|
+
| **Suggests** | `aws-cli` |
|
|
445
|
+
| **Conflicts** | `minio` |
|
|
446
|
+
| **Tags** | `cloud`, `aws`, `testing`, `localstack` |
|
|
447
|
+
| **Ports** | 4566, 4571 |
|
|
425
448
|
|
|
426
449
|
### Pulumi (`pulumi`)
|
|
427
450
|
|
|
@@ -503,6 +526,18 @@ OpenAI Codex CLI for AI-powered code generation and assistance
|
|
|
503
526
|
| **Requires** | `nodejs` |
|
|
504
527
|
| **Tags** | `dev`, `ai`, `code-generation` |
|
|
505
528
|
|
|
529
|
+
### ComfyUI (`comfyui`)
|
|
530
|
+
|
|
531
|
+
Node-based image/video generation UI for Stable Diffusion and generative AI workflows
|
|
532
|
+
|
|
533
|
+
| Property | Value |
|
|
534
|
+
| ------------ | -------------------------------------------------------------- |
|
|
535
|
+
| **Category** | dev |
|
|
536
|
+
| **Supports** | compose |
|
|
537
|
+
| **Suggests** | `cuda`, `rocm`, `python`, `ollama` |
|
|
538
|
+
| **Tags** | `dev`, `ai`, `image-generation`, `stable-diffusion`, `comfyui` |
|
|
539
|
+
| **Ports** | 8188 |
|
|
540
|
+
|
|
506
541
|
### Commitlint (`commitlint`)
|
|
507
542
|
|
|
508
543
|
Conventional commits validation for automated releases
|
|
@@ -610,7 +645,7 @@ Open-source identity and access management (OIDC/OAuth2)
|
|
|
610
645
|
| **Supports** | compose |
|
|
611
646
|
| **Requires** | `postgres` |
|
|
612
647
|
| **Tags** | `dev`, `auth`, `oidc`, `oauth2`, `identity` |
|
|
613
|
-
| **Ports** |
|
|
648
|
+
| **Ports** | 8180/http |
|
|
614
649
|
|
|
615
650
|
### Mailpit (`mailpit`)
|
|
616
651
|
|
|
@@ -621,7 +656,19 @@ Email testing tool with web UI and SMTP server
|
|
|
621
656
|
| **Category** | dev |
|
|
622
657
|
| **Supports** | compose |
|
|
623
658
|
| **Tags** | `dev`, `email`, `smtp`, `testing` |
|
|
624
|
-
| **Ports** |
|
|
659
|
+
| **Ports** | 8025/http, 1025/tcp |
|
|
660
|
+
|
|
661
|
+
### MkDocs (`mkdocs`)
|
|
662
|
+
|
|
663
|
+
Material for MkDocs - professional documentation generator
|
|
664
|
+
|
|
665
|
+
| Property | Value |
|
|
666
|
+
| ------------- | ----------------------------------- |
|
|
667
|
+
| **Category** | dev |
|
|
668
|
+
| **Requires** | `python` |
|
|
669
|
+
| **Conflicts** | `mkdocs2` |
|
|
670
|
+
| **Tags** | `documentation`, `mkdocs`, `python` |
|
|
671
|
+
| **Ports** | 8000 |
|
|
625
672
|
|
|
626
673
|
### MkDocs 2 (`mkdocs2`)
|
|
627
674
|
|
|
@@ -655,6 +702,42 @@ Secure tunneling for webhook testing and external access
|
|
|
655
702
|
| **Tags** | `dev`, `tunneling`, `webhooks` |
|
|
656
703
|
| **Ports** | 4040 |
|
|
657
704
|
|
|
705
|
+
### Ollama (`ollama`)
|
|
706
|
+
|
|
707
|
+
Local LLM inference server with OpenAI-compatible API
|
|
708
|
+
|
|
709
|
+
| Property | Value |
|
|
710
|
+
| ------------ | ------------------------------------------------------------------------ |
|
|
711
|
+
| **Category** | dev |
|
|
712
|
+
| **Supports** | compose |
|
|
713
|
+
| **Requires** | `ollama-cli` |
|
|
714
|
+
| **Suggests** | `codex`, `claude-code`, `amp`, `prometheus`, `grafana`, `otel-collector` |
|
|
715
|
+
| **Tags** | `dev`, `ai`, `llm`, `inference`, `ollama` |
|
|
716
|
+
| **Ports** | 11434 |
|
|
717
|
+
|
|
718
|
+
### Ollama CLI (`ollama-cli`)
|
|
719
|
+
|
|
720
|
+
Ollama command-line client for local or remote Ollama servers
|
|
721
|
+
|
|
722
|
+
| Property | Value |
|
|
723
|
+
| ------------ | --------------------------------------- |
|
|
724
|
+
| **Category** | dev |
|
|
725
|
+
| **Suggests** | `ollama`, `codex`, `claude-code`, `amp` |
|
|
726
|
+
| **Tags** | `dev`, `ai`, `llm`, `ollama`, `cli` |
|
|
727
|
+
|
|
728
|
+
### Open WebUI (`open-webui`)
|
|
729
|
+
|
|
730
|
+
Browser-based chat UI for Ollama and OpenAI-compatible LLM backends
|
|
731
|
+
|
|
732
|
+
| Property | Value |
|
|
733
|
+
| ------------- | --------------------------------------------- |
|
|
734
|
+
| **Category** | dev |
|
|
735
|
+
| **Supports** | compose |
|
|
736
|
+
| **Suggests** | `ollama`, `prometheus`, `otel-collector` |
|
|
737
|
+
| **Conflicts** | `grafana`, `nodejs`, `bun`, `rust` |
|
|
738
|
+
| **Tags** | `dev`, `ai`, `llm`, `ui`, `chat`, `openwebui` |
|
|
739
|
+
| **Ports** | 3000/http |
|
|
740
|
+
|
|
658
741
|
### OpenAPI Tools (`openapi-tools`)
|
|
659
742
|
|
|
660
743
|
OpenAPI/Swagger tooling for API development and documentation
|
|
@@ -682,6 +765,7 @@ Browser automation and testing framework
|
|
|
682
765
|
| Property | Value |
|
|
683
766
|
| ------------ | --------------------------- |
|
|
684
767
|
| **Category** | dev |
|
|
768
|
+
| **Requires** | `nodejs` |
|
|
685
769
|
| **Tags** | `dev`, `testing`, `browser` |
|
|
686
770
|
|
|
687
771
|
### Pre-commit Framework (`pre-commit`)
|
|
@@ -702,9 +786,21 @@ AMD ROCm libraries and GPU passthrough for containerized ML/inference workloads
|
|
|
702
786
|
| Property | Value |
|
|
703
787
|
| ------------- | ---------------------------------------------- |
|
|
704
788
|
| **Category** | dev |
|
|
789
|
+
| **Suggests** | `comfyui` |
|
|
705
790
|
| **Conflicts** | `cuda` |
|
|
706
791
|
| **Tags** | `dev`, `gpu`, `rocm`, `amd`, `ml`, `inference` |
|
|
707
792
|
|
|
793
|
+
### Skaffold (`skaffold`)
|
|
794
|
+
|
|
795
|
+
Continuous development and deployment pipeline for Kubernetes applications
|
|
796
|
+
|
|
797
|
+
| Property | Value |
|
|
798
|
+
| ------------- | ------------------------------------------------------------ |
|
|
799
|
+
| **Category** | dev |
|
|
800
|
+
| **Suggests** | `kubectl-helm`, `kind`, `k3d` |
|
|
801
|
+
| **Conflicts** | `tilt` |
|
|
802
|
+
| **Tags** | `dev`, `kubernetes`, `k8s`, `cicd`, `deployment`, `skaffold` |
|
|
803
|
+
|
|
708
804
|
### Tilt (`tilt`)
|
|
709
805
|
|
|
710
806
|
Live update and orchestration for Kubernetes development
|
|
@@ -1,18 +1,11 @@
|
|
|
1
1
|
# Feature Specification: Verbose Plan Graph
|
|
2
2
|
|
|
3
|
-
**
|
|
3
|
+
**Spec ID**: `001-verbose-plan-graph`
|
|
4
4
|
**Created**: 2026-03-10
|
|
5
5
|
**Status**: Final
|
|
6
6
|
**Input**: User description: "Extend the plan command with a --verbose flag that narrates the dependency resolution graph — explaining why each overlay was included, not just what was included. The principle: nothing here is magic. Scope update: it should also be possible to run plan including --verbose on an existing manifest."
|
|
7
7
|
|
|
8
|
-
##
|
|
9
|
-
|
|
10
|
-
- **Spec Path**: `docs/specs/001-verbose-plan-graph/spec.md`
|
|
11
|
-
- **Commit Status**: Committed
|
|
12
|
-
- **Review Status**: APPROVED
|
|
13
|
-
- **Implementation Gate**: No implementation code may begin until this spec is committed and reviewed.
|
|
14
|
-
|
|
15
|
-
## User Scenarios & Testing _(mandatory)_
|
|
8
|
+
## User Scenarios & Testing
|
|
16
9
|
|
|
17
10
|
### User Story 1 - Explain auto-included overlays (Priority: P1)
|
|
18
11
|
|
|
@@ -80,7 +73,7 @@ A user who only wants a quick summary should still be able to run the plan comma
|
|
|
80
73
|
- The user requests an invalid or unknown overlay and the plan must fail with a clear message instead of producing partial explanation data.
|
|
81
74
|
- A user attempts to plan from a missing or invalid manifest and the command must fail with a clear message instead of producing incomplete verbose explanation output.
|
|
82
75
|
|
|
83
|
-
## Requirements
|
|
76
|
+
## Requirements
|
|
84
77
|
|
|
85
78
|
### Functional Requirements
|
|
86
79
|
|
|
@@ -110,14 +103,14 @@ A user who only wants a quick summary should still be able to run the plan comma
|
|
|
110
103
|
- Existing conflict and validation behavior remains in scope; this feature only expands how the reasoning is presented.
|
|
111
104
|
- Existing manifest-driven workflows should use the same explanation model as direct overlay selection rather than introducing a separate reasoning format.
|
|
112
105
|
|
|
113
|
-
## Dependencies & Impact
|
|
106
|
+
## Dependencies & Impact
|
|
114
107
|
|
|
115
108
|
- **Affected Areas**: CLI command behavior, manifest-driven planning workflows, plan output, discovery documentation, CHANGELOG.md, automated tests
|
|
116
109
|
- **Compatibility Impact**: Backward compatible
|
|
117
110
|
- **Required Documentation Updates**: README.md, discovery command documentation, CHANGELOG.md
|
|
118
111
|
- **Verification Plan**: Unit tests for inclusion-reason reporting, command-level tests for verbose and non-verbose output, manifest-driven planning validation, and manual validation with direct, transitive, duplicate-path, manifest, and failure scenarios
|
|
119
112
|
|
|
120
|
-
## Success Criteria
|
|
113
|
+
## Success Criteria
|
|
121
114
|
|
|
122
115
|
### Measurable Outcomes
|
|
123
116
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Feature Specification: Project Configuration File
|
|
2
2
|
|
|
3
|
-
**
|
|
3
|
+
**Spec ID**: `002-superposition-config-file`
|
|
4
4
|
**Created**: 2026-03-11
|
|
5
5
|
**Status**: Final
|
|
6
6
|
**Input**: Add a repository-root project config file so teams and automation can generate the same environment from committed declarative setup instead of reconstructing long CLI commands.
|
|
@@ -8,14 +8,7 @@
|
|
|
8
8
|
> Use repo-relative Markdown links for repository files. The root `README.md`
|
|
9
9
|
> is the only exception and may use package-friendly hosted URLs.
|
|
10
10
|
|
|
11
|
-
##
|
|
12
|
-
|
|
13
|
-
- **Spec Path**: `docs/specs/002-superposition-config-file/spec.md`
|
|
14
|
-
- **Commit Status**: Committed
|
|
15
|
-
- **Review Status**: Approved
|
|
16
|
-
- **Implementation Gate**: No implementation code may begin until this spec is committed and reviewed.
|
|
17
|
-
|
|
18
|
-
## User Scenarios & Testing _(mandatory)_
|
|
11
|
+
## User Scenarios & Testing
|
|
19
12
|
|
|
20
13
|
### User Story 1 - Generate from committed project config (Priority: P1)
|
|
21
14
|
|
|
@@ -77,7 +70,7 @@ A contributor receives clear guidance when the project config file is invalid, i
|
|
|
77
70
|
- How does the system handle `adopt --project-file` when a repository already contains a supported project config file? It reuses that file path, and it must still stop on dual-file ambiguity so the source of truth stays deterministic.
|
|
78
71
|
- How does the system handle project-file or manifest discovery from outside the target repository? An explicit project-root option may redirect persisted-input discovery and relative output resolution to that repository root.
|
|
79
72
|
|
|
80
|
-
## Requirements
|
|
73
|
+
## Requirements
|
|
81
74
|
|
|
82
75
|
### Functional Requirements
|
|
83
76
|
|
|
@@ -110,7 +103,7 @@ A contributor receives clear guidance when the project config file is invalid, i
|
|
|
110
103
|
- **Customization Input**: A supported user-configurable generation setting beyond basic stack and overlay selection, such as custom container definitions, environment-related settings, or additional generated features that alter the final output.
|
|
111
104
|
- **Validation Result**: The user-facing outcome of checking the project config file, including syntax problems, unsupported entries, conflict findings, ambiguity conditions, and corrective guidance.
|
|
112
105
|
|
|
113
|
-
## Dependencies & Impact
|
|
106
|
+
## Dependencies & Impact
|
|
114
107
|
|
|
115
108
|
- **Affected Areas**: Standard initialization workflow, clean-generation parity, supported customization handling, manifest-based regeneration boundaries, project-file based regeneration boundaries, CLI usage patterns, onboarding workflow, CI/CD workflow, user documentation
|
|
116
109
|
- **Compatibility Impact**: Backward compatible
|
|
@@ -124,7 +117,7 @@ A contributor receives clear guidance when the project config file is invalid, i
|
|
|
124
117
|
- `--from-project` and `--from-manifest` are mutually exclusive persisted-input modes rather than additive sources for one run.
|
|
125
118
|
- A single repository should contain at most one supported project config file so the source of truth stays deterministic and easy to explain.
|
|
126
119
|
|
|
127
|
-
## Success Criteria
|
|
120
|
+
## Success Criteria
|
|
128
121
|
|
|
129
122
|
### Measurable Outcomes
|
|
130
123
|
|