@erode-app/core 0.8.2 → 0.9.1

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.
@@ -0,0 +1,35 @@
1
+ ## LikeC4 DSL SYNTAX REFERENCE
2
+
3
+ **Identifiers**: Letters, digits, hyphens, underscores only. No dots (dots are FQN separators). Cannot start with a digit or end with a hyphen. May start with underscore. Examples: `customer`, `payment-service`, `_internal`, `queue_1`.
4
+
5
+ **Elements** are defined inside `model { }` blocks (two syntax forms):
6
+
7
+ ```text
8
+ IDENTIFIER = KIND 'title' { ... }
9
+ KIND IDENTIFIER 'title' { ... }
10
+ ```
11
+
12
+ Element body (all optional, in order): `#tag`, properties, nested elements, relationships.
13
+
14
+ **Relationships** — two forms:
15
+
16
+ - Inside element body: `-> TARGET 'title'` (implicit source), `-[REL_KIND]-> TARGET` or `.REL_KIND -> TARGET` (typed)
17
+ - Top-level in model: `SOURCE -> TARGET 'title'` (both sides required)
18
+ - `this`/`it` alias the current element; `SOURCE -> it` targets current element
19
+
20
+ **Properties**: `title`, `summary` (max 150 chars), `description`, `notes`, `technology`, `#tag`, `link URL`, `metadata { key 'value' }`. Use triple quotes (`'''`/`"""`) for multi-line markdown in `summary`/`description`/`notes`.
21
+
22
+ **Strings**: `'single-quoted'` or `"double-quoted"` — escape quotes with backslash (`\'` or `\"`)
23
+
24
+ **Extend** (add to existing elements/relationships without redefining):
25
+
26
+ - `extend FQN { #tags; metadata { ... }; link ...; nested elements/relationships }`
27
+ - `extend SOURCE -> TARGET { ... }` — include `-[KIND]->` and `"title"` when typed relationships exist between the pair
28
+
29
+ **Anti-patterns to avoid**:
30
+
31
+ - Do NOT use dots in identifiers (`payment.api` is WRONG — use `payment-api`)
32
+ - Do NOT create relationships from parent to direct child
33
+ - Do NOT add or remove `{` or `}` braces from existing blocks
34
+ - Do NOT redefine existing elements — use `extend` instead
35
+ - Do NOT extend typed relationships without including the kind (targets wrong relation)
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-builder.d.ts","sourceRoot":"","sources":["../../src/analysis/prompt-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,8BAA8B,EAC9B,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAe7B,eAAO,MAAM,aAAa;IACxB,qFAAqF;yCAC3D,MAAM,KAAG,MAAM,GAAG,IAAI;IA6BhD;;;OAGG;qDACmC,8BAA8B,KAAG,MAAM;IAiC7E;;OAEG;mDACiC,4BAA4B,KAAG,MAAM;IAUzE;;OAEG;8CAC4B,uBAAuB,KAAG,MAAM;IAsE/D;;OAEG;2CACyB;QAC1B,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,EAAE,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;KACrB,KAAG,MAAM;CAOF,CAAC"}
1
+ {"version":3,"file":"prompt-builder.d.ts","sourceRoot":"","sources":["../../src/analysis/prompt-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,8BAA8B,EAC9B,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAe7B,eAAO,MAAM,aAAa;IACxB,qFAAqF;yCAC3D,MAAM,KAAG,MAAM,GAAG,IAAI;IA6BhD;;;OAGG;qDACmC,8BAA8B,KAAG,MAAM;IAiC7E;;OAEG;mDACiC,4BAA4B,KAAG,MAAM;IAUzE;;OAEG;8CAC4B,uBAAuB,KAAG,MAAM;IAsE/D;;OAEG;2CACyB;QAC1B,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,EAAE,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;KACrB,KAAG,MAAM;CAYF,CAAC"}
@@ -149,10 +149,14 @@ export const PromptBuilder = {
149
149
  * Build a prompt for inserting relationship lines into an existing model file
150
150
  */
151
151
  buildModelPatchPrompt(data) {
152
+ const syntaxGuide = data.modelFormat === 'likec4'
153
+ ? TemplateEngine.loadSyntaxGuide('likec4', 'likec4-syntax-guide')
154
+ : '';
152
155
  return TemplateEngine.loadModelPatchPrompt({
153
156
  fileContent: data.fileContent,
154
157
  linesToInsert: data.linesToInsert.join('\n'),
155
158
  modelFormat: data.modelFormat,
159
+ syntaxGuide,
156
160
  });
157
161
  },
158
162
  };
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-builder.js","sourceRoot":"","sources":["../../src/analysis/prompt-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-builder.js","sourceRoot":"","sources":["../../src/analysis/prompt-builder.ts"],"names":[],"mappings":"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"}
@@ -64,5 +64,6 @@ export interface ModelPatchPromptVars {
64
64
  fileContent: string;
65
65
  linesToInsert: string;
66
66
  modelFormat: string;
67
+ syntaxGuide: string;
67
68
  }
68
69
  //# sourceMappingURL=prompt-variables.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-variables.d.ts","sourceRoot":"","sources":["../../src/analysis/prompt-variables.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,cAAc,GAAG;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,4BAA4B;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,iBAAiB,CAAC;IACjC,aAAa,EAAE;QACb,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE,CAAC;QACtB,IAAI,EAAE;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE,CAAC;QACtB,KAAK,EAAE;YACL,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,EAAE,MAAM,CAAC;YAClB,aAAa,EAAE,MAAM,CAAC;SACvB,CAAC;QACF,kBAAkB,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,wBAAwB,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"prompt-variables.d.ts","sourceRoot":"","sources":["../../src/analysis/prompt-variables.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,cAAc,GAAG;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,4BAA4B;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,iBAAiB,CAAC;IACjC,aAAa,EAAE;QACb,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE,CAAC;QACtB,IAAI,EAAE;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE,CAAC;QACtB,KAAK,EAAE;YACL,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,EAAE,MAAM,CAAC;YAClB,aAAa,EAAE,MAAM,CAAC;SACvB,CAAC;QACF,kBAAkB,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,wBAAwB,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB"}
@@ -147,7 +147,7 @@ Concentrate on architectural drift — whether the code aligns with the document
147
147
 
148
148
  - Review the CHANGED FILES section above for brand-new services, applications, or systems that are NOT in the ALL KNOWN COMPONENTS list
149
149
  - Look for: new directories/packages (e.g., a new `packages/order-service/`), new entry points (`src/index.ts` in a new directory), new Dockerfiles, new service configuration
150
- - The `id` must use snake_case (e.g., `order_service`, `payment_gateway`)
150
+ - The `id` must match the identifier style of existing components in the ALL KNOWN COMPONENTS list (e.g., if they use `snake_case` like `order_service`, follow that; if they use `kebab-case` like `order-service`, follow that)
151
151
  - The `kind` must be one of the element types from the architecture specification
152
152
  - If a relationship references a component not in the model, you MUST add it to `newComponents` AND include the relationship in `relationships`
153
153
  - Do NOT create new components for external third-party services
@@ -4,6 +4,8 @@ You are a code editor. Your task is to insert relationship lines into an existin
4
4
 
5
5
  {{modelFormat}}
6
6
 
7
+ {{syntaxGuide}}
8
+
7
9
  ## CURRENT FILE CONTENT
8
10
 
9
11
  ```text
@@ -19,7 +21,7 @@ You are a code editor. Your task is to insert relationship lines into an existin
19
21
  ## INSTRUCTIONS
20
22
 
21
23
  1. Insert the lines above into the appropriate location in the file
22
- 2. For LikeC4 (.c4) files: insert component definitions (blocks with `= service/webapp/...`) INSIDE the `model { }` block, BEFORE standalone relationship lines. Insert relationship lines near existing relationship declarations.
24
+ 2. For LikeC4 (.c4) files: insert element definitions (`IDENTIFIER = KIND 'title' { ... }`) INSIDE the `model { }` block, BEFORE top-level relationship lines. Insert relationship lines near existing relationship declarations. Follow the syntax guide above.
23
25
  3. For Structurizr (.dsl) files: insert component definitions INSIDE the `model { }` block, BEFORE relationship lines. Insert relationship lines near existing relationship declarations.
24
26
  4. Match the indentation style of the surrounding code
25
27
  5. Do NOT modify any existing lines
@@ -7,5 +7,6 @@ export declare const TemplateEngine: {
7
7
  readonly loadDriftAnalysisPrompt: (variables: DriftAnalysisPromptVars) => string;
8
8
  readonly loadComponentSelectionPrompt: (variables: ComponentSelectionPromptVars) => string;
9
9
  readonly loadModelPatchPrompt: (variables: ModelPatchPromptVars) => string;
10
+ readonly loadSyntaxGuide: (adapterDir: string, name: string) => string;
10
11
  };
11
12
  //# sourceMappingURL=template-engine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"template-engine.d.ts","sourceRoot":"","sources":["../../src/analysis/template-engine.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,8BAA8B,EAC9B,4BAA4B,EAC5B,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,uBAAuB,CAAC;AAmD/B;;GAEG;AACH,eAAO,MAAM,cAAc;yDACiB,8BAA8B,KAAG,MAAM;kDAI9C,uBAAuB,KAAG,MAAM;uDAI3B,4BAA4B,KAAG,MAAM;+CAI7C,oBAAoB,KAAG,MAAM;CAIrD,CAAC"}
1
+ {"version":3,"file":"template-engine.d.ts","sourceRoot":"","sources":["../../src/analysis/template-engine.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,8BAA8B,EAC9B,4BAA4B,EAC5B,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,uBAAuB,CAAC;AAiE/B;;GAEG;AACH,eAAO,MAAM,cAAc;yDACiB,8BAA8B,KAAG,MAAM;kDAI9C,uBAAuB,KAAG,MAAM;uDAI3B,4BAA4B,KAAG,MAAM;+CAI7C,oBAAoB,KAAG,MAAM;2CAIjC,MAAM,QAAQ,MAAM,KAAG,MAAM;CAIjD,CAAC"}
@@ -1,11 +1,20 @@
1
1
  import { readFileSync } from 'fs';
2
2
  import { join, dirname } from 'path';
3
3
  import { fileURLToPath } from 'url';
4
+ import { ErodeError, ErrorCode } from '../errors.js';
4
5
  const __filename = fileURLToPath(import.meta.url);
5
6
  const __dirname = dirname(__filename);
7
+ function readMarkdownFile(filePath) {
8
+ try {
9
+ return readFileSync(filePath, 'utf-8');
10
+ }
11
+ catch {
12
+ throw new ErodeError(`Failed to read template: ${filePath}`, ErrorCode.IO_FILE_NOT_FOUND, 'Could not load a required prompt template. This may indicate a broken installation.', { filePath });
13
+ }
14
+ }
6
15
  function loadTemplate(templateName) {
7
16
  const templatePath = join(__dirname, 'prompts', `${templateName}.md`);
8
- return readFileSync(templatePath, 'utf-8');
17
+ return readMarkdownFile(templatePath);
9
18
  }
10
19
  function resolveVariable(variables, path) {
11
20
  return path
@@ -60,5 +69,9 @@ export const TemplateEngine = {
60
69
  const template = loadTemplate('model-patch');
61
70
  return replaceVariables(template, variables);
62
71
  },
72
+ loadSyntaxGuide(adapterDir, name) {
73
+ const guidePath = join(__dirname, '..', 'adapters', adapterDir, 'prompts', `${name}.md`);
74
+ return readMarkdownFile(guidePath);
75
+ },
63
76
  };
64
77
  //# sourceMappingURL=template-engine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"template-engine.js","sourceRoot":"","sources":["../../src/analysis/template-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template-engine.js","sourceRoot":"","sources":["../../src/analysis/template-engine.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@erode-app/core",
3
- "version": "0.8.2",
3
+ "version": "0.9.1",
4
4
  "description": "Architecture erosion detection",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -55,26 +55,26 @@
55
55
  "node": ">=24.0.0"
56
56
  },
57
57
  "dependencies": {
58
- "@anthropic-ai/sdk": "^0.82.0",
58
+ "@anthropic-ai/sdk": "^0.89.0",
59
59
  "@gitbeaker/rest": "^43.8.0",
60
- "@google/genai": "^1.48.0",
60
+ "@google/genai": "^1.50.1",
61
61
  "@octokit/rest": "^22.0.1",
62
- "dotenv": "^17.4.1",
63
- "likec4": "^1.53.0",
62
+ "dotenv": "^17.4.2",
63
+ "likec4": "^1.54.0",
64
64
  "minimatch": "^10.2.5",
65
- "openai": "^6.33.0",
65
+ "openai": "^6.34.0",
66
66
  "zod": "^4.1.13"
67
67
  },
68
68
  "devDependencies": {
69
69
  "@erode-app/eslint-config": "*",
70
70
  "@types/node": "^24.12.2",
71
- "@vitest/coverage-v8": "^4.1.2",
71
+ "@vitest/coverage-v8": "^4.1.5",
72
72
  "concurrently": "^9.2.1",
73
- "eslint": "^10.2.0",
73
+ "eslint": "^10.2.1",
74
74
  "prettier": "^3.7.3",
75
75
  "rimraf": "^6.1.2",
76
76
  "tsx": "^4.21.0",
77
77
  "typescript": "^6.0.2",
78
- "vitest": "^4.1.2"
78
+ "vitest": "^4.1.3"
79
79
  }
80
80
  }