@planu/cli 0.64.1 → 0.66.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.
Files changed (72) hide show
  1. package/dist/config/default-versions.json +58 -0
  2. package/dist/config/version-defaults.d.ts +11 -0
  3. package/dist/config/version-defaults.d.ts.map +1 -0
  4. package/dist/config/version-defaults.js +62 -0
  5. package/dist/config/version-defaults.js.map +1 -0
  6. package/dist/config/version-defaults.ts +75 -0
  7. package/dist/engine/advanced-testing/chaos-generator.d.ts.map +1 -1
  8. package/dist/engine/advanced-testing/chaos-generator.js +2 -1
  9. package/dist/engine/advanced-testing/chaos-generator.js.map +1 -1
  10. package/dist/engine/advanced-testing/mutation-advisor.d.ts.map +1 -1
  11. package/dist/engine/advanced-testing/mutation-advisor.js +2 -1
  12. package/dist/engine/advanced-testing/mutation-advisor.js.map +1 -1
  13. package/dist/engine/doc-generator/per-spec-report/mermaid-renderer.d.ts.map +1 -1
  14. package/dist/engine/doc-generator/per-spec-report/mermaid-renderer.js +2 -1
  15. package/dist/engine/doc-generator/per-spec-report/mermaid-renderer.js.map +1 -1
  16. package/dist/engine/doc-generator/proposal/proposal-html-wrapper.d.ts.map +1 -1
  17. package/dist/engine/doc-generator/proposal/proposal-html-wrapper.js +2 -1
  18. package/dist/engine/doc-generator/proposal/proposal-html-wrapper.js.map +1 -1
  19. package/dist/engine/infrastructure/component-mapper.d.ts.map +1 -1
  20. package/dist/engine/infrastructure/component-mapper.js +2 -1
  21. package/dist/engine/infrastructure/component-mapper.js.map +1 -1
  22. package/dist/engine/infrastructure/docker-compose-generator.d.ts.map +1 -1
  23. package/dist/engine/infrastructure/docker-compose-generator.js +7 -6
  24. package/dist/engine/infrastructure/docker-compose-generator.js.map +1 -1
  25. package/dist/engine/infrastructure/terraform-generator.d.ts.map +1 -1
  26. package/dist/engine/infrastructure/terraform-generator.js +3 -2
  27. package/dist/engine/infrastructure/terraform-generator.js.map +1 -1
  28. package/dist/engine/skill-registry/agentskill-adapter.js +3 -3
  29. package/dist/engine/skill-registry/agentskill-adapter.js.map +1 -1
  30. package/dist/tools/create-spec/post-creation.d.ts.map +1 -1
  31. package/dist/tools/create-spec/post-creation.js +26 -1
  32. package/dist/tools/create-spec/post-creation.js.map +1 -1
  33. package/dist/tools/generate-infrastructure.d.ts.map +1 -1
  34. package/dist/tools/generate-infrastructure.js +6 -1
  35. package/dist/tools/generate-infrastructure.js.map +1 -1
  36. package/dist/tools/generate-tests.d.ts.map +1 -1
  37. package/dist/tools/generate-tests.js +6 -0
  38. package/dist/tools/generate-tests.js.map +1 -1
  39. package/dist/tools/init-project/claude-md-generator.d.ts +3 -0
  40. package/dist/tools/init-project/claude-md-generator.d.ts.map +1 -0
  41. package/dist/tools/init-project/claude-md-generator.js +228 -0
  42. package/dist/tools/init-project/claude-md-generator.js.map +1 -0
  43. package/dist/tools/init-project/handler.d.ts.map +1 -1
  44. package/dist/tools/init-project/handler.js +3 -1
  45. package/dist/tools/init-project/handler.js.map +1 -1
  46. package/dist/tools/init-project/helpers.d.ts +2 -1
  47. package/dist/tools/init-project/helpers.d.ts.map +1 -1
  48. package/dist/tools/init-project/helpers.js +45 -7
  49. package/dist/tools/init-project/helpers.js.map +1 -1
  50. package/dist/tools/suggest-tooling/advanced-testing-catalog.d.ts.map +1 -1
  51. package/dist/tools/suggest-tooling/advanced-testing-catalog.js +3 -2
  52. package/dist/tools/suggest-tooling/advanced-testing-catalog.js.map +1 -1
  53. package/dist/tools/suggest-tooling/build-tool-catalog.d.ts.map +1 -1
  54. package/dist/tools/suggest-tooling/build-tool-catalog.js +2 -1
  55. package/dist/tools/suggest-tooling/build-tool-catalog.js.map +1 -1
  56. package/dist/tools/suggest-tooling/handler.d.ts.map +1 -1
  57. package/dist/tools/suggest-tooling/handler.js +6 -1
  58. package/dist/tools/suggest-tooling/handler.js.map +1 -1
  59. package/dist/tools/suggest-tooling/linting-catalog-extended.d.ts.map +1 -1
  60. package/dist/tools/suggest-tooling/linting-catalog-extended.js +7 -6
  61. package/dist/tools/suggest-tooling/linting-catalog-extended.js.map +1 -1
  62. package/dist/tools/suggest-tooling/resilience-catalog.d.ts.map +1 -1
  63. package/dist/tools/suggest-tooling/resilience-catalog.js +4 -3
  64. package/dist/tools/suggest-tooling/resilience-catalog.js.map +1 -1
  65. package/dist/tools/suggest-tooling/skills-catalog.d.ts.map +1 -1
  66. package/dist/tools/suggest-tooling/skills-catalog.js +5 -4
  67. package/dist/tools/suggest-tooling/skills-catalog.js.map +1 -1
  68. package/dist/types/infrastructure.d.ts +27 -0
  69. package/dist/types/infrastructure.d.ts.map +1 -1
  70. package/package.json +1 -1
  71. package/src/config/default-versions.json +58 -0
  72. package/src/config/version-defaults.ts +75 -0
