@neurcode-ai/cli 0.9.39 → 0.9.41

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 (44) hide show
  1. package/dist/api-client.d.ts +54 -0
  2. package/dist/api-client.d.ts.map +1 -1
  3. package/dist/api-client.js +36 -0
  4. package/dist/api-client.js.map +1 -1
  5. package/dist/commands/bootstrap.d.ts +20 -0
  6. package/dist/commands/bootstrap.d.ts.map +1 -0
  7. package/dist/commands/bootstrap.js +378 -0
  8. package/dist/commands/bootstrap.js.map +1 -0
  9. package/dist/commands/contract.d.ts.map +1 -1
  10. package/dist/commands/contract.js +125 -2
  11. package/dist/commands/contract.js.map +1 -1
  12. package/dist/commands/feedback.d.ts.map +1 -1
  13. package/dist/commands/feedback.js +145 -0
  14. package/dist/commands/feedback.js.map +1 -1
  15. package/dist/commands/guard.d.ts +3 -0
  16. package/dist/commands/guard.d.ts.map +1 -0
  17. package/dist/commands/guard.js +390 -0
  18. package/dist/commands/guard.js.map +1 -0
  19. package/dist/commands/policy.d.ts.map +1 -1
  20. package/dist/commands/policy.js +106 -1
  21. package/dist/commands/policy.js.map +1 -1
  22. package/dist/commands/remediate.d.ts +4 -0
  23. package/dist/commands/remediate.d.ts.map +1 -1
  24. package/dist/commands/remediate.js +420 -65
  25. package/dist/commands/remediate.js.map +1 -1
  26. package/dist/commands/verify.d.ts +4 -0
  27. package/dist/commands/verify.d.ts.map +1 -1
  28. package/dist/commands/verify.js +329 -7
  29. package/dist/commands/verify.js.map +1 -1
  30. package/dist/index.js +59 -0
  31. package/dist/index.js.map +1 -1
  32. package/dist/utils/ai-debt-budget.d.ts +49 -0
  33. package/dist/utils/ai-debt-budget.d.ts.map +1 -0
  34. package/dist/utils/ai-debt-budget.js +241 -0
  35. package/dist/utils/ai-debt-budget.js.map +1 -0
  36. package/dist/utils/policy-compiler.d.ts +4 -0
  37. package/dist/utils/policy-compiler.d.ts.map +1 -1
  38. package/dist/utils/policy-compiler.js +43 -0
  39. package/dist/utils/policy-compiler.js.map +1 -1
  40. package/dist/utils/runtime-guard.d.ts +93 -0
  41. package/dist/utils/runtime-guard.d.ts.map +1 -0
  42. package/dist/utils/runtime-guard.js +327 -0
  43. package/dist/utils/runtime-guard.js.map +1 -0
  44. package/package.json +2 -2
@@ -164,6 +164,151 @@ function feedbackCommand(program) {
164
164
  process.exit(1);
165
165
  }
166
166
  });
