@neurcode-ai/contracts 0.1.3 → 0.2.1

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,622 @@
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
+ /** Backward-compatible hard-evidence flag. False for semantic resemblance. */
71
+ deterministic: boolean;
72
+ /** The same normalized facts and algorithm reproduce the same relationship. */
73
+ computationRepeatable?: boolean;
74
+ /** Semantic certainty is distinct from repeatability of the computation. */
75
+ semanticCertainty?: 'exact' | 'high' | 'medium' | 'low' | 'unknown';
76
+ /** Advisory evidence cannot independently authorize blocking enforcement. */
77
+ evidenceTier?: 'deterministic' | 'advisory' | 'degraded';
78
+ /** Whether this relationship may be used as hard-block evidence. */
79
+ enforcementEligible?: boolean;
80
+ provenance: string;
81
+ }
82
+ export interface SourceFreeReferenceFact {
83
+ id: string;
84
+ filePath: string;
85
+ name: string;
86
+ line: number | null;
87
+ kind: 'call_target' | 'identifier' | 'property' | 'unknown';
88
+ resolvedSymbolId: string | null;
89
+ resolvedFile: string | null;
90
+ resolution: 'local_symbol' | 'imported_symbol' | 'repository_symbol' | 'ambiguous' | 'unresolved';
91
+ resolutionReason: string | null;
92
+ parserDepth: ParserDepth;
93
+ }
94
+ export interface SourceFreeCallFact {
95
+ id: string;
96
+ filePath: string;
97
+ calledName: string;
98
+ line: number | null;
99
+ callerSymbolId: string | null;
100
+ callKind: 'direct' | 'property' | 'constructor' | 'unknown';
101
+ resolvedSymbolId: string | null;
102
+ resolvedFile: string | null;
103
+ resolution: 'local_symbol' | 'imported_symbol' | 'repository_symbol' | 'ambiguous' | 'unresolved';
104
+ resolutionReason: string | null;
105
+ parserDepth: ParserDepth;
106
+ }
107
+ export interface SourceFreeBoundaryFact {
108
+ id: string;
109
+ filePath: string;
110
+ packageKey: string | null;
111
+ serviceKey: string | null;
112
+ parserDepth: ParserDepth;
113
+ }
114
+ export type ProposedFactFamily = 'path' | 'symbol' | 'import' | 'reference' | 'call' | 'package' | 'service' | 'ownership' | 'test' | 'surface';
115
+ export type ProposedFactStatus = 'complete' | 'partial' | 'unavailable';
116
+ export interface ProposedFactAvailability {
117
+ fact: ProposedFactFamily;
118
+ status: ProposedFactStatus;
119
+ reasons: string[];
120
+ }
121
+ export interface ProposedPolicyFactAvailability {
122
+ family: StructuralPolicyFamily;
123
+ status: ProposedFactStatus;
124
+ requiredFacts: ProposedFactFamily[];
125
+ missingFacts: ProposedFactFamily[];
126
+ reasons: string[];
127
+ }
128
+ export interface ProposedChangeEnvelope {
129
+ schemaVersion: typeof PROPOSED_CHANGE_ENVELOPE_SCHEMA_VERSION;
130
+ repository: {
131
+ repoId: string;
132
+ rootHash: string;
133
+ remoteHash: string | null;
134
+ headSha: string | null;
135
+ };
136
+ target: {
137
+ path: string;
138
+ previousPath: string | null;
139
+ operation: 'create' | 'update' | 'delete' | 'rename';
140
+ language: RepositoryLanguage;
141
+ };
142
+ content: {
143
+ present: boolean;
144
+ availabilityReason: 'host_supplied' | 'path_only_contract' | 'post_write_disk_read' | 'delete_operation' | 'unsupported_host';
145
+ contentHash: string | null;
146
+ rawRetained: false;
147
+ };
148
+ facts: {
149
+ symbols: SourceFreeSymbolFact[];
150
+ imports: SourceFreeImportFact[];
151
+ exports: SourceFreeExportFact[];
152
+ relationships: SourceFreeStructuralRelationship[];
153
+ references?: SourceFreeReferenceFact[];
154
+ calls?: SourceFreeCallFact[];
155
+ boundaries?: SourceFreeBoundaryFact[];
156
+ parserDepth: ParserDepth;
157
+ extractionErrors: string[];
158
+ limitations?: string[];
159
+ completeness?: {
160
+ facts: ProposedFactAvailability[];
161
+ policies: ProposedPolicyFactAvailability[];
162
+ };
163
+ };
164
+ host: {
165
+ adapterId: string;
166
+ capability: HostEnforcementCapability;
167
+ timing: 'before_write' | 'during_write' | 'after_write' | 'ci';
168
+ decisionBinding: 'host_enforced' | 'cooperative' | 'observed';
169
+ };
170
+ session: {
171
+ sessionId: string | null;
172
+ planRevision: number | null;
173
+ };
174
+ privacy: SourceFreePrivacyContract;
175
+ }
176
+ 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';
177
+ export interface RepositoryGraphNode {
178
+ id: string;
179
+ kind: RepositoryGraphNodeKind;
180
+ key: string;
181
+ path: string | null;
182
+ name: string | null;
183
+ language: RepositoryLanguage | null;
184
+ contentHash: string | null;
185
+ attributes: Record<string, string | number | boolean | null | string[]>;
186
+ provenance: {
187
+ parserId: string | null;
188
+ parserVersion: string | null;
189
+ parserDepth: ParserDepth;
190
+ indexedAt: string;
191
+ };
192
+ }
193
+ export interface RepositoryGraphEdge extends SourceFreeStructuralRelationship {
194
+ attributes: Record<string, string | number | boolean | null | string[]>;
195
+ }
196
+ export interface RepositoryGraphFreshness {
197
+ state: 'fresh' | 'stale' | 'partial' | 'missing' | 'corrupt' | 'locked';
198
+ /** Truthful lifecycle posture. `complete` is never used for unsupported, skipped, degraded, or failed analysis. */
199
+ posture?: 'complete' | 'partial' | 'stale' | 'missing' | 'failed';
200
+ indexedAt: string | null;
201
+ gitHead: string | null;
202
+ workingTreeHash: string | null;
203
+ staleFileCount: number;
204
+ unsupportedFileCount: number;
205
+ reasonCodes: string[];
206
+ }
207
+ export interface RepositoryGraphLimits {
208
+ maxFiles: number;
209
+ maxTotalBytes: number;
210
+ maxBytesPerFile: number;
211
+ maxNodes: number;
212
+ maxEdges: number;
213
+ /** Maximum parser/traversal nesting accepted for one source file. */
214
+ maxAstDepth?: number;
215
+ /** Maximum AST nodes visited while analyzing one source file. */
216
+ maxAstNodes?: number;
217
+ /** Cooperative wall-clock budget for one source file in milliseconds. */
218
+ maxAnalysisMs?: number;
219
+ }
220
+ export type RepositoryFileAnalysisStatus = 'analyzed' | 'skipped' | 'unsupported' | 'degraded' | 'failed';
221
+ export type RepositoryGraphFactFamily = 'path' | 'symbol' | 'import' | 'reference' | 'call' | 'package' | 'service' | 'ownership' | 'test' | 'surface';
222
+ export interface RepositoryGraphPathCompleteness {
223
+ language: RepositoryLanguage;
224
+ packageKey: string | null;
225
+ serviceKey: string | null;
226
+ status: 'complete' | 'partial' | 'unavailable';
227
+ facts: RepositoryGraphFactFamily[];
228
+ reasons: string[];
229
+ }
230
+ export interface RepositoryGraphScopeCompleteness {
231
+ status: 'complete' | 'partial' | 'unavailable';
232
+ facts: RepositoryGraphFactFamily[];
233
+ reasons: string[];
234
+ filesSeen: number;
235
+ filesComplete: number;
236
+ }
237
+ export interface RepositoryGraphCompleteness {
238
+ paths: Record<string, RepositoryGraphPathCompleteness>;
239
+ languages: Partial<Record<RepositoryLanguage, RepositoryGraphScopeCompleteness>>;
240
+ packages: Record<string, RepositoryGraphScopeCompleteness>;
241
+ services: Record<string, RepositoryGraphScopeCompleteness>;
242
+ omittedPathCount: number;
243
+ reasons: string[];
244
+ }
245
+ export interface RepositoryGraphFileState {
246
+ contentHash: string | null;
247
+ sizeBytes: number;
248
+ mtimeMs: number;
249
+ language: RepositoryLanguage;
250
+ generated: boolean;
251
+ vendor: boolean;
252
+ binary: boolean;
253
+ ignored: boolean;
254
+ unsupported: boolean;
255
+ reason: string | null;
256
+ /** Stable, source-free outcome of the most recent analysis attempt. */
257
+ analysisStatus?: RepositoryFileAnalysisStatus;
258
+ /** Stable reason code; never parser text, source text, or an exception message. */
259
+ analysisReasonCode?: string | null;
260
+ }
261
+ export interface RepositoryGraphSnapshot {
262
+ schemaVersion: typeof REPOSITORY_GRAPH_SCHEMA_VERSION;
263
+ graphId: string;
264
+ repositoryId: string;
265
+ generation: number;
266
+ createdAt: string;
267
+ updatedAt: string;
268
+ storage: {
269
+ format: 'atomic_json' | 'sqlite_wal';
270
+ schemaVersion?: number;
271
+ transactionId: string;
272
+ recoveredFromCorruption: boolean;
273
+ migratedFrom?: 'atomic_json' | null;
274
+ };
275
+ freshness: RepositoryGraphFreshness;
276
+ limits: RepositoryGraphLimits;
277
+ coverage: {
278
+ languages: LanguageAnalysisCoverage[];
279
+ filesSeen: number;
280
+ filesIndexed: number;
281
+ filesIgnored: number;
282
+ filesGenerated: number;
283
+ filesVendor: number;
284
+ filesBinary: number;
285
+ filesUnsupported: number;
286
+ filesAnalyzed?: number;
287
+ filesSkipped?: number;
288
+ filesDegraded?: number;
289
+ filesFailed?: number;
290
+ unsupportedPercent: number;
291
+ };
292
+ nodes: RepositoryGraphNode[];
293
+ edges: RepositoryGraphEdge[];
294
+ fileHashes: Record<string, string>;
295
+ fileStates?: Record<string, RepositoryGraphFileState>;
296
+ completeness?: RepositoryGraphCompleteness;
297
+ privacy: SourceFreePrivacyContract;
298
+ }
299
+ export interface RepositoryIndexRequest {
300
+ repoRoot: string;
301
+ changedPaths?: string[];
302
+ deletedPaths?: string[];
303
+ renamedPaths?: Array<{
304
+ from: string;
305
+ to: string;
306
+ }>;
307
+ forceRebuild?: boolean;
308
+ limits?: Partial<RepositoryGraphLimits>;
309
+ }
310
+ export interface RepositoryIndexResult {
311
+ graph: RepositoryGraphSnapshot;
312
+ stats: {
313
+ mode: 'initial' | 'incremental' | 'rebuild' | 'recovery';
314
+ durationMs: number;
315
+ filesScanned: number;
316
+ filesParsed: number;
317
+ filesReused: number;
318
+ filesDeleted: number;
319
+ filesRenamed: number;
320
+ peakMemoryMb: number;
321
+ graphBytes: number;
322
+ filesAnalyzed?: number;
323
+ filesSkipped?: number;
324
+ filesUnsupported?: number;
325
+ filesDegraded?: number;
326
+ filesFailed?: number;
327
+ };
328
+ }
329
+ export interface RepositoryIndexer {
330
+ index(request: RepositoryIndexRequest): Promise<RepositoryIndexResult>;
331
+ status(repoRoot: string): Promise<RepositoryGraphFreshness>;
332
+ recover(repoRoot: string): Promise<RepositoryIndexResult>;
333
+ }
334
+ export interface LanguageAnalyzer {
335
+ readonly language: RepositoryLanguage;
336
+ readonly parserId: string;
337
+ readonly parserVersion: string;
338
+ readonly depth: ParserDepth;
339
+ supports(path: string): boolean;
340
+ analyze(input: {
341
+ filePath: string;
342
+ sourceText: string;
343
+ contentHash: string;
344
+ }): {
345
+ symbols: SourceFreeSymbolFact[];
346
+ imports: SourceFreeImportFact[];
347
+ exports: SourceFreeExportFact[];
348
+ relationships: SourceFreeStructuralRelationship[];
349
+ errors: string[];
350
+ };
351
+ }
352
+ export interface RepositoryGraphStore {
353
+ read(repoRoot: string): RepositoryGraphSnapshot | null;
354
+ write(repoRoot: string, graph: RepositoryGraphSnapshot): void;
355
+ withLock<T>(repoRoot: string, operation: () => T): T;
356
+ recover(repoRoot: string): RepositoryGraphSnapshot | null;
357
+ }
358
+ 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';
359
+ export type PolicySourceKind = 'organization' | 'repository' | 'directory' | 'session';
360
+ export interface CompiledStructuralPolicyRule {
361
+ schemaVersion: typeof COMPILED_STRUCTURAL_POLICY_SCHEMA_VERSION;
362
+ ruleId: string;
363
+ family: StructuralPolicyFamily;
364
+ mode: PolicyMode;
365
+ source: {
366
+ kind: PolicySourceKind;
367
+ sourceId: string;
368
+ precedence: number;
369
+ phraseHash: string | null;
370
+ phraseSummary: string | null;
371
+ };
372
+ normalized: Record<string, string | number | boolean | null | string[]>;
373
+ requiredFacts: Array<'path' | 'symbol' | 'import' | 'call' | 'ownership' | 'test' | 'surface'>;
374
+ remediation: string;
375
+ }
376
+ export interface PolicyCompilationResult {
377
+ compiled: CompiledStructuralPolicyRule[];
378
+ advisory: Array<{
379
+ sourceId: string;
380
+ reason: string;
381
+ phraseHash: string | null;
382
+ }>;
383
+ notEvaluated: Array<{
384
+ sourceId: string;
385
+ reason: string;
386
+ phraseHash: string | null;
387
+ }>;
388
+ rejected: Array<{
389
+ sourceId: string;
390
+ reason: string;
391
+ phraseHash: string | null;
392
+ }>;
393
+ }
394
+ export interface StructuralPolicyCompiler {
395
+ compile(input: {
396
+ organizationRules?: unknown[];
397
+ repositoryRules?: unknown[];
398
+ naturalLanguageStatements?: string[];
399
+ }): PolicyCompilationResult;
400
+ }
401
+ export interface PolicyEvaluationFinding {
402
+ findingId: string;
403
+ ruleId: string;
404
+ family: StructuralPolicyFamily;
405
+ verdict: Exclude<PolicyVerdict, 'allow'>;
406
+ truth: IntelligenceTruthClassification;
407
+ matchedFacts: Array<{
408
+ factType: string;
409
+ factId: string;
410
+ path: string | null;
411
+ symbol: string | null;
412
+ }>;
413
+ explanation: string;
414
+ remediation: string;
415
+ }
416
+ export interface StructuralPolicyEvaluation {
417
+ schemaVersion: typeof POLICY_EVALUATION_SCHEMA_VERSION;
418
+ verdict: PolicyVerdict;
419
+ truth: 'deterministic' | 'not_evaluated';
420
+ evaluatedRuleIds: string[];
421
+ notEvaluatedRuleIds: string[];
422
+ findings: PolicyEvaluationFinding[];
423
+ graphFreshness: RepositoryGraphFreshness;
424
+ }
425
+ export interface StructuralPolicyEvaluator {
426
+ evaluate(input: {
427
+ graph: RepositoryGraphSnapshot | null;
428
+ change: ProposedChangeEnvelope;
429
+ rules: CompiledStructuralPolicyRule[];
430
+ approvals?: Array<{
431
+ path: string;
432
+ owners: string[];
433
+ approvedBy: string;
434
+ }>;
435
+ }): StructuralPolicyEvaluation;
436
+ }
437
+ export interface SemanticAdvisoryFinding {
438
+ schemaVersion: typeof SEMANTIC_ADVISORY_SCHEMA_VERSION;
439
+ findingId: string;
440
+ providerId: string;
441
+ category: 'behavior_similarity' | 'reuse_suggestion' | 'duplicate_module' | 'architecture_deviation' | 'cross_service_consequence' | 'reviewer_question' | 'missing_test' | 'ownership_review';
442
+ truth: 'advisory';
443
+ confidence: number;
444
+ rationaleCategories: string[];
445
+ related: Array<{
446
+ path: string | null;
447
+ symbol: string | null;
448
+ hash: string | null;
449
+ }>;
450
+ limitations: string[];
451
+ suppressed: boolean;
452
+ cacheKey: string;
453
+ }
454
+ export interface SemanticAdvisoryProvider {
455
+ readonly providerId: string;
456
+ readonly privacyMode: 'local_only' | 'opt_in_remote_source_free';
457
+ analyze(input: {
458
+ graph: RepositoryGraphSnapshot;
459
+ change: ProposedChangeEnvelope;
460
+ suppressions: string[];
461
+ }): Promise<SemanticAdvisoryFinding[]>;
462
+ }
463
+ export interface SourceFreePrivacyContract {
464
+ sourceUploaded: false;
465
+ sourceStored: false;
466
+ diffUploaded: false;
467
+ promptUploaded: false;
468
+ chatUploaded: false;
469
+ rawContentRetained: false;
470
+ }
471
+ export interface RepoIntelligenceEvidence {
472
+ schemaVersion: typeof REPO_INTELLIGENCE_EVIDENCE_SCHEMA_VERSION;
473
+ evidenceId: string;
474
+ generatedAt: string;
475
+ classification: IntelligenceTruthClassification;
476
+ verdict: PolicyVerdict;
477
+ enforcement: ProposedChangeEnvelope['host'];
478
+ graph: {
479
+ graphId: string | null;
480
+ schemaVersion: string | null;
481
+ /** The sole repository-wide source index. Other graph artifacts are projections or session-scoped. */
482
+ canonicalModel?: 'repository_graph_v2';
483
+ storageSchemaVersion?: number | null;
484
+ freshness: RepositoryGraphFreshness;
485
+ /** A completed transactional index, including an honestly partial result. */
486
+ lastSuccessfulIndexAt?: string | null;
487
+ /** Last observable attempt. Failed attempts before a graph exists are not persisted in V2. */
488
+ lastAttemptedIndexAt?: string | null;
489
+ unsupportedPercent: number | null;
490
+ coverage?: {
491
+ filesSeen: number;
492
+ filesIndexed: number;
493
+ filesAnalyzed: number;
494
+ filesSkipped: number;
495
+ filesUnsupported: number;
496
+ filesDegraded: number;
497
+ filesFailed: number;
498
+ } | null;
499
+ deterministicEvidenceEligible?: boolean;
500
+ deterministicEnforcementEligible?: boolean;
501
+ enforcementIneligibilityReasons?: string[];
502
+ recoveryCommand?: 'neurcode brain repo-index' | 'neurcode brain repo-recover';
503
+ runtimeCompatibility?: {
504
+ contractId: string;
505
+ runtimeContractVersion: string;
506
+ manifestVersion: string;
507
+ component: 'cli';
508
+ };
509
+ summary?: {
510
+ languages: Array<{
511
+ language: RepositoryLanguage;
512
+ depth: ParserDepth;
513
+ filesSeen: number;
514
+ filesAnalyzed: number;
515
+ filesUnsupported: number;
516
+ }>;
517
+ packages: string[];
518
+ services: string[];
519
+ ownershipZoneCount: number;
520
+ sensitiveSurfaceCount: number;
521
+ };
522
+ };
523
+ policy: {
524
+ evaluatedRuleIds: string[];
525
+ notEvaluatedRuleIds: string[];
526
+ findings: PolicyEvaluationFinding[];
527
+ };
528
+ advisory: SemanticAdvisoryFinding[];
529
+ signature: {
530
+ trust: 'self_attested' | 'backend_signed_unverified' | 'backend_signed_verified' | 'backend_signed_invalid';
531
+ receiptId: string | null;
532
+ recordHash: string | null;
533
+ };
534
+ privacy: SourceFreePrivacyContract;
535
+ }
536
+ export interface RepoIntelligenceEvidenceProjection {
537
+ repoKey: string;
538
+ repoName: string;
539
+ sessionId: string;
540
+ targetPath: string | null;
541
+ eventType: string;
542
+ eventAt: string | null;
543
+ evidence: RepoIntelligenceEvidence;
544
+ }
545
+ export interface RepoIntelligenceEvidencePage {
546
+ schemaVersion: 'neurcode.repo-intelligence-evidence-page.v1';
547
+ records: RepoIntelligenceEvidenceProjection[];
548
+ pageInfo: {
549
+ limit: number;
550
+ offset: number;
551
+ returned: number;
552
+ hasMore: boolean;
553
+ invalidRowsSkipped: number;
554
+ };
555
+ filters: {
556
+ repoKey: string | null;
557
+ classification: IntelligenceTruthClassification | null;
558
+ hostCapability: HostEnforcementCapability | null;
559
+ freshness: RepositoryGraphFreshness['state'] | null;
560
+ };
561
+ privacy: SourceFreePrivacyContract & {
562
+ projectionOnly: true;
563
+ retentionInheritedFromRuntimeEvidence: true;
564
+ };
565
+ }
566
+ export interface RepoIntelligenceOperationsMetrics {
567
+ schemaVersion: typeof REPO_INTELLIGENCE_OPERATIONS_SCHEMA_VERSION;
568
+ generatedAt: string;
569
+ windowHours: number;
570
+ status: 'idle' | 'healthy' | 'watching' | 'degraded';
571
+ reasons: string[];
572
+ evaluations: {
573
+ total: number;
574
+ valid: number;
575
+ invalidPersisted: number;
576
+ classifications: Record<IntelligenceTruthClassification, number>;
577
+ verdicts: Record<PolicyVerdict, number>;
578
+ advisoryFindings: number;
579
+ evaluatedRules: number;
580
+ notEvaluatedRules: number;
581
+ lastEvaluationAt: string | null;
582
+ };
583
+ hosts: Record<HostEnforcementCapability, number>;
584
+ graphs: {
585
+ freshness: Record<RepositoryGraphFreshness['state'], number>;
586
+ averageUnsupportedPercent: number | null;
587
+ maximumUnsupportedPercent: number | null;
588
+ lastIndexedAt: string | null;
589
+ lastAttemptedIndexAt?: string | null;
590
+ deterministicEnforcementEligible?: number;
591
+ deterministicEnforcementIneligible?: number;
592
+ recoveredFromCorruption: number;
593
+ };
594
+ gaps: {
595
+ topNotEvaluatedRuleIds: Array<{
596
+ ruleId: string;
597
+ count: number;
598
+ }>;
599
+ topReasonCodes: Array<{
600
+ reasonCode: string;
601
+ count: number;
602
+ }>;
603
+ };
604
+ latency: {
605
+ evaluationMs: {
606
+ available: false;
607
+ reason: string;
608
+ };
609
+ indexRefreshMs: {
610
+ available: false;
611
+ reason: string;
612
+ };
613
+ };
614
+ privacy: SourceFreePrivacyContract & {
615
+ organizationScoped: true;
616
+ highCardinalityLabelsExcluded: true;
617
+ };
618
+ }
619
+ export declare function assertSourceFreeRepoIntelligence(value: unknown, path?: string): void;
620
+ export declare function isRepoIntelligenceEvidence(value: unknown): value is RepoIntelligenceEvidence;
621
+ export declare function sourceFreePrivacyContract(): SourceFreePrivacyContract;
622
+ //# 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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"}