@yourtechtribe-labs/koncept-cli 0.2.0-alpha.1 → 0.2.0-alpha.2
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 @@
|
|
|
1
|
+
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAIjD,wBAAsB,QAAQ,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAanE"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { runChecks } from '@yourtechtribe-labs/koncept-core';
|
|
2
|
+
// ─── Entry point ──────────────────────────────────────────────────────────────
|
|
3
|
+
export async function runCheck(ctx) {
|
|
4
|
+
const filterId = typeof ctx.flags.id === 'string' ? ctx.flags.id : undefined;
|
|
5
|
+
const json = ctx.flags.json === true;
|
|
6
|
+
const result = await runChecks({ cwd: ctx.rootDir, filterId });
|
|
7
|
+
if (json) {
|
|
8
|
+
renderJson(result);
|
|
9
|
+
}
|
|
10
|
+
else {
|
|
11
|
+
renderTable(result);
|
|
12
|
+
}
|
|
13
|
+
return exitCode(result);
|
|
14
|
+
}
|
|
15
|
+
// ─── Renderers ────────────────────────────────────────────────────────────────
|
|
16
|
+
function renderTable(result) {
|
|
17
|
+
const total = result.results.length;
|
|
18
|
+
const concepts = new Set(result.results.map((r) => r.conceptId)).size;
|
|
19
|
+
process.stdout.write(`koncepto check — ${concepts} concept(s), ${total} invariant(s)\n\n`);
|
|
20
|
+
for (const r of result.results) {
|
|
21
|
+
const symbol = statusSymbol(r.status);
|
|
22
|
+
const line = [
|
|
23
|
+
' ',
|
|
24
|
+
r.conceptId.padEnd(24),
|
|
25
|
+
r.invariantId.padEnd(28),
|
|
26
|
+
r.kind.padEnd(9),
|
|
27
|
+
symbol,
|
|
28
|
+
r.status,
|
|
29
|
+
].join(' ');
|
|
30
|
+
process.stdout.write(line + '\n');
|
|
31
|
+
if (r.detail) {
|
|
32
|
+
process.stdout.write(` └─ ${r.detail}\n`);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
process.stdout.write(`\n Results: ${result.passed} passed · ${result.failed} failed · ${result.skipped} skipped · ${result.errors} errors\n`);
|
|
36
|
+
}
|
|
37
|
+
function renderJson(result) {
|
|
38
|
+
const output = {
|
|
39
|
+
results: result.results,
|
|
40
|
+
summary: {
|
|
41
|
+
passed: result.passed,
|
|
42
|
+
failed: result.failed,
|
|
43
|
+
skipped: result.skipped,
|
|
44
|
+
errors: result.errors,
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
process.stdout.write(JSON.stringify(output, null, 2) + '\n');
|
|
48
|
+
}
|
|
49
|
+
// ─── Helpers ──────────────────────────────────────────────────────────────────
|
|
50
|
+
function statusSymbol(status) {
|
|
51
|
+
switch (status) {
|
|
52
|
+
case 'pass': return '✓';
|
|
53
|
+
case 'fail': return '✗';
|
|
54
|
+
case 'skip': return '–';
|
|
55
|
+
case 'error': return '!';
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
function exitCode(result) {
|
|
59
|
+
if (result.errors > 0)
|
|
60
|
+
return 2;
|
|
61
|
+
if (result.failed > 0)
|
|
62
|
+
return 1;
|
|
63
|
+
return 0;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=check.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAiCA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAA;CACxC;AAaD,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,GAAE,MAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAuBtF"}
|
package/dist/index.js
CHANGED
|
@@ -8,6 +8,7 @@ import { runVerify } from './commands/verify.js';
|
|
|
8
8
|
import { runList } from './commands/list.js';
|
|
9
9
|
import { runLink } from './commands/link.js';
|
|
10
10
|
import { runAffected } from './commands/affected.js';
|
|
11
|
+
import { runCheck } from './commands/check.js';
|
|
11
12
|
import { VERSION } from './version.js';
|
|
12
13
|
const HELP = `koncepto ${VERSION}
|
|
13
14
|
|
|
@@ -21,6 +22,9 @@ Usage:
|
|
|
21
22
|
--role=<r> --purpose=<p>
|
|
22
23
|
koncepto affected [--from <ref>] Report concepts/invariants touched by a diff
|
|
23
24
|
[--files=a,b,c] [--json]
|
|
25
|
+
koncepto check Execute invariant.check payloads (grep + command)
|
|
26
|
+
[--id <concept-id>] (filter to one concept)
|
|
27
|
+
[--json] (machine-readable output)
|
|
24
28
|
|
|
25
29
|
Flags:
|
|
26
30
|
--help, --version
|
|
@@ -31,6 +35,7 @@ const COMMANDS = {
|
|
|
31
35
|
list: runList,
|
|
32
36
|
link: runLink,
|
|
33
37
|
affected: runAffected,
|
|
38
|
+
check: runCheck,
|
|
34
39
|
};
|
|
35
40
|
export async function run(argv, cwd = process.cwd()) {
|
|
36
41
|
const { command, positional, flags } = parseArgs(argv);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,MAAM,IAAI,GAAG,YAAY,OAAO
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|