167
+ feedback
168
+ .command('inbox')
169
+ .description('List organization feedback queue for admin triage (pending/approved/rejected)')
170
+ .option('--status <status>', 'pending | approved | rejected')
171
+ .option('--mine', 'Show only feedback submitted by current user')
172
+ .option('--org-wide', 'For owners/admins: include feedback from entire organization')
173
+ .option('--limit <n>', 'Maximum feedback rows (default: 100)', (value) => parseInt(value, 10))
174
+ .option('--json', 'Output machine-readable JSON')
175
+ .action(async (options) => {
176
+ try {
177
+ const reviewStatus = normalizeReviewStatus(options.status);
178
+ if (options.status && !reviewStatus) {
179
+ throw new Error('Invalid --status. Use: pending, approved, rejected');
180
+ }
181
+ let mine;
182
+ if (options.orgWide === true) {
183
+ mine = false;
184
+ }
185
+ else if (options.mine === true) {
186
+ mine = true;
187
+ }
188
+ else {
189
+ mine = undefined;
190
+ }
191
+ const client = createClient();
192
+ const rows = await client.listVerificationFeedbackInbox({
193
+ reviewStatus: reviewStatus || undefined,
194
+ limit: Number.isFinite(options.limit) ? options.limit : undefined,
195
+ mine,
196
+ });
197
+ if (options.json === true) {
198
+ console.log(JSON.stringify({ success: true, count: rows.length, feedback: rows }, null, 2));
199
+ return;
200
+ }
201
+ console.log(chalk.bold.cyan('\n🧾 Verification Feedback Inbox\n'));
202
+ if (rows.length === 0) {
203
+ console.log(chalk.yellow('No feedback entries found for this scope.\n'));
204
+ return;
205
+ }
206
+ for (const row of rows) {
207
+ console.log(chalk.white(`• ${row.id}`));
208
+ console.log(chalk.dim(` Type: ${row.feedbackType} | Status: ${row.reviewStatus}`));
209
+ if (row.rule)
210
+ console.log(chalk.dim(` Rule: ${row.rule}`));
211
+ if (row.filePath)
212
+ console.log(chalk.dim(` File: ${row.filePath}`));
213
+ console.log(chalk.dim(` Verification: ${row.verificationId} | Verdict: ${row.verification.verdict || 'n/a'}`));
214
+ if (row.verification.repoUrl || row.verification.branch) {
215
+ console.log(chalk.dim(` Repo: ${row.verification.repoUrl || 'n/a'} | Branch: ${row.verification.branch || 'n/a'}`));
216
+ }
217
+ console.log(chalk.dim(` Reason: ${row.reason}`));
218
+ console.log(chalk.dim(` Submitted: ${new Date(row.createdAt).toLocaleString()}`));
219
+ if (row.reviewedAt) {
220
+ console.log(chalk.dim(` Reviewed: ${new Date(row.reviewedAt).toLocaleString()}`));
221
+ }
222
+ if (row.reviewStatus === 'pending') {
223
+ console.log(chalk.dim(` Review cmd: neurcode feedback review ${row.verificationId} ${row.id} --decision approved --note "<reason>"`));
224
+ }
225
+ console.log('');
226
+ }
227
+ }
228
+ catch (error) {
229
+ const message = error instanceof Error ? error.message : 'Unknown error';
230
+ if (options.json === true) {
231
+ console.log(JSON.stringify({ success: false, message }, null, 2));
232
+ }
233
+ else {
234
+ console.error(chalk.red(`\n❌ Feedback inbox failed: ${message}\n`));
235
+ }
236
+ process.exit(1);
237
+ }
238
+ });
239
+ feedback
240
+ .command('stats')
241
+ .description('Aggregate false-positive/false-negative feedback quality stats for org policy tuning')
242
+ .option('--status <status>', 'pending | approved | rejected')
243
+ .option('--days <n>', 'Lookback window in days (default: 30)', (value) => parseInt(value, 10))
244
+ .option('--limit <n>', 'Top rule/file rows to return (default: 10)', (value) => parseInt(value, 10))
245
+ .option('--mine', 'Only include feedback submitted by current user')
246
+ .option('--org-wide', 'For owners/admins: include feedback from entire organization')
247
+ .option('--json', 'Output machine-readable JSON')
248
+ .action(async (options) => {
249
+ try {
250
+ const reviewStatus = normalizeReviewStatus(options.status);
251
+ if (options.status && !reviewStatus) {
252
+ throw new Error('Invalid --status. Use: pending, approved, rejected');
253
+ }
254
+ let mine;
255
+ if (options.orgWide === true) {
256
+ mine = false;
257
+ }
258
+ else if (options.mine === true) {
259
+ mine = true;
260
+ }
261
+ else {
262
+ mine = undefined;
263
+ }
264
+ const client = createClient();
265
+ const stats = await client.getVerificationFeedbackStats({
266
+ reviewStatus: reviewStatus || undefined,
267
+ mine,
268
+ days: Number.isFinite(options.days) ? options.days : undefined,
269
+ limit: Number.isFinite(options.limit) ? options.limit : undefined,
270
+ });
271
+ if (options.json === true) {
272
+ console.log(JSON.stringify({ success: true, stats }, null, 2));
273
+ return;
274
+ }
275
+ console.log(chalk.bold.cyan('\n📈 Verification Feedback Stats\n'));
276
+ console.log(chalk.dim(`Window: last ${stats.windowDays} day(s)`));
277
+ console.log(chalk.dim(`Scope: ${stats.filters.mine ? 'mine' : 'organization'}`));
278
+ if (stats.filters.reviewStatus) {
279
+ console.log(chalk.dim(`Status filter: ${stats.filters.reviewStatus}`));
280
+ }
281
+ console.log('');
282
+ console.log(chalk.white(`Total feedback: ${stats.totals.total}`));
283
+ console.log(chalk.dim(`Pending: ${stats.totals.pending} | Approved: ${stats.totals.approved} | Rejected: ${stats.totals.rejected}`));
284
+ console.log(chalk.dim(`False+ : ${stats.totals.falsePositive} (${(stats.totals.falsePositiveRate * 100).toFixed(1)}%)`));
285
+ console.log(chalk.dim(`False- : ${stats.totals.falseNegative} (${(stats.totals.falseNegativeRate * 100).toFixed(1)}%)`));
286
+ console.log(chalk.dim(`Approval rate: ${(stats.totals.approvalRate * 100).toFixed(1)}%`));
287
+ if (stats.topRules.length > 0) {
288
+ console.log(chalk.bold('\nTop noisy rules:'));
289
+ stats.topRules.forEach((row) => {
290
+ console.log(chalk.dim(` • ${row.label} | total=${row.total} fp=${row.falsePositive} fn=${row.falseNegative} pending=${row.pending}`));
291
+ });
292
+ }
293
+ if (stats.topFiles.length > 0) {
294
+ console.log(chalk.bold('\nTop noisy files:'));
295
+ stats.topFiles.forEach((row) => {
296
+ console.log(chalk.dim(` • ${row.label} | total=${row.total} fp=${row.falsePositive} fn=${row.falseNegative} pending=${row.pending}`));
297
+ });
298
+ }
299
+ console.log('');
300
+ }
301
+ catch (error) {
302
+ const message = error instanceof Error ? error.message : 'Unknown error';
303
+ if (options.json === true) {
304
+ console.log(JSON.stringify({ success: false, message }, null, 2));
305
+ }
306
+ else {
307
+ console.error(chalk.red(`\n❌ Feedback stats failed: ${message}\n`));
308
+ }
309
+ process.exit(1);
310
+ }
311
+ });
167
312
  feedback
