@neurcode-ai/cli 0.9.27 → 0.9.28

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 (56) hide show
  1. package/dist/commands/allow.d.ts.map +1 -1
  2. package/dist/commands/allow.js +5 -19
  3. package/dist/commands/allow.js.map +1 -1
  4. package/dist/commands/apply.d.ts +1 -0
  5. package/dist/commands/apply.d.ts.map +1 -1
  6. package/dist/commands/apply.js +105 -46
  7. package/dist/commands/apply.js.map +1 -1
  8. package/dist/commands/init.d.ts +2 -0
  9. package/dist/commands/init.d.ts.map +1 -1
  10. package/dist/commands/init.js +83 -24
  11. package/dist/commands/init.js.map +1 -1
  12. package/dist/commands/plan.d.ts +4 -0
  13. package/dist/commands/plan.d.ts.map +1 -1
  14. package/dist/commands/plan.js +344 -48
  15. package/dist/commands/plan.js.map +1 -1
  16. package/dist/commands/policy.d.ts.map +1 -1
  17. package/dist/commands/policy.js +629 -0
  18. package/dist/commands/policy.js.map +1 -1
  19. package/dist/commands/prompt.d.ts +7 -1
  20. package/dist/commands/prompt.d.ts.map +1 -1
  21. package/dist/commands/prompt.js +106 -25
  22. package/dist/commands/prompt.js.map +1 -1
  23. package/dist/commands/ship.d.ts +32 -0
  24. package/dist/commands/ship.d.ts.map +1 -1
  25. package/dist/commands/ship.js +1404 -75
  26. package/dist/commands/ship.js.map +1 -1
  27. package/dist/commands/verify.d.ts +6 -0
  28. package/dist/commands/verify.d.ts.map +1 -1
  29. package/dist/commands/verify.js +527 -102
  30. package/dist/commands/verify.js.map +1 -1
  31. package/dist/index.js +89 -3
  32. package/dist/index.js.map +1 -1
  33. package/dist/utils/custom-policy-rules.d.ts +21 -0
  34. package/dist/utils/custom-policy-rules.d.ts.map +1 -0
  35. package/dist/utils/custom-policy-rules.js +71 -0
  36. package/dist/utils/custom-policy-rules.js.map +1 -0
  37. package/dist/utils/plan-cache.d.ts.map +1 -1
  38. package/dist/utils/plan-cache.js +4 -0
  39. package/dist/utils/plan-cache.js.map +1 -1
  40. package/dist/utils/policy-audit.d.ts +29 -0
  41. package/dist/utils/policy-audit.d.ts.map +1 -0
  42. package/dist/utils/policy-audit.js +208 -0
  43. package/dist/utils/policy-audit.js.map +1 -0
  44. package/dist/utils/policy-exceptions.d.ts +96 -0
  45. package/dist/utils/policy-exceptions.d.ts.map +1 -0
  46. package/dist/utils/policy-exceptions.js +389 -0
  47. package/dist/utils/policy-exceptions.js.map +1 -0
  48. package/dist/utils/policy-governance.d.ts +24 -0
  49. package/dist/utils/policy-governance.d.ts.map +1 -0
  50. package/dist/utils/policy-governance.js +124 -0
  51. package/dist/utils/policy-governance.js.map +1 -0
  52. package/dist/utils/policy-packs.d.ts +72 -1
  53. package/dist/utils/policy-packs.d.ts.map +1 -1
  54. package/dist/utils/policy-packs.js +285 -0
  55. package/dist/utils/policy-packs.js.map +1 -1
  56. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"policy-packs.d.ts","sourceRoot":"","sources":["../../src/utils/policy-packs.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAEvD,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,cAAc,CAAC;AAEzE,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,YAAY,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,CAAC,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAqMD,wBAAgB,eAAe,IAAI,oBAAoB,EAAE,CAExD;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CAKzE;AAaD,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAc/E;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,OAAe,GAAG,mBAAmB,CA0B1G;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAKxD;AAED,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG;IACxD,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,IAAI,EAAE,CAAC;CACf,GAAG,IAAI,CASP"}
