@neurcode-ai/contracts 0.1.2 → 0.2.0

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 (76) hide show
  1. package/dist/admission/framing.d.ts +38 -0
  2. package/dist/admission/framing.d.ts.map +1 -0
  3. package/dist/admission/framing.js +78 -0
  4. package/dist/admission/framing.js.map +1 -0
  5. package/dist/admission/index.d.ts +4 -0
  6. package/dist/admission/index.d.ts.map +1 -0
  7. package/dist/admission/index.js +37 -0
  8. package/dist/admission/index.js.map +1 -0
  9. package/dist/admission/privacy.d.ts +23 -0
  10. package/dist/admission/privacy.d.ts.map +1 -0
  11. package/dist/admission/privacy.js +99 -0
  12. package/dist/admission/privacy.js.map +1 -0
  13. package/dist/admission/schema.d.ts +277 -0
  14. package/dist/admission/schema.d.ts.map +1 -0
  15. package/dist/admission/schema.js +156 -0
  16. package/dist/admission/schema.js.map +1 -0
  17. package/dist/index.d.ts +93 -11
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +185 -18
  20. package/dist/index.js.map +1 -1
  21. package/dist/intelligence.d.ts +522 -0
  22. package/dist/intelligence.d.ts.map +1 -0
  23. package/dist/intelligence.js +5 -0
  24. package/dist/intelligence.js.map +1 -0
  25. package/dist/proposed-change-validation.d.ts +20 -0
  26. package/dist/proposed-change-validation.d.ts.map +1 -0
  27. package/dist/proposed-change-validation.js +582 -0
  28. package/dist/proposed-change-validation.js.map +1 -0
  29. package/dist/remediation/capabilities.d.ts +36 -0
  30. package/dist/remediation/capabilities.d.ts.map +1 -0
  31. package/dist/remediation/capabilities.js +7 -0
  32. package/dist/remediation/capabilities.js.map +1 -0
  33. package/dist/remediation/index.d.ts +5 -0
  34. package/dist/remediation/index.d.ts.map +1 -0
  35. package/dist/remediation/index.js +3 -0
  36. package/dist/remediation/index.js.map +1 -0
  37. package/dist/remediation/request.d.ts +183 -0
  38. package/dist/remediation/request.d.ts.map +1 -0
  39. package/dist/remediation/request.js +15 -0
  40. package/dist/remediation/request.js.map +1 -0
  41. package/dist/remediation/response.d.ts +100 -0
  42. package/dist/remediation/response.d.ts.map +1 -0
  43. package/dist/remediation/response.js +11 -0
  44. package/dist/remediation/response.js.map +1 -0
  45. package/dist/remediation/validation.d.ts +87 -0
  46. package/dist/remediation/validation.d.ts.map +1 -0
  47. package/dist/remediation/validation.js +15 -0
  48. package/dist/remediation/validation.js.map +1 -0
  49. package/dist/repo-intelligence-v2.d.ts +562 -0
  50. package/dist/repo-intelligence-v2.d.ts.map +1 -0
  51. package/dist/repo-intelligence-v2.js +94 -0
  52. package/dist/repo-intelligence-v2.js.map +1 -0
  53. package/dist/status-vocabulary.d.ts +45 -0
  54. package/dist/status-vocabulary.d.ts.map +1 -0
  55. package/dist/status-vocabulary.js +101 -0
  56. package/dist/status-vocabulary.js.map +1 -0
  57. package/dist/verification/canonical-finding.d.ts +171 -0
  58. package/dist/verification/canonical-finding.d.ts.map +1 -0
  59. package/dist/verification/canonical-finding.js +3 -0
  60. package/dist/verification/canonical-finding.js.map +1 -0
  61. package/dist/verification/index.d.ts +6 -0
  62. package/dist/verification/index.d.ts.map +1 -0
  63. package/dist/verification/index.js +11 -0
  64. package/dist/verification/index.js.map +1 -0
  65. package/dist/verification/pipeline.d.ts +134 -0
  66. package/dist/verification/pipeline.d.ts.map +1 -0
  67. package/dist/verification/pipeline.js +57 -0
  68. package/dist/verification/pipeline.js.map +1 -0
  69. package/dist/verification/taxonomy.d.ts +10 -0
  70. package/dist/verification/taxonomy.d.ts.map +1 -0
  71. package/dist/verification/taxonomy.js +16 -0
  72. package/dist/verification/taxonomy.js.map +1 -0
  73. package/package.json +7 -1
  74. package/src/index.ts +0 -566
  75. package/src/runtime-compatibility-manifest.test.ts +0 -43
  76. package/tsconfig.json +0 -19