168
313
  .command('review')
169
314
  .description('Admin/owner review decision on submitted feedback')
@@ -1 +1 @@
1
- {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/commands/feedback.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/commands/feedback.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function runtimeGuardCommand(program: Command): void;
3
+ //# sourceMappingURL=guard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../../src/commands/guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmKpC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA8S1D"}
@@ -0,0 +1,390 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runtimeGuardCommand = runtimeGuardCommand;
4
+ const fs_1 = require("fs");
5
+ const path_1 = require("path");
6
+ const diff_parser_1 = require("@neurcode-ai/diff-parser");
7
+ const project_root_1 = require("../utils/project-root");
8
+ const state_1 = require("../utils/state");
9
+ const git_1 = require("../utils/git");
10
+ const runtime_guard_1 = require("../utils/runtime-guard");
11
+ const change_contract_1 = require("../utils/change-contract");
12
+ const policy_compiler_1 = require("../utils/policy-compiler");
13
+ let chalk;
14
+ try {
15
+ chalk = require('chalk');
16
+ }
17
+ catch {
18
+ chalk = {
19
+ bold: (value) => value,
20
+ cyan: (value) => value,
21
+ dim: (value) => value,
22
+ green: (value) => value,
23
+ yellow: (value) => value,
24
+ red: (value) => value,
25
+ };
26
+ }
27
+ function normalizeRepoPath(value) {
28
+ return value.replace(/\\/g, '/').replace(/^\.\//, '').trim();
29
+ }
30
+ function emitJson(payload) {
31
+ console.log(JSON.stringify(payload, null, 2));
32
+ }
33
+ function resolveDiffText(options) {
34
+ if (options.staged) {
35
+ return (0, git_1.execGitCommand)('git diff --cached');
36
+ }
37
+ if (options.head) {
38
+ return (0, git_1.getDiffFromBase)('HEAD');
39
+ }
40
+ if (typeof options.base === 'string' && options.base.trim()) {
41
+ return (0, git_1.getDiffFromBase)(options.base.trim());
42
+ }
43
+ return (0, git_1.getDiffFromBase)('HEAD~1');
44
+ }
45
+ function buildStartFailurePayload(errors) {
46
+ return {
47
+ success: false,
48
+ message: `Runtime guard start failed: ${errors.join('; ')}`,
49
+ errors,
50
+ };
51
+ }
52
+ function evaluateSourceDrift(projectRoot, artifact) {
53
+ const violations = [];
54
+ if (artifact.source.changeContractPath) {
55
+ const contractRead = (0, change_contract_1.readChangeContract)(projectRoot, artifact.source.changeContractPath);
56
+ if (!contractRead.contract) {
57
+ violations.push({
58
+ code: 'RUNTIME_GUARD_CHANGE_CONTRACT_DRIFT',
59
+ message: contractRead.error
60
+ ? `Runtime guard change contract invalid (${contractRead.error})`
61
+ : `Runtime guard change contract missing (${contractRead.path})`,
62
+ });
63
+ }
64
+ else if (artifact.source.changeContractExpectedFilesFingerprint &&
65
+ contractRead.contract.expectedFilesFingerprint !== artifact.source.changeContractExpectedFilesFingerprint) {
66
+ violations.push({
67
+ code: 'RUNTIME_GUARD_CHANGE_CONTRACT_DRIFT',
68
+ message: `Runtime guard change contract drift detected (expected files fingerprint changed: ` +
69
+ `${artifact.source.changeContractExpectedFilesFingerprint} -> ${contractRead.contract.expectedFilesFingerprint})`,
70
+ });
71
+ }
72
+ }
73
+ if (artifact.source.compiledPolicyPath) {
74
+ const compiledRead = (0, policy_compiler_1.readCompiledPolicyArtifact)(projectRoot, artifact.source.compiledPolicyPath);
75
+ if (!compiledRead.artifact) {
76
+ violations.push({
77
+ code: 'RUNTIME_GUARD_COMPILED_POLICY_DRIFT',
78
+ message: compiledRead.error
79
+ ? `Runtime guard compiled policy invalid (${compiledRead.error})`
80
+ : `Runtime guard compiled policy missing (${compiledRead.path})`,
81
+ });
82
+ }
83
+ else if (artifact.source.compiledPolicyFingerprint &&
84
+ compiledRead.artifact.fingerprint !== artifact.source.compiledPolicyFingerprint) {
85
+ violations.push({
86
+ code: 'RUNTIME_GUARD_COMPILED_POLICY_DRIFT',
87
+ message: `Runtime guard compiled policy drift detected (fingerprint changed: ` +
88
+ `${artifact.source.compiledPolicyFingerprint} -> ${compiledRead.artifact.fingerprint})`,
89
+ });
90
+ }
91
+ }
92
+ return violations;
93
+ }
94
+ function printStatus(path, artifact) {
95
+ console.log(chalk.bold.cyan('\n🧱 Runtime Guard Status\n'));
96
+ console.log(chalk.dim(`Path: ${path}`));
97
+ console.log(chalk.dim(`Guard ID: ${artifact.guardId}`));
98
+ console.log(chalk.dim(`Mode: ${artifact.mode}`));
99
+ console.log(chalk.dim(`Active: ${artifact.active ? 'yes' : 'no'}`));
100
+ console.log(chalk.dim(`Created: ${artifact.createdAt}`));
101
+ if (artifact.archivedAt) {
102
+ console.log(chalk.dim(`Archived: ${artifact.archivedAt}`));
103
+ }
104
+ console.log(chalk.dim(`Plan ID: ${artifact.source.planId || '(none)'}`));
105
+ console.log(chalk.dim(`Expected files: ${artifact.expectedFiles.length}`));
106
+ console.log(chalk.dim(`Deterministic rules: ${artifact.deterministic.ruleCount}`));
107
+ console.log(chalk.dim(`Unmatched statements: ${artifact.deterministic.unmatchedStatements.length}`));
108
+ console.log(chalk.dim(`Checks run: ${artifact.stats.checksRun} (blocked ${artifact.stats.blockedChecks})`));
109
+ if (artifact.stats.lastCheckedAt) {
110
+ console.log(chalk.dim(`Last check: ${artifact.stats.lastCheckedAt}`));
111
+ }
112
+ console.log('');
113
+ }
114
+ function runtimeGuardCommand(program) {
115
+ const guard = program
116
+ .command('guard')
117
+ .description('Pre-generation runtime guardrail enforcement for deterministic governance');
118
+ guard
119
+ .command('start')
120
+ .description('Start runtime guard session from deterministic artifacts')
121
+ .option('--plan-id <id>', 'Plan ID override for runtime guard scope')
122
+ .option('--runtime-guard <path>', 'Runtime guard artifact path (default: .neurcode/runtime-guard.json)')
123
+ .option('--change-contract <path>', 'Change contract path (default: .neurcode/change-contract.json)')
124
+ .option('--compiled-policy <path>', 'Compiled policy path (default: neurcode.policy.compiled.json)')
125
+ .option('--strict', 'Require change contract + compiled policy artifacts (default)', true)
126
+ .option('--no-strict', 'Allow advisory runtime guard start without full deterministic artifacts')
127
+ .option('--json', 'Output machine-readable JSON')
128
+ .action((options) => {
129
+ const projectRoot = (0, project_root_1.resolveNeurcodeProjectRoot)(process.cwd());
130
+ const strict = options.strict !== false;
131
+ const changeContractRead = (0, change_contract_1.readChangeContract)(projectRoot, options.changeContract);
132
+ const compiledPolicyRead = (0, policy_compiler_1.readCompiledPolicyArtifact)(projectRoot, options.compiledPolicy);
133
+ const planId = (typeof options.planId === 'string' && options.planId.trim() ? options.planId.trim() : null)
134
+ || changeContractRead.contract?.planId
135
+ || (0, state_1.getActivePlanId)();
136
+ const errors = [];
137
+ if (strict && !changeContractRead.contract) {
138
+ errors.push(changeContractRead.error
139
+ ? `change contract invalid (${changeContractRead.error})`
140
+ : `change contract missing (${changeContractRead.path})`);
141
+ }
142
+ if (strict && !compiledPolicyRead.artifact) {
143
+ errors.push(compiledPolicyRead.error
144
+ ? `compiled policy invalid (${compiledPolicyRead.error})`
145
+ : `compiled policy missing (${compiledPolicyRead.path})`);
146
+ }
147
+ if (planId &&
148
+ changeContractRead.contract?.planId &&
149
+ planId !== changeContractRead.contract.planId) {
150
+ errors.push(`plan mismatch: requested ${planId}, change contract is ${changeContractRead.contract.planId}`);
151
+ }
152
+ const expectedFiles = changeContractRead.contract?.expectedFiles || [];
153
+ if (strict && expectedFiles.length === 0) {
154
+ errors.push('change contract has empty expected file scope');
155
+ }
156
+ if (strict && !planId) {
157
+ errors.push('planId missing (pass --plan-id or generate/import a plan contract first)');
158
+ }
159
+ if (errors.length > 0) {
160
+ if (options.json) {
161
+ emitJson(buildStartFailurePayload(errors));
162
+ }
163
+ else {
164
+ console.error(chalk.red('\n❌ Runtime guard start failed\n'));
165
+ for (const entry of errors) {
166
+ console.error(chalk.red(`• ${entry}`));
167
+ }
168
+ console.error('');
169
+ }
170
+ process.exit(1);
171
+ }
172
+ const deterministicRules = compiledPolicyRead.artifact
173
+ ? (0, policy_compiler_1.hydrateCompiledPolicyRules)(compiledPolicyRead.artifact)
174
+ : [];
175
+ const artifact = (0, runtime_guard_1.createRuntimeGuardArtifact)({
176
+ mode: strict ? 'strict' : 'advisory',
177
+ planId,
178
+ sessionId: (0, state_1.getSessionId)(),
179
+ projectId: (0, state_1.getProjectId)(),
180
+ changeContractPath: changeContractRead.contract ? changeContractRead.path : null,
181
+ changeContractId: changeContractRead.contract?.contractId || null,
182
+ changeContractExpectedFilesFingerprint: changeContractRead.contract?.expectedFilesFingerprint || null,
183
+ compiledPolicyPath: compiledPolicyRead.artifact ? compiledPolicyRead.path : null,
184
+ compiledPolicyFingerprint: compiledPolicyRead.artifact?.fingerprint || null,
185
+ expectedFiles,
186
+ deterministicRules,
187
+ unmatchedStatements: compiledPolicyRead.artifact?.compilation.unmatchedStatements || [],
188
+ });
189
+ const writtenPath = (0, runtime_guard_1.writeRuntimeGuardArtifact)(projectRoot, artifact, options.runtimeGuard);
190
+ if (options.json) {
191
+ emitJson({
192
+ success: true,
193
+ message: 'Runtime guard started.',
194
+ path: writtenPath,
195
+ guard: {
196
+ guardId: artifact.guardId,
197
+ mode: artifact.mode,
198
+ active: artifact.active,
199
+ planId: artifact.source.planId,
200
+ expectedFiles: artifact.expectedFiles.length,
201
+ deterministicRules: artifact.deterministic.ruleCount,
202
+ unmatchedStatements: artifact.deterministic.unmatchedStatements.length,
203
+ },
204
+ });
205
+ return;
206
+ }
207
+ console.log(chalk.bold.cyan('\n🧱 Runtime Guard Started\n'));
208
+ console.log(chalk.green(`Path: ${writtenPath}`));
209
+ console.log(chalk.dim(`Guard ID: ${artifact.guardId}`));
210
+ console.log(chalk.dim(`Mode: ${artifact.mode}`));
211
+ console.log(chalk.dim(`Plan ID: ${artifact.source.planId || '(none)'}`));
212
+ console.log(chalk.dim(`Expected files: ${artifact.expectedFiles.length}`));
213
+ console.log(chalk.dim(`Deterministic rules: ${artifact.deterministic.ruleCount}`));
214
+ if (artifact.deterministic.unmatchedStatements.length > 0) {
215
+ console.log(chalk.yellow(`Unmatched deterministic statements: ${artifact.deterministic.unmatchedStatements.length}`));
216
+ }
217
+ console.log(chalk.dim('\nRun `neurcode guard check --staged` before commit to enforce runtime scope.\n'));
218
+ });
219
+ guard
220
+ .command('check')
221
+ .description('Check current diff against active runtime guard session')
222
+ .option('--runtime-guard <path>', 'Runtime guard artifact path (default: .neurcode/runtime-guard.json)')
223
+ .option('--staged', 'Check staged changes only')
224
+ .option('--head', 'Check working tree against HEAD')
225
+ .option('--base <ref>', 'Check working tree against specific git ref')
226
+ .option('--json', 'Output machine-readable JSON')
227
+ .action((options) => {
228
+ const projectRoot = (0, project_root_1.resolveNeurcodeProjectRoot)(process.cwd());
229
+ const guardRead = (0, runtime_guard_1.readRuntimeGuardArtifact)(projectRoot, options.runtimeGuard);
230
+ if (!guardRead.artifact) {
231
+ const message = guardRead.error
232
+ ? `Runtime guard invalid (${guardRead.error})`
233
+ : `Runtime guard not found (${guardRead.path})`;
234
+ if (options.json) {
235
+ emitJson({
236
+ success: false,
237
+ message,
238
+ path: guardRead.path,
239
+ });
240
+ }
241
+ else {
242
+ console.error(chalk.red(`\n❌ ${message}\n`));
243
+ }
244
+ process.exit(1);
245
+ }
246
+ const diffText = resolveDiffText(options);
247
+ const parsed = (0, diff_parser_1.parseDiff)(diffText);
248
+ const filtered = parsed.map((file) => ({
249
+ ...file,
250
+ path: normalizeRepoPath(file.path),
251
+ }));
252
+ const fileContents = {};
253
+ for (const file of filtered) {
254
+ const absolutePath = (0, path_1.resolve)(projectRoot, file.path);
255
+ if ((0, fs_1.existsSync)(absolutePath)) {
256
+ try {
257
+ fileContents[file.path] = (0, fs_1.readFileSync)(absolutePath, 'utf-8');
258
+ }
259
+ catch {
260
+ // Best-effort file content loading.
261
+ }
262
+ }
263
+ }
264
+ const baseEvaluation = (0, runtime_guard_1.evaluateRuntimeGuardArtifact)(guardRead.artifact, filtered, fileContents);
265
+ const sourceDriftViolations = evaluateSourceDrift(projectRoot, guardRead.artifact);
266
+ const violations = [...baseEvaluation.violations, ...sourceDriftViolations];
267
+ const pass = violations.length === 0;
268
+ const updatedArtifact = (0, runtime_guard_1.withRuntimeGuardCheckStats)(guardRead.artifact, {
269
+ blocked: !pass,
270
+ });
271
+ (0, runtime_guard_1.writeRuntimeGuardArtifact)(projectRoot, updatedArtifact, options.runtimeGuard);
272
+ if (options.json) {
273
+ emitJson({
274
+ success: pass,
275
+ pass,
276
+ guardId: updatedArtifact.guardId,
277
+ mode: updatedArtifact.mode,
278
+ path: guardRead.path,
279
+ changedFiles: baseEvaluation.changedFiles,
280
+ outOfScopeFiles: baseEvaluation.outOfScopeFiles,
281
+ constraintViolations: baseEvaluation.constraintViolations,
282
+ violations,
283
+ adherenceScore: baseEvaluation.adherenceScore,
284
+ plannedFilesModified: baseEvaluation.plannedFilesModified,
285
+ totalPlannedFiles: baseEvaluation.totalPlannedFiles,
286
+ stats: updatedArtifact.stats,
287
+ message: pass
288
+ ? 'Runtime guard check passed.'
289
+ : `Runtime guard blocked ${violations.length} violation(s).`,
290
+ });
291
+ }
292
+ else if (pass) {
293
+ console.log(chalk.bold.cyan('\n🧱 Runtime Guard Check\n'));
294
+ console.log(chalk.green('✅ Pass'));
295
+ console.log(chalk.dim(`Changed files: ${baseEvaluation.changedFiles.length}`));
296
+ console.log(chalk.dim(`Scope adherence: ${baseEvaluation.adherenceScore}%`));
297
+ console.log('');
298
+ }
299
+ else {
300
+ console.log(chalk.bold.cyan('\n🧱 Runtime Guard Check\n'));
301
+ console.log(chalk.red(`⛔ Blocked (${violations.length} violation(s))`));
302
+ for (const violation of violations) {
303
+ const prefix = violation.file ? `${violation.file}: ` : '';
304
+ console.log(chalk.red(`• [${violation.code}] ${prefix}${violation.message}`));
305
+ }
306
+ console.log('');
307
+ }
308
+ process.exit(pass ? 0 : 1);
309
+ });
310
+ guard
311
+ .command('status')
312
+ .description('Show runtime guard session status')
313
+ .option('--runtime-guard <path>', 'Runtime guard artifact path (default: .neurcode/runtime-guard.json)')
314
+ .option('--json', 'Output machine-readable JSON')
315
+ .action((options) => {
316
+ const projectRoot = (0, project_root_1.resolveNeurcodeProjectRoot)(process.cwd());
317
+ const guardRead = (0, runtime_guard_1.readRuntimeGuardArtifact)(projectRoot, options.runtimeGuard);
318
+ if (!guardRead.artifact) {
319
+ const message = guardRead.error
320
+ ? `Runtime guard invalid (${guardRead.error})`
321
+ : `Runtime guard not found (${guardRead.path})`;
322
+ if (options.json) {
323
+ emitJson({
324
+ success: false,
325
+ path: guardRead.path,
326
+ message,
327
+ });
328
+ }
329
+ else {
330
+ console.error(chalk.red(`\n❌ ${message}\n`));
331
+ }
332
+ process.exit(1);
333
+ }
334
+ if (options.json) {
335
+ emitJson({
336
+ success: true,
337
+ path: guardRead.path,
338
+ guard: guardRead.artifact,
339
+ });
340
+ return;
341
+ }
342
+ printStatus(guardRead.path, guardRead.artifact);
343
+ });
344
+ guard
345
+ .command('stop')
346
+ .description('Stop the active runtime guard session')
347
+ .option('--runtime-guard <path>', 'Runtime guard artifact path (default: .neurcode/runtime-guard.json)')
348
+ .option('--json', 'Output machine-readable JSON')
349
+ .action((options) => {
350
+ const projectRoot = (0, project_root_1.resolveNeurcodeProjectRoot)(process.cwd());
351
+ const guardRead = (0, runtime_guard_1.readRuntimeGuardArtifact)(projectRoot, options.runtimeGuard);
352
+ if (!guardRead.artifact) {
353
+ const message = guardRead.error
354
+ ? `Runtime guard invalid (${guardRead.error})`
355
+ : `Runtime guard not found (${guardRead.path})`;
356
+ if (options.json) {
357
+ emitJson({
358
+ success: false,
359
+ path: guardRead.path,
360
+ message,
361
+ });
362
+ }
363
+ else {
364
+ console.error(chalk.red(`\n❌ ${message}\n`));
365
+ }
366
+ process.exit(1);
367
+ }
368
+ const stopped = (0, runtime_guard_1.markRuntimeGuardStopped)(guardRead.artifact);
369
+ const writtenPath = (0, runtime_guard_1.writeRuntimeGuardArtifact)(projectRoot, stopped, options.runtimeGuard);
370
+ if (options.json) {
371
+ emitJson({
372
+ success: true,
373
+ path: writtenPath,
374
+ guardId: stopped.guardId,
375
+ active: stopped.active,
376
+ archivedAt: stopped.archivedAt,
377
+ message: 'Runtime guard stopped.',
378
+ });
379
+ return;
380
+ }
381
+ console.log(chalk.bold.cyan('\n🧱 Runtime Guard Stopped\n'));
382
+ console.log(chalk.green(`Path: ${writtenPath}`));
383
+ console.log(chalk.dim(`Guard ID: ${stopped.guardId}`));
384
+ if (stopped.archivedAt) {
385
+ console.log(chalk.dim(`Archived at: ${stopped.archivedAt}`));
386
+ }
387
+ console.log('');
388
+ });
389
+ }
390
+ //# sourceMappingURL=guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guard.js","sourceRoot":"","sources":["../../src/commands/guard.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/commands/policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA0KpC,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAknDpD"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/commands/policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsLpC,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA0vDpD"}