1
+ {"version":3,"file":"policy-packs.d.ts","sourceRoot":"","sources":["../../src/utils/policy-packs.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,18 @@ exports.readInstalledPolicyPack = readInstalledPolicyPack;
6
6
  exports.installPolicyPack = installPolicyPack;
7
7
  exports.uninstallPolicyPack = uninstallPolicyPack;
8
8
  exports.getInstalledPolicyPackRules = getInstalledPolicyPackRules;
9
+ exports.getPolicyLockPath = getPolicyLockPath;
10
+ exports.readPolicyLockFile = readPolicyLockFile;
11
+ exports.writePolicyLockFile = writePolicyLockFile;
12
+ exports.buildPolicyStateSnapshot = buildPolicyStateSnapshot;
13
+ exports.comparePolicyStateToLock = comparePolicyStateToLock;
14
+ exports.evaluatePolicyLock = evaluatePolicyLock;
15
+ const crypto_1 = require("crypto");
9
16
  const fs_1 = require("fs");
10
17
  const path_1 = require("path");
18
+ const policy_engine_1 = require("@neurcode-ai/policy-engine");
11
19
  const ACTIVE_PACK_PATH = ['.neurcode', 'policies', 'policy-pack.active.json'];
20
+ const POLICY_LOCK_FILENAME = 'neurcode.policy.lock.json';
12
21
  function withPackPrefix(packId, rules) {
13
22
  return rules.map((rule) => ({
14
23
  ...rule,
@@ -274,4 +283,280 @@ function getInstalledPolicyPackRules(cwd) {
274
283
  rules: installed.rules,
275
284
  };
276
285
  }
286
+ function sha256Hex(input) {
287
+ return (0, crypto_1.createHash)('sha256').update(input, 'utf-8').digest('hex');
288
+ }
289
+ function normalizeForHash(value) {
290
+ if (value === null || typeof value !== 'object') {
291
+ return value;
292
+ }
293
+ if (Array.isArray(value)) {
294
+ return value.map((item) => normalizeForHash(item));
295
+ }
296
+ const record = value;
297
+ const out = {};
298
+ for (const key of Object.keys(record).sort()) {
299
+ const current = record[key];
300
+ if (typeof current === 'undefined')
301
+ continue;
302
+ out[key] = normalizeForHash(current);
303
+ }
304
+ return out;
305
+ }
306
+ function fingerprintJson(value) {
307
+ return sha256Hex(JSON.stringify(normalizeForHash(value)));
308
+ }
309
+ function normalizedRuleId(value) {
310
+ if (!value || typeof value !== 'object') {
311
+ return '';
312
+ }
313
+ const id = value.id;
314
+ return typeof id === 'string' ? id : '';
315
+ }
316
+ function fingerprintRules(rules) {
317
+ const normalized = rules
318
+ .map((rule) => normalizeForHash(rule))
319
+ .sort((left, right) => {
320
+ const leftId = normalizedRuleId(left);
321
+ const rightId = normalizedRuleId(right);
322
+ if (leftId !== rightId) {
323
+ return leftId.localeCompare(rightId);
324
+ }
325
+ return JSON.stringify(left).localeCompare(JSON.stringify(right));
326
+ });
327
+ return fingerprintJson(normalized);
328
+ }
329
+ function buildCustomPolicyRefs(customPolicies) {
330
+ const refs = customPolicies.map((policy) => ({
331
+ id: policy.id,
332
+ severity: policy.severity,
333
+ updatedAt: policy.updated_at,
334
+ ruleTextHash: sha256Hex(policy.rule_text.trim()),
335
+ }));
336
+ refs.sort((left, right) => {
337
+ if (left.id !== right.id) {
338
+ return left.id.localeCompare(right.id);
339
+ }
340
+ return left.updatedAt.localeCompare(right.updatedAt);
341
+ });
342
+ return refs;
343
+ }
344
+ function getPolicyLockPath(cwd) {
345
+ return (0, path_1.join)(cwd, POLICY_LOCK_FILENAME);
346
+ }
347
+ function isPolicyLockFileShape(value) {
348
+ if (!value || typeof value !== 'object') {
349
+ return false;
350
+ }
351
+ const record = value;
352
+ if (record.schemaVersion !== 1 || typeof record.generatedAt !== 'string') {
353
+ return false;
354
+ }
355
+ const defaultRules = record.defaultRules;
356
+ if (!defaultRules ||
357
+ typeof defaultRules.count !== 'number' ||
358
+ typeof defaultRules.fingerprint !== 'string') {
359
+ return false;
360
+ }
361
+ const customPolicies = record.customPolicies;
362
+ if (!customPolicies) {
363
+ return false;
364
+ }
365
+ if ((customPolicies.mode !== 'dashboard' && customPolicies.mode !== 'disabled') ||
366
+ typeof customPolicies.count !== 'number' ||
367
+ typeof customPolicies.fingerprint !== 'string' ||
368
+ typeof customPolicies.mappedRuleCount !== 'number' ||
369
+ typeof customPolicies.mappedRulesFingerprint !== 'string' ||
370
+ !Array.isArray(customPolicies.refs)) {
371
+ return false;
372
+ }
373
+ const effective = record.effective;
374
+ if (!effective || typeof effective.ruleCount !== 'number' || typeof effective.fingerprint !== 'string') {
375
+ return false;
376
+ }
377
+ const pack = record.policyPack;
378
+ if (pack === null) {
379
+ return true;
380
+ }
381
+ if (!pack || typeof pack !== 'object') {
382
+ return false;
383
+ }
384
+ const policyPack = pack;
385
+ return (typeof policyPack.id === 'string' &&
386
+ typeof policyPack.name === 'string' &&
387
+ typeof policyPack.version === 'string' &&
388
+ typeof policyPack.ruleCount === 'number' &&
389
+ typeof policyPack.fingerprint === 'string');
390
+ }
391
+ function readPolicyLockFile(cwd) {
392
+ const path = getPolicyLockPath(cwd);
393
+ if (!(0, fs_1.existsSync)(path)) {
394
+ return {
395
+ path,
396
+ exists: false,
397
+ lock: null,
398
+ };
399
+ }
400
+ try {
401
+ const raw = (0, fs_1.readFileSync)(path, 'utf-8');
402
+ const parsed = JSON.parse(raw);
403
+ if (!isPolicyLockFileShape(parsed)) {
404
+ return {
405
+ path,
406
+ exists: true,
407
+ lock: null,
408
+ error: 'Invalid lock schema',
409
+ };
410
+ }
411
+ return {
412
+ path,
413
+ exists: true,
414
+ lock: parsed,
415
+ };
416
+ }
417
+ catch (error) {
418
+ return {
419
+ path,
420
+ exists: true,
421
+ lock: null,
422
+ error: error instanceof Error ? error.message : 'Failed to parse lock file',
423
+ };
424
+ }
425
+ }
426
+ function writePolicyLockFile(cwd, lock) {
427
+ const path = getPolicyLockPath(cwd);
428
+ (0, fs_1.writeFileSync)(path, JSON.stringify(lock, null, 2) + '\n', 'utf-8');
429
+ return path;
430
+ }
431
+ function buildPolicyStateSnapshot(input) {
432
+ const defaultRules = (0, policy_engine_1.createDefaultPolicy)().rules;
433
+ const policyPackRules = input.policyPackRules || [];
434
+ const includeDashboardPolicies = input.includeDashboardPolicies === true;
435
+ const customRules = includeDashboardPolicies ? input.customRules || [] : [];
436
+ const customPolicyRefs = includeDashboardPolicies ? buildCustomPolicyRefs(input.customPolicies || []) : [];
437
+ const effectiveRules = [...defaultRules, ...policyPackRules, ...customRules];
438
+ return {
439
+ schemaVersion: 1,
440
+ generatedAt: input.generatedAt || new Date().toISOString(),
441
+ defaultRules: {
442
+ count: defaultRules.length,
443
+ fingerprint: fingerprintRules(defaultRules),
444
+ },
445
+ policyPack: input.policyPack
446
+ ? {
447
+ id: input.policyPack.packId,
448
+ name: input.policyPack.packName,
449
+ version: input.policyPack.version,
450
+ ruleCount: policyPackRules.length,
451
+ fingerprint: fingerprintRules(policyPackRules),
452
+ }
453
+ : null,
454
+ customPolicies: {
455
+ mode: includeDashboardPolicies ? 'dashboard' : 'disabled',
456
+ count: customPolicyRefs.length,
457
+ fingerprint: fingerprintJson(customPolicyRefs),
458
+ mappedRuleCount: customRules.length,
459
+ mappedRulesFingerprint: fingerprintRules(customRules),
460
+ refs: customPolicyRefs,
461
+ },
462
+ effective: {
463
+ ruleCount: effectiveRules.length,
464
+ fingerprint: fingerprintRules(effectiveRules),
465
+ },
466
+ };
467
+ }
468
+ function comparePolicyStateToLock(lock, current) {
469
+ const mismatches = [];
470
+ if (lock.customPolicies.mode !== current.customPolicies.mode) {
471
+ mismatches.push({
472
+ code: 'POLICY_LOCK_MODE_MISMATCH',
473
+ message: 'Custom policy mode does not match lock',
474
+ expected: lock.customPolicies.mode,
475
+ actual: current.customPolicies.mode,
476
+ });
477
+ }
478
+ const lockPack = lock.policyPack;
479
+ const currentPack = current.policyPack;
480
+ const lockPackRef = lockPack ? `${lockPack.id}@${lockPack.version}` : 'none';
481
+ const currentPackRef = currentPack ? `${currentPack.id}@${currentPack.version}` : 'none';
482
+ if (lockPackRef !== currentPackRef) {
483
+ mismatches.push({
484
+ code: 'POLICY_LOCK_PACK_MISMATCH',
485
+ message: 'Installed policy pack does not match lock',
486
+ expected: lockPackRef,
487
+ actual: currentPackRef,
488
+ });
489
+ }
490
+ else if (lockPack && currentPack && lockPack.fingerprint !== currentPack.fingerprint) {
491
+ mismatches.push({
492
+ code: 'POLICY_LOCK_PACK_MISMATCH',
493
+ message: 'Policy pack rules changed from lock baseline',
494
+ expected: lockPack.fingerprint,
495
+ actual: currentPack.fingerprint,
496
+ });
497
+ }
498
+ if (lock.defaultRules.fingerprint !== current.defaultRules.fingerprint) {
499
+ mismatches.push({
500
+ code: 'POLICY_LOCK_DEFAULT_RULES_MISMATCH',
501
+ message: 'Default policy rules fingerprint changed',
502
+ expected: lock.defaultRules.fingerprint,
503
+ actual: current.defaultRules.fingerprint,
504
+ });
505
+ }
506
+ if (lock.customPolicies.fingerprint !== current.customPolicies.fingerprint) {
507
+ mismatches.push({
508
+ code: 'POLICY_LOCK_CUSTOM_POLICIES_MISMATCH',
509
+ message: 'Dashboard custom policies changed from lock baseline',
510
+ expected: lock.customPolicies.fingerprint,
511
+ actual: current.customPolicies.fingerprint,
512
+ });
513
+ }
514
+ if (lock.customPolicies.mappedRulesFingerprint !== current.customPolicies.mappedRulesFingerprint) {
515
+ mismatches.push({
516
+ code: 'POLICY_LOCK_CUSTOM_RULES_MISMATCH',
517
+ message: 'Mapped custom policy rules changed from lock baseline',
518
+ expected: lock.customPolicies.mappedRulesFingerprint,
519
+ actual: current.customPolicies.mappedRulesFingerprint,
520
+ });
521
+ }
522
+ if (lock.effective.fingerprint !== current.effective.fingerprint) {
523
+ mismatches.push({
524
+ code: 'POLICY_LOCK_EFFECTIVE_RULES_MISMATCH',
525
+ message: 'Effective policy set changed from lock baseline',
526
+ expected: lock.effective.fingerprint,
527
+ actual: current.effective.fingerprint,
528
+ });
529
+ }
530
+ return mismatches;
531
+ }
532
+ function evaluatePolicyLock(cwd, current, options) {
533
+ const requireLock = options?.requireLock === true;
534
+ const read = readPolicyLockFile(cwd);
535
+ const mismatches = [];
536
+ if (read.error) {
537
+ mismatches.push({
538
+ code: 'POLICY_LOCK_INVALID',
539
+ message: `Policy lock file is invalid: ${read.error}`,
540
+ });
541
+ }
542
+ if (!read.lock && requireLock) {
543
+ mismatches.push({
544
+ code: 'POLICY_LOCK_MISSING',
545
+ message: 'Policy lock file is required but missing',
546
+ });
547
+ }
548
+ if (read.lock) {
549
+ mismatches.push(...comparePolicyStateToLock(read.lock, current));
550
+ }
551
+ const enforced = requireLock || read.exists;
552
+ return {
553
+ lockPath: read.path,
554
+ lockFileFound: read.exists,
555
+ lockPresent: read.lock !== null,
556
+ enforced,
557
+ matched: mismatches.length === 0,
558
+ mismatches,
559
+ lock: read.lock,
560
+ };
561
+ }
277
562
  //# sourceMappingURL=policy-packs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"policy-packs.js","sourceRoot":"","sources":["../../src/utils/policy-packs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy-packs.js","sourceRoot":"","sources":["../../src/utils/policy-packs.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neurcode-ai/cli",
3
- "version": "0.9.27",
3
+ "version": "0.9.28",
4
4
  "description": "Neurcode CLI - AI code governance and diff analysis",
5
5
  "bin": {
6
6
  "neurcode": "dist/index.js"