@vyuhlabs/dxkit 2.4.3 → 2.4.5

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 (78) hide show
  1. package/CHANGELOG.md +347 -0
  2. package/README.md +15 -11
  3. package/dist/analyzers/health.js +9 -9
  4. package/dist/analyzers/health.js.map +1 -1
  5. package/dist/analyzers/licenses/gather.js +1 -1
  6. package/dist/analyzers/licenses/gather.js.map +1 -1
  7. package/dist/analyzers/quality/gather.js +2 -2
  8. package/dist/analyzers/quality/gather.js.map +1 -1
  9. package/dist/analyzers/security/gather.d.ts.map +1 -1
  10. package/dist/analyzers/security/gather.js +11 -2
  11. package/dist/analyzers/security/gather.js.map +1 -1
  12. package/dist/analyzers/tests/import-graph.d.ts.map +1 -1
  13. package/dist/analyzers/tests/import-graph.js +5 -0
  14. package/dist/analyzers/tests/import-graph.js.map +1 -1
  15. package/dist/analyzers/tests/index.d.ts.map +1 -1
  16. package/dist/analyzers/tests/index.js +2 -0
  17. package/dist/analyzers/tests/index.js.map +1 -1
  18. package/dist/analyzers/tests/types.d.ts +12 -2
  19. package/dist/analyzers/tests/types.d.ts.map +1 -1
  20. package/dist/analyzers/tools/coverage.d.ts +1 -1
  21. package/dist/analyzers/tools/coverage.d.ts.map +1 -1
  22. package/dist/analyzers/tools/coverage.js.map +1 -1
  23. package/dist/analyzers/tools/jacoco.d.ts +76 -0
  24. package/dist/analyzers/tools/jacoco.d.ts.map +1 -0
  25. package/dist/analyzers/tools/jacoco.js +228 -0
  26. package/dist/analyzers/tools/jacoco.js.map +1 -0
  27. package/dist/analyzers/tools/jscpd.d.ts +8 -7
  28. package/dist/analyzers/tools/jscpd.d.ts.map +1 -1
  29. package/dist/analyzers/tools/jscpd.js +30 -13
  30. package/dist/analyzers/tools/jscpd.js.map +1 -1
  31. package/dist/analyzers/tools/osv-scanner-fix.d.ts +20 -0
  32. package/dist/analyzers/tools/osv-scanner-fix.d.ts.map +1 -1
  33. package/dist/analyzers/tools/osv-scanner-fix.js +45 -20
  34. package/dist/analyzers/tools/osv-scanner-fix.js.map +1 -1
  35. package/dist/analyzers/tools/osv-scanner-maven.d.ts +42 -0
  36. package/dist/analyzers/tools/osv-scanner-maven.d.ts.map +1 -0
  37. package/dist/analyzers/tools/osv-scanner-maven.js +161 -0
  38. package/dist/analyzers/tools/osv-scanner-maven.js.map +1 -0
  39. package/dist/analyzers/tools/runner.d.ts +47 -0
  40. package/dist/analyzers/tools/runner.d.ts.map +1 -1
  41. package/dist/analyzers/tools/runner.js +79 -0
  42. package/dist/analyzers/tools/runner.js.map +1 -1
  43. package/dist/analyzers/tools/tool-registry.d.ts.map +1 -1
  44. package/dist/analyzers/tools/tool-registry.js +47 -0
  45. package/dist/analyzers/tools/tool-registry.js.map +1 -1
  46. package/dist/cli.d.ts.map +1 -1
  47. package/dist/cli.js +36 -2
  48. package/dist/cli.js.map +1 -1
  49. package/dist/constants.d.ts +3 -0
  50. package/dist/constants.d.ts.map +1 -1
  51. package/dist/languages/capabilities/index.d.ts +21 -12
  52. package/dist/languages/capabilities/index.d.ts.map +1 -1
  53. package/dist/languages/capabilities/index.js +47 -13
  54. package/dist/languages/capabilities/index.js.map +1 -1
  55. package/dist/languages/index.d.ts.map +1 -1
  56. package/dist/languages/index.js +11 -1
  57. package/dist/languages/index.js.map +1 -1
  58. package/dist/languages/java.d.ts +67 -0
  59. package/dist/languages/java.d.ts.map +1 -0
  60. package/dist/languages/java.js +419 -0
  61. package/dist/languages/java.js.map +1 -0
  62. package/dist/languages/kotlin.d.ts +52 -0
  63. package/dist/languages/kotlin.d.ts.map +1 -0
  64. package/dist/languages/kotlin.js +404 -0
  65. package/dist/languages/kotlin.js.map +1 -0
  66. package/dist/languages/types.d.ts +9 -1
  67. package/dist/languages/types.d.ts.map +1 -1
  68. package/dist/tools-cli.d.ts +16 -1
  69. package/dist/tools-cli.d.ts.map +1 -1
  70. package/dist/tools-cli.js +69 -6
  71. package/dist/tools-cli.js.map +1 -1
  72. package/dist/types.d.ts +12 -10
  73. package/dist/types.d.ts.map +1 -1
  74. package/package.json +2 -1
  75. package/templates/.claude/rules/java.md +11 -0
  76. package/templates/.claude/rules/kotlin.md +11 -0
  77. package/templates/configs/java/README.md +6 -0
  78. package/templates/configs/kotlin/README.md +6 -0
