@ogygie/cli 0.5.2 → 0.5.3
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/dist/cli.js +20 -2
- package/package.json +2 -2
package/dist/cli.js
CHANGED
|
@@ -15237,9 +15237,20 @@ function findProductVocabulary(sourceText, vocabularyRoots) {
|
|
|
15237
15237
|
return matches;
|
|
15238
15238
|
}
|
|
15239
15239
|
function stripComments(sourceText) {
|
|
15240
|
-
const blankKeepingNewlines = (text) => text.replace(/[^\n]/g, " ");
|
|
15241
15240
|
return sourceText.replace(/\/\*[\s\S]*?\*\//g, blankKeepingNewlines).replace(/\/\/[^\n]*/g, blankKeepingNewlines);
|
|
15242
15241
|
}
|
|
15242
|
+
function blankKeepingNewlines(text) {
|
|
15243
|
+
return text.replace(/[^\n]/g, " ");
|
|
15244
|
+
}
|
|
15245
|
+
var MACHINE_STRING_CONTENT = /^[A-Za-z0-9_$\-./:@]+$/;
|
|
15246
|
+
function stripProseStrings(sourceText) {
|
|
15247
|
+
const blankProse = (literal2) => {
|
|
15248
|
+
const content = literal2.slice(1, -1);
|
|
15249
|
+
if (MACHINE_STRING_CONTENT.test(content)) return literal2;
|
|
15250
|
+
return literal2[0] + blankKeepingNewlines(content) + literal2[literal2.length - 1];
|
|
15251
|
+
};
|
|
15252
|
+
return sourceText.replace(/`(?:[^`\\]|\\[\s\S])*`/g, blankProse).replace(/"(?:[^"\\\n]|\\.)*"/g, blankProse).replace(/'(?:[^'\\\n]|\\.)*'/g, blankProse);
|
|
15253
|
+
}
|
|
15243
15254
|
|
|
15244
15255
|
// ../ogygie-core/src/vocabulary-audit.ts
|
|
15245
15256
|
function canonicalByAlias(vocabulary) {
|
|
@@ -15257,7 +15268,8 @@ function auditProductVocabulary(input) {
|
|
|
15257
15268
|
const canonicalTerms = vocabulary.entries.map((entry) => entry.canonical);
|
|
15258
15269
|
const violations = [];
|
|
15259
15270
|
for (const file2 of input.sourceFiles) {
|
|
15260
|
-
|
|
15271
|
+
const judged = stripProseStrings(stripComments(file2.content));
|
|
15272
|
+
for (const match of findProductVocabulary(judged, forbiddenAliases)) {
|
|
15261
15273
|
violations.push({
|
|
15262
15274
|
kind: "FORBIDDEN_ALIAS",
|
|
15263
15275
|
filePath: file2.path,
|
|
@@ -15418,6 +15430,12 @@ var governedChecksumsByVersion = {
|
|
|
15418
15430
|
"AGENTS.md": "c7d51a0cd97b67343b486bdb7c54914da68d96409eaa985959d2a525c65549fd",
|
|
15419
15431
|
"CLAUDE.md": "785ee8d90e368806d8cf0b4d84a15f29d1dc961168bda86cf1a6c60a923c8c9b",
|
|
15420
15432
|
"tsconfig.base.json": "0f8919e9ed8bbc88e0308fa2fa91471dabb18d1df721bd78c04076597eba89a2"
|
|
15433
|
+
},
|
|
15434
|
+
"0.5.3": {
|
|
15435
|
+
".github/workflows/ogygie-gates.yml": "48c40efe9fe66dd0f9c3b94287026d80eae9afd6782b5833fdf8846d8662babf",
|
|
15436
|
+
"AGENTS.md": "c7d51a0cd97b67343b486bdb7c54914da68d96409eaa985959d2a525c65549fd",
|
|
15437
|
+
"CLAUDE.md": "785ee8d90e368806d8cf0b4d84a15f29d1dc961168bda86cf1a6c60a923c8c9b",
|
|
15438
|
+
"tsconfig.base.json": "0f8919e9ed8bbc88e0308fa2fa91471dabb18d1df721bd78c04076597eba89a2"
|
|
15421
15439
|
}
|
|
15422
15440
|
};
|
|
15423
15441
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ogygie/cli",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.3",
|
|
4
4
|
"description": "Ogygie framework CLI: deterministic scaffolding (init), governed-file upgrades (upgrade) and lockstep verification (check) for Ogygie products.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"tsx": "^4.20.0",
|
|
23
23
|
"typescript": "^5.8.0",
|
|
24
24
|
"zod": "^4.0.0",
|
|
25
|
-
"@ogygie/core": "0.5.
|
|
25
|
+
"@ogygie/core": "0.5.3"
|
|
26
26
|
},
|
|
27
27
|
"scripts": {
|
|
28
28
|
"typecheck": "tsc -p tsconfig.json",
|