@@ -0,0 +1,562 @@
1
+ export declare const REPOSITORY_GRAPH_SCHEMA_VERSION: "neurcode.repository-graph.v2";
2
+ export declare const PROPOSED_CHANGE_ENVELOPE_SCHEMA_VERSION: "neurcode.proposed-change.v2";
3
+ export declare const COMPILED_STRUCTURAL_POLICY_SCHEMA_VERSION: "neurcode.compiled-structural-policy.v2";
4
+ export declare const POLICY_EVALUATION_SCHEMA_VERSION: "neurcode.policy-evaluation.v2";
5
+ export declare const SEMANTIC_ADVISORY_SCHEMA_VERSION: "neurcode.semantic-advisory.v2";
6
+ export declare const REPO_INTELLIGENCE_EVIDENCE_SCHEMA_VERSION: "neurcode.repo-intelligence-evidence.v2";
7
+ export declare const REPO_INTELLIGENCE_OPERATIONS_SCHEMA_VERSION: "neurcode.repo-intelligence-operations.v1";
8
+ export type IntelligenceTruthClassification = 'deterministic' | 'backend_signed' | 'advisory' | 'not_evaluated';
9
+ export type PolicyVerdict = 'allow' | 'warn' | 'block' | 'not_evaluated';
10
+ export type PolicyMode = 'off' | 'warn' | 'block';
11
+ export type HostEnforcementCapability = 'hard_prewrite' | 'cooperative_prewrite' | 'supervised_write' | 'post_write' | 'ci_only' | 'not_supported';
12
+ export type RepositoryLanguage = 'typescript' | 'javascript' | 'python' | 'go' | 'java' | 'ruby' | 'rust' | 'markdown' | 'yaml' | 'json' | 'shell' | 'sql' | 'other';
13
+ export type ParserDepth = 'ast' | 'syntax_tree' | 'regex_degraded' | 'metadata_only' | 'unsupported';
14
+ export interface LanguageAnalysisCoverage {
15
+ language: RepositoryLanguage;
16
+ parserId: string;
17
+ parserVersion: string;
18
+ depth: ParserDepth;
19
+ filesSeen: number;
20
+ filesAnalyzed: number;
21
+ filesUnsupported: number;
22
+ facts: Array<'symbols' | 'references' | 'imports' | 'exports' | 'calls'>;
23
+ limitations: string[];
24
+ }
25
+ export interface SourceFreeSymbolFact {
26
+ id: string;
27
+ name: string;
28
+ kind: 'function' | 'class' | 'interface' | 'type' | 'const' | 'method' | 'module' | 'unknown';
29
+ language: RepositoryLanguage;
30
+ filePath: string;
31
+ line: number | null;
32
+ exported: boolean;
33
+ local: boolean;
34
+ arity: number | null;
35
+ signatureHash: string | null;
36
+ structuralFingerprint: string | null;
37
+ parserDepth: ParserDepth;
38
+ }
39
+ export interface SourceFreeImportFact {
40
+ id: string;
41
+ fromFile: string;
42
+ target: string;
43
+ resolvedFile: string | null;
44
+ resolution?: 'resolved_repository' | 'external_package' | 'unresolved' | 'ambiguous' | 'dynamic';
45
+ resolutionReason?: string | null;
46
+ sourcePackage?: string | null;
47
+ targetPackage?: string | null;
48
+ sourceService?: string | null;
49
+ targetService?: string | null;
50
+ importedNames: string[];
51
+ kind: 'static' | 'dynamic' | 'require' | 'python_import' | 'unknown';
52
+ line: number | null;
53
+ parserDepth: ParserDepth;
54
+ }
55
+ export interface SourceFreeExportFact {
56
+ id: string;
57
+ filePath: string;
58
+ symbolName: string;
59
+ target: string | null;
60
+ kind: 'named' | 'default' | 're_export' | 'python_public' | 'unknown';
61
+ line: number | null;
62
+ parserDepth: ParserDepth;
63
+ }
64
+ export interface SourceFreeStructuralRelationship {
65
+ id: string;
66
+ type: 'defines' | 'references' | 'imports' | 'exports' | 'calls' | 'owns' | 'belongs_to_package' | 'belongs_to_service' | 'tests' | 'depends_on' | 'structurally_resembles' | 'crosses_boundary';
67
+ fromId: string;
68
+ toId: string;
69
+ confidence: 'exact' | 'high' | 'medium' | 'low';
70
+ deterministic: boolean;
71
+ provenance: string;
72
+ }
73
+ export interface SourceFreeReferenceFact {
74
+ id: string;
75
+ filePath: string;
76
+ name: string;
77
+ line: number | null;
78
+ kind: 'call_target' | 'identifier' | 'property' | 'unknown';
79
+ resolvedSymbolId: string | null;
80
+ resolvedFile: string | null;
81
+ resolution: 'local_symbol' | 'imported_symbol' | 'repository_symbol' | 'ambiguous' | 'unresolved';
82
+ resolutionReason: string | null;
83
+ parserDepth: ParserDepth;
84
+ }
85
+ export interface SourceFreeCallFact {
86
+ id: string;
87
+ filePath: string;
88
+ calledName: string;
89
+ line: number | null;
90
+ callerSymbolId: string | null;
91
+ callKind: 'direct' | 'property' | 'constructor' | 'unknown';
92
+ resolvedSymbolId: string | null;
93
+ resolvedFile: string | null;
94
+ resolution: 'local_symbol' | 'imported_symbol' | 'repository_symbol' | 'ambiguous' | 'unresolved';
95
+ resolutionReason: string | null;
96
+ parserDepth: ParserDepth;
97
+ }
98
+ export interface SourceFreeBoundaryFact {
99
+ id: string;
100
+ filePath: string;
101
+ packageKey: string | null;
102
+ serviceKey: string | null;
103
+ parserDepth: ParserDepth;
104
+ }
105
+ export type ProposedFactFamily = 'path' | 'symbol' | 'import' | 'reference' | 'call' | 'package' | 'service' | 'ownership' | 'test' | 'surface';
106
+ export type ProposedFactStatus = 'complete' | 'partial' | 'unavailable';
107
+ export interface ProposedFactAvailability {
108
+ fact: ProposedFactFamily;
109
+ status: ProposedFactStatus;
110
+ reasons: string[];
111
+ }
112
+ export interface ProposedPolicyFactAvailability {
113
+ family: StructuralPolicyFamily;
114
+ status: ProposedFactStatus;
115
+ requiredFacts: ProposedFactFamily[];
116
+ missingFacts: ProposedFactFamily[];
117
+ reasons: string[];
118
+ }
119
+ export interface ProposedChangeEnvelope {
120
+ schemaVersion: typeof PROPOSED_CHANGE_ENVELOPE_SCHEMA_VERSION;
121
+ repository: {
122
+ repoId: string;
123
+ rootHash: string;
124
+ remoteHash: string | null;
125
+ headSha: string | null;
126
+ };
127
+ target: {
128
+ path: string;
129
+ previousPath: string | null;
130
+ operation: 'create' | 'update' | 'delete' | 'rename';
131
+ language: RepositoryLanguage;
132
+ };
133
+ content: {
134
+ present: boolean;
135
+ availabilityReason: 'host_supplied' | 'path_only_contract' | 'post_write_disk_read' | 'delete_operation' | 'unsupported_host';
136
+ contentHash: string | null;
137
+ rawRetained: false;
138
+ };
139
+ facts: {
140
+ symbols: SourceFreeSymbolFact[];
141
+ imports: SourceFreeImportFact[];
142
+ exports: SourceFreeExportFact[];
143
+ relationships: SourceFreeStructuralRelationship[];
144
+ references?: SourceFreeReferenceFact[];
145
+ calls?: SourceFreeCallFact[];
146
+ boundaries?: SourceFreeBoundaryFact[];
147
+ parserDepth: ParserDepth;
148
+ extractionErrors: string[];
149
+ limitations?: string[];
150
+ completeness?: {
151
+ facts: ProposedFactAvailability[];
152
+ policies: ProposedPolicyFactAvailability[];
153
+ };
154
+ };
155
+ host: {
156
+ adapterId: string;
157
+ capability: HostEnforcementCapability;
158
+ timing: 'before_write' | 'during_write' | 'after_write' | 'ci';
159
+ decisionBinding: 'host_enforced' | 'cooperative' | 'observed';
160
+ };
161
+ session: {
162
+ sessionId: string | null;
163
+ planRevision: number | null;
164
+ };
165
+ privacy: SourceFreePrivacyContract;
166
+ }
167
+ export type RepositoryGraphNodeKind = 'repository' | 'file' | 'language' | 'symbol' | 'definition' | 'reference' | 'import' | 'export' | 'package' | 'module' | 'service' | 'ownership_zone' | 'sensitive_surface' | 'test' | 'config' | 'workflow' | 'migration' | 'dependency' | 'structural_fingerprint';
168
+ export interface RepositoryGraphNode {
169
+ id: string;
170
+ kind: RepositoryGraphNodeKind;
171
+ key: string;
172
+ path: string | null;
173
+ name: string | null;
174
+ language: RepositoryLanguage | null;
175
+ contentHash: string | null;
176
+ attributes: Record<string, string | number | boolean | null | string[]>;
177
+ provenance: {
178
+ parserId: string | null;
179
+ parserVersion: string | null;
180
+ parserDepth: ParserDepth;
181
+ indexedAt: string;
182
+ };
183
+ }
184
+ export interface RepositoryGraphEdge extends SourceFreeStructuralRelationship {
185
+ attributes: Record<string, string | number | boolean | null | string[]>;
186
+ }
187
+ export interface RepositoryGraphFreshness {
188
+ state: 'fresh' | 'stale' | 'partial' | 'missing' | 'corrupt' | 'locked';
189
+ indexedAt: string | null;
190
+ gitHead: string | null;
191
+ workingTreeHash: string | null;
192
+ staleFileCount: number;
193
+ unsupportedFileCount: number;
194
+ reasonCodes: string[];
195
+ }
196
+ export interface RepositoryGraphLimits {
197
+ maxFiles: number;
198
+ maxTotalBytes: number;
199
+ maxBytesPerFile: number;
200
+ maxNodes: number;
201
+ maxEdges: number;
202
+ }
203
+ export type RepositoryGraphFactFamily = 'path' | 'symbol' | 'import' | 'reference' | 'call' | 'package' | 'service' | 'ownership' | 'test' | 'surface';
204
+ export interface RepositoryGraphPathCompleteness {
205
+ language: RepositoryLanguage;
206
+ packageKey: string | null;
207
+ serviceKey: string | null;
208
+ status: 'complete' | 'partial' | 'unavailable';
209
+ facts: RepositoryGraphFactFamily[];
210
+ reasons: string[];
211
+ }
212
+ export interface RepositoryGraphScopeCompleteness {
213
+ status: 'complete' | 'partial' | 'unavailable';
214
+ facts: RepositoryGraphFactFamily[];
215
+ reasons: string[];
216
+ filesSeen: number;
217
+ filesComplete: number;
218
+ }
219
+ export interface RepositoryGraphCompleteness {
220
+ paths: Record<string, RepositoryGraphPathCompleteness>;
221
+ languages: Partial<Record<RepositoryLanguage, RepositoryGraphScopeCompleteness>>;
222
+ packages: Record<string, RepositoryGraphScopeCompleteness>;
223
+ services: Record<string, RepositoryGraphScopeCompleteness>;
224
+ omittedPathCount: number;
225
+ reasons: string[];
226
+ }
227
+ export interface RepositoryGraphFileState {
228
+ contentHash: string | null;
229
+ sizeBytes: number;
230
+ mtimeMs: number;
231
+ language: RepositoryLanguage;
232
+ generated: boolean;
233
+ vendor: boolean;
234
+ binary: boolean;
235
+ ignored: boolean;
236
+ unsupported: boolean;
237
+ reason: string | null;
238
+ }
239
+ export interface RepositoryGraphSnapshot {
240
+ schemaVersion: typeof REPOSITORY_GRAPH_SCHEMA_VERSION;
241
+ graphId: string;
242
+ repositoryId: string;
243
+ generation: number;
244
+ createdAt: string;
245
+ updatedAt: string;
246
+ storage: {
247
+ format: 'atomic_json' | 'sqlite_wal';
248
+ schemaVersion?: number;
249
+ transactionId: string;
250
+ recoveredFromCorruption: boolean;
251
+ migratedFrom?: 'atomic_json' | null;
252
+ };
253
+ freshness: RepositoryGraphFreshness;
254
+ limits: RepositoryGraphLimits;
255
+ coverage: {
256
+ languages: LanguageAnalysisCoverage[];
257
+ filesSeen: number;
258
+ filesIndexed: number;
259
+ filesIgnored: number;
260
+ filesGenerated: number;
261
+ filesVendor: number;
262
+ filesBinary: number;
263
+ filesUnsupported: number;
264
+ unsupportedPercent: number;
265
+ };
266
+ nodes: RepositoryGraphNode[];
267
+ edges: RepositoryGraphEdge[];
268
+ fileHashes: Record<string, string>;
269
+ fileStates?: Record<string, RepositoryGraphFileState>;
270
+ completeness?: RepositoryGraphCompleteness;
271
+ privacy: SourceFreePrivacyContract;
272
+ }
273
+ export interface RepositoryIndexRequest {
274
+ repoRoot: string;
275
+ changedPaths?: string[];
276
+ deletedPaths?: string[];
277
+ renamedPaths?: Array<{
278
+ from: string;
279
+ to: string;
280
+ }>;
281
+ forceRebuild?: boolean;
282
+ limits?: Partial<RepositoryGraphLimits>;
283
+ }
284
+ export interface RepositoryIndexResult {
285
+ graph: RepositoryGraphSnapshot;
286
+ stats: {
287
+ mode: 'initial' | 'incremental' | 'rebuild' | 'recovery';
288
+ durationMs: number;
289
+ filesScanned: number;
290
+ filesParsed: number;
291
+ filesReused: number;
292
+ filesDeleted: number;
293
+ filesRenamed: number;
294
+ peakMemoryMb: number;
295
+ graphBytes: number;
296
+ };
297
+ }
298
+ export interface RepositoryIndexer {
299
+ index(request: RepositoryIndexRequest): Promise<RepositoryIndexResult>;
300
+ status(repoRoot: string): Promise<RepositoryGraphFreshness>;
301
+ recover(repoRoot: string): Promise<RepositoryIndexResult>;
302
+ }
303
+ export interface LanguageAnalyzer {
304
+ readonly language: RepositoryLanguage;
305
+ readonly parserId: string;
306
+ readonly parserVersion: string;
307
+ readonly depth: ParserDepth;
308
+ supports(path: string): boolean;
309
+ analyze(input: {
310
+ filePath: string;
311
+ sourceText: string;
312
+ contentHash: string;
313
+ }): {
314
+ symbols: SourceFreeSymbolFact[];
315
+ imports: SourceFreeImportFact[];
316
+ exports: SourceFreeExportFact[];
317
+ relationships: SourceFreeStructuralRelationship[];
318
+ errors: string[];
319
+ };
320
+ }
321
+ export interface RepositoryGraphStore {
322
+ read(repoRoot: string): RepositoryGraphSnapshot | null;
323
+ write(repoRoot: string, graph: RepositoryGraphSnapshot): void;
324
+ withLock<T>(repoRoot: string, operation: () => T): T;
325
+ recover(repoRoot: string): RepositoryGraphSnapshot | null;
326
+ }
327
+ export type StructuralPolicyFamily = 'symbol_uniqueness' | 'import_boundary' | 'layering' | 'ownership_approval' | 'service_dependency' | 'required_test' | 'sensitive_surface_approval' | 'review_required_surface' | 'generated_file_restriction' | 'scope_constraint';
328
+ export type PolicySourceKind = 'organization' | 'repository' | 'directory' | 'session';
329
+ export interface CompiledStructuralPolicyRule {
330
+ schemaVersion: typeof COMPILED_STRUCTURAL_POLICY_SCHEMA_VERSION;
331
+ ruleId: string;
332
+ family: StructuralPolicyFamily;
333
+ mode: PolicyMode;
334
+ source: {
335
+ kind: PolicySourceKind;
336
+ sourceId: string;
337
+ precedence: number;
338
+ phraseHash: string | null;
339
+ phraseSummary: string | null;
340
+ };
341
+ normalized: Record<string, string | number | boolean | null | string[]>;
342
+ requiredFacts: Array<'path' | 'symbol' | 'import' | 'call' | 'ownership' | 'test' | 'surface'>;
343
+ remediation: string;
344
+ }
345
+ export interface PolicyCompilationResult {
346
+ compiled: CompiledStructuralPolicyRule[];
347
+ advisory: Array<{
348
+ sourceId: string;
349
+ reason: string;
350
+ phraseHash: string | null;
351
+ }>;
352
+ notEvaluated: Array<{
353
+ sourceId: string;
354
+ reason: string;
355
+ phraseHash: string | null;
356
+ }>;
357
+ rejected: Array<{
358
+ sourceId: string;
359
+ reason: string;
360
+ phraseHash: string | null;
361
+ }>;
362
+ }
363
+ export interface StructuralPolicyCompiler {
364
+ compile(input: {
365
+ organizationRules?: unknown[];
366
+ repositoryRules?: unknown[];
367
+ naturalLanguageStatements?: string[];
368
+ }): PolicyCompilationResult;
369
+ }
370
+ export interface PolicyEvaluationFinding {
371
+ findingId: string;
372
+ ruleId: string;
373
+ family: StructuralPolicyFamily;
374
+ verdict: Exclude<PolicyVerdict, 'allow'>;
375
+ truth: IntelligenceTruthClassification;
376
+ matchedFacts: Array<{
377
+ factType: string;
378
+ factId: string;
379
+ path: string | null;
380
+ symbol: string | null;
381
+ }>;
382
+ explanation: string;
383
+ remediation: string;
384
+ }
385
+ export interface StructuralPolicyEvaluation {
386
+ schemaVersion: typeof POLICY_EVALUATION_SCHEMA_VERSION;
387
+ verdict: PolicyVerdict;
388
+ truth: 'deterministic' | 'not_evaluated';
389
+ evaluatedRuleIds: string[];
390
+ notEvaluatedRuleIds: string[];
391
+ findings: PolicyEvaluationFinding[];
392
+ graphFreshness: RepositoryGraphFreshness;
393
+ }
394
+ export interface StructuralPolicyEvaluator {
395
+ evaluate(input: {
396
+ graph: RepositoryGraphSnapshot | null;
397
+ change: ProposedChangeEnvelope;
398
+ rules: CompiledStructuralPolicyRule[];
399
+ approvals?: Array<{
400
+ path: string;
401
+ owners: string[];
402
+ approvedBy: string;
403
+ }>;
404
+ }): StructuralPolicyEvaluation;
405
+ }
406
+ export interface SemanticAdvisoryFinding {
407
+ schemaVersion: typeof SEMANTIC_ADVISORY_SCHEMA_VERSION;
408
+ findingId: string;
409
+ providerId: string;
410
+ category: 'behavior_similarity' | 'reuse_suggestion' | 'duplicate_module' | 'architecture_deviation' | 'cross_service_consequence' | 'reviewer_question' | 'missing_test' | 'ownership_review';
411
+ truth: 'advisory';
412
+ confidence: number;
413
+ rationaleCategories: string[];
414
+ related: Array<{
415
+ path: string | null;
416
+ symbol: string | null;
417
+ hash: string | null;
418
+ }>;
419
+ limitations: string[];
420
+ suppressed: boolean;
421
+ cacheKey: string;
422
+ }
423
+ export interface SemanticAdvisoryProvider {
424
+ readonly providerId: string;
425
+ readonly privacyMode: 'local_only' | 'opt_in_remote_source_free';
426
+ analyze(input: {
427
+ graph: RepositoryGraphSnapshot;
428
+ change: ProposedChangeEnvelope;
429
+ suppressions: string[];
430
+ }): Promise<SemanticAdvisoryFinding[]>;
431
+ }
432
+ export interface SourceFreePrivacyContract {
433
+ sourceUploaded: false;
434
+ sourceStored: false;
435
+ diffUploaded: false;
436
+ promptUploaded: false;
437
+ chatUploaded: false;
438
+ rawContentRetained: false;
439
+ }
440
+ export interface RepoIntelligenceEvidence {
441
+ schemaVersion: typeof REPO_INTELLIGENCE_EVIDENCE_SCHEMA_VERSION;
442
+ evidenceId: string;
443
+ generatedAt: string;
444
+ classification: IntelligenceTruthClassification;
445
+ verdict: PolicyVerdict;
446
+ enforcement: ProposedChangeEnvelope['host'];
447
+ graph: {
448
+ graphId: string | null;
449
+ schemaVersion: string | null;
450
+ freshness: RepositoryGraphFreshness;
451
+ unsupportedPercent: number | null;
452
+ summary?: {
453
+ languages: Array<{
454
+ language: RepositoryLanguage;
455
+ depth: ParserDepth;
456
+ filesSeen: number;
457
+ filesAnalyzed: number;
458
+ filesUnsupported: number;
459
+ }>;
460
+ packages: string[];
461
+ services: string[];
462
+ ownershipZoneCount: number;
463
+ sensitiveSurfaceCount: number;
464
+ };
465
+ };
466
+ policy: {
467
+ evaluatedRuleIds: string[];
468
+ notEvaluatedRuleIds: string[];
469
+ findings: PolicyEvaluationFinding[];
470
+ };
471
+ advisory: SemanticAdvisoryFinding[];
472
+ signature: {
473
+ trust: 'self_attested' | 'backend_signed_unverified' | 'backend_signed_verified' | 'backend_signed_invalid';
474
+ receiptId: string | null;
475
+ recordHash: string | null;
476
+ };
477
+ privacy: SourceFreePrivacyContract;
478
+ }
479
+ export interface RepoIntelligenceEvidenceProjection {
480
+ repoKey: string;
481
+ repoName: string;
482
+ sessionId: string;
483
+ targetPath: string | null;
484
+ eventType: string;
485
+ eventAt: string | null;
486
+ evidence: RepoIntelligenceEvidence;
487
+ }
488
+ export interface RepoIntelligenceEvidencePage {
489
+ schemaVersion: 'neurcode.repo-intelligence-evidence-page.v1';
490
+ records: RepoIntelligenceEvidenceProjection[];
491
+ pageInfo: {
492
+ limit: number;
493
+ offset: number;
494
+ returned: number;
495
+ hasMore: boolean;
496
+ invalidRowsSkipped: number;
497
+ };
498
+ filters: {
499
+ repoKey: string | null;
500
+ classification: IntelligenceTruthClassification | null;
501
+ hostCapability: HostEnforcementCapability | null;
502
+ freshness: RepositoryGraphFreshness['state'] | null;
503
+ };
504
+ privacy: SourceFreePrivacyContract & {
505
+ projectionOnly: true;
506
+ retentionInheritedFromRuntimeEvidence: true;
507
+ };
508
+ }
509
+ export interface RepoIntelligenceOperationsMetrics {
510
+ schemaVersion: typeof REPO_INTELLIGENCE_OPERATIONS_SCHEMA_VERSION;
511
+ generatedAt: string;
512
+ windowHours: number;
513
+ status: 'idle' | 'healthy' | 'watching' | 'degraded';
514
+ reasons: string[];
515
+ evaluations: {
516
+ total: number;
517
+ valid: number;
518
+ invalidPersisted: number;
519
+ classifications: Record<IntelligenceTruthClassification, number>;
520
+ verdicts: Record<PolicyVerdict, number>;
521
+ advisoryFindings: number;
522
+ evaluatedRules: number;
523
+ notEvaluatedRules: number;
524
+ lastEvaluationAt: string | null;
525
+ };
526
+ hosts: Record<HostEnforcementCapability, number>;
527
+ graphs: {
528
+ freshness: Record<RepositoryGraphFreshness['state'], number>;
529
+ averageUnsupportedPercent: number | null;
530
+ maximumUnsupportedPercent: number | null;
531
+ lastIndexedAt: string | null;
532
+ recoveredFromCorruption: number;
533
+ };
534
+ gaps: {
535
+ topNotEvaluatedRuleIds: Array<{
536
+ ruleId: string;
537
+ count: number;
538
+ }>;
539
+ topReasonCodes: Array<{
540
+ reasonCode: string;
541
+ count: number;
542
+ }>;
543
+ };
544
+ latency: {
545
+ evaluationMs: {
546
+ available: false;
547
+ reason: string;
548
+ };
549
+ indexRefreshMs: {
550
+ available: false;
551
+ reason: string;
552
+ };
553
+ };
554
+ privacy: SourceFreePrivacyContract & {
555
+ organizationScoped: true;
556
+ highCardinalityLabelsExcluded: true;
557
+ };
558
+ }
559
+ export declare function assertSourceFreeRepoIntelligence(value: unknown, path?: string): void;
560
+ export declare function isRepoIntelligenceEvidence(value: unknown): value is RepoIntelligenceEvidence;
561
+ export declare function sourceFreePrivacyContract(): SourceFreePrivacyContract;
562
+ //# sourceMappingURL=repo-intelligence-v2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repo-intelligence-v2.d.ts","sourceRoot":"","sources":["../src/repo-intelligence-v2.ts"],"names":[],"mappings":"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"}