package/dist/types.d.ts CHANGED
@@ -10,7 +10,7 @@
10
10
  * `src/languages/index.ts` LANGUAGES. The scaffolder
11
11
  * (`scripts/scaffold-language.js`) automates both.
12
12
  */
13
- export type LanguageId = 'typescript' | 'python' | 'go' | 'rust' | 'csharp';
13
+ export type LanguageId = 'typescript' | 'python' | 'go' | 'rust' | 'csharp' | 'kotlin' | 'java';
14
14
  /** Tool required for analysis — consumed by devstack for devcontainer packaging. */
15
15
  export interface ToolRequirement {
16
16
  name: string;
@@ -50,16 +50,18 @@ export interface DetectedStack {
50
50
  /**
51
51
  * Per-pack version strings. Keys match each pack's `versionKey ?? id`
52
52
  * — typescript pack uses `versionKey: 'node'` for legacy template-
53
- * variable compat (`NODE_VERSION`), so the key here is `node`, not
54
- * `typescript`. Other packs default to their `id`.
53
+ * variable compat (`NODE_VERSION`), so the key for the typescript
54
+ * pack here is `node`, not `typescript`. Other packs default to
55
+ * their `id`.
56
+ *
57
+ * Pack-driven shape (Recipe v2, Phase 10j.1): `Partial<Record<...>>`
58
+ * over `LanguageId | 'node'` so adding a new pack only extends
59
+ * `LanguageId` — this field auto-grows. The `'node'` carve-out
60
+ * preserves the legacy template-variable compat without forcing a
61
+ * breaking template rename (deferred to a future major when the
62
+ * `NODE_VERSION` → `TYPESCRIPT_VERSION` template migration ships).
55
63
  */
56
- versions: {
57
- python?: string;
58
- go?: string;
59
- node?: string;
60
- rust?: string;
61
- csharp?: string;
62
- };
64
+ versions: Partial<Record<LanguageId | 'node', string>>;
63
65
  testRunner?: {
64
66
  command: string;
65
67
  framework: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,QAAQ,GAAG,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEhG,oFAAoF;AACpF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,WAAW,GAAG,UAAU,GAAG,UAAU,CAAC;CAC9C;AAED,MAAM,WAAW,aAAa;IAC5B;;;;;;;;;;;OAWG;IACH,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACvC,cAAc,EAAE;QACd,MAAM,EAAE,OAAO,CAAC;QAChB,QAAQ,EAAE,OAAO,CAAC;QAClB,KAAK,EAAE,OAAO,CAAC;KAChB,CAAC;IACF,KAAK,EAAE;QACL,MAAM,EAAE,OAAO,CAAC;QAChB,MAAM,EAAE,OAAO,CAAC;QAChB,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,EAAE,OAAO,CAAC;KAChB,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B;;;;;;;;;;;;;OAaG;IACH,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,UAAU,CAAC,EAAE;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,eAAe,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,MAAM,CAAC;AAEhD,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,cAAc,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,cAAc,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vyuhlabs/dxkit",
3
- "version": "2.4.3",
3
+ "version": "2.4.5",
4
4
  "description": "AI-native developer experience toolkit for any repository",
5
5
  "license": "MIT",
6
6
  "author": "Vyuh Labs",
@@ -42,6 +42,7 @@
42
42
  "build": "node scripts/copy-templates.js && tsc",
43
43
  "prepublishOnly": "node scripts/require-ci.js && npm run build",
44
44
  "typecheck": "tsc --noEmit",
45
+ "typecheck:test": "tsc --noEmit -p tsconfig.test.json",
45
46
  "lint": "eslint .",
46
47
  "lint:fix": "eslint . --fix",
47
48
  "format": "prettier --write .",
@@ -0,0 +1,11 @@
1
+ # Java — Claude rules
2
+
3
+ TODO(java): document conventions Claude should follow when writing
4
+ Java code in this project.
5
+
6
+ Topics that work well in this file:
7
+ - Preferred test framework / commands
8
+ - Lint rules and exceptions
9
+ - Module structure conventions
10
+ - Common idioms and anti-patterns
11
+ - Build / format commands
@@ -0,0 +1,11 @@
1
+ # Kotlin (Android) — Claude rules
2
+
3
+ TODO(kotlin): document conventions Claude should follow when writing
4
+ Kotlin (Android) code in this project.
5
+
6
+ Topics that work well in this file:
7
+ - Preferred test framework / commands
8
+ - Lint rules and exceptions
9
+ - Module structure conventions
10
+ - Common idioms and anti-patterns
11
+ - Build / format commands
@@ -0,0 +1,6 @@
1
+ Add per-pack template files here (e.g. `build.gradle.kts.template`,
2
+ `Package.swift.template`). Reference them from
3
+ `src/languages/java.ts:templateFiles`.
4
+
5
+ `vyuh-dxkit init` writes these to project root, skipping if the
6
+ output path already exists.
@@ -0,0 +1,6 @@
1
+ Add per-pack template files here (e.g. `build.gradle.kts.template`,
2
+ `Package.swift.template`). Reference them from
3
+ `src/languages/kotlin.ts:templateFiles`.
4
+
5
+ `vyuh-dxkit init` writes these to project root, skipping if the
6
+ output path already exists.