@@ -0,0 +1,58 @@
1
+ {
2
+ "docker": {
3
+ "postgres": { "tag": "15-alpine", "registry": "hub.docker.com", "lastVerified": "2026-03-15" },
4
+ "mysql": { "tag": "8-alpine", "registry": "hub.docker.com", "lastVerified": "2026-03-15" },
5
+ "mariadb": { "tag": "8-alpine", "registry": "hub.docker.com", "lastVerified": "2026-03-15" },
6
+ "mongo": { "tag": "7", "registry": "hub.docker.com", "lastVerified": "2026-03-15" },
7
+ "redis": { "tag": "7-alpine", "registry": "hub.docker.com", "lastVerified": "2026-03-15" },
8
+ "rabbitmq": { "tag": "3-management-alpine", "registry": "hub.docker.com", "lastVerified": "2026-03-15" },
9
+ "minio": { "tag": "latest", "registry": "hub.docker.com", "lastVerified": "2026-03-15" }
10
+ },
11
+ "terraform": {
12
+ "aws-provider": { "version": "~> 5.0", "registry": "registry.terraform.io", "lastVerified": "2026-03-15" },
13
+ "postgres-engine": { "version": "15", "registry": "aws.amazon.com/rds", "lastVerified": "2026-03-15" },
14
+ "redis-param-group": { "version": "redis7", "registry": "aws.amazon.com/elasticache", "lastVerified": "2026-03-15" }
15
+ },
16
+ "npm": {
17
+ "vite": { "version": ">=7.0.0", "registry": "npmjs.com", "lastVerified": "2026-03-15" }
18
+ },
19
+ "jvm": {
20
+ "jqwik": { "version": "1.8.0", "registry": "maven-central", "lastVerified": "2026-03-15" },
21
+ "resilience4j-spring-boot3": { "version": "2.2.0", "registry": "maven-central", "lastVerified": "2026-03-15" },
22
+ "resilience4j-kotlin": { "version": "2.2.0", "registry": "maven-central", "lastVerified": "2026-03-15" },
23
+ "pitest": { "version": "1.15.0", "registry": "maven-central", "lastVerified": "2026-03-15" },
24
+ "akka-http": { "version": "10.5.0", "registry": "maven-central", "lastVerified": "2026-03-15" },
25
+ "cats-core": { "version": "2.10.0", "registry": "maven-central", "lastVerified": "2026-03-15" },
26
+ "turbine": { "version": "1.2.0", "registry": "maven-central", "lastVerified": "2026-03-15" },
27
+ "compose-multiplatform": { "version": "1.8.0", "registry": "maven-central", "lastVerified": "2026-03-15" }
28
+ },
29
+ "scala": {
30
+ "scalafmt": { "version": "2.5.2", "registry": "maven-central", "lastVerified": "2026-03-15" },
31
+ "scalafix": { "version": "0.12.1", "registry": "maven-central", "lastVerified": "2026-03-15" },
32
+ "wartremover": { "version": "3.1.6", "registry": "maven-central", "lastVerified": "2026-03-15" }
33
+ },
34
+ "elixir": {
35
+ "credo": { "version": "~> 1.7", "registry": "hex.pm", "lastVerified": "2026-03-15" },
36
+ "dialyxir": { "version": "~> 1.4", "registry": "hex.pm", "lastVerified": "2026-03-15" }
37
+ },
38
+ "dart": {
39
+ "flutter-lints": { "version": "^3.0.0", "registry": "pub.dev", "lastVerified": "2026-03-15" }
40
+ },
41
+ "rust": {
42
+ "tokio-retry": { "version": "0.3", "registry": "crates.io", "lastVerified": "2026-03-15" }
43
+ },
44
+ "cdn": {
45
+ "mermaid": {
46
+ "version": "11",
47
+ "baseUrl": "https://cdn.jsdelivr.net/npm/mermaid@{version}/dist",
48
+ "registry": "npmjs.com",
49
+ "lastVerified": "2026-03-15"
50
+ },
51
+ "litmuschaos": {
52
+ "version": "3.0.0",
53
+ "baseUrl": "https://litmuschaos.github.io/litmus/litmus-operator-v{version}.yaml",
54
+ "registry": "github.com/litmuschaos/litmus",
55
+ "lastVerified": "2026-03-15"
56
+ }
57
+ }
58
+ }
@@ -0,0 +1,11 @@
1
+ export declare function getDockerTag(service: string): string;
2
+ export declare function getTerraformVersion(resource: string): string;
3
+ export declare function getNpmVersion(pkg: string): string;
4
+ export declare function getJvmVersion(lib: string): string;
5
+ export declare function getScalaVersion(tool: string): string;
6
+ export declare function getElixirVersion(dep: string): string;
7
+ export declare function getDartVersion(pkg: string): string;
8
+ export declare function getRustVersion(crate: string): string;
9
+ export declare function getCdnVersion(name: string): string;
10
+ export declare function getCdnUrl(name: string): string;
11
+ //# sourceMappingURL=version-defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-defaults.d.ts","sourceRoot":"","sources":["../../src/config/version-defaults.ts"],"names":[],"mappings":"AAgCA,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAM9C"}
@@ -0,0 +1,62 @@
1
+ // config/version-defaults.ts — Central registry loader for default-versions.json
2
+ // All hardcoded versions in the codebase are sourced from this file.
3
+ import { readFileSync } from 'node:fs';
4
+ import { fileURLToPath } from 'node:url';
5
+ import { join, dirname } from 'node:path';
6
+ const FALLBACK = {
7
+ docker: {},
8
+ terraform: {},
9
+ npm: {},
10
+ jvm: {},
11
+ scala: {},
12
+ elixir: {},
13
+ dart: {},
14
+ rust: {},
15
+ cdn: {},
16
+ };
17
+ function loadDefaults() {
18
+ try {
19
+ const dir = dirname(fileURLToPath(import.meta.url));
20
+ const raw = readFileSync(join(dir, 'default-versions.json'), 'utf-8');
21
+ return JSON.parse(raw);
22
+ }
23
+ catch {
24
+ return FALLBACK;
25
+ }
26
+ }
27
+ const defaults = loadDefaults();
28
+ export function getDockerTag(service) {
29
+ return defaults.docker[service]?.tag ?? 'latest';
30
+ }
31
+ export function getTerraformVersion(resource) {
32
+ return defaults.terraform[resource]?.version ?? '';
33
+ }
34
+ export function getNpmVersion(pkg) {
35
+ return defaults.npm[pkg]?.version ?? 'latest';
36
+ }
37
+ export function getJvmVersion(lib) {
38
+ return defaults.jvm[lib]?.version ?? '';
39
+ }
40
+ export function getScalaVersion(tool) {
41
+ return defaults.scala[tool]?.version ?? '';
42
+ }
43
+ export function getElixirVersion(dep) {
44
+ return defaults.elixir[dep]?.version ?? '';
45
+ }
46
+ export function getDartVersion(pkg) {
47
+ return defaults.dart[pkg]?.version ?? '';
48
+ }
49
+ export function getRustVersion(crate) {
50
+ return defaults.rust[crate]?.version ?? '';
51
+ }
52
+ export function getCdnVersion(name) {
53
+ return defaults.cdn[name]?.version ?? '';
54
+ }
55
+ export function getCdnUrl(name) {
56
+ const entry = defaults.cdn[name];
57
+ if (!entry) {
58
+ return '';
59
+ }
60
+ return entry.baseUrl.replace('{version}', entry.version);
61
+ }
62
+ //# sourceMappingURL=version-defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-defaults.js","sourceRoot":"","sources":["../../src/config/version-defaults.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,qEAAqE;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAG1C,MAAM,QAAQ,GAAoB;IAChC,MAAM,EAAE,EAAE;IACV,SAAS,EAAE,EAAE;IACb,GAAG,EAAE,EAAE;IACP,GAAG,EAAE,EAAE;IACP,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,GAAG,EAAE,EAAE;CACR,CAAC;AAEF,SAAS,YAAY;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACpD,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,CAAC,EAAE,OAAO,CAAC,CAAC;QACtE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,QAAQ,GAAoB,YAAY,EAAE,CAAC;AAEjD,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,OAAO,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,QAAQ,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,OAAO,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,IAAI,QAAQ,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAW;IAC1C,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;AAC3D,CAAC"}
@@ -0,0 +1,75 @@
1
+ // config/version-defaults.ts — Central registry loader for default-versions.json
2
+ // All hardcoded versions in the codebase are sourced from this file.
3
+
4
+ import { readFileSync } from 'node:fs';
5
+ import { fileURLToPath } from 'node:url';
6
+ import { join, dirname } from 'node:path';
7
+ import type { VersionDefaults } from '../types/infrastructure.js';
8
+
9
+ const FALLBACK: VersionDefaults = {
10
+ docker: {},
11
+ terraform: {},
12
+ npm: {},
13
+ jvm: {},
14
+ scala: {},
15
+ elixir: {},
16
+ dart: {},
17
+ rust: {},
18
+ cdn: {},
19
+ };
20
+
21
+ function loadDefaults(): VersionDefaults {
22
+ try {
23
+ const dir = dirname(fileURLToPath(import.meta.url));
24
+ const raw = readFileSync(join(dir, 'default-versions.json'), 'utf-8');
25
+ return JSON.parse(raw) as VersionDefaults;
26
+ } catch {
27
+ return FALLBACK;
28
+ }
29
+ }
30
+
31
+ const defaults: VersionDefaults = loadDefaults();
32
+
33
+ export function getDockerTag(service: string): string {
34
+ return defaults.docker[service]?.tag ?? 'latest';
35
+ }
36
+
37
+ export function getTerraformVersion(resource: string): string {
38
+ return defaults.terraform[resource]?.version ?? '';
39
+ }
40
+
41
+ export function getNpmVersion(pkg: string): string {
42
+ return defaults.npm[pkg]?.version ?? 'latest';
43
+ }
44
+
45
+ export function getJvmVersion(lib: string): string {
46
+ return defaults.jvm[lib]?.version ?? '';
47
+ }
48
+
49
+ export function getScalaVersion(tool: string): string {
50
+ return defaults.scala[tool]?.version ?? '';
51
+ }
52
+
53
+ export function getElixirVersion(dep: string): string {
54
+ return defaults.elixir[dep]?.version ?? '';
55
+ }
56
+
57
+ export function getDartVersion(pkg: string): string {
58
+ return defaults.dart[pkg]?.version ?? '';
59
+ }
60
+
61
+ export function getRustVersion(crate: string): string {
62
+ return defaults.rust[crate]?.version ?? '';
63
+ }
64
+
65
+ export function getCdnVersion(name: string): string {
66
+ return defaults.cdn[name]?.version ?? '';
67
+ }
68
+
69
+ export function getCdnUrl(name: string): string {
70
+ const entry = defaults.cdn[name];
71
+ if (!entry) {
72
+ return '';
73
+ }
74
+ return entry.baseUrl.replace('{version}', entry.version);
75
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"chaos-generator.d.ts","sourceRoot":"","sources":["../../../src/engine/advanced-testing/chaos-generator.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAkB5D;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAK5D;AAoED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,EAAE,CAQzE;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,eAAe,EAAE,GAC7B,MAAM,CAyCR"}
1
+ {"version":3,"file":"chaos-generator.d.ts","sourceRoot":"","sources":["../../../src/engine/advanced-testing/chaos-generator.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAmB5D;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAK5D;AAoED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,EAAE,CAQzE;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,eAAe,EAAE,GAC7B,MAAM,CAyCR"}
@@ -1,5 +1,6 @@
1
1
  // engine/advanced-testing/chaos-generator.ts — SPEC-049
2
2
  // Generates LitmusChaos runbooks and validates Kubernetes project context.
3
+ import { getCdnUrl } from '../../config/version-defaults.js';
3
4
  /** File patterns that indicate a Kubernetes project. */
4
5
  const K8S_MANIFEST_PATTERNS = [
5
6
  'deployment.yaml',
@@ -112,7 +113,7 @@ export function buildChaosRunbookMarkdown(namespace, experiments) {
112
113
  '',
113
114
  '```bash',
114
115
  '# Install LitmusChaos operator',
115
- 'kubectl apply -f https://litmuschaos.github.io/litmus/litmus-operator-v3.0.0.yaml',
116
+ `kubectl apply -f ${getCdnUrl('litmuschaos')}`,
116
117
  '',
117
118
  '# Verify installation',
118
119
  'kubectl get pods -n litmus',
@@ -1 +1 @@
1
- {"version":3,"file":"chaos-generator.js","sourceRoot":"","sources":["../../../src/engine/advanced-testing/chaos-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chaos-generator.js","sourceRoot":"","sources":["../../../src/engine/advanced-testing/chaos-generator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mutation-advisor.d.ts","sourceRoot":"","sources":["../../../src/engine/advanced-testing/mutation-advisor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAKzE;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED,2DAA2D;AAC3D,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,CAwB9D;AA8ID;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,CAuC3F"}
1
+ {"version":3,"file":"mutation-advisor.d.ts","sourceRoot":"","sources":["../../../src/engine/advanced-testing/mutation-advisor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAMzE;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED,2DAA2D;AAC3D,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,CAwB9D;AA8ID;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,CAuC3F"}
@@ -1,5 +1,6 @@
1
1
  // engine/advanced-testing/mutation-advisor.ts — SPEC-049
2
2
  // Recommends mutation testing configuration based on project language and coverage.
3
+ import { getJvmVersion } from '../../config/version-defaults.js';
3
4
  /** Minimum coverage required before recommending mutation testing. */
4
5
  const MIN_COVERAGE_FOR_MUTATION = 90;
5
6
  /**
@@ -82,7 +83,7 @@ function buildPitestConfig(thresholdScore) {
82
83
  <plugin>
83
84
  <groupId>org.pitest</groupId>
84
85
  <artifactId>pitest-maven</artifactId>
85
- <version>1.15.0</version>
86
+ <version>${getJvmVersion('pitest')}</version>
86
87
  <configuration>
87
88
  <targetClasses>
88
89
  <param>com.yourcompany.*</param>
@@ -1 +1 @@
1
- {"version":3,"file":"mutation-advisor.js","sourceRoot":"","sources":["../../../src/engine/advanced-testing/mutation-advisor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mutation-advisor.js","sourceRoot":"","sources":["../../../src/engine/advanced-testing/mutation-advisor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mermaid-renderer.d.ts","sourceRoot":"","sources":["../../../../src/engine/doc-generator/per-spec-report/mermaid-renderer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,CAMrE;AAcD;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAMzC"}
1
+ {"version":3,"file":"mermaid-renderer.d.ts","sourceRoot":"","sources":["../../../../src/engine/doc-generator/per-spec-report/mermaid-renderer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG3D;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,CAMrE;AAcD;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAMzC"}
@@ -1,3 +1,4 @@
1
+ import { getCdnUrl } from '../../../config/version-defaults.js';
1
2
  /**
2
3
  * Render an array of SpecDiagrams as HTML sections with Mermaid pre blocks.
3
4
  * Uses Mermaid.js CDN for client-side rendering with raw code fallback.
@@ -24,7 +25,7 @@ function renderSingleDiagram(diagram) {
24
25
  */
25
26
  export function getMermaidScript() {
26
27
  return `<script type="module">
27
- import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@11/dist/mermaid.esm.min.mjs';
28
+ import mermaid from '${getCdnUrl('mermaid')}/mermaid.esm.min.mjs';
28
29
  mermaid.initialize({ startOnLoad: true, theme: 'default' });
29
30
  </script>
30
31
  <noscript><style>.mermaid { white-space: pre; font-family: monospace; background: #f3f4f6; padding: 16px; border-radius: 8px; }</style></noscript>`;
@@ -1 +1 @@
1
- {"version":3,"file":"mermaid-renderer.js","sourceRoot":"","sources":["../../../../src/engine/doc-generator/per-spec-report/mermaid-renderer.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAuB;IAC3D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,2DAA2D,CAAC;IACrE,CAAC;IAED,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAoB;IAC/C,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACpD,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEnD,OAAO;QACD,YAAY;4BACQ,WAAW;yBACd,cAAc;OAChC,CAAC;AACR,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO;;;;mJAI0I,CAAC;AACpJ,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,GAAG;SACP,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"mermaid-renderer.js","sourceRoot":"","sources":["../../../../src/engine/doc-generator/per-spec-report/mermaid-renderer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAEhE;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAuB;IAC3D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,2DAA2D,CAAC;IACrE,CAAC;IAED,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAoB;IAC/C,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACpD,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEnD,OAAO;QACD,YAAY;4BACQ,WAAW;yBACd,cAAc;OAChC,CAAC;AACR,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO;yBACgB,SAAS,CAAC,SAAS,CAAC;;;mJAGsG,CAAC;AACpJ,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,GAAG;SACP,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"proposal-html-wrapper.d.ts","sourceRoot":"","sources":["../../../../src/engine/doc-generator/proposal/proposal-html-wrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE/E;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,KAAK,GAAE,aAAuB,EAC9B,IAAI,SAAO,EACX,cAAc,CAAC,EAAE,OAAO,GACvB,MAAM,CA0BR"}
1
+ {"version":3,"file":"proposal-html-wrapper.d.ts","sourceRoot":"","sources":["../../../../src/engine/doc-generator/proposal/proposal-html-wrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAG/E;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,KAAK,GAAE,aAAuB,EAC9B,IAAI,SAAO,EACX,cAAc,CAAC,EAAE,OAAO,GACvB,MAAM,CA0BR"}
@@ -1,5 +1,6 @@
1
1
  // Planu — HTML wrapper for project proposal documents
2
2
  import { getProposalThemeCSS } from './proposal-themes.js';
3
+ import { getCdnUrl } from '../../../config/version-defaults.js';
3
4
  /**
4
5
  * Wrap body content in a full self-contained HTML document for the proposal.
5
6
  * Includes inline CSS (theme), print styles, and responsive layout.
@@ -12,7 +13,7 @@ export function wrapProposalHtml(title, bodyContent, theme = 'light', lang = 'en
12
13
  .replace(/"/g, '&quot;');
13
14
  const css = getProposalThemeCSS(theme);
14
15
  const mermaidScripts = includeMermaid
15
- ? `\n <script src="https://cdn.jsdelivr.net/npm/mermaid@11/dist/mermaid.min.js"></script>\n <script>mermaid.initialize({startOnLoad:true, theme:'default'});</script>`
16
+ ? `\n <script src="${getCdnUrl('mermaid')}/mermaid.min.js"></script>\n <script>mermaid.initialize({startOnLoad:true, theme:'default'});</script>`
16
17
  : '';
17
18
  return `<!DOCTYPE html>
18
19
  <html lang="${escapeAttr(lang)}">
@@ -1 +1 @@
1
- {"version":3,"file":"proposal-html-wrapper.js","sourceRoot":"","sources":["../../../../src/engine/doc-generator/proposal/proposal-html-wrapper.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,OAAO,EAAE,mBAAmB,EAAsB,MAAM,sBAAsB,CAAC;AAE/E;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAa,EACb,WAAmB,EACnB,QAAuB,OAAO,EAC9B,IAAI,GAAG,IAAI,EACX,cAAwB;IAExB,MAAM,YAAY,GAAG,KAAK;SACvB,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAE3B,MAAM,GAAG,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAEvC,MAAM,cAAc,GAAG,cAAc;QACnC,CAAC,CAAC,sKAAsK;QACxK,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;cACK,UAAU,CAAC,IAAI,CAAC;;;;;WAKnB,YAAY;WACZ,GAAG,WAAW,cAAc;;;EAGrC,WAAW;;QAEL,CAAC;AACT,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"proposal-html-wrapper.js","sourceRoot":"","sources":["../../../../src/engine/doc-generator/proposal/proposal-html-wrapper.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,OAAO,EAAE,mBAAmB,EAAsB,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAEhE;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAa,EACb,WAAmB,EACnB,QAAuB,OAAO,EAC9B,IAAI,GAAG,IAAI,EACX,cAAwB;IAExB,MAAM,YAAY,GAAG,KAAK;SACvB,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAE3B,MAAM,GAAG,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAEvC,MAAM,cAAc,GAAG,cAAc;QACnC,CAAC,CAAC,oBAAoB,SAAS,CAAC,SAAS,CAAC,yGAAyG;QACnJ,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;cACK,UAAU,CAAC,IAAI,CAAC;;;;;WAKnB,YAAY;WACZ,GAAG,WAAW,cAAc;;;EAGrC,WAAW;;QAEL,CAAC;AACT,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACjF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"component-mapper.d.ts","sourceRoot":"","sources":["../../../src/engine/infrastructure/component-mapper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EAGf,MAAM,+BAA+B,CAAC;AAEvC,kGAAkG;AAClG,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE9D;AA4ID;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,WAAW,EAAE,EACtB,WAAW,EAAE,MAAM,GAClB,cAAc,EAAE,CAsBlB"}
1
+ {"version":3,"file":"component-mapper.d.ts","sourceRoot":"","sources":["../../../src/engine/infrastructure/component-mapper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EAGf,MAAM,+BAA+B,CAAC;AAGvC,kGAAkG;AAClG,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE9D;AA4ID;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,WAAW,EAAE,EACtB,WAAW,EAAE,MAAM,GAClB,cAAc,EAAE,CAsBlB"}
@@ -1,4 +1,5 @@
1
1
  // engine/infrastructure/component-mapper.ts — Map InfraSignals to InfraComponents (SPEC-171)
2
+ import { getTerraformVersion } from '../../config/version-defaults.js';
2
3
  /** Normalize environment string to a valid key: 'dev' | 'staging' | 'prod'. Defaults to 'dev'. */
3
4
  export function resolveEnvironment(environment) {
4
5
  return environment in { dev: 1, staging: 1, prod: 1 } ? environment : 'dev';
@@ -10,7 +11,7 @@ function resolveDatabase(technology) {
10
11
  kind: 'rds',
11
12
  name: 'postgres-db',
12
13
  sizeByEnv: { dev: 'db.t3.micro', staging: 'db.t3.small', prod: 'db.t3.medium' },
13
- properties: { engine: 'postgres', version: '15' },
14
+ properties: { engine: 'postgres', version: getTerraformVersion('postgres-engine') },
14
15
  };
15
16
  case 'mysql':
16
17
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"component-mapper.js","sourceRoot":"","sources":["../../../src/engine/infrastructure/component-mapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component-mapper.js","sourceRoot":"","sources":["../../../src/engine/infrastructure/component-mapper.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"docker-compose-generator.d.ts","sourceRoot":"","sources":["../../../src/engine/infrastructure/docker-compose-generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AA+LjF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,WAAW,CAwB/E"}
1
+ {"version":3,"file":"docker-compose-generator.d.ts","sourceRoot":"","sources":["../../../src/engine/infrastructure/docker-compose-generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAgMjF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,WAAW,CAwB/E"}
@@ -1,4 +1,5 @@
1
1
  // engine/infrastructure/docker-compose-generator.ts — Docker Compose generator (SPEC-171)
2
+ import { getDockerTag } from '../../config/version-defaults.js';
2
3
  function renderHeader() {
3
4
  return `# docker-compose.yml — Generated by Planu generate_infrastructure (SPEC-171)
4
5
  # Local development environment matching production topology.
@@ -14,7 +15,7 @@ function renderDatabase(component) {
14
15
  'postgres').toLowerCase();
15
16
  if (engine === 'mysql' || engine === 'mariadb') {
16
17
  return ` ${component.name}:
17
- image: ${engine}:8-alpine
18
+ image: ${engine}:${getDockerTag('mysql')}
18
19
  restart: unless-stopped
19
20
  environment:
20
21
  MYSQL_DATABASE: ${dbName}
@@ -35,7 +36,7 @@ function renderDatabase(component) {
35
36
  }
36
37
  if (engine === 'mongo' || engine === 'mongodb') {
37
38
  return ` ${component.name}:
38
- image: mongo:7
39
+ image: mongo:${getDockerTag('mongo')}
39
40
  restart: unless-stopped
40
41
  environment:
41
42
  MONGO_INITDB_DATABASE: ${dbName}
@@ -55,7 +56,7 @@ function renderDatabase(component) {
55
56
  }
56
57
  // Default: postgres
57
58
  return ` ${component.name}:
58
- image: postgres:15-alpine
59
+ image: postgres:${getDockerTag('postgres')}
59
60
  restart: unless-stopped
60
61
  environment:
61
62
  POSTGRES_DB: ${dbName}
@@ -75,7 +76,7 @@ function renderDatabase(component) {
75
76
  }
76
77
  function renderRedis(component) {
77
78
  return ` ${component.name}:
78
- image: redis:7-alpine
79
+ image: redis:${getDockerTag('redis')}
79
80
  restart: unless-stopped
80
81
  ports:
81
82
  - "6379:6379"
@@ -92,7 +93,7 @@ function renderRedis(component) {
92
93
  }
93
94
  function renderQueue(component) {
94
95
  return ` ${component.name}:
95
- image: rabbitmq:3-management-alpine
96
+ image: rabbitmq:${getDockerTag('rabbitmq')}
96
97
  restart: unless-stopped
97
98
  environment:
98
99
  RABBITMQ_DEFAULT_USER: admin
@@ -112,7 +113,7 @@ function renderQueue(component) {
112
113
  }
113
114
  function renderStorage(component) {
114
115
  return ` ${component.name}:
115
- image: minio/minio:latest
116
+ image: minio/minio:${getDockerTag('minio')}
116
117
  restart: unless-stopped
117
118
  environment:
118
119
  MINIO_ROOT_USER: \${MINIO_USER:-minioadmin}
@@ -1 +1 @@
1
- {"version":3,"file":"docker-compose-generator.js","sourceRoot":"","sources":["../../../src/engine/infrastructure/docker-compose-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docker-compose-generator.js","sourceRoot":"","sources":["../../../src/engine/infrastructure/docker-compose-generator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"terraform-generator.d.ts","sourceRoot":"","sources":["../../../src/engine/infrastructure/terraform-generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AA0NjF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,cAAc,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,WAAW,CAmCxF"}
1
+ {"version":3,"file":"terraform-generator.d.ts","sourceRoot":"","sources":["../../../src/engine/infrastructure/terraform-generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AA2NjF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,cAAc,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,WAAW,CAmCxF"}
@@ -1,10 +1,11 @@
1
1
  // engine/infrastructure/terraform-generator.ts — Terraform HCL generator (SPEC-171)
2
+ import { getTerraformVersion } from '../../config/version-defaults.js';
2
3
  function renderProvider(env) {
3
4
  return `terraform {
4
5
  required_providers {
5
6
  aws = {
6
7
  source = "hashicorp/aws"
7
- version = "~> 5.0"
8
+ version = "${getTerraformVersion('aws-provider')}"
8
9
  }
9
10
  }
10
11
  }
@@ -31,7 +32,7 @@ function renderRds(component, env) {
31
32
  resource "aws_db_instance" "${safeName}" {
32
33
  identifier = "\${var.environment}-${component.name}"
33
34
  engine = "postgres"
34
- engine_version = "15"
35
+ engine_version = "${getTerraformVersion('postgres-engine')}"
35
36
  instance_class = "${instanceClass}"
36
37
  allocated_storage = ${env === 'prod' ? 100 : 20}
37
38
  username = "dbadmin"
@@ -1 +1 @@
1
- {"version":3,"file":"terraform-generator.js","sourceRoot":"","sources":["../../../src/engine/infrastructure/terraform-generator.ts"],"names":[],"mappings":"AAAA,oFAAoF;AAIpF,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO;;;;;;;;;;;;;;;;;;;;mBAoBU,GAAG;;CAErB,CAAC;AACF,CAAC;AAED,SAAS,SAAS,CAAC,SAAyB,EAAE,GAAW;IACvD,MAAM,aAAa,GAAG,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC;IACtE,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACnD,OAAO;8BACqB,QAAQ;6CACO,SAAS,CAAC,IAAI;;;yBAGlC,aAAa;wBACd,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;;wCAET,QAAQ;0BACtB,GAAG,KAAK,MAAM;;;;qBAInB,SAAS,CAAC,IAAI;;;;wBAIX,QAAQ;gCACA,SAAS,CAAC,IAAI;;;CAG7C,CAAC;AACF,CAAC;AAED,SAAS,WAAW,CAAC,SAAyB,EAAE,GAAW;IACzD,MAAM,QAAQ,GAAG,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,CAAC;IACvE,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACnD,OAAO;sCAC6B,QAAQ;gDACE,SAAS,CAAC,IAAI;;4BAElC,QAAQ;;;;;;qBAMf,SAAS,CAAC,IAAI;;;CAGlC,CAAC;AACF,CAAC;AAED,SAAS,SAAS,CAAC,SAAyB;IAC1C,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACnD,OAAO;4BACmB,QAAQ;qDACiB,SAAS,CAAC,IAAI;;;;;;qBAM9C,SAAS,CAAC,IAAI;;;CAGlC,CAAC;AACF,CAAC;AAED,SAAS,QAAQ,CAAC,SAAyB,EAAE,kBAA2B;IACtE,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACnD,MAAM,mBAAmB,GAAG,kBAAkB;QAC5C,CAAC,CAAC,6CAA6C;QAC/C,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;4BACmB,QAAQ;kCACF,SAAS,CAAC,IAAI;;;;qBAI3B,SAAS,CAAC,IAAI;;;;uCAII,QAAQ;2BACpB,QAAQ;;;;;EAKjC,mBAAmB,EAAE,CAAC;AACxB,CAAC;AAED,SAAS,SAAS,CAAC,SAAyB,EAAE,GAAW;IACvD,MAAM,GAAG,GAAG,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IACxC,MAAM,MAAM,GAAG,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,OAAO;8BACqB,SAAS,CAAC,IAAI;gCACZ,SAAS,CAAC,IAAI;;;;;;;sCAOR,SAAS,CAAC,IAAI;oDACA,SAAS,CAAC,IAAI;;;+BAGnC,GAAG;+BACH,MAAM;;;eAGtB,SAAS,CAAC,IAAI;;;;;;;;;;;;CAY5B,CAAC;AACF,CAAC;AAED,SAAS,YAAY,CAAC,SAAyB;IAC7C,OAAO;kCACyB,SAAS,CAAC,IAAI;yCACP,SAAS,CAAC,IAAI;6CACV,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;;;;;;;;;;;;;qBAazD,SAAS,CAAC,IAAI;;;;uCAII,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;gCACxC,SAAS,CAAC,IAAI;;;;;;;;;;;CAW7C,CAAC;AACF,CAAC;AAED,SAAS,eAAe,CACtB,SAAyB,EACzB,GAAW,EACX,kBAA2B;IAE3B,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;QACvB,KAAK,KAAK,CAAC;QACX,KAAK,kBAAkB;YACrB,OAAO,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACnC,KAAK,UAAU;YACb,OAAO,wKAAwK,CAAC;QAClL,KAAK,OAAO,CAAC;QACb,KAAK,eAAe;YAClB,OAAO,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACrC,KAAK,KAAK,CAAC;QACX,KAAK,eAAe;YAClB,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC;QAC9B,KAAK,IAAI,CAAC;QACV,KAAK,iBAAiB;YACpB,OAAO,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QACjD,KAAK,KAAK;YACR,OAAO,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACnC,KAAK,QAAQ;YACX,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;QACjC,KAAK,iBAAiB,CAAC;QACvB,KAAK,gBAAgB,CAAC;QACtB,KAAK,aAAa,CAAC;QACnB,KAAK,aAAa,CAAC;QACnB,KAAK,gBAAgB;YACnB,OAAO,kBAAkB,SAAS,CAAC,IAAI,MAAM,SAAS,CAAC,IAAI,+DAA+D,CAAC;IAC/H,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAA4B,EAAE,GAAW;IACzE,MAAM,mBAAmB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAClD;QACE,KAAK;QACL,UAAU;QACV,OAAO;QACP,KAAK;QACL,IAAI;QACJ,KAAK;QACL,QAAQ;QACR,kBAAkB;QAClB,eAAe;QACf,eAAe;QACf,iBAAiB;KAClB,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CACnB,CAAC;IAEF,IAAI,qBAAqB,GAAG,KAAK,CAAC;IAClC,MAAM,MAAM,GAAG,mBAAmB;SAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC;QAC7D,MAAM,kBAAkB,GAAG,IAAI,IAAI,CAAC,qBAAqB,CAAC;QAC1D,IAAI,kBAAkB,EAAE,CAAC;YACvB,qBAAqB,GAAG,IAAI,CAAC;QAC/B,CAAC;QACD,OAAO,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;IACrD,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;IAE7C,OAAO;QACL,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,SAAS;QACnB,OAAO;KACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"terraform-generator.js","sourceRoot":"","sources":["../../../src/engine/infrastructure/terraform-generator.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  // engine/skill-registry/agentskill-adapter.ts — SPEC-150: agentskill.sh registry adapter
2
2
  // Searches agentskill.sh for installable agent skills.
3
- // TODO: The agentskill.sh API endpoints need reverse-engineering.
4
- // For now this module returns an empty array to satisfy the unified search interface
5
- // while leaving a clear extension point once the API is documented.
3
+ // NOTE: The agentskill.sh API contract is not yet publicly documented.
4
+ // This module attempts /api/search and returns [] on any failure,
5
+ // satisfying the unified search interface without blocking the caller.
6
6
  const AGENTSKILL_BASE = 'https://agentskill.sh';
7
7
  const USER_AGENT = 'Planu/1.0';
8
8
  /** Attempt to fetch from agentskill.sh search endpoint (best-effort). */
@@ -1 +1 @@
1
- {"version":3,"file":"agentskill-adapter.js","sourceRoot":"","sources":["../../../src/engine/skill-registry/agentskill-adapter.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,uDAAuD;AACvD,kEAAkE;AAClE,2FAA2F;AAC3F,0EAA0E;AAI1E,MAAM,eAAe,GAAG,uBAAuB,CAAC;AAChD,MAAM,UAAU,GAAG,WAAW,CAAC;AAE/B,yEAAyE;AACzE,KAAK,UAAU,eAAe,CAAC,KAAa,EAAE,KAAc;IAC1D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,eAAe,aAAa,CAAC,CAAC;QACrD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACjC,IAAI,KAAK,EAAE,CAAC;YACV,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;YACtD,OAAO,EAAE;gBACP,YAAY,EAAE,UAAU;gBACxB,MAAM,EAAE,kBAAkB;aAC3B;YACD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAuB,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,kFAAkF;QAClF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,oEAAoE;AACpE,SAAS,QAAQ,CAAC,KAAsB;IACtC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,SAAS,CAAC;IACrC,OAAO;QACL,IAAI;QACJ,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,UAAU,IAAI,EAAE;QAClD,MAAM,EAAE,YAAY;QACpB,cAAc,EAAE,qCAAqC,IAAI,EAAE;QAC3D,GAAG,EAAE,GAAG,eAAe,WAAW,IAAI,EAAE;QACxC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,cAAc,EAAE,CAAC;KAClB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAAa,EACb,KAAc,EACd,KAAc;IAEd,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAEjD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;IAC3C,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC;IAChC,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"agentskill-adapter.js","sourceRoot":"","sources":["../../../src/engine/skill-registry/agentskill-adapter.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,uDAAuD;AACvD,uEAAuE;AACvE,wEAAwE;AACxE,6EAA6E;AAI7E,MAAM,eAAe,GAAG,uBAAuB,CAAC;AAChD,MAAM,UAAU,GAAG,WAAW,CAAC;AAE/B,yEAAyE;AACzE,KAAK,UAAU,eAAe,CAAC,KAAa,EAAE,KAAc;IAC1D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,eAAe,aAAa,CAAC,CAAC;QACrD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACjC,IAAI,KAAK,EAAE,CAAC;YACV,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;YACtD,OAAO,EAAE;gBACP,YAAY,EAAE,UAAU;gBACxB,MAAM,EAAE,kBAAkB;aAC3B;YACD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAuB,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,kFAAkF;QAClF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,oEAAoE;AACpE,SAAS,QAAQ,CAAC,KAAsB;IACtC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,SAAS,CAAC;IACrC,OAAO;QACL,IAAI;QACJ,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,UAAU,IAAI,EAAE;QAClD,MAAM,EAAE,YAAY;QACpB,cAAc,EAAE,qCAAqC,IAAI,EAAE;QAC3D,GAAG,EAAE,GAAG,eAAe,WAAW,IAAI,EAAE;QACxC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,cAAc,EAAE,CAAC;KAClB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAAa,EACb,KAAc,EACd,KAAc;IAEd,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAEjD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;IAC3C,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC;IAChC,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACzC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"post-creation.d.ts","sourceRoot":"","sources":["../../../src/tools/create-spec/post-creation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAMzE,8EAA8E;AAC9E,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,CAAC,CAQxD;AAED,qFAAqF;AACrF,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAsB7B;AAED,mEAAmE;AACnE,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAUvE;AAUD,kHAAkH;AAClH,wBAAsB,+BAA+B,CACnD,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CA6BnC"}
1
+ {"version":3,"file":"post-creation.d.ts","sourceRoot":"","sources":["../../../src/tools/create-spec/post-creation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAMzE,8EAA8E;AAC9E,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,CAAC,CAQxD;AAED,qFAAqF;AACrF,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAsB7B;AAED,mEAAmE;AACnE,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAUvE;AA8BD,kHAAkH;AAClH,wBAAsB,+BAA+B,CACnD,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAsCnC"}
@@ -46,6 +46,24 @@ export function fireSpecCreatedHook(projectId, spec) {
46
46
  void dispatchHookEvent(projectId, buildSpecCreatedPayload(projectId, spec.id, spec.title, spec.type));
47
47
  })();
48
48
  }
49
+ // === Technology stack pattern matching (version verification) ===
50
+ const TECH_STACK_PATTERNS = [
51
+ /\b(?:node|nodejs|npm|yarn|pnpm|bun)\b/i,
52
+ /\b(?:react|vue|angular|svelte|next|nuxt|remix|astro)\b/i,
53
+ /\b(?:python|pip|poetry|conda|django|flask|fastapi)\b/i,
54
+ /\b(?:java|maven|gradle|spring|quarkus|micronaut)\b/i,
55
+ /\b(?:golang|go\s+module|pkg\.go)\b/i,
56
+ /\b(?:rust|cargo|crates\.io)\b/i,
57
+ /\b(?:docker|kubernetes|k8s|helm|terraform|pulumi)\b/i,
58
+ /\b(?:postgres|mysql|mongodb|redis|elasticsearch|kafka|rabbitmq)\b/i,
59
+ /\b(?:typescript|eslint|webpack|vite|rollup|esbuild)\b/i,
60
+ /\b(?:flutter|dart|pub\.dev|android|kotlin|swift|ios)\b/i,
61
+ /\bv?\d+\.\d+/,
62
+ ];
63
+ /** Returns true if description references any known technology or version. */
64
+ function hasTechStackReferences(description) {
65
+ return TECH_STACK_PATTERNS.some((p) => p.test(description));
66
+ }
49
67
  // === Template pattern matching ===
50
68
  const TEMPLATE_PATTERNS = [
51
69
  { pattern: /\b(?:crud|create\s+read\s+update\s+delete|rest\s+api)\b/i, category: 'crud' },
@@ -69,7 +87,14 @@ export async function generatePostCreationSuggestions(projectPath, description)
69
87
  catch {
70
88
  // Best-effort: if detection fails, skip suggestion
71
89
  }
72
- // Item 2: Suggest templates when description matches known patterns
90
+ // Item 2: Suggest version verification when description references technology stacks
91
+ if (hasTechStackReferences(description)) {
92
+ suggestions.push({
93
+ tool: 'verify_versions',
94
+ reason: 'IMPORTANT: Before approving, verify all technology versions in this spec against official sources (npm registry, GitHub releases, Docker Hub, official docs). Outdated versions can cause security vulnerabilities and compatibility issues.',
95
+ });
96
+ }
97
+ // Item 3: Suggest templates when description matches known patterns
73
98
  for (const { pattern, category } of TEMPLATE_PATTERNS) {
74
99
  if (pattern.test(description)) {
75
100
  suggestions.push({