@tdk-landscape/tdk-cli-core 1.3.53 → 1.3.55
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/CHANGELOG.md +9 -0
- package/README.md +1 -1
- package/cli/dist/commands/doctor.js +21 -3
- package/cli/dist/commands/upgrade.js +7 -7
- package/cli/dist/generator/extension-fetch.js +16 -9
- package/cli/dist/utils/spinner.js +39 -0
- package/cli/package.json +1 -2
- package/package.json +16 -2
- package/.claude/skills/layer-autoresearch/SKILL.md +0 -48
- package/.claude/skills/tdk-troubleshoot/SKILL.md +0 -222
- package/.github/ISSUE_TEMPLATE/bug_report.yml +0 -40
- package/.github/ISSUE_TEMPLATE/config.yml +0 -11
- package/.github/ISSUE_TEMPLATE/feature_request.yml +0 -18
- package/.github/ISSUE_TEMPLATE/premium_license.yml +0 -43
- package/.github/dependabot.yml +0 -33
- package/.github/pull_request_template.md +0 -5
- package/.github/workflows/ci.yml +0 -200
- package/.github/workflows/release-binaries.yml +0 -139
- package/.github/zizmor.yml +0 -9
- package/.pre-commit-config.yaml +0 -57
- package/CODE_OF_CONDUCT.md +0 -9
- package/CONTRIBUTING.md +0 -42
- package/Makefile +0 -92
- package/SECURITY.md +0 -17
- package/benchmarks/results/container-scale-2026-09-25T20-54-49-736Z.json +0 -45
- package/benchmarks/results/container-scale-2026-09-25T21-01-20-540Z.json +0 -150
- package/benchmarks/results/container-scale-2026-09-25T21-15-01-441Z.json +0 -73
- package/benchmarks/results/container-scale-2026-09-25T22-09-01-630Z.json +0 -77
- package/benchmarks/results/container-scale-2026-09-25T22-18-28-371Z.json +0 -202
- package/cli/AGENTS.md +0 -390
- package/cli/DESIGN.md +0 -735
- package/cli/README.md +0 -292
- package/cli/biome.json +0 -40
- package/cli/dependency-graph.svg +0 -1135
- package/cli/dist/cli.d.ts +0 -3
- package/cli/dist/cli.d.ts.map +0 -1
- package/cli/dist/cli.js.map +0 -1
- package/cli/dist/commands/completion.d.ts +0 -3
- package/cli/dist/commands/completion.d.ts.map +0 -1
- package/cli/dist/commands/completion.js.map +0 -1
- package/cli/dist/commands/config.d.ts +0 -3
- package/cli/dist/commands/config.d.ts.map +0 -1
- package/cli/dist/commands/config.js.map +0 -1
- package/cli/dist/commands/doctor.d.ts +0 -19
- package/cli/dist/commands/doctor.d.ts.map +0 -1
- package/cli/dist/commands/doctor.js.map +0 -1
- package/cli/dist/commands/down.d.ts +0 -3
- package/cli/dist/commands/down.d.ts.map +0 -1
- package/cli/dist/commands/down.js.map +0 -1
- package/cli/dist/commands/help.d.ts +0 -2
- package/cli/dist/commands/help.d.ts.map +0 -1
- package/cli/dist/commands/help.js.map +0 -1
- package/cli/dist/commands/networks.d.ts +0 -3
- package/cli/dist/commands/networks.d.ts.map +0 -1
- package/cli/dist/commands/networks.js.map +0 -1
- package/cli/dist/commands/project.d.ts +0 -9
- package/cli/dist/commands/project.d.ts.map +0 -1
- package/cli/dist/commands/project.js.map +0 -1
- package/cli/dist/commands/projects.d.ts +0 -3
- package/cli/dist/commands/projects.d.ts.map +0 -1
- package/cli/dist/commands/projects.js.map +0 -1
- package/cli/dist/commands/resource.d.ts +0 -69
- package/cli/dist/commands/resource.d.ts.map +0 -1
- package/cli/dist/commands/resource.js.map +0 -1
- package/cli/dist/commands/resources.d.ts +0 -3
- package/cli/dist/commands/resources.d.ts.map +0 -1
- package/cli/dist/commands/resources.js.map +0 -1
- package/cli/dist/commands/stack.d.ts +0 -3
- package/cli/dist/commands/stack.d.ts.map +0 -1
- package/cli/dist/commands/stack.js.map +0 -1
- package/cli/dist/commands/stacks.d.ts +0 -3
- package/cli/dist/commands/stacks.d.ts.map +0 -1
- package/cli/dist/commands/stacks.js.map +0 -1
- package/cli/dist/commands/status.d.ts +0 -3
- package/cli/dist/commands/status.d.ts.map +0 -1
- package/cli/dist/commands/status.js.map +0 -1
- package/cli/dist/commands/ui.d.ts +0 -3
- package/cli/dist/commands/ui.d.ts.map +0 -1
- package/cli/dist/commands/ui.js.map +0 -1
- package/cli/dist/commands/up.d.ts +0 -3
- package/cli/dist/commands/up.d.ts.map +0 -1
- package/cli/dist/commands/up.js.map +0 -1
- package/cli/dist/commands/upgrade.d.ts +0 -14
- package/cli/dist/commands/upgrade.d.ts.map +0 -1
- package/cli/dist/commands/upgrade.js.map +0 -1
- package/cli/dist/commands/version.d.ts +0 -3
- package/cli/dist/commands/version.d.ts.map +0 -1
- package/cli/dist/commands/version.js.map +0 -1
- package/cli/dist/components/Accessible.d.ts +0 -8
- package/cli/dist/components/Accessible.d.ts.map +0 -1
- package/cli/dist/components/Accessible.js.map +0 -1
- package/cli/dist/components/BaseTooltip.d.ts +0 -4
- package/cli/dist/components/BaseTooltip.d.ts.map +0 -1
- package/cli/dist/components/BaseTooltip.js.map +0 -1
- package/cli/dist/components/DetailPanel.d.ts +0 -4
- package/cli/dist/components/DetailPanel.d.ts.map +0 -1
- package/cli/dist/components/DetailPanel.js.map +0 -1
- package/cli/dist/components/FileTree.d.ts +0 -4
- package/cli/dist/components/FileTree.d.ts.map +0 -1
- package/cli/dist/components/FileTree.js.map +0 -1
- package/cli/dist/components/ResourceSelectInput.d.ts +0 -4
- package/cli/dist/components/ResourceSelectInput.d.ts.map +0 -1
- package/cli/dist/components/ResourceSelectInput.js.map +0 -1
- package/cli/dist/components/ResourceTable.d.ts +0 -4
- package/cli/dist/components/ResourceTable.d.ts.map +0 -1
- package/cli/dist/components/ResourceTable.js.map +0 -1
- package/cli/dist/components/TabBar.d.ts +0 -4
- package/cli/dist/components/TabBar.d.ts.map +0 -1
- package/cli/dist/components/TabBar.js.map +0 -1
- package/cli/dist/components/Tooltip.d.ts +0 -12
- package/cli/dist/components/Tooltip.d.ts.map +0 -1
- package/cli/dist/components/Tooltip.js.map +0 -1
- package/cli/dist/components/index.d.ts +0 -8
- package/cli/dist/components/index.d.ts.map +0 -1
- package/cli/dist/components/index.js.map +0 -1
- package/cli/dist/config/platform-standards.d.ts +0 -159
- package/cli/dist/config/platform-standards.d.ts.map +0 -1
- package/cli/dist/config/platform-standards.js.map +0 -1
- package/cli/dist/generator/extension-fetch.d.ts +0 -25
- package/cli/dist/generator/extension-fetch.d.ts.map +0 -1
- package/cli/dist/generator/extension-fetch.js.map +0 -1
- package/cli/dist/generator/template-engine.d.ts +0 -62
- package/cli/dist/generator/template-engine.d.ts.map +0 -1
- package/cli/dist/generator/template-engine.js.map +0 -1
- package/cli/dist/index.d.ts +0 -11
- package/cli/dist/index.d.ts.map +0 -1
- package/cli/dist/index.js.map +0 -1
- package/cli/dist/types/index.d.ts +0 -257
- package/cli/dist/types/index.d.ts.map +0 -1
- package/cli/dist/types/index.js.map +0 -1
- package/cli/dist/utils/cache.d.ts +0 -19
- package/cli/dist/utils/cache.d.ts.map +0 -1
- package/cli/dist/utils/cache.js.map +0 -1
- package/cli/dist/utils/command-helpers.d.ts +0 -17
- package/cli/dist/utils/command-helpers.d.ts.map +0 -1
- package/cli/dist/utils/command-helpers.js.map +0 -1
- package/cli/dist/utils/constants.d.ts +0 -53
- package/cli/dist/utils/constants.d.ts.map +0 -1
- package/cli/dist/utils/constants.js.map +0 -1
- package/cli/dist/utils/discovery-context.d.ts +0 -4
- package/cli/dist/utils/discovery-context.d.ts.map +0 -1
- package/cli/dist/utils/discovery-context.js.map +0 -1
- package/cli/dist/utils/docker.d.ts +0 -4
- package/cli/dist/utils/docker.d.ts.map +0 -1
- package/cli/dist/utils/docker.js.map +0 -1
- package/cli/dist/utils/doctor-runtime.d.ts +0 -81
- package/cli/dist/utils/doctor-runtime.d.ts.map +0 -1
- package/cli/dist/utils/doctor-runtime.js.map +0 -1
- package/cli/dist/utils/env-validator.d.ts +0 -15
- package/cli/dist/utils/env-validator.d.ts.map +0 -1
- package/cli/dist/utils/env-validator.js.map +0 -1
- package/cli/dist/utils/errors.d.ts +0 -31
- package/cli/dist/utils/errors.d.ts.map +0 -1
- package/cli/dist/utils/errors.js.map +0 -1
- package/cli/dist/utils/file-helpers.d.ts +0 -14
- package/cli/dist/utils/file-helpers.d.ts.map +0 -1
- package/cli/dist/utils/file-helpers.js.map +0 -1
- package/cli/dist/utils/formatting.d.ts +0 -30
- package/cli/dist/utils/formatting.d.ts.map +0 -1
- package/cli/dist/utils/formatting.js.map +0 -1
- package/cli/dist/utils/paths.d.ts +0 -3
- package/cli/dist/utils/paths.d.ts.map +0 -1
- package/cli/dist/utils/paths.js.map +0 -1
- package/cli/dist/utils/port-assignment.d.ts +0 -6
- package/cli/dist/utils/port-assignment.d.ts.map +0 -1
- package/cli/dist/utils/port-assignment.js.map +0 -1
- package/cli/dist/utils/project-features.d.ts +0 -23
- package/cli/dist/utils/project-features.d.ts.map +0 -1
- package/cli/dist/utils/project-features.js.map +0 -1
- package/cli/dist/utils/project-templates.d.ts +0 -7
- package/cli/dist/utils/project-templates.d.ts.map +0 -1
- package/cli/dist/utils/project-templates.js.map +0 -1
- package/cli/dist/utils/prompt.d.ts +0 -28
- package/cli/dist/utils/prompt.d.ts.map +0 -1
- package/cli/dist/utils/prompt.js.map +0 -1
- package/cli/dist/utils/resource-features.d.ts +0 -29
- package/cli/dist/utils/resource-features.d.ts.map +0 -1
- package/cli/dist/utils/resource-features.js.map +0 -1
- package/cli/dist/utils/service-urls.d.ts +0 -30
- package/cli/dist/utils/service-urls.d.ts.map +0 -1
- package/cli/dist/utils/service-urls.js.map +0 -1
- package/cli/dist/utils/services.d.ts +0 -18
- package/cli/dist/utils/services.d.ts.map +0 -1
- package/cli/dist/utils/services.js.map +0 -1
- package/cli/dist/utils/stack-features.d.ts +0 -22
- package/cli/dist/utils/stack-features.d.ts.map +0 -1
- package/cli/dist/utils/stack-features.js.map +0 -1
- package/cli/dist/utils/tar.d.ts +0 -7
- package/cli/dist/utils/tar.d.ts.map +0 -1
- package/cli/dist/utils/tar.js.map +0 -1
- package/cli/dist/utils/tilt.d.ts +0 -20
- package/cli/dist/utils/tilt.d.ts.map +0 -1
- package/cli/dist/utils/tilt.js.map +0 -1
- package/cli/dist/utils/validation.d.ts +0 -16
- package/cli/dist/utils/validation.d.ts.map +0 -1
- package/cli/dist/utils/validation.js.map +0 -1
- package/cli/knip.json +0 -6
- package/cli/pnpm-lock.yaml +0 -2305
- package/cli/pnpm-workspace.yaml +0 -2
- package/cli/src/cli.ts +0 -72
- package/cli/src/commands/__tests__/always-enabled-infra.test.ts +0 -109
- package/cli/src/commands/__tests__/config.test.ts +0 -146
- package/cli/src/commands/__tests__/doctor.test.ts +0 -730
- package/cli/src/commands/__tests__/error-handling.test.ts +0 -78
- package/cli/src/commands/__tests__/phases-model.test.ts +0 -161
- package/cli/src/commands/__tests__/project-resource-features-e2e.test.ts +0 -187
- package/cli/src/commands/__tests__/project.test.ts +0 -68
- package/cli/src/commands/__tests__/resource.test.ts +0 -226
- package/cli/src/commands/__tests__/saas-starter-integration.test.ts +0 -194
- package/cli/src/commands/__tests__/stack-features-e2e.test.ts +0 -135
- package/cli/src/commands/__tests__/upgrade.test.ts +0 -198
- package/cli/src/commands/completion.ts +0 -300
- package/cli/src/commands/config.ts +0 -299
- package/cli/src/commands/doctor.ts +0 -926
- package/cli/src/commands/down.ts +0 -37
- package/cli/src/commands/help.ts +0 -143
- package/cli/src/commands/networks-design.md +0 -80
- package/cli/src/commands/networks.ts +0 -332
- package/cli/src/commands/project.ts +0 -456
- package/cli/src/commands/projects.ts +0 -82
- package/cli/src/commands/resource.ts +0 -652
- package/cli/src/commands/resources.ts +0 -95
- package/cli/src/commands/stack.ts +0 -128
- package/cli/src/commands/stacks.ts +0 -52
- package/cli/src/commands/status.ts +0 -88
- package/cli/src/commands/ui.tsx +0 -843
- package/cli/src/commands/up.ts +0 -169
- package/cli/src/commands/upgrade.ts +0 -628
- package/cli/src/commands/version.ts +0 -9
- package/cli/src/components/Accessible.tsx +0 -21
- package/cli/src/components/BaseTooltip.tsx +0 -66
- package/cli/src/components/DetailPanel.tsx +0 -146
- package/cli/src/components/FileTree.tsx +0 -89
- package/cli/src/components/ResourceSelectInput.tsx +0 -30
- package/cli/src/components/ResourceTable.tsx +0 -78
- package/cli/src/components/TabBar.tsx +0 -53
- package/cli/src/components/Tooltip.tsx +0 -11
- package/cli/src/components/index.ts +0 -7
- package/cli/src/config/platform-standards.test.ts +0 -11
- package/cli/src/config/platform-standards.ts +0 -196
- package/cli/src/generator/__tests__/extension-fetch.test.ts +0 -242
- package/cli/src/generator/__tests__/template-engine.test.ts +0 -70
- package/cli/src/generator/extension-fetch.ts +0 -286
- package/cli/src/generator/template-engine.ts +0 -752
- package/cli/src/index.ts +0 -86
- package/cli/src/templates.d.ts +0 -4
- package/cli/src/types/index.ts +0 -353
- package/cli/src/utils/__tests__/cache.test.ts +0 -98
- package/cli/src/utils/__tests__/formatting.test.ts +0 -170
- package/cli/src/utils/__tests__/paths.test.ts +0 -180
- package/cli/src/utils/__tests__/port-assignment.test.ts +0 -121
- package/cli/src/utils/__tests__/service-urls.test.ts +0 -174
- package/cli/src/utils/__tests__/services.test.ts +0 -531
- package/cli/src/utils/__tests__/tilt.test.ts +0 -172
- package/cli/src/utils/__tests__/validation.test.ts +0 -148
- package/cli/src/utils/cache.ts +0 -76
- package/cli/src/utils/command-helpers.ts +0 -54
- package/cli/src/utils/constants.ts +0 -130
- package/cli/src/utils/discovery-context.ts +0 -49
- package/cli/src/utils/docker.ts +0 -20
- package/cli/src/utils/doctor-runtime.ts +0 -644
- package/cli/src/utils/env-validator.ts +0 -139
- package/cli/src/utils/errors.ts +0 -168
- package/cli/src/utils/file-helpers.ts +0 -62
- package/cli/src/utils/formatting.ts +0 -215
- package/cli/src/utils/paths.ts +0 -53
- package/cli/src/utils/port-assignment.ts +0 -106
- package/cli/src/utils/project-features.ts +0 -118
- package/cli/src/utils/project-templates.ts +0 -29
- package/cli/src/utils/prompt.ts +0 -128
- package/cli/src/utils/resource-features.ts +0 -215
- package/cli/src/utils/service-urls.ts +0 -124
- package/cli/src/utils/services.ts +0 -364
- package/cli/src/utils/stack-features.ts +0 -30
- package/cli/src/utils/tar.ts +0 -24
- package/cli/src/utils/tilt.ts +0 -133
- package/cli/src/utils/validation.ts +0 -67
- package/cli/tsconfig.json +0 -25
- package/cli/tsconfig.typecheck.json +0 -8
- package/docs/FEATURES.md +0 -281
- package/docs/demo.svg +0 -217
- package/engine/docs/AUTODISCOVERY_TEST.md +0 -182
- package/engine/docs/C4-ARCHITECTURE-operations.md +0 -396
- package/engine/docs/C4-ARCHITECTURE-overview.md +0 -284
- package/engine/docs/C4-ARCHITECTURE.md +0 -17
- package/engine/docs/GOLDEN_IMAGE_INTEGRATION.md +0 -349
- package/engine/docs/MANIFEST_DRIVEN_ARCHITECTURE.md +0 -357
- package/engine/docs/README.md +0 -284
- package/install.sh +0 -19
- package/knip.json +0 -10
- package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/.openspec.yaml +0 -2
- package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/design.md +0 -102
- package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/proposal.md +0 -31
- package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/specs/vscode-tdk-notifications/spec.md +0 -48
- package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/specs/vscode-tdk-orchestration/spec.md +0 -63
- package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/specs/vscode-tdk-troubleshooting/spec.md +0 -56
- package/openspec/changes/add-vscode-tdk-troubleshooter-plugin/tasks.md +0 -61
- package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/.openspec.yaml +0 -2
- package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/design.md +0 -114
- package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/proposal.md +0 -32
- package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/specs/manifest-field-migration/spec.md +0 -20
- package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/specs/resource-terminology-standard/spec.md +0 -20
- package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/specs/stack-terminology-standard/spec.md +0 -20
- package/openspec/changes/archive/2026-04-28-rename-domain-to-stack-service-to-resource/tasks.md +0 -194
- package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/.openspec.yaml +0 -2
- package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/design.md +0 -111
- package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/proposal.md +0 -33
- package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/specs/function-naming-alignment/spec.md +0 -12
- package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/specs/optional-parameter-patterns/spec.md +0 -18
- package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/specs/parameter-documentation/spec.md +0 -16
- package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/specs/parameter-naming-consistency/spec.md +0 -12
- package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/specs/parameter-ordering-standard/spec.md +0 -12
- package/openspec/changes/archive/2026-04-28-star-files-parameter-fixes/tasks.md +0 -194
- package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/.openspec.yaml +0 -2
- package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/design.md +0 -84
- package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/proposal.md +0 -31
- package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/specs/codebase-audit/spec.md +0 -27
- package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/specs/dead-code-cleanup/spec.md +0 -27
- package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/specs/test-gap-fill/spec.md +0 -23
- package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/specs/todo-resolution/spec.md +0 -27
- package/openspec/changes/archive/2026-04-29-scan-repo-gaps-fix/tasks.md +0 -39
- package/openspec/changes/archive/2026-06-25-landscape-consolidation/.openspec.yaml +0 -2
- package/openspec/changes/archive/2026-06-25-landscape-consolidation/design.md +0 -80
- package/openspec/changes/archive/2026-06-25-landscape-consolidation/proposal.md +0 -40
- package/openspec/changes/archive/2026-06-25-landscape-consolidation/spec.md +0 -52
- package/openspec/changes/archive/2026-06-25-landscape-consolidation/tasks.md +0 -51
- package/openspec/changes/archive/2026-09-17-fix-generated-stack-boot/.openspec.yaml +0 -2
- package/openspec/changes/archive/2026-09-17-fix-generated-stack-boot/design.md +0 -43
- package/openspec/changes/archive/2026-09-17-fix-generated-stack-boot/proposal.md +0 -29
- package/openspec/changes/archive/2026-09-17-fix-generated-stack-boot/specs/self-contained-generated-projects/spec.md +0 -67
- package/openspec/changes/archive/2026-09-17-fix-generated-stack-boot/tasks.md +0 -27
- package/openspec/changes/optimize-runtime-docker-layers/.openspec.yaml +0 -3
- package/openspec/changes/optimize-runtime-docker-layers/design.md +0 -81
- package/openspec/changes/optimize-runtime-docker-layers/proposal.md +0 -44
- package/openspec/changes/optimize-runtime-docker-layers/specs/runtime-container-footprint/spec.md +0 -79
- package/openspec/changes/optimize-runtime-docker-layers/tasks.md +0 -36
- package/openspec/changes/prioritized-cold-start/.openspec.yaml +0 -4
- package/openspec/changes/prioritized-cold-start/design.md +0 -137
- package/openspec/changes/prioritized-cold-start/proposal.md +0 -41
- package/openspec/changes/prioritized-cold-start/specs/on-demand-resource-startup/spec.md +0 -98
- package/openspec/changes/prioritized-cold-start/tasks.md +0 -69
- package/openspec/config.yaml +0 -1
- package/openspec/specs/manifest-field-migration/spec.md +0 -24
- package/openspec/specs/resource-terminology-standard/spec.md +0 -24
- package/openspec/specs/self-contained-generated-projects/spec.md +0 -67
- package/openspec/specs/stack-terminology-standard/spec.md +0 -24
- package/platform/services/platform/proxy/service.yaml +0 -14
- package/scripts/audit-codebase.sh +0 -213
- package/scripts/autoresearch/layer-eval.sh +0 -65
- package/scripts/benchmark/README.md +0 -25
- package/scripts/benchmark/container-scale.ts +0 -503
- package/scripts/benchmark/pre-release-gate.sh +0 -9
- package/scripts/install-git-hooks.sh +0 -14
- package/scripts/measure-idle-footprint.sh +0 -58
- package/scripts/record-demo.sh +0 -43
- package/scripts/release-binaries.sh +0 -97
- package/scripts/setup-pre-commit.sh +0 -33
- package/scripts/stage-npm-engine.sh +0 -36
- package/tests/tilt-engine/__init__.py +0 -5
- package/tests/tilt-engine/conftest.py +0 -182
- package/tests/tilt-engine/fixtures/appointment-frontend-service.json +0 -11
- package/tests/tilt-engine/fixtures/identity-backend-service.json +0 -12
- package/tests/tilt-engine/fixtures/invalid-service.json +0 -4
- package/tests/tilt-engine/test_agents_md_generator.py +0 -341
- package/tests/tilt-engine/test_agents_md_integration.py +0 -378
- package/tests/tilt-engine/test_cache_operations.py +0 -181
- package/tests/tilt-engine/test_cache_persistence.py +0 -142
- package/tests/tilt-engine/test_code_executor.py +0 -152
- package/tests/tilt-engine/test_code_viewer.py +0 -127
- package/tests/tilt-engine/test_compose_port_anchors.py +0 -310
- package/tests/tilt-engine/test_config_inspector.py +0 -162
- package/tests/tilt-engine/test_daemon_focus_mode.py +0 -89
- package/tests/tilt-engine/test_daemon_polling.py +0 -122
- package/tests/tilt-engine/test_daemon_registration.py +0 -115
- package/tests/tilt-engine/test_daemon_validation.py +0 -107
- package/tests/tilt-engine/test_docker_generator_bugs.py +0 -493
- package/tests/tilt-engine/test_docker_prune.py +0 -119
- package/tests/tilt-engine/test_dockerignore_path_bug.py +0 -82
- package/tests/tilt-engine/test_file_browser.py +0 -193
- package/tests/tilt-engine/test_frontend_basepath_manifest.py +0 -27
- package/tests/tilt-engine/test_health_dependencies.py +0 -130
- package/tests/tilt-engine/test_health_endpoints.py +0 -118
- package/tests/tilt-engine/test_health_tilt_ui.py +0 -85
- package/tests/tilt-engine/test_runtime_container_footprint.py +0 -162
- package/tests/tilt-engine/test_sablier_defer_start.py +0 -237
- package/tests/tilt-engine/test_safety_aliases.py +0 -84
- package/tests/tilt-engine/test_snapshot_diff.py +0 -136
- package/tests/tilt-engine/test_snapshot_persistence.py +0 -163
- package/tests/tilt-engine/test_snapshot_scanning.py +0 -123
- package/tests/tilt-engine/test_standalone_project_boot.py +0 -61
- package/tests/tilt-engine/test_standalone_traefik.py +0 -160
- package/tests/tilt-engine/test_traefik_static_wake_route.py +0 -187
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import type { ValidationResult } from "../types/index.js";
|
|
2
|
-
import { OPTIONAL_INFRA_SERVICES } from "./constants.js";
|
|
3
|
-
|
|
4
|
-
export const KEBAB_CASE_REGEX = /^[a-z0-9-]+$/;
|
|
5
|
-
|
|
6
|
-
function isKebabCase(value: string): boolean {
|
|
7
|
-
return KEBAB_CASE_REGEX.test(value);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export function validateResourceName(name: string): ValidationResult {
|
|
11
|
-
if (!name.trim()) {
|
|
12
|
-
return { valid: false, error: "Resource name is required" };
|
|
13
|
-
}
|
|
14
|
-
if (!isKebabCase(name)) {
|
|
15
|
-
return {
|
|
16
|
-
valid: false,
|
|
17
|
-
error: "Use lowercase letters, numbers, and hyphens only",
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
return { valid: true };
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export function createKebabCaseValidator(context: "resource" | "stack") {
|
|
24
|
-
return (input: string): true | string => {
|
|
25
|
-
if (!input.trim()) {
|
|
26
|
-
return context === "resource" ? "Resource name is required" : "Stack name is required";
|
|
27
|
-
}
|
|
28
|
-
if (!isKebabCase(input)) {
|
|
29
|
-
return context === "resource"
|
|
30
|
-
? "Use lowercase letters, numbers, and hyphens only"
|
|
31
|
-
: "Use kebab-case (lowercase, numbers, hyphens only)";
|
|
32
|
-
}
|
|
33
|
-
return true;
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export function validateOptionalInfraService(service: string): ValidationResult {
|
|
38
|
-
if (includes(OPTIONAL_INFRA_SERVICES, service)) {
|
|
39
|
-
return { valid: true };
|
|
40
|
-
}
|
|
41
|
-
return {
|
|
42
|
-
valid: false,
|
|
43
|
-
error: `Invalid service. Must be one of: ${OPTIONAL_INFRA_SERVICES.join(", ")}`,
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export function isValidPort(port: number): boolean {
|
|
48
|
-
return Number.isInteger(port) && port > 0 && port <= 65535;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* Check a filesystem path segment for characters that are unsafe to use in a
|
|
53
|
-
* path (null bytes, or characters that are invalid on common filesystems).
|
|
54
|
-
* Does not check for path traversal (`..`) - callers that resolve the path
|
|
55
|
-
* against a base directory should check that separately.
|
|
56
|
-
*/
|
|
57
|
-
export function isPathSafe(path: string): boolean {
|
|
58
|
-
return !path.includes("\0") && !/[<>:"|?*]/.test(path);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
export function sanitizeForShell(value: string, replacement: string = "_"): string {
|
|
62
|
-
return value.replace(/[^a-zA-Z0-9-]/g, replacement).substring(0, 100);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
export function includes<T extends readonly string[]>(array: T, value: string): value is T[number] {
|
|
66
|
-
return (array as readonly string[]).includes(value);
|
|
67
|
-
}
|
package/cli/tsconfig.json
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"target": "ES2022",
|
|
4
|
-
"module": "ESNext",
|
|
5
|
-
"moduleResolution": "bundler",
|
|
6
|
-
"lib": ["ES2022", "DOM"],
|
|
7
|
-
"types": ["node", "react"],
|
|
8
|
-
"outDir": "./dist",
|
|
9
|
-
"rootDir": "./src",
|
|
10
|
-
"strict": true,
|
|
11
|
-
"esModuleInterop": true,
|
|
12
|
-
"skipLibCheck": true,
|
|
13
|
-
"forceConsistentCasingInFileNames": true,
|
|
14
|
-
"declaration": true,
|
|
15
|
-
"declarationMap": true,
|
|
16
|
-
"sourceMap": true,
|
|
17
|
-
"resolveJsonModule": true,
|
|
18
|
-
"allowSyntheticDefaultImports": true,
|
|
19
|
-
"isolatedModules": true,
|
|
20
|
-
"noEmitOnError": true,
|
|
21
|
-
"jsx": "react-jsx"
|
|
22
|
-
},
|
|
23
|
-
"include": ["src/**/*"],
|
|
24
|
-
"exclude": ["node_modules", "dist", "**/*.test.ts"]
|
|
25
|
-
}
|
package/docs/FEATURES.md
DELETED
|
@@ -1,281 +0,0 @@
|
|
|
1
|
-
# TDK Features Reference
|
|
2
|
-
|
|
3
|
-
This document describes all available features in TDK and how to control them.
|
|
4
|
-
|
|
5
|
-
## Overview
|
|
6
|
-
|
|
7
|
-
TDK has two levels of feature control:
|
|
8
|
-
|
|
9
|
-
1. **Project-Level Features** - Infrastructure services available to all resources (proxy, database, etc.)
|
|
10
|
-
2. **Resource-Level Features** - Code generators for individual services (api-client, prisma, etc.)
|
|
11
|
-
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
## Project-Level Features
|
|
15
|
-
|
|
16
|
-
Project-level features are configured in `.tdk/project.json` and control infrastructure services.
|
|
17
|
-
|
|
18
|
-
### CORE Features (Pre-Enabled)
|
|
19
|
-
|
|
20
|
-
These are always enabled in the `pre_alpha` stack:
|
|
21
|
-
|
|
22
|
-
#### `proxy` (Traefik)
|
|
23
|
-
- **Purpose**: Reverse proxy and API gateway for routing all services
|
|
24
|
-
- **Default**: ✅ Enabled
|
|
25
|
-
- **Service Name**: `proxy`
|
|
26
|
-
- **Port**: 80 (HTTP), 443 (HTTPS)
|
|
27
|
-
- **Configuration**: Routes all HTTP traffic based on path/domain rules
|
|
28
|
-
|
|
29
|
-
#### `database-management` (PostgreSQL)
|
|
30
|
-
- **Purpose**: Primary relational database for data persistence
|
|
31
|
-
- **Default**: ✅ Enabled
|
|
32
|
-
- **Service Name**: `database-management`
|
|
33
|
-
- **Port**: 5432
|
|
34
|
-
- **Database**: `app_dev` (default)
|
|
35
|
-
- **Configuration**: Backend services use `DATABASE_URL` env var
|
|
36
|
-
|
|
37
|
-
### PREMIUM Features (Requires License Key)
|
|
38
|
-
|
|
39
|
-
Enable these with a premium license key set via `export TDK_LICENSE_KEY=<key>`:
|
|
40
|
-
|
|
41
|
-
#### `verdaccio` (Verdaccio)
|
|
42
|
-
- **Purpose**: Local npm registry for package management and publishing
|
|
43
|
-
- **Default**: ❌ Disabled (Premium feature)
|
|
44
|
-
- **Service Name**: `verdaccio`
|
|
45
|
-
- **Port**: 4873
|
|
46
|
-
- **License**: Premium (requires `TDK_LICENSE_KEY` environment variable)
|
|
47
|
-
- **Configuration**: Services use this for `npm install` and `bun install` when enabled
|
|
48
|
-
|
|
49
|
-
### OPTIONAL Features (Disabled by Default)
|
|
50
|
-
|
|
51
|
-
Enable these in `.tdk/project.json` under `optional_infra`:
|
|
52
|
-
|
|
53
|
-
```json
|
|
54
|
-
{
|
|
55
|
-
"optional_infra": {
|
|
56
|
-
"monitoring": true,
|
|
57
|
-
"elk": true,
|
|
58
|
-
"debezium": true,
|
|
59
|
-
"golden_image": true
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
#### `monitoring` (SigNoz/SkyWalking)
|
|
65
|
-
- **Purpose**: Observability platform for metrics, traces, and logs
|
|
66
|
-
- **Default**: ❌ Disabled
|
|
67
|
-
- **Resource Usage**: High (requires database-management)
|
|
68
|
-
|
|
69
|
-
#### `elk` (Elasticsearch, Logstash, Kibana)
|
|
70
|
-
- **Purpose**: Log aggregation and analysis stack
|
|
71
|
-
- **Default**: ❌ Disabled
|
|
72
|
-
- **Resource Usage**: High
|
|
73
|
-
|
|
74
|
-
#### `debezium` (Change Data Capture)
|
|
75
|
-
- **Purpose**: Stream database changes in real-time
|
|
76
|
-
- **Default**: ❌ Disabled
|
|
77
|
-
- **Requires**: PostgreSQL (database-management)
|
|
78
|
-
|
|
79
|
-
#### `golden-image` (Pre-built Docker Layer)
|
|
80
|
-
- **Purpose**: Faster Docker builds by caching dependencies
|
|
81
|
-
- **Default**: ✅ Enabled
|
|
82
|
-
- **Benefit**: Reduces build time from minutes to seconds
|
|
83
|
-
|
|
84
|
-
### Enable/Disable
|
|
85
|
-
|
|
86
|
-
To enable optional or premium features, edit `.tdk/project.json`:
|
|
87
|
-
|
|
88
|
-
```bash
|
|
89
|
-
# Edit .tdk/project.json
|
|
90
|
-
{
|
|
91
|
-
"optional_infra": {
|
|
92
|
-
"monitoring": true, # Optional feature (Free)
|
|
93
|
-
"verdaccio": true # Premium feature (requires TDK_LICENSE_KEY)
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
# Regenerate
|
|
98
|
-
tdk config regenerate
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
**For Premium Features:** Set your license key before running `tdk up`:
|
|
102
|
-
|
|
103
|
-
```bash
|
|
104
|
-
export TDK_LICENSE_KEY=<your-premium-key>
|
|
105
|
-
tdk up
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
To get a key, use the [request form on the website](https://tdk-landscape.github.io/tdk-website/#waitlist) or open a [Premium license request](https://github.com/tdk-landscape/tdk-cli-core/issues/new?template=premium_license.yml).
|
|
109
|
-
|
|
110
|
-
---
|
|
111
|
-
|
|
112
|
-
## Resource-Level Features
|
|
113
|
-
|
|
114
|
-
Resource-level features are configured in each `service.json` file via the `features: []` array.
|
|
115
|
-
|
|
116
|
-
### Frontend Services
|
|
117
|
-
|
|
118
|
-
Default features for frontend services (appType: "frontend"):
|
|
119
|
-
|
|
120
|
-
```json
|
|
121
|
-
{
|
|
122
|
-
"appName": "my-app",
|
|
123
|
-
"appType": "frontend",
|
|
124
|
-
"features": ["api-client", "env-config", "api-index"]
|
|
125
|
-
}
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
#### `api-client`
|
|
129
|
-
- **Generates**: `.autogenerated/api-client.ts`
|
|
130
|
-
- **Purpose**: Pre-configured API client wrapper for backend communication
|
|
131
|
-
- **Imports**: `import { apiClient } from './.autogenerated/api-client'`
|
|
132
|
-
- **Customize**: Edit `service.json` → `apiClient` config section
|
|
133
|
-
|
|
134
|
-
#### `env-config`
|
|
135
|
-
- **Generates**: `.autogenerated/env.ts`
|
|
136
|
-
- **Purpose**: Environment constants and configuration
|
|
137
|
-
- **Imports**: `import { API_URL } from './.autogenerated/env'`
|
|
138
|
-
- **Default**: Uses `VITE_API_URL` env var with fallback to local dev URL
|
|
139
|
-
|
|
140
|
-
#### `api-index`
|
|
141
|
-
- **Generates**: `.autogenerated/api-index.ts`
|
|
142
|
-
- **Purpose**: Barrel export for cleaner imports
|
|
143
|
-
- **Imports**: `import { apiClient, API_URL } from './.autogenerated'`
|
|
144
|
-
|
|
145
|
-
### Backend Services
|
|
146
|
-
|
|
147
|
-
Default features for backend services (appType: "backend", "worker", "migrator"):
|
|
148
|
-
|
|
149
|
-
```json
|
|
150
|
-
{
|
|
151
|
-
"appName": "my-api",
|
|
152
|
-
"appType": "backend",
|
|
153
|
-
"features": ["prisma"]
|
|
154
|
-
}
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
#### `prisma`
|
|
158
|
-
- **Generates**: `.autogenerated/prisma.config.autogenerated.ts`
|
|
159
|
-
- **Purpose**: Prisma CLI configuration for database access
|
|
160
|
-
- **Usage**: `npx prisma generate`, `npx prisma migrate`, `npx prisma db push`
|
|
161
|
-
- **Database**: Uses `DATABASE_URL` env var from project-level database
|
|
162
|
-
|
|
163
|
-
#### `ddd` (Premium)
|
|
164
|
-
- **Generates**: Domain-driven design folders and backend path aliases
|
|
165
|
-
- **Purpose**: Scaffolds `domain`, `application`, `infrastructure`, and `presentation` layers
|
|
166
|
-
- **License**: Premium (requires `TDK_LICENSE_KEY` with the `ddd` resource grant)
|
|
167
|
-
- **Usage**: `tdk resource add <name> --type backend --ddd`
|
|
168
|
-
|
|
169
|
-
### Enable/Disable Features
|
|
170
|
-
|
|
171
|
-
**To enable a feature**, add it to `features: []`:
|
|
172
|
-
|
|
173
|
-
```json
|
|
174
|
-
{
|
|
175
|
-
"features": ["api-client", "env-config", "api-index", "prisma"]
|
|
176
|
-
}
|
|
177
|
-
```
|
|
178
|
-
|
|
179
|
-
**To disable a feature**, remove it from `features: []`:
|
|
180
|
-
|
|
181
|
-
```json
|
|
182
|
-
{
|
|
183
|
-
"features": ["api-client"] // Only api-client runs
|
|
184
|
-
}
|
|
185
|
-
```
|
|
186
|
-
|
|
187
|
-
After editing `service.json`, regenerate:
|
|
188
|
-
|
|
189
|
-
```bash
|
|
190
|
-
tdk config regenerate
|
|
191
|
-
```
|
|
192
|
-
|
|
193
|
-
---
|
|
194
|
-
|
|
195
|
-
## Always-Enabled Generators
|
|
196
|
-
|
|
197
|
-
These generators always run and don't have a feature flag:
|
|
198
|
-
|
|
199
|
-
- **vite** - Frontend/backend build configuration
|
|
200
|
-
- **tsconfig** - TypeScript configuration (local and Docker)
|
|
201
|
-
- **dockerfile** - Container configuration
|
|
202
|
-
- **npmrc/bunfig** - Package manager configuration
|
|
203
|
-
- **nginx** - Static file serving (frontend)
|
|
204
|
-
- **env** - Backend environment setup
|
|
205
|
-
- **agents-md** - AI safety guard rail
|
|
206
|
-
|
|
207
|
-
---
|
|
208
|
-
|
|
209
|
-
## Quick Reference
|
|
210
|
-
|
|
211
|
-
### Frontend (appType: "frontend")
|
|
212
|
-
|
|
213
|
-
| Feature | Default | Customizable |
|
|
214
|
-
|---------|---------|--------------|
|
|
215
|
-
| api-client | ✅ | Yes |
|
|
216
|
-
| env-config | ✅ | Yes |
|
|
217
|
-
| api-index | ✅ | Yes |
|
|
218
|
-
| vite | ✅ (always) | No |
|
|
219
|
-
| tsconfig | ✅ (always) | No |
|
|
220
|
-
| dockerfile | ✅ (always) | No |
|
|
221
|
-
| nginx | ✅ (always) | No |
|
|
222
|
-
|
|
223
|
-
### Backend (appType: "backend")
|
|
224
|
-
|
|
225
|
-
| Feature | Default | Customizable |
|
|
226
|
-
|---------|---------|--------------|
|
|
227
|
-
| prisma | ✅ | Yes |
|
|
228
|
-
| ddd | ❌ | Yes (Premium) |
|
|
229
|
-
| vite | ✅ (always) | No |
|
|
230
|
-
| tsconfig | ✅ (always) | No |
|
|
231
|
-
| dockerfile | ✅ (always) | No |
|
|
232
|
-
| npmrc | ✅ (always) | No |
|
|
233
|
-
| env | ✅ (always) | No |
|
|
234
|
-
|
|
235
|
-
### Project Infrastructure
|
|
236
|
-
|
|
237
|
-
| Feature | Default | Customizable | License |
|
|
238
|
-
|---------|---------|--------------|---------|
|
|
239
|
-
| proxy | ✅ | No | Free |
|
|
240
|
-
| database | ✅ | No | Free |
|
|
241
|
-
| verdaccio | ❌ | Yes | Premium |
|
|
242
|
-
| monitoring | ❌ | Yes | Free |
|
|
243
|
-
| elk | ❌ | Yes | Free |
|
|
244
|
-
| debezium | ❌ | Yes | Free |
|
|
245
|
-
| golden-image | ✅ | Yes | Free |
|
|
246
|
-
|
|
247
|
-
---
|
|
248
|
-
|
|
249
|
-
## Examples
|
|
250
|
-
|
|
251
|
-
### Disable API Client Generation
|
|
252
|
-
|
|
253
|
-
```json
|
|
254
|
-
{
|
|
255
|
-
"appName": "dashboard-app",
|
|
256
|
-
"appType": "frontend",
|
|
257
|
-
"features": ["env-config", "api-index"] // Remove api-client
|
|
258
|
-
}
|
|
259
|
-
```
|
|
260
|
-
|
|
261
|
-
### Backend Without Prisma
|
|
262
|
-
|
|
263
|
-
```json
|
|
264
|
-
{
|
|
265
|
-
"appName": "worker",
|
|
266
|
-
"appType": "backend",
|
|
267
|
-
"features": [] // No prisma
|
|
268
|
-
}
|
|
269
|
-
```
|
|
270
|
-
|
|
271
|
-
### Enable Monitoring
|
|
272
|
-
|
|
273
|
-
```json
|
|
274
|
-
{
|
|
275
|
-
"optional_infra": {
|
|
276
|
-
"monitoring": true
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
```
|
|
280
|
-
|
|
281
|
-
Then run `tdk config regenerate && tdk up`.
|