@nerviq/cli 1.8.5 → 1.8.6
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/bin/cli.js +3 -3
- package/package.json +1 -1
- package/src/source-urls.js +18 -1
package/bin/cli.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
const { audit } = require('../src/
|
|
3
|
+
const { audit, detectPlatforms, getCatalog } = require('../src/public-api');
|
|
4
4
|
const { setup } = require('../src/setup');
|
|
5
5
|
const { analyzeProject, printAnalysis, exportMarkdown } = require('../src/analyze');
|
|
6
6
|
const { buildProposalBundle, printProposalBundle, writePlanFile, applyProposalBundle, printApplyResult } = require('../src/plans');
|
|
@@ -998,7 +998,7 @@ async function main() {
|
|
|
998
998
|
const { watch } = require('../src/watch');
|
|
999
999
|
await watch(options);
|
|
1000
1000
|
} else if (normalizedCommand === 'catalog') {
|
|
1001
|
-
const {
|
|
1001
|
+
const { generateCatalogWithVersion, writeCatalogJson } = require('../src/catalog');
|
|
1002
1002
|
if (options.out) {
|
|
1003
1003
|
const result = writeCatalogJson(options.out);
|
|
1004
1004
|
if (options.json) {
|
|
@@ -1007,7 +1007,7 @@ async function main() {
|
|
|
1007
1007
|
console.log(`\n Catalog written to ${result.path} (${result.count} checks)\n`);
|
|
1008
1008
|
}
|
|
1009
1009
|
} else {
|
|
1010
|
-
const catalog =
|
|
1010
|
+
const catalog = getCatalog(); // dogfood: use SDK instead of internal import
|
|
1011
1011
|
if (options.json) {
|
|
1012
1012
|
const envelope = generateCatalogWithVersion();
|
|
1013
1013
|
if (options.checkVersion) envelope.requestedVersion = options.checkVersion;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nerviq/cli",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.6",
|
|
4
4
|
"description": "The intelligent nervous system for AI coding agents — 2,431 checks (8 platforms × ~300 governance rules), 10 languages, 62 domain packs. Audit, align, and amplify.",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"bin": {
|
package/src/source-urls.js
CHANGED
|
@@ -367,15 +367,32 @@ function hasRuntimeVerificationSignal(technique) {
|
|
|
367
367
|
return /experiment(?:ally)? confirmed|confirmed by (?:live )?experiment|current runtime|runtime evidence|runtime-verified|validated in current runtime|observed in current runtime|measured in live experiment|reproduced in runtime|confirmed by experiment/i.test(haystack);
|
|
368
368
|
}
|
|
369
369
|
|
|
370
|
+
// Stack categories where checks are generated/adapted rather than individually verified
|
|
371
|
+
const STACK_CATEGORIES = new Set([
|
|
372
|
+
'python', 'go', 'rust', 'java', 'ruby', 'dotnet', 'php', 'flutter', 'swift', 'kotlin',
|
|
373
|
+
]);
|
|
374
|
+
|
|
370
375
|
function resolveConfidence(platform, technique) {
|
|
371
376
|
if (STALE_CONFIDENCE_IDS.has(technique.id)) {
|
|
372
377
|
return 0.3;
|
|
373
378
|
}
|
|
374
379
|
|
|
380
|
+
// Runtime-verified: highest confidence
|
|
375
381
|
if (RUNTIME_CONFIDENCE_IDS[platform]?.has(technique.id) || hasRuntimeVerificationSignal(technique)) {
|
|
376
382
|
return 0.9;
|
|
377
383
|
}
|
|
378
384
|
|
|
385
|
+
// Has fix template: author wrote specific remediation → higher confidence
|
|
386
|
+
if (technique.template) {
|
|
387
|
+
return 0.8;
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
// Stack-specific checks: generated per-language, less individually verified
|
|
391
|
+
if (STACK_CATEGORIES.has(technique.category)) {
|
|
392
|
+
return 0.6;
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
// Default: documented but not individually experiment-verified
|
|
379
396
|
return 0.7;
|
|
380
397
|
}
|
|
381
398
|
|
|
@@ -396,7 +413,7 @@ function attachSourceUrls(platform, techniques) {
|
|
|
396
413
|
}
|
|
397
414
|
|
|
398
415
|
technique.sourceUrl = technique.sourceUrl || resolved;
|
|
399
|
-
technique.confidence =
|
|
416
|
+
technique.confidence = resolveConfidence(platform, technique);
|
|
400
417
|
technique.lastVerified = technique.lastVerified || LAST_VERIFIED[platform] || LAST_VERIFIED.default;
|
|
401
418
|
}
|
|
402
419
|
|