@wrtnlabs/evidence 0.0.0 → 0.1.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.
- package/LICENSE +1 -1
- package/README.md +382 -404
- package/lib/EvidenceChecker.d.ts +21 -15
- package/lib/EvidenceChecker.js +21 -15
- package/lib/adapters/bigquery/EvidenceBigQueryAdapter.d.ts +28 -10
- package/lib/adapters/bigquery/EvidenceBigQueryAdapter.js +34 -15
- package/lib/adapters/bigquery/EvidenceBigQueryColumnType.d.ts +17 -0
- package/lib/adapters/bigquery/EvidenceBigQueryColumnType.js +37 -0
- package/lib/adapters/bigquery/EvidenceBigQueryFileScanner.d.ts +112 -0
- package/lib/adapters/bigquery/EvidenceBigQueryFileScanner.js +392 -0
- package/lib/adapters/bigquery/EvidenceBigQueryIdentifier.d.ts +46 -0
- package/lib/adapters/bigquery/EvidenceBigQueryIdentifier.js +97 -0
- package/lib/adapters/bigquery/EvidenceBigQueryString.d.ts +18 -0
- package/lib/adapters/bigquery/EvidenceBigQueryString.js +86 -0
- package/lib/adapters/bigquery/EvidenceBigQueryWithdrawals.d.ts +17 -0
- package/lib/adapters/bigquery/EvidenceBigQueryWithdrawals.js +73 -0
- package/lib/adapters/c/EvidenceCAdapter.d.ts +44 -10
- package/lib/adapters/c/EvidenceCAdapter.js +690 -10
- package/lib/adapters/c/EvidenceCDeclarationForm.d.ts +8 -0
- package/lib/adapters/c/EvidenceCDeclaratorKind.d.ts +8 -0
- package/lib/adapters/c/EvidenceCDocumentation.d.ts +18 -0
- package/lib/adapters/c/EvidenceCDocumentation.js +66 -0
- package/lib/adapters/c/EvidenceCFileScanner.d.ts +64 -0
- package/lib/adapters/c/EvidenceCFileScanner.js +506 -0
- package/lib/adapters/c/EvidenceCSyntax.d.ts +25 -0
- package/lib/adapters/c/EvidenceCSyntax.js +165 -0
- package/lib/adapters/c/IEvidenceCDeclaration.d.ts +80 -0
- package/lib/adapters/c/IEvidenceCDeclarationAddress.d.ts +29 -0
- package/lib/adapters/c/IEvidenceCDeclarationGroup.d.ts +25 -0
- package/lib/adapters/c/IEvidenceCDeclaratorShape.d.ts +34 -0
- package/lib/adapters/c/IEvidenceCDocumentation.d.ts +41 -0
- package/lib/adapters/c/IEvidenceCDocumentationAttachment.d.ts +22 -0
- package/lib/adapters/c/IEvidenceCFileAnalysis.d.ts +51 -0
- package/lib/adapters/c/IEvidenceCTypeContext.d.ts +23 -0
- package/lib/adapters/cpp/EvidenceCppAccess.d.ts +8 -0
- package/lib/adapters/cpp/EvidenceCppAdapter.d.ts +49 -11
- package/lib/adapters/cpp/EvidenceCppAdapter.js +723 -11
- package/lib/adapters/cpp/EvidenceCppAliasKind.d.ts +8 -0
- package/lib/adapters/cpp/EvidenceCppDeclarationForm.d.ts +8 -0
- package/lib/adapters/cpp/EvidenceCppDeclaratorKind.d.ts +7 -0
- package/lib/adapters/cpp/EvidenceCppDocumentation.d.ts +20 -0
- package/lib/adapters/cpp/EvidenceCppDocumentation.js +68 -0
- package/lib/adapters/cpp/EvidenceCppFileScanner.d.ts +81 -0
- package/lib/adapters/cpp/EvidenceCppFileScanner.js +797 -0
- package/lib/adapters/cpp/EvidenceCppScopeKind.d.ts +7 -0
- package/lib/adapters/cpp/EvidenceCppSyntax.d.ts +32 -0
- package/lib/adapters/cpp/EvidenceCppSyntax.js +343 -0
- package/lib/adapters/cpp/EvidenceCppVisibility.d.ts +8 -0
- package/lib/adapters/cpp/IEvidenceCppAlias.d.ts +62 -0
- package/lib/adapters/cpp/IEvidenceCppDeclaration.d.ts +77 -0
- package/lib/adapters/cpp/IEvidenceCppDeclarationGroup.d.ts +27 -0
- package/lib/adapters/cpp/IEvidenceCppDeclaratorShape.d.ts +42 -0
- package/lib/adapters/cpp/IEvidenceCppDocumentation.d.ts +39 -0
- package/lib/adapters/cpp/IEvidenceCppDocumentationAttachment.d.ts +28 -0
- package/lib/adapters/cpp/IEvidenceCppFileAnalysis.d.ts +60 -0
- package/lib/adapters/cpp/IEvidenceCppQualifiedName.d.ts +28 -0
- package/lib/adapters/cpp/IEvidenceCppResolvedAlias.d.ts +36 -0
- package/lib/adapters/cpp/IEvidenceCppScopeContext.d.ts +55 -0
- package/lib/adapters/csharp/EvidenceCSharpAccessibility.d.ts +8 -0
- package/lib/adapters/csharp/EvidenceCSharpAdapter.d.ts +45 -10
- package/lib/adapters/csharp/EvidenceCSharpAdapter.js +702 -10
- package/lib/adapters/csharp/EvidenceCSharpDeclarationForm.d.ts +8 -0
- package/lib/adapters/csharp/EvidenceCSharpDocumentation.d.ts +19 -0
- package/lib/adapters/csharp/EvidenceCSharpDocumentation.js +43 -0
- package/lib/adapters/csharp/EvidenceCSharpFileScanner.d.ts +56 -0
- package/lib/adapters/csharp/EvidenceCSharpFileScanner.js +407 -0
- package/lib/adapters/csharp/EvidenceCSharpSyntax.d.ts +25 -0
- package/lib/adapters/csharp/EvidenceCSharpSyntax.js +176 -0
- package/lib/adapters/csharp/EvidenceCSharpTypeKind.d.ts +8 -0
- package/lib/adapters/csharp/IEvidenceCSharpDeclaration.d.ts +91 -0
- package/lib/adapters/csharp/IEvidenceCSharpDeclarationAddress.d.ts +29 -0
- package/lib/adapters/csharp/IEvidenceCSharpDeclarationGroup.d.ts +24 -0
- package/lib/adapters/csharp/IEvidenceCSharpDocumentation.d.ts +47 -0
- package/lib/adapters/csharp/IEvidenceCSharpDocumentationAttachment.d.ts +29 -0
- package/lib/adapters/csharp/IEvidenceCSharpFileAnalysis.d.ts +54 -0
- package/lib/adapters/csharp/IEvidenceCSharpTypeContext.d.ts +44 -0
- package/lib/adapters/dart/EvidenceDartAdapter.d.ts +100 -11
- package/lib/adapters/dart/EvidenceDartAdapter.js +638 -11
- package/lib/adapters/dart/EvidenceDartDocumentation.d.ts +18 -0
- package/lib/adapters/dart/EvidenceDartDocumentation.js +75 -0
- package/lib/adapters/dart/EvidenceDartFileScanner.d.ts +127 -0
- package/lib/adapters/dart/EvidenceDartFileScanner.js +430 -0
- package/lib/adapters/dart/EvidenceDartLibraries.d.ts +29 -0
- package/lib/adapters/dart/EvidenceDartLibraries.js +235 -0
- package/lib/adapters/dart/IEvidenceDartDeclaration.d.ts +86 -0
- package/lib/adapters/dart/IEvidenceDartDirective.d.ts +56 -0
- package/lib/adapters/dart/IEvidenceDartDocumentation.d.ts +41 -0
- package/lib/adapters/dart/IEvidenceDartDocumentationAttachment.d.ts +24 -0
- package/lib/adapters/dart/IEvidenceDartExportFilter.d.ts +23 -0
- package/lib/adapters/dart/IEvidenceDartFileAnalysis.d.ts +70 -0
- package/lib/adapters/dbml/EvidenceDbmlAdapter.d.ts +43 -25
- package/lib/adapters/dbml/EvidenceDbmlAdapter.js +93 -51
- package/lib/adapters/dbml/EvidenceDbmlDocumentation.d.ts +19 -0
- package/lib/adapters/dbml/EvidenceDbmlDocumentation.js +53 -0
- package/lib/adapters/dbml/EvidenceDbmlFileScanner.d.ts +131 -0
- package/lib/adapters/dbml/EvidenceDbmlFileScanner.js +381 -0
- package/lib/adapters/dbml/IEvidenceDbmlDeclaration.d.ts +43 -0
- package/lib/adapters/dbml/IEvidenceDbmlDocumentation.d.ts +34 -0
- package/lib/adapters/dbml/IEvidenceDbmlEndpoint.d.ts +22 -0
- package/lib/adapters/dbml/IEvidenceDbmlEnum.d.ts +28 -0
- package/lib/adapters/dbml/IEvidenceDbmlFileAnalysis.d.ts +61 -0
- package/lib/adapters/dbml/IEvidenceDbmlRelation.d.ts +60 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptAdapter.d.ts +80 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptAdapter.js +573 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptExportKind.d.ts +8 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptExportResolver.d.ts +183 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptExportResolver.js +518 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptFileScanner.d.ts +120 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptFileScanner.js +1047 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptModuleMode.d.ts +7 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptModuleResolver.d.ts +76 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptModuleResolver.js +218 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptSyntax.d.ts +25 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptSyntax.js +264 -0
- package/lib/adapters/ecmascript/EvidenceEcmaScriptType.d.ts +7 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptBinding.d.ts +30 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptComment.d.ts +42 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptCommentAttachment.d.ts +35 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptExport.d.ts +52 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptFileAnalysis.d.ts +77 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptHostPosition.d.ts +34 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptImport.d.ts +44 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptModule.d.ts +55 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptModuleResolution.d.ts +40 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptOwnedUnit.d.ts +45 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptResolution.d.ts +31 -0
- package/lib/adapters/ecmascript/IEvidenceEcmaScriptStatementContext.d.ts +59 -0
- package/lib/adapters/ecmascript/IEvidenceJavaScriptPackageJson.d.ts +18 -0
- package/lib/adapters/go/EvidenceGoAdapter.d.ts +41 -10
- package/lib/adapters/go/EvidenceGoAdapter.js +526 -10
- package/lib/adapters/go/EvidenceGoDeclarationForm.d.ts +8 -0
- package/lib/adapters/go/EvidenceGoFileScanner.d.ts +61 -0
- package/lib/adapters/go/EvidenceGoFileScanner.js +294 -0
- package/lib/adapters/go/EvidenceGoPackageResolver.d.ts +162 -0
- package/lib/adapters/go/EvidenceGoPackageResolver.js +318 -0
- package/lib/adapters/go/EvidenceGoSyntax.d.ts +18 -0
- package/lib/adapters/go/EvidenceGoSyntax.js +108 -0
- package/lib/adapters/go/IEvidenceGoDeclaration.d.ts +58 -0
- package/lib/adapters/go/IEvidenceGoDocumentation.d.ts +37 -0
- package/lib/adapters/go/IEvidenceGoDocumentationAttachment.d.ts +21 -0
- package/lib/adapters/go/IEvidenceGoFileAnalysis.d.ts +61 -0
- package/lib/adapters/go/IEvidenceGoMaterializedDeclaration.d.ts +28 -0
- package/lib/adapters/index.d.ts +35 -0
- package/lib/adapters/index.js +51 -0
- package/lib/adapters/java/EvidenceJavaAdapter.d.ts +42 -10
- package/lib/adapters/java/EvidenceJavaAdapter.js +586 -10
- package/lib/adapters/java/EvidenceJavaDeclarationForm.d.ts +7 -0
- package/lib/adapters/java/EvidenceJavaDocumentation.d.ts +20 -0
- package/lib/adapters/java/EvidenceJavaDocumentation.js +83 -0
- package/lib/adapters/java/EvidenceJavaFileScanner.d.ts +53 -0
- package/lib/adapters/java/EvidenceJavaFileScanner.js +319 -0
- package/lib/adapters/java/EvidenceJavaSyntax.d.ts +19 -0
- package/lib/adapters/java/EvidenceJavaSyntax.js +101 -0
- package/lib/adapters/java/EvidenceJavaTypeKind.d.ts +7 -0
- package/lib/adapters/java/IEvidenceJavaDeclaration.d.ts +67 -0
- package/lib/adapters/java/IEvidenceJavaDocumentation.d.ts +37 -0
- package/lib/adapters/java/IEvidenceJavaDocumentationAttachment.d.ts +21 -0
- package/lib/adapters/java/IEvidenceJavaFileAnalysis.d.ts +43 -0
- package/lib/adapters/java/IEvidenceJavaTypeContext.d.ts +41 -0
- package/lib/adapters/javascript/EvidenceJavaScriptAdapter.d.ts +15 -7
- package/lib/adapters/javascript/EvidenceJavaScriptAdapter.js +18 -8
- package/lib/adapters/kotlin/EvidenceKotlinAdapter.d.ts +115 -11
- package/lib/adapters/kotlin/EvidenceKotlinAdapter.js +667 -11
- package/lib/adapters/kotlin/EvidenceKotlinDocumentation.d.ts +19 -0
- package/lib/adapters/kotlin/EvidenceKotlinDocumentation.js +80 -0
- package/lib/adapters/kotlin/EvidenceKotlinFileScanner.d.ts +170 -0
- package/lib/adapters/kotlin/EvidenceKotlinFileScanner.js +525 -0
- package/lib/adapters/kotlin/EvidenceKotlinReceivers.d.ts +19 -0
- package/lib/adapters/kotlin/EvidenceKotlinReceivers.js +110 -0
- package/lib/adapters/kotlin/IEvidenceKotlinDeclaration.d.ts +99 -0
- package/lib/adapters/kotlin/IEvidenceKotlinDocumentation.d.ts +39 -0
- package/lib/adapters/kotlin/IEvidenceKotlinDocumentationAttachment.d.ts +23 -0
- package/lib/adapters/kotlin/IEvidenceKotlinFileAnalysis.d.ts +47 -0
- package/lib/adapters/kotlin/IEvidenceKotlinResolvedType.d.ts +24 -0
- package/lib/adapters/kotlin/IEvidenceKotlinTypeReference.d.ts +48 -0
- package/lib/adapters/lua/EvidenceLuaAdapter.d.ts +120 -12
- package/lib/adapters/lua/EvidenceLuaAdapter.js +671 -12
- package/lib/adapters/lua/EvidenceLuaDocumentation.d.ts +20 -0
- package/lib/adapters/lua/EvidenceLuaDocumentation.js +83 -0
- package/lib/adapters/lua/EvidenceLuaFileScanner.d.ts +183 -0
- package/lib/adapters/lua/EvidenceLuaFileScanner.js +605 -0
- package/lib/adapters/lua/IEvidenceLuaDeclaration.d.ts +72 -0
- package/lib/adapters/lua/IEvidenceLuaDocumentation.d.ts +40 -0
- package/lib/adapters/lua/IEvidenceLuaDocumentationAttachment.d.ts +23 -0
- package/lib/adapters/lua/IEvidenceLuaFileAnalysis.d.ts +48 -0
- package/lib/adapters/lua/IEvidenceLuaValue.d.ts +41 -0
- package/lib/adapters/markdown/EvidenceMarkdownAdapter.d.ts +9 -9
- package/lib/adapters/markdown/EvidenceMarkdownAdapter.js +51 -27
- package/lib/adapters/markdown/EvidenceMarkdownScanner.d.ts +224 -0
- package/lib/adapters/markdown/EvidenceMarkdownScanner.js +718 -0
- package/lib/adapters/markdown/EvidenceMarkdownSyntax.d.ts +86 -0
- package/lib/adapters/markdown/EvidenceMarkdownSyntax.js +287 -0
- package/lib/adapters/markdown/EvidenceMarkdownTarget.d.ts +18 -0
- package/lib/adapters/markdown/EvidenceMarkdownTarget.js +39 -0
- package/lib/adapters/markdown/IEvidenceMarkdownComment.d.ts +33 -0
- package/lib/adapters/markdown/IEvidenceMarkdownFence.d.ts +26 -0
- package/lib/adapters/markdown/IEvidenceMarkdownHeading.d.ts +26 -0
- package/lib/adapters/matlab/EvidenceMatlabAdapter.d.ts +111 -11
- package/lib/adapters/matlab/EvidenceMatlabAdapter.js +650 -11
- package/lib/adapters/matlab/EvidenceMatlabDocumentation.d.ts +19 -0
- package/lib/adapters/matlab/EvidenceMatlabDocumentation.js +79 -0
- package/lib/adapters/matlab/EvidenceMatlabFileScanner.d.ts +131 -0
- package/lib/adapters/matlab/EvidenceMatlabFileScanner.js +467 -0
- package/lib/adapters/matlab/EvidenceMatlabOwnership.d.ts +19 -0
- package/lib/adapters/matlab/EvidenceMatlabOwnership.js +142 -0
- package/lib/adapters/matlab/IEvidenceMatlabDeclaration.d.ts +115 -0
- package/lib/adapters/matlab/IEvidenceMatlabDocumentation.d.ts +40 -0
- package/lib/adapters/matlab/IEvidenceMatlabDocumentationAttachment.d.ts +23 -0
- package/lib/adapters/matlab/IEvidenceMatlabFileAnalysis.d.ts +47 -0
- package/lib/adapters/mysql/EvidenceMysqlAdapter.d.ts +28 -9
- package/lib/adapters/mysql/EvidenceMysqlAdapter.js +34 -11
- package/lib/adapters/mysql/EvidenceMysqlDocumentation.d.ts +19 -0
- package/lib/adapters/mysql/EvidenceMysqlDocumentation.js +44 -0
- package/lib/adapters/mysql/EvidenceMysqlFileScanner.d.ts +18 -0
- package/lib/adapters/mysql/EvidenceMysqlFileScanner.js +82 -0
- package/lib/adapters/mysql/EvidenceMysqlIdentifier.d.ts +16 -0
- package/lib/adapters/mysql/EvidenceMysqlIdentifier.js +33 -0
- package/lib/adapters/mysql/EvidenceMysqlPolicy.d.ts +48 -0
- package/lib/adapters/mysql/EvidenceMysqlPolicy.js +188 -0
- package/lib/adapters/objc/EvidenceObjcAdapter.d.ts +106 -11
- package/lib/adapters/objc/EvidenceObjcAdapter.js +670 -11
- package/lib/adapters/objc/EvidenceObjcDeclarationForm.d.ts +8 -0
- package/lib/adapters/objc/EvidenceObjcDocumentation.d.ts +8 -0
- package/lib/adapters/objc/EvidenceObjcDocumentation.js +11 -0
- package/lib/adapters/objc/EvidenceObjcFileScanner.d.ts +143 -0
- package/lib/adapters/objc/EvidenceObjcFileScanner.js +483 -0
- package/lib/adapters/objc/IEvidenceObjcDeclaration.d.ts +83 -0
- package/lib/adapters/objc/IEvidenceObjcDocumentation.d.ts +37 -0
- package/lib/adapters/objc/IEvidenceObjcDocumentationAttachment.d.ts +21 -0
- package/lib/adapters/objc/IEvidenceObjcFileAnalysis.d.ts +45 -0
- package/lib/adapters/php/EvidencePhpAdapter.d.ts +122 -11
- package/lib/adapters/php/EvidencePhpAdapter.js +702 -11
- package/lib/adapters/php/EvidencePhpDocumentation.d.ts +20 -0
- package/lib/adapters/php/EvidencePhpDocumentation.js +82 -0
- package/lib/adapters/php/EvidencePhpFileScanner.d.ts +92 -0
- package/lib/adapters/php/EvidencePhpFileScanner.js +361 -0
- package/lib/adapters/php/IEvidencePhpDeclaration.d.ts +74 -0
- package/lib/adapters/php/IEvidencePhpDocumentation.d.ts +39 -0
- package/lib/adapters/php/IEvidencePhpDocumentationAttachment.d.ts +22 -0
- package/lib/adapters/php/IEvidencePhpFileAnalysis.d.ts +50 -0
- package/lib/adapters/postgresql/EvidencePostgresqlAdapter.d.ts +20 -11
- package/lib/adapters/postgresql/EvidencePostgresqlAdapter.js +31 -21
- package/lib/adapters/postgresql/EvidencePostgresqlFileScanner.d.ts +124 -0
- package/lib/adapters/postgresql/EvidencePostgresqlFileScanner.js +460 -0
- package/lib/adapters/postgresql/EvidencePostgresqlFingerprint.d.ts +16 -0
- package/lib/adapters/postgresql/EvidencePostgresqlFingerprint.js +31 -0
- package/lib/adapters/postgresql/EvidencePostgresqlIdentity.d.ts +23 -0
- package/lib/adapters/postgresql/EvidencePostgresqlIdentity.js +44 -0
- package/lib/adapters/postgresql/EvidencePostgresqlOwnership.d.ts +16 -0
- package/lib/adapters/postgresql/EvidencePostgresqlOwnership.js +691 -0
- package/lib/adapters/postgresql/IEvidencePostgresqlFileAnalysis.d.ts +19 -0
- package/lib/adapters/postgresql/IEvidencePostgresqlReference.d.ts +27 -0
- package/lib/adapters/prisma/EvidencePrismaAdapter.d.ts +17 -14
- package/lib/adapters/prisma/EvidencePrismaAdapter.js +68 -42
- package/lib/adapters/prisma/EvidencePrismaCommentForm.d.ts +7 -0
- package/lib/adapters/prisma/EvidencePrismaFileScanner.d.ts +82 -0
- package/lib/adapters/prisma/EvidencePrismaFileScanner.js +379 -0
- package/lib/adapters/prisma/EvidencePrismaModelLoader.d.ts +13 -0
- package/lib/adapters/prisma/EvidencePrismaModelLoader.js +269 -0
- package/lib/adapters/prisma/EvidencePrismaSyntax.d.ts +9 -0
- package/lib/adapters/prisma/EvidencePrismaSyntax.js +27 -0
- package/lib/adapters/prisma/EvidencePrismaTarget.d.ts +11 -0
- package/lib/adapters/prisma/EvidencePrismaTarget.js +24 -0
- package/lib/adapters/prisma/IEvidencePrismaBlockHead.d.ts +22 -0
- package/lib/adapters/prisma/IEvidencePrismaCacheEntry.d.ts +25 -0
- package/lib/adapters/prisma/IEvidencePrismaCommentRun.d.ts +60 -0
- package/lib/adapters/prisma/IEvidencePrismaDatamodel.d.ts +17 -0
- package/lib/adapters/prisma/IEvidencePrismaDatamodelField.d.ts +29 -0
- package/lib/adapters/prisma/IEvidencePrismaDatamodelModel.d.ts +31 -0
- package/lib/adapters/prisma/IEvidencePrismaField.d.ts +40 -0
- package/lib/adapters/prisma/IEvidencePrismaFileAnalysis.d.ts +33 -0
- package/lib/adapters/prisma/IEvidencePrismaLineParts.d.ts +30 -0
- package/lib/adapters/prisma/IEvidencePrismaLoadResult.d.ts +24 -0
- package/lib/adapters/prisma/IEvidencePrismaLocatedDeclaration.d.ts +23 -0
- package/lib/adapters/prisma/IEvidencePrismaLocation.d.ts +23 -0
- package/lib/adapters/prisma/IEvidencePrismaModel.d.ts +38 -0
- package/lib/adapters/prisma/IEvidencePrismaOwnedUnit.d.ts +39 -0
- package/lib/adapters/prisma/IEvidencePrismaParser.d.ts +31 -0
- package/lib/adapters/prisma/IEvidencePrismaPendingComment.d.ts +61 -0
- package/lib/adapters/prisma/IEvidencePrismaSchemaFile.d.ts +24 -0
- package/lib/adapters/prisma/IEvidenceTrimmedMapping.d.ts +27 -0
- package/lib/adapters/python/EvidencePythonAdapter.d.ts +55 -11
- package/lib/adapters/python/EvidencePythonAdapter.js +550 -11
- package/lib/adapters/python/EvidencePythonAllState.d.ts +9 -0
- package/lib/adapters/python/EvidencePythonBindingKind.d.ts +8 -0
- package/lib/adapters/python/EvidencePythonExportResolver.d.ts +147 -0
- package/lib/adapters/python/EvidencePythonExportResolver.js +409 -0
- package/lib/adapters/python/EvidencePythonFileScanner.d.ts +443 -0
- package/lib/adapters/python/EvidencePythonFileScanner.js +1195 -0
- package/lib/adapters/python/EvidencePythonResolutionMode.d.ts +7 -0
- package/lib/adapters/python/EvidencePythonSyntax.d.ts +119 -0
- package/lib/adapters/python/EvidencePythonSyntax.js +304 -0
- package/lib/adapters/python/IEvidencePythonAll.d.ts +24 -0
- package/lib/adapters/python/IEvidencePythonBinding.d.ts +53 -0
- package/lib/adapters/python/IEvidencePythonClassContext.d.ts +36 -0
- package/lib/adapters/python/IEvidencePythonDocumentation.d.ts +47 -0
- package/lib/adapters/python/IEvidencePythonDocumentationAttachment.d.ts +31 -0
- package/lib/adapters/python/IEvidencePythonFileAnalysis.d.ts +68 -0
- package/lib/adapters/python/IEvidencePythonHostPosition.d.ts +35 -0
- package/lib/adapters/python/IEvidencePythonModule.d.ts +47 -0
- package/lib/adapters/python/IEvidencePythonOwnedUnit.d.ts +30 -0
- package/lib/adapters/python/IEvidencePythonResolution.d.ts +24 -0
- package/lib/adapters/python/IEvidencePythonResolvedBinding.d.ts +23 -0
- package/lib/adapters/ruby/EvidenceRubyAdapter.d.ts +50 -11
- package/lib/adapters/ruby/EvidenceRubyAdapter.js +744 -11
- package/lib/adapters/ruby/EvidenceRubyAttributeMode.d.ts +9 -0
- package/lib/adapters/ruby/EvidenceRubyContainerKind.d.ts +8 -0
- package/lib/adapters/ruby/EvidenceRubyDeclarationForm.d.ts +8 -0
- package/lib/adapters/ruby/EvidenceRubyFileScanner.d.ts +344 -0
- package/lib/adapters/ruby/EvidenceRubyFileScanner.js +1003 -0
- package/lib/adapters/ruby/EvidenceRubyMethodSide.d.ts +9 -0
- package/lib/adapters/ruby/EvidenceRubyScopeKind.d.ts +8 -0
- package/lib/adapters/ruby/EvidenceRubySyntax.d.ts +92 -0
- package/lib/adapters/ruby/EvidenceRubySyntax.js +213 -0
- package/lib/adapters/ruby/EvidenceRubyVisibility.d.ts +9 -0
- package/lib/adapters/ruby/IEvidenceRubyConstantPath.d.ts +21 -0
- package/lib/adapters/ruby/IEvidenceRubyDeclaration.d.ts +116 -0
- package/lib/adapters/ruby/IEvidenceRubyDocumentation.d.ts +46 -0
- package/lib/adapters/ruby/IEvidenceRubyDocumentationAttachment.d.ts +21 -0
- package/lib/adapters/ruby/IEvidenceRubyFileAnalysis.d.ts +45 -0
- package/lib/adapters/ruby/IEvidenceRubyScopeContext.d.ts +53 -0
- package/lib/adapters/rust/EvidenceRustAdapter.d.ts +42 -11
- package/lib/adapters/rust/EvidenceRustAdapter.js +522 -11
- package/lib/adapters/rust/EvidenceRustDeclarationForm.d.ts +8 -0
- package/lib/adapters/rust/EvidenceRustFileScanner.d.ts +63 -0
- package/lib/adapters/rust/EvidenceRustFileScanner.js +554 -0
- package/lib/adapters/rust/EvidenceRustModuleResolver.d.ts +71 -0
- package/lib/adapters/rust/EvidenceRustModuleResolver.js +717 -0
- package/lib/adapters/rust/EvidenceRustSyntax.d.ts +102 -0
- package/lib/adapters/rust/EvidenceRustSyntax.js +253 -0
- package/lib/adapters/rust/EvidenceRustVisibility.d.ts +9 -0
- package/lib/adapters/rust/IEvidenceRustDeclaration.d.ts +79 -0
- package/lib/adapters/rust/IEvidenceRustDocumentation.d.ts +44 -0
- package/lib/adapters/rust/IEvidenceRustDocumentationAttachment.d.ts +22 -0
- package/lib/adapters/rust/IEvidenceRustExportRecord.d.ts +29 -0
- package/lib/adapters/rust/IEvidenceRustExternalModule.d.ts +34 -0
- package/lib/adapters/rust/IEvidenceRustFileAnalysis.d.ts +67 -0
- package/lib/adapters/rust/IEvidenceRustFilePlacement.d.ts +37 -0
- package/lib/adapters/rust/IEvidenceRustImplementation.d.ts +40 -0
- package/lib/adapters/rust/IEvidenceRustLocatedDeclaration.d.ts +35 -0
- package/lib/adapters/rust/IEvidenceRustModuleRecord.d.ts +62 -0
- package/lib/adapters/rust/IEvidenceRustPublicOccurrence.d.ts +37 -0
- package/lib/adapters/rust/IEvidenceRustResolvedMember.d.ts +36 -0
- package/lib/adapters/rust/IEvidenceRustUse.d.ts +35 -0
- package/lib/adapters/rust/IEvidenceRustUseBinding.d.ts +26 -0
- package/lib/adapters/scala/EvidenceScalaAdapter.d.ts +114 -11
- package/lib/adapters/scala/EvidenceScalaAdapter.js +671 -11
- package/lib/adapters/scala/EvidenceScalaDocumentation.d.ts +19 -0
- package/lib/adapters/scala/EvidenceScalaDocumentation.js +97 -0
- package/lib/adapters/scala/EvidenceScalaExports.d.ts +19 -0
- package/lib/adapters/scala/EvidenceScalaExports.js +142 -0
- package/lib/adapters/scala/EvidenceScalaFileScanner.d.ts +135 -0
- package/lib/adapters/scala/EvidenceScalaFileScanner.js +458 -0
- package/lib/adapters/scala/IEvidenceScalaDeclaration.d.ts +89 -0
- package/lib/adapters/scala/IEvidenceScalaDocumentation.d.ts +37 -0
- package/lib/adapters/scala/IEvidenceScalaDocumentationAttachment.d.ts +22 -0
- package/lib/adapters/scala/IEvidenceScalaExport.d.ts +29 -0
- package/lib/adapters/scala/IEvidenceScalaFileAnalysis.d.ts +56 -0
- package/lib/adapters/sql/EvidenceSqlAdapter.d.ts +25 -6
- package/lib/adapters/sql/EvidenceSqlAdapter.js +31 -10
- package/lib/adapters/sql/EvidenceSqlDocumentation.d.ts +19 -0
- package/lib/adapters/sql/EvidenceSqlDocumentation.js +95 -0
- package/lib/adapters/sql/EvidenceSqlFileScanner.d.ts +100 -0
- package/lib/adapters/sql/EvidenceSqlFileScanner.js +313 -0
- package/lib/adapters/sql/EvidenceSqlInventoryMaterializer.d.ts +129 -0
- package/lib/adapters/sql/EvidenceSqlInventoryMaterializer.js +683 -0
- package/lib/adapters/sql/EvidenceSqlPolicy.d.ts +25 -0
- package/lib/adapters/sql/EvidenceSqlPolicy.js +116 -0
- package/lib/adapters/sql/IEvidenceSqlAdapterOptions.d.ts +38 -0
- package/lib/adapters/sql/IEvidenceSqlDeclaration.d.ts +78 -0
- package/lib/adapters/sql/IEvidenceSqlDocumentation.d.ts +46 -0
- package/lib/adapters/sql/IEvidenceSqlDocumentationAttachment.d.ts +21 -0
- package/lib/adapters/sql/IEvidenceSqlFileAnalysis.d.ts +47 -0
- package/lib/adapters/sql/IEvidenceSqlPolicy.d.ts +50 -0
- package/lib/adapters/sqlite/EvidenceSqliteAdapter.d.ts +22 -5
- package/lib/adapters/sqlite/EvidenceSqliteAdapter.js +28 -10
- package/lib/adapters/sqlite/EvidenceSqliteFileScanner.d.ts +96 -0
- package/lib/adapters/sqlite/EvidenceSqliteFileScanner.js +300 -0
- package/lib/adapters/sqlite/EvidenceSqliteSyntax.d.ts +32 -0
- package/lib/adapters/sqlite/EvidenceSqliteSyntax.js +55 -0
- package/lib/adapters/swagger/EvidenceSwaggerAdapter.d.ts +40 -17
- package/lib/adapters/swagger/EvidenceSwaggerAdapter.js +98 -50
- package/lib/adapters/swagger/EvidenceSwaggerDescription.d.ts +21 -0
- package/lib/adapters/swagger/EvidenceSwaggerDescription.js +66 -0
- package/lib/adapters/swagger/EvidenceSwaggerDocumentInput.d.ts +9 -0
- package/lib/adapters/swagger/EvidenceSwaggerDocumentLoader.d.ts +17 -0
- package/lib/adapters/swagger/EvidenceSwaggerDocumentLoader.js +7091 -0
- package/lib/adapters/swagger/EvidenceSwaggerRemoteReader.d.ts +45 -0
- package/lib/adapters/swagger/EvidenceSwaggerRemoteReader.js +153 -0
- package/lib/adapters/swagger/EvidenceSwaggerTarget.d.ts +16 -0
- package/lib/adapters/swagger/EvidenceSwaggerTarget.js +31 -0
- package/lib/adapters/swagger/EvidenceYamlScalarMapper.d.ts +11 -0
- package/lib/adapters/swagger/EvidenceYamlScalarMapper.js +76 -0
- package/lib/adapters/swagger/IEvidenceRemoteSwaggerSource.d.ts +22 -0
- package/lib/adapters/swagger/IEvidenceSwaggerCacheEntry.d.ts +21 -0
- package/lib/adapters/swagger/IEvidenceSwaggerLoadResult.d.ts +15 -0
- package/lib/adapters/swagger/IEvidenceSwaggerOperation.d.ts +48 -0
- package/lib/adapters/swagger/IEvidenceSwaggerOperationLocation.d.ts +22 -0
- package/lib/adapters/swagger/IEvidenceYamlScalarMapping.d.ts +38 -0
- package/lib/adapters/swift/EvidenceSwiftAdapter.d.ts +120 -11
- package/lib/adapters/swift/EvidenceSwiftAdapter.js +696 -11
- package/lib/adapters/swift/EvidenceSwiftDocumentation.d.ts +18 -0
- package/lib/adapters/swift/EvidenceSwiftDocumentation.js +77 -0
- package/lib/adapters/swift/EvidenceSwiftFileScanner.d.ts +100 -0
- package/lib/adapters/swift/EvidenceSwiftFileScanner.js +354 -0
- package/lib/adapters/swift/EvidenceSwiftOwnership.d.ts +20 -0
- package/lib/adapters/swift/EvidenceSwiftOwnership.js +150 -0
- package/lib/adapters/swift/IEvidenceSwiftDeclaration.d.ts +102 -0
- package/lib/adapters/swift/IEvidenceSwiftDocumentation.d.ts +37 -0
- package/lib/adapters/swift/IEvidenceSwiftDocumentationAttachment.d.ts +22 -0
- package/lib/adapters/swift/IEvidenceSwiftFileAnalysis.d.ts +47 -0
- package/lib/adapters/typescript/EvidenceTypeScriptAdapter.d.ts +25 -15
- package/lib/adapters/typescript/EvidenceTypeScriptAdapter.js +28 -16
- package/lib/adapters/zig/EvidenceZigAdapter.d.ts +120 -12
- package/lib/adapters/zig/EvidenceZigAdapter.js +670 -12
- package/lib/adapters/zig/EvidenceZigDocumentation.d.ts +20 -0
- package/lib/adapters/zig/EvidenceZigDocumentation.js +82 -0
- package/lib/adapters/zig/EvidenceZigFileScanner.d.ts +146 -0
- package/lib/adapters/zig/EvidenceZigFileScanner.js +559 -0
- package/lib/adapters/zig/IEvidenceZigDeclaration.d.ts +76 -0
- package/lib/adapters/zig/IEvidenceZigDocumentation.d.ts +38 -0
- package/lib/adapters/zig/IEvidenceZigDocumentationAttachment.d.ts +21 -0
- package/lib/adapters/zig/IEvidenceZigFileAnalysis.d.ts +51 -0
- package/lib/commands/EvidenceCommand.d.ts +36 -31
- package/lib/commands/EvidenceCommand.js +91 -76
- package/lib/commands/EvidenceCommandError.d.ts +3 -3
- package/lib/commands/EvidenceCommandError.js +3 -3
- package/lib/commands/EvidenceWatcher.d.ts +41 -29
- package/lib/commands/EvidenceWatcher.js +77 -59
- package/lib/commands/index.d.ts +10 -0
- package/lib/commands/index.js +26 -0
- package/lib/contexts/EvidenceQueryPopulationContext.d.ts +36 -20
- package/lib/contexts/EvidenceQueryPopulationContext.js +36 -20
- package/lib/contexts/IEvidenceCheckContext.d.ts +6 -4
- package/lib/contexts/IEvidenceClaimContext.d.ts +8 -5
- package/lib/contexts/IEvidenceGraphClaimContext.d.ts +10 -7
- package/lib/contexts/IEvidenceGraphReferenceContext.d.ts +17 -12
- package/lib/contexts/IEvidenceQueryContext.d.ts +4 -4
- package/lib/contexts/IEvidenceTagContext.d.ts +26 -19
- package/lib/graph/EvidenceFingerprint.d.ts +14 -12
- package/lib/graph/EvidenceFingerprint.js +14 -12
- package/lib/graph/EvidenceGraph.d.ts +18 -15
- package/lib/graph/EvidenceGraph.js +262 -209
- package/lib/graph/EvidenceInventory.d.ts +72 -52
- package/lib/graph/EvidenceInventory.js +238 -192
- package/lib/graph/EvidenceQuery.d.ts +32 -22
- package/lib/graph/EvidenceQuery.js +32 -22
- package/lib/graph/index.d.ts +10 -0
- package/lib/graph/index.js +26 -0
- package/lib/index.d.ts +10 -102
- package/lib/index.js +25 -145
- package/lib/internal/EvidenceAdapterFactory.d.ts +5 -3
- package/lib/internal/EvidenceAdapterFactory.js +0 -4
- package/lib/internal/EvidenceArtifactTypes.d.ts +8 -4
- package/lib/internal/EvidenceArtifactTypes.js +8 -4
- package/lib/internal/EvidenceCanonicalJson.d.ts +23 -0
- package/lib/internal/EvidenceCanonicalJson.js +75 -0
- package/lib/internal/EvidenceConfigDependencyScanner.d.ts +94 -0
- package/lib/internal/EvidenceConfigDependencyScanner.js +1585 -0
- package/lib/internal/EvidenceConfigFormat.d.ts +9 -4
- package/lib/internal/EvidenceConfigFormat.js +9 -4
- package/lib/internal/EvidenceConfigModuleMode.d.ts +8 -0
- package/lib/internal/EvidenceConfigPackageMainError.d.ts +17 -0
- package/lib/internal/EvidenceConfigPackageMainError.js +24 -0
- package/lib/internal/EvidenceConfigPackageTargetError.d.ts +17 -0
- package/lib/internal/EvidenceConfigPackageTargetError.js +24 -0
- package/lib/internal/EvidenceFileGlob.d.ts +33 -0
- package/lib/internal/EvidenceFileGlob.js +167 -0
- package/lib/internal/EvidenceFingerprintIndex.d.ts +88 -12
- package/lib/internal/EvidenceFingerprintIndex.js +208 -35
- package/lib/internal/EvidenceInventoryMerge.d.ts +60 -0
- package/lib/internal/EvidenceInventoryMerge.js +343 -0
- package/lib/internal/EvidenceInventorySources.d.ts +19 -0
- package/lib/internal/EvidenceInventorySources.js +81 -0
- package/lib/internal/EvidenceParserSlots.d.ts +87 -0
- package/lib/internal/EvidenceParserSlots.js +120 -0
- package/lib/internal/EvidenceSourceCollector.d.ts +70 -0
- package/lib/internal/EvidenceSourceCollector.js +331 -0
- package/lib/internal/EvidenceSourceFailure.d.ts +19 -0
- package/lib/internal/EvidenceSourceFailure.js +25 -0
- package/lib/internal/EvidenceSourcePath.d.ts +47 -0
- package/lib/internal/EvidenceSourcePath.js +97 -0
- package/lib/internal/EvidenceSourceText.d.ts +42 -0
- package/lib/internal/EvidenceSourceText.js +83 -0
- package/lib/internal/EvidenceTargetApplicability.d.ts +7 -3
- package/lib/internal/EvidenceTargetApplicability.js +44 -20
- package/lib/internal/EvidenceTargetBody.d.ts +4 -2
- package/lib/internal/EvidenceTargetBody.js +4 -2
- package/lib/internal/EvidenceTreeSitterAssetCache.d.ts +39 -0
- package/lib/internal/EvidenceTreeSitterAssetCache.js +459 -0
- package/lib/internal/EvidenceTreeSitterAssetScope.d.ts +26 -0
- package/lib/internal/EvidenceTreeSitterAssetScope.js +43 -0
- package/lib/internal/EvidenceTreeSitterAssets.d.ts +73 -0
- package/lib/internal/EvidenceTreeSitterAssets.js +373 -0
- package/lib/internal/EvidenceTreeSitterRange.d.ts +19 -0
- package/lib/internal/EvidenceTreeSitterRange.js +35 -0
- package/lib/internal/EvidenceTreeSitterRuntime.d.ts +19 -0
- package/lib/internal/EvidenceTreeSitterRuntime.js +59 -0
- package/lib/internal/EvidenceWatchDependencySet.d.ts +35 -0
- package/lib/internal/EvidenceWatchDependencySet.js +63 -0
- package/lib/internal/EvidenceWatchDependencySnapshot.d.ts +41 -0
- package/lib/internal/EvidenceWatchDependencySnapshot.js +197 -0
- package/lib/internal/IEvidenceConfigDataModule.d.ts +15 -0
- package/lib/internal/IEvidenceConfigDependencyScan.d.ts +27 -0
- package/lib/internal/IEvidenceConfigModuleSpecifier.d.ts +25 -0
- package/lib/internal/IEvidenceConfigPackageBoundary.d.ts +23 -0
- package/lib/internal/IEvidenceConfigPackageScope.d.ts +18 -0
- package/lib/internal/IEvidenceConfigResolutionManifest.d.ts +47 -0
- package/lib/internal/IEvidenceEvaluateTypeScriptConfigOptions.d.ts +16 -0
- package/lib/internal/IEvidenceFileGlobPattern.d.ts +25 -0
- package/lib/internal/IEvidenceMaterializedClaim.d.ts +10 -5
- package/lib/internal/IEvidenceMaterializedReference.d.ts +5 -3
- package/lib/internal/IEvidencePackageManifest.d.ts +17 -0
- package/lib/internal/IEvidencePendingEvidenceTag.d.ts +37 -0
- package/lib/internal/IEvidenceQueryPopulation.d.ts +13 -8
- package/lib/internal/IEvidenceResolvedReview.d.ts +8 -7
- package/lib/internal/IEvidenceTargetCandidate.d.ts +8 -5
- package/lib/internal/IEvidenceTreeSitterAssetLock.d.ts +25 -0
- package/lib/internal/IEvidenceTreeSitterAssetOptions.d.ts +56 -0
- package/lib/internal/IEvidenceTreeSitterAssetOptions.js +2 -0
- package/lib/internal/IEvidenceTreeSitterAssetPending.d.ts +31 -0
- package/lib/internal/IEvidenceTreeSitterAssetPending.js +2 -0
- package/lib/internal/IEvidenceTtsxExecutables.d.ts +16 -0
- package/lib/internal/IEvidenceTtsxExecutables.js +2 -0
- package/lib/internal/IEvidenceTtsxManifest.d.ts +19 -0
- package/lib/internal/IEvidenceTtsxManifest.js +2 -0
- package/lib/internal/IEvidenceUnhostedChecklist.d.ts +2 -1
- package/lib/internal/IEvidenceWatchAttempt.d.ts +8 -6
- package/lib/internal/createEvidenceConfigPlan.js +16 -7
- package/lib/internal/evaluateTypeScriptConfig.d.ts +4 -3
- package/lib/internal/evaluateTypeScriptConfig.js +39 -20
- package/lib/internal/index.d.ts +18 -0
- package/lib/internal/index.js +34 -0
- package/lib/internal/validateEvidenceConfig.d.ts +2 -1
- package/lib/internal/validateEvidenceConfig.js +27 -19
- package/lib/loaders/EvidenceConfigLoader.d.ts +13 -11
- package/lib/loaders/EvidenceConfigLoader.js +33 -22
- package/lib/loaders/EvidenceSourceLoader.d.ts +16 -14
- package/lib/loaders/EvidenceSourceLoader.js +21 -19
- package/lib/loaders/index.d.ts +8 -0
- package/lib/loaders/index.js +24 -0
- package/lib/parsers/EvidenceDocumentation.d.ts +8 -6
- package/lib/parsers/EvidenceDocumentation.js +10 -8
- package/lib/parsers/EvidenceDocumentationExamples.d.ts +55 -0
- package/lib/parsers/EvidenceDocumentationExamples.js +377 -0
- package/lib/parsers/EvidenceLanguageRegistry.d.ts +15 -11
- package/lib/parsers/EvidenceLanguageRegistry.js +15 -11
- package/lib/parsers/EvidenceParseSession.d.ts +31 -23
- package/lib/parsers/EvidenceParseSession.js +33 -25
- package/lib/parsers/EvidenceParser.d.ts +36 -26
- package/lib/parsers/EvidenceParser.js +46 -36
- package/lib/parsers/EvidenceParserError.d.ts +29 -20
- package/lib/parsers/EvidenceParserError.js +23 -16
- package/lib/parsers/EvidenceTagParser.d.ts +27 -19
- package/lib/parsers/EvidenceTagParser.js +29 -21
- package/lib/parsers/IEvidenceDocumentationFence.d.ts +27 -0
- package/lib/parsers/IEvidenceDocumentationFence.js +2 -0
- package/lib/parsers/index.d.ts +13 -0
- package/lib/parsers/index.js +28 -0
- package/lib/programmers/EvidenceCheckProgrammer.d.ts +11 -6
- package/lib/programmers/EvidenceCheckProgrammer.js +61 -48
- package/lib/programmers/EvidenceQueryProgrammer.d.ts +25 -18
- package/lib/programmers/EvidenceQueryProgrammer.js +130 -101
- package/lib/programmers/EvidenceTagProgrammer.d.ts +10 -6
- package/lib/programmers/EvidenceTagProgrammer.js +51 -43
- package/lib/reporters/EvidenceGraphReporter.d.ts +10 -9
- package/lib/reporters/EvidenceGraphReporter.js +18 -16
- package/lib/reporters/EvidenceQueryReporter.d.ts +5 -4
- package/lib/reporters/EvidenceQueryReporter.js +17 -14
- package/lib/reporters/EvidenceReporter.d.ts +4 -3
- package/lib/reporters/EvidenceReporter.js +8 -6
- package/lib/reporters/EvidenceWatchReporter.d.ts +6 -5
- package/lib/reporters/EvidenceWatchReporter.js +7 -6
- package/lib/reporters/index.d.ts +10 -0
- package/lib/reporters/index.js +26 -0
- package/lib/structures/IEvidenceAdapter.d.ts +16 -11
- package/lib/structures/IEvidenceAddress.d.ts +5 -4
- package/lib/structures/IEvidenceCheckAnalysis.d.ts +3 -2
- package/lib/structures/IEvidenceCheckClaim.d.ts +4 -2
- package/lib/structures/IEvidenceCheckCommand.d.ts +13 -7
- package/lib/structures/IEvidenceCheckCounts.d.ts +9 -5
- package/lib/structures/IEvidenceCheckObligation.d.ts +6 -3
- package/lib/structures/IEvidenceCheckReport.d.ts +5 -3
- package/lib/structures/IEvidenceClaimBase.d.ts +28 -22
- package/lib/structures/IEvidenceCommand.d.ts +2 -2
- package/lib/structures/IEvidenceCommandFailure.d.ts +6 -3
- package/lib/structures/IEvidenceCommandResult.d.ts +4 -4
- package/lib/structures/IEvidenceCommentSyntax.d.ts +10 -7
- package/lib/structures/IEvidenceConfig.d.ts +22 -14
- package/lib/structures/IEvidenceConfigPlan.d.ts +6 -4
- package/lib/structures/IEvidenceConfigPlanClaim.d.ts +6 -4
- package/lib/structures/IEvidenceConfigPlanReference.d.ts +11 -9
- package/lib/structures/IEvidenceDatabaseClaim.d.ts +4 -4
- package/lib/structures/IEvidenceDatabaseLanguage.d.ts +8 -5
- package/lib/structures/IEvidenceDatabaseLanguageAdapter.d.ts +9 -6
- package/lib/structures/IEvidenceDatabaseReference.d.ts +5 -4
- package/lib/structures/IEvidenceDeclaration.d.ts +14 -11
- package/lib/structures/IEvidenceDiagnostic.d.ts +10 -5
- package/lib/structures/IEvidenceDocumentation.d.ts +18 -12
- package/lib/structures/IEvidenceDocumentedConfig.d.ts +2 -2
- package/lib/structures/IEvidenceFingerprint.d.ts +6 -5
- package/lib/structures/IEvidenceGrammar.d.ts +13 -8
- package/lib/structures/IEvidenceGrammarAsset.d.ts +6 -5
- package/lib/structures/IEvidenceGraphBoundary.d.ts +17 -10
- package/lib/structures/IEvidenceGraphClaim.d.ts +11 -8
- package/lib/structures/IEvidenceGraphClaimResult.d.ts +2 -2
- package/lib/structures/IEvidenceGraphCommand.d.ts +12 -7
- package/lib/structures/IEvidenceGraphEdge.d.ts +8 -7
- package/lib/structures/IEvidenceGraphExportEdge.d.ts +20 -11
- package/lib/structures/IEvidenceGraphExportReview.d.ts +15 -10
- package/lib/structures/IEvidenceGraphHostCoverage.d.ts +5 -3
- package/lib/structures/IEvidenceGraphHostNode.d.ts +12 -7
- package/lib/structures/IEvidenceGraphInput.d.ts +11 -9
- package/lib/structures/IEvidenceGraphNode.d.ts +19 -12
- package/lib/structures/IEvidenceGraphObligation.d.ts +19 -16
- package/lib/structures/IEvidenceGraphReference.d.ts +15 -10
- package/lib/structures/IEvidenceGraphReport.d.ts +24 -15
- package/lib/structures/IEvidenceGraphResolution.d.ts +2 -1
- package/lib/structures/IEvidenceGraphResult.d.ts +9 -7
- package/lib/structures/IEvidenceGraphReviewResolution.d.ts +4 -3
- package/lib/structures/IEvidenceHelpCommand.d.ts +2 -1
- package/lib/structures/IEvidenceHost.d.ts +19 -12
- package/lib/structures/IEvidenceInitCommand.d.ts +9 -5
- package/lib/structures/IEvidenceInspectCommand.d.ts +7 -4
- package/lib/structures/IEvidenceInspectReport.d.ts +14 -9
- package/lib/structures/IEvidenceInspectedAcknowledgement.d.ts +14 -7
- package/lib/structures/IEvidenceInspectedObligation.d.ts +12 -7
- package/lib/structures/IEvidenceInspectedReview.d.ts +14 -8
- package/lib/structures/IEvidenceInspectedUnit.d.ts +14 -7
- package/lib/structures/IEvidenceInspection.d.ts +30 -17
- package/lib/structures/IEvidenceInventory.d.ts +26 -19
- package/lib/structures/IEvidenceLanguage.d.ts +8 -4
- package/lib/structures/IEvidenceLanguageAdapter.d.ts +9 -5
- package/lib/structures/IEvidenceLanguageCandidate.d.ts +22 -14
- package/lib/structures/IEvidenceLanguageGrammar.d.ts +5 -3
- package/lib/structures/IEvidenceLanguagesCommand.d.ts +6 -4
- package/lib/structures/IEvidenceLanguagesReport.d.ts +5 -4
- package/lib/structures/IEvidenceListCommand.d.ts +8 -4
- package/lib/structures/IEvidenceListItem.d.ts +17 -10
- package/lib/structures/IEvidenceListReport.d.ts +15 -9
- package/lib/structures/IEvidenceMarkdownClaim.d.ts +4 -4
- package/lib/structures/IEvidenceMarkdownReference.d.ts +7 -6
- package/lib/structures/IEvidenceParserInput.d.ts +6 -5
- package/lib/structures/IEvidenceParserOptions.d.ts +2 -1
- package/lib/structures/IEvidenceParserState.d.ts +8 -5
- package/lib/structures/IEvidencePopulation.d.ts +15 -11
- package/lib/structures/IEvidenceProgrammingClaim.d.ts +11 -10
- package/lib/structures/IEvidenceProgrammingReference.d.ts +4 -3
- package/lib/structures/IEvidencePublicAddress.d.ts +6 -5
- package/lib/structures/IEvidenceQueryScope.d.ts +5 -3
- package/lib/structures/IEvidenceReferenceBase.d.ts +24 -18
- package/lib/structures/IEvidenceResolution.d.ts +3 -2
- package/lib/structures/IEvidenceReview.d.ts +21 -16
- package/lib/structures/IEvidenceSourceAddress.d.ts +4 -4
- package/lib/structures/IEvidenceSourceDiagnostic.d.ts +7 -5
- package/lib/structures/IEvidenceSourceFile.d.ts +30 -8
- package/lib/structures/IEvidenceSourceFingerprintRoot.d.ts +22 -0
- package/lib/structures/IEvidenceSourceFingerprintRoot.js +2 -0
- package/lib/structures/IEvidenceSourceLocation.d.ts +2 -2
- package/lib/structures/IEvidenceSourcePosition.d.ts +5 -4
- package/lib/structures/IEvidenceSourceRange.d.ts +9 -5
- package/lib/structures/IEvidenceSourceRoot.d.ts +11 -8
- package/lib/structures/IEvidenceSourceSnapshot.d.ts +10 -7
- package/lib/structures/IEvidenceSupportedDatabaseLanguage.d.ts +7 -5
- package/lib/structures/IEvidenceSupportedLanguage.d.ts +4 -2
- package/lib/structures/IEvidenceSwaggerClaim.d.ts +3 -3
- package/lib/structures/IEvidenceSwaggerReference.d.ts +5 -4
- package/lib/structures/IEvidenceTagParseResult.d.ts +6 -4
- package/lib/structures/IEvidenceTargetResolution.d.ts +7 -7
- package/lib/structures/IEvidenceTargetStatement.d.ts +8 -6
- package/lib/structures/IEvidenceUnit.d.ts +25 -19
- package/lib/structures/IEvidenceUnitSite.d.ts +9 -6
- package/lib/structures/IEvidenceWatchCheckCycle.d.ts +15 -10
- package/lib/structures/IEvidenceWatchFailureCycle.d.ts +17 -11
- package/lib/structures/IEvidenceWatchOptions.d.ts +4 -4
- package/lib/structures/IEvidenceWithdrawal.d.ts +6 -5
- package/lib/structures/index.d.ts +1 -0
- package/lib/targets/EvidenceAccessor.d.ts +13 -10
- package/lib/targets/EvidenceAccessor.js +13 -10
- package/lib/targets/EvidenceFileTarget.d.ts +15 -11
- package/lib/targets/EvidenceFileTarget.js +21 -15
- package/lib/targets/EvidenceTargetResolver.d.ts +41 -33
- package/lib/targets/EvidenceTargetResolver.js +58 -50
- package/lib/targets/index.d.ts +9 -0
- package/lib/targets/index.js +25 -0
- package/lib/typings/EvidenceAcknowledgementKind.d.ts +4 -2
- package/lib/typings/EvidenceActiveSeverity.d.ts +2 -1
- package/lib/typings/EvidenceArtifactType.d.ts +2 -1
- package/lib/typings/EvidenceCheckStatus.d.ts +2 -1
- package/lib/typings/EvidenceCommandExitCode.d.ts +2 -1
- package/lib/typings/EvidenceDatabaseSymbol.d.ts +11 -9
- package/lib/typings/EvidenceDatabaseType.d.ts +2 -1
- package/lib/typings/EvidenceGrammarWasmAvailability.d.ts +3 -1
- package/lib/typings/EvidenceGraphFormat.d.ts +2 -1
- package/lib/typings/EvidenceGraphNode.d.ts +2 -1
- package/lib/typings/EvidenceLanguageCandidateId.d.ts +2 -1
- package/lib/typings/EvidenceLanguageCandidateKind.d.ts +6 -4
- package/lib/typings/EvidenceMarkdownSymbol.d.ts +3 -2
- package/lib/typings/EvidenceParserErrorCode.d.ts +2 -1
- package/lib/typings/EvidencePopulationRole.d.ts +4 -2
- package/lib/typings/EvidenceProgrammingSymbol.d.ts +22 -18
- package/lib/typings/EvidenceProgrammingType.d.ts +6 -4
- package/lib/typings/EvidenceQueryReport.d.ts +4 -2
- package/lib/typings/EvidenceReportFormat.d.ts +2 -1
- package/lib/typings/EvidenceSeverity.d.ts +4 -2
- package/lib/typings/EvidenceSymbol.d.ts +4 -3
- package/lib/typings/EvidenceTargetResolutionStatus.d.ts +2 -1
- package/lib/typings/EvidenceUnitSelection.d.ts +2 -1
- package/lib/typings/EvidenceWatchCycle.d.ts +2 -1
- package/lib/typings/EvidenceWatchPublisher.d.ts +2 -1
- package/package.json +1 -1
- package/lib/adapters/bigquery/BigQueryColumnType.d.ts +0 -14
- package/lib/adapters/bigquery/BigQueryColumnType.js +0 -34
- package/lib/adapters/bigquery/BigQueryFileScanner.d.ts +0 -97
- package/lib/adapters/bigquery/BigQueryFileScanner.js +0 -375
- package/lib/adapters/bigquery/BigQueryIdentifier.d.ts +0 -37
- package/lib/adapters/bigquery/BigQueryIdentifier.js +0 -88
- package/lib/adapters/bigquery/BigQueryString.d.ts +0 -14
- package/lib/adapters/bigquery/BigQueryString.js +0 -82
- package/lib/adapters/bigquery/BigQueryWithdrawals.d.ts +0 -14
- package/lib/adapters/bigquery/BigQueryWithdrawals.js +0 -70
- package/lib/adapters/c/CAdapter.d.ts +0 -48
- package/lib/adapters/c/CAdapter.js +0 -677
- package/lib/adapters/c/CDeclarationForm.d.ts +0 -8
- package/lib/adapters/c/CDeclaratorKind.d.ts +0 -8
- package/lib/adapters/c/CDocumentation.d.ts +0 -12
- package/lib/adapters/c/CDocumentation.js +0 -35
- package/lib/adapters/c/CFileScanner.d.ts +0 -64
- package/lib/adapters/c/CFileScanner.js +0 -505
- package/lib/adapters/c/CSyntax.d.ts +0 -24
- package/lib/adapters/c/CSyntax.js +0 -164
- package/lib/adapters/c/ICDeclaration.d.ts +0 -74
- package/lib/adapters/c/ICDeclarationAddress.d.ts +0 -28
- package/lib/adapters/c/ICDeclarationGroup.d.ts +0 -23
- package/lib/adapters/c/ICDeclaratorShape.d.ts +0 -30
- package/lib/adapters/c/ICDocumentation.d.ts +0 -36
- package/lib/adapters/c/ICDocumentationAttachment.d.ts +0 -21
- package/lib/adapters/c/ICFileAnalysis.d.ts +0 -44
- package/lib/adapters/c/ICTypeContext.d.ts +0 -21
- package/lib/adapters/cpp/CppAccess.d.ts +0 -7
- package/lib/adapters/cpp/CppAdapter.d.ts +0 -50
- package/lib/adapters/cpp/CppAdapter.js +0 -707
- package/lib/adapters/cpp/CppAliasKind.d.ts +0 -7
- package/lib/adapters/cpp/CppDeclarationForm.d.ts +0 -7
- package/lib/adapters/cpp/CppDeclaratorKind.d.ts +0 -7
- package/lib/adapters/cpp/CppDocumentation.d.ts +0 -12
- package/lib/adapters/cpp/CppDocumentation.js +0 -35
- package/lib/adapters/cpp/CppFileScanner.d.ts +0 -79
- package/lib/adapters/cpp/CppFileScanner.js +0 -792
- package/lib/adapters/cpp/CppScopeKind.d.ts +0 -7
- package/lib/adapters/cpp/CppSyntax.d.ts +0 -31
- package/lib/adapters/cpp/CppSyntax.js +0 -342
- package/lib/adapters/cpp/CppVisibility.d.ts +0 -7
- package/lib/adapters/cpp/ICppAlias.d.ts +0 -44
- package/lib/adapters/cpp/ICppDeclaration.d.ts +0 -55
- package/lib/adapters/cpp/ICppDeclarationGroup.d.ts +0 -25
- package/lib/adapters/cpp/ICppDeclaratorShape.d.ts +0 -42
- package/lib/adapters/cpp/ICppDocumentation.d.ts +0 -30
- package/lib/adapters/cpp/ICppDocumentationAttachment.d.ts +0 -16
- package/lib/adapters/cpp/ICppFileAnalysis.d.ts +0 -41
- package/lib/adapters/cpp/ICppQualifiedName.d.ts +0 -16
- package/lib/adapters/cpp/ICppResolvedAlias.d.ts +0 -24
- package/lib/adapters/cpp/ICppScopeContext.d.ts +0 -37
- package/lib/adapters/csharp/CSharpAccessibility.d.ts +0 -7
- package/lib/adapters/csharp/CSharpAdapter.d.ts +0 -47
- package/lib/adapters/csharp/CSharpAdapter.js +0 -687
- package/lib/adapters/csharp/CSharpDeclarationForm.d.ts +0 -7
- package/lib/adapters/csharp/CSharpDocumentation.d.ts +0 -12
- package/lib/adapters/csharp/CSharpDocumentation.js +0 -35
- package/lib/adapters/csharp/CSharpFileScanner.d.ts +0 -54
- package/lib/adapters/csharp/CSharpFileScanner.js +0 -403
- package/lib/adapters/csharp/CSharpSyntax.d.ts +0 -23
- package/lib/adapters/csharp/CSharpSyntax.js +0 -174
- package/lib/adapters/csharp/CSharpTypeKind.d.ts +0 -7
- package/lib/adapters/csharp/ICSharpDeclaration.d.ts +0 -63
- package/lib/adapters/csharp/ICSharpDeclarationAddress.d.ts +0 -22
- package/lib/adapters/csharp/ICSharpDeclarationGroup.d.ts +0 -19
- package/lib/adapters/csharp/ICSharpDocumentation.d.ts +0 -43
- package/lib/adapters/csharp/ICSharpDocumentationAttachment.d.ts +0 -25
- package/lib/adapters/csharp/ICSharpFileAnalysis.d.ts +0 -51
- package/lib/adapters/csharp/ICSharpTypeContext.d.ts +0 -41
- package/lib/adapters/dart/DartAdapter.d.ts +0 -96
- package/lib/adapters/dart/DartAdapter.js +0 -616
- package/lib/adapters/dart/DartDocumentation.d.ts +0 -16
- package/lib/adapters/dart/DartDocumentation.js +0 -73
- package/lib/adapters/dart/DartFileScanner.d.ts +0 -112
- package/lib/adapters/dart/DartFileScanner.js +0 -415
- package/lib/adapters/dart/DartLibraries.d.ts +0 -24
- package/lib/adapters/dart/DartLibraries.js +0 -228
- package/lib/adapters/dart/IDartDeclaration.d.ts +0 -69
- package/lib/adapters/dart/IDartDirective.d.ts +0 -53
- package/lib/adapters/dart/IDartDocumentation.d.ts +0 -31
- package/lib/adapters/dart/IDartDocumentationAttachment.d.ts +0 -23
- package/lib/adapters/dart/IDartExportFilter.d.ts +0 -22
- package/lib/adapters/dart/IDartFileAnalysis.d.ts +0 -55
- package/lib/adapters/dbml/DbmlDocumentation.d.ts +0 -15
- package/lib/adapters/dbml/DbmlDocumentation.js +0 -49
- package/lib/adapters/dbml/DbmlFileScanner.d.ts +0 -114
- package/lib/adapters/dbml/DbmlFileScanner.js +0 -364
- package/lib/adapters/dbml/IDbmlDeclaration.d.ts +0 -38
- package/lib/adapters/dbml/IDbmlDocumentation.d.ts +0 -34
- package/lib/adapters/dbml/IDbmlEndpoint.d.ts +0 -20
- package/lib/adapters/dbml/IDbmlEnum.d.ts +0 -27
- package/lib/adapters/dbml/IDbmlFileAnalysis.d.ts +0 -56
- package/lib/adapters/dbml/IDbmlRelation.d.ts +0 -56
- package/lib/adapters/ecmascript/EcmaScriptAdapter.d.ts +0 -71
- package/lib/adapters/ecmascript/EcmaScriptAdapter.js +0 -516
- package/lib/adapters/ecmascript/EcmaScriptExportKind.d.ts +0 -7
- package/lib/adapters/ecmascript/EcmaScriptExportResolver.d.ts +0 -175
- package/lib/adapters/ecmascript/EcmaScriptExportResolver.js +0 -510
- package/lib/adapters/ecmascript/EcmaScriptFileScanner.d.ts +0 -84
- package/lib/adapters/ecmascript/EcmaScriptFileScanner.js +0 -946
- package/lib/adapters/ecmascript/EcmaScriptModuleMode.d.ts +0 -7
- package/lib/adapters/ecmascript/EcmaScriptModuleResolver.d.ts +0 -70
- package/lib/adapters/ecmascript/EcmaScriptModuleResolver.js +0 -211
- package/lib/adapters/ecmascript/EcmaScriptSyntax.d.ts +0 -24
- package/lib/adapters/ecmascript/EcmaScriptSyntax.js +0 -263
- package/lib/adapters/ecmascript/EcmaScriptType.d.ts +0 -7
- package/lib/adapters/ecmascript/IEcmaScriptBinding.d.ts +0 -29
- package/lib/adapters/ecmascript/IEcmaScriptComment.d.ts +0 -39
- package/lib/adapters/ecmascript/IEcmaScriptCommentAttachment.d.ts +0 -24
- package/lib/adapters/ecmascript/IEcmaScriptExport.d.ts +0 -51
- package/lib/adapters/ecmascript/IEcmaScriptFileAnalysis.d.ts +0 -56
- package/lib/adapters/ecmascript/IEcmaScriptHostPosition.d.ts +0 -25
- package/lib/adapters/ecmascript/IEcmaScriptImport.d.ts +0 -44
- package/lib/adapters/ecmascript/IEcmaScriptModule.d.ts +0 -55
- package/lib/adapters/ecmascript/IEcmaScriptModuleResolution.d.ts +0 -40
- package/lib/adapters/ecmascript/IEcmaScriptOwnedUnit.d.ts +0 -45
- package/lib/adapters/ecmascript/IEcmaScriptResolution.d.ts +0 -31
- package/lib/adapters/ecmascript/IEcmaScriptStatementContext.d.ts +0 -58
- package/lib/adapters/ecmascript/IJavaScriptPackageJson.d.ts +0 -16
- package/lib/adapters/go/GoAdapter.d.ts +0 -43
- package/lib/adapters/go/GoAdapter.js +0 -509
- package/lib/adapters/go/GoDeclarationForm.d.ts +0 -7
- package/lib/adapters/go/GoFileScanner.d.ts +0 -57
- package/lib/adapters/go/GoFileScanner.js +0 -288
- package/lib/adapters/go/GoPackageResolver.d.ts +0 -147
- package/lib/adapters/go/GoPackageResolver.js +0 -306
- package/lib/adapters/go/GoSyntax.d.ts +0 -17
- package/lib/adapters/go/GoSyntax.js +0 -107
- package/lib/adapters/go/IGoDeclaration.d.ts +0 -53
- package/lib/adapters/go/IGoDocumentation.d.ts +0 -35
- package/lib/adapters/go/IGoDocumentationAttachment.d.ts +0 -20
- package/lib/adapters/go/IGoFileAnalysis.d.ts +0 -60
- package/lib/adapters/go/IGoMaterializedDeclaration.d.ts +0 -28
- package/lib/adapters/java/IJavaDeclaration.d.ts +0 -65
- package/lib/adapters/java/IJavaDocumentation.d.ts +0 -35
- package/lib/adapters/java/IJavaDocumentationAttachment.d.ts +0 -20
- package/lib/adapters/java/IJavaFileAnalysis.d.ts +0 -42
- package/lib/adapters/java/IJavaTypeContext.d.ts +0 -39
- package/lib/adapters/java/JavaAdapter.d.ts +0 -45
- package/lib/adapters/java/JavaAdapter.js +0 -572
- package/lib/adapters/java/JavaDeclarationForm.d.ts +0 -7
- package/lib/adapters/java/JavaDocumentation.d.ts +0 -12
- package/lib/adapters/java/JavaDocumentation.js +0 -52
- package/lib/adapters/java/JavaFileScanner.d.ts +0 -51
- package/lib/adapters/java/JavaFileScanner.js +0 -317
- package/lib/adapters/java/JavaSyntax.d.ts +0 -18
- package/lib/adapters/java/JavaSyntax.js +0 -100
- package/lib/adapters/java/JavaTypeKind.d.ts +0 -7
- package/lib/adapters/kotlin/IKotlinDeclaration.d.ts +0 -77
- package/lib/adapters/kotlin/IKotlinDocumentation.d.ts +0 -31
- package/lib/adapters/kotlin/IKotlinDocumentationAttachment.d.ts +0 -23
- package/lib/adapters/kotlin/IKotlinFileAnalysis.d.ts +0 -39
- package/lib/adapters/kotlin/IKotlinResolvedType.d.ts +0 -23
- package/lib/adapters/kotlin/IKotlinTypeReference.d.ts +0 -44
- package/lib/adapters/kotlin/KotlinAdapter.d.ts +0 -114
- package/lib/adapters/kotlin/KotlinAdapter.js +0 -649
- package/lib/adapters/kotlin/KotlinDocumentation.d.ts +0 -18
- package/lib/adapters/kotlin/KotlinDocumentation.js +0 -80
- package/lib/adapters/kotlin/KotlinFileScanner.d.ts +0 -153
- package/lib/adapters/kotlin/KotlinFileScanner.js +0 -508
- package/lib/adapters/kotlin/KotlinReceivers.d.ts +0 -16
- package/lib/adapters/kotlin/KotlinReceivers.js +0 -104
- package/lib/adapters/lua/ILuaDeclaration.d.ts +0 -54
- package/lib/adapters/lua/ILuaDocumentation.d.ts +0 -31
- package/lib/adapters/lua/ILuaDocumentationAttachment.d.ts +0 -23
- package/lib/adapters/lua/ILuaFileAnalysis.d.ts +0 -39
- package/lib/adapters/lua/ILuaValue.d.ts +0 -39
- package/lib/adapters/lua/LuaAdapter.d.ts +0 -114
- package/lib/adapters/lua/LuaAdapter.js +0 -647
- package/lib/adapters/lua/LuaDocumentation.d.ts +0 -19
- package/lib/adapters/lua/LuaDocumentation.js +0 -79
- package/lib/adapters/lua/LuaFileScanner.d.ts +0 -167
- package/lib/adapters/lua/LuaFileScanner.js +0 -585
- package/lib/adapters/markdown/EvidenceMarkdownRenderedEdge.d.ts +0 -7
- package/lib/adapters/markdown/IMarkdownComment.d.ts +0 -31
- package/lib/adapters/markdown/IMarkdownFence.d.ts +0 -25
- package/lib/adapters/markdown/IMarkdownHeading.d.ts +0 -25
- package/lib/adapters/markdown/MarkdownScanner.d.ts +0 -102
- package/lib/adapters/markdown/MarkdownScanner.js +0 -471
- package/lib/adapters/markdown/MarkdownSyntax.d.ts +0 -34
- package/lib/adapters/markdown/MarkdownSyntax.js +0 -234
- package/lib/adapters/markdown/MarkdownTarget.d.ts +0 -17
- package/lib/adapters/markdown/MarkdownTarget.js +0 -38
- package/lib/adapters/matlab/IMatlabDeclaration.d.ts +0 -103
- package/lib/adapters/matlab/IMatlabDocumentation.d.ts +0 -35
- package/lib/adapters/matlab/IMatlabDocumentationAttachment.d.ts +0 -20
- package/lib/adapters/matlab/IMatlabFileAnalysis.d.ts +0 -43
- package/lib/adapters/matlab/MatlabAdapter.d.ts +0 -104
- package/lib/adapters/matlab/MatlabAdapter.js +0 -625
- package/lib/adapters/matlab/MatlabDocumentation.d.ts +0 -18
- package/lib/adapters/matlab/MatlabDocumentation.js +0 -78
- package/lib/adapters/matlab/MatlabFileScanner.d.ts +0 -118
- package/lib/adapters/matlab/MatlabFileScanner.js +0 -454
- package/lib/adapters/matlab/MatlabOwnership.d.ts +0 -17
- package/lib/adapters/matlab/MatlabOwnership.js +0 -139
- package/lib/adapters/mysql/MysqlDocumentation.d.ts +0 -15
- package/lib/adapters/mysql/MysqlDocumentation.js +0 -40
- package/lib/adapters/mysql/MysqlFileScanner.d.ts +0 -16
- package/lib/adapters/mysql/MysqlFileScanner.js +0 -78
- package/lib/adapters/mysql/MysqlIdentifier.d.ts +0 -13
- package/lib/adapters/mysql/MysqlIdentifier.js +0 -30
- package/lib/adapters/mysql/MysqlPolicy.d.ts +0 -39
- package/lib/adapters/mysql/MysqlPolicy.js +0 -173
- package/lib/adapters/objc/IObjcDeclaration.d.ts +0 -79
- package/lib/adapters/objc/IObjcDocumentation.d.ts +0 -35
- package/lib/adapters/objc/IObjcDocumentationAttachment.d.ts +0 -20
- package/lib/adapters/objc/IObjcFileAnalysis.d.ts +0 -43
- package/lib/adapters/objc/ObjcAdapter.d.ts +0 -100
- package/lib/adapters/objc/ObjcAdapter.js +0 -646
- package/lib/adapters/objc/ObjcDeclarationForm.d.ts +0 -7
- package/lib/adapters/objc/ObjcDocumentation.d.ts +0 -8
- package/lib/adapters/objc/ObjcDocumentation.js +0 -11
- package/lib/adapters/objc/ObjcFileScanner.d.ts +0 -123
- package/lib/adapters/objc/ObjcFileScanner.js +0 -461
- package/lib/adapters/php/IPhpDeclaration.d.ts +0 -64
- package/lib/adapters/php/IPhpDocumentation.d.ts +0 -35
- package/lib/adapters/php/IPhpDocumentationAttachment.d.ts +0 -20
- package/lib/adapters/php/IPhpFileAnalysis.d.ts +0 -48
- package/lib/adapters/php/PhpAdapter.d.ts +0 -108
- package/lib/adapters/php/PhpAdapter.js +0 -670
- package/lib/adapters/php/PhpDocumentation.d.ts +0 -18
- package/lib/adapters/php/PhpDocumentation.js +0 -80
- package/lib/adapters/php/PhpFileScanner.d.ts +0 -79
- package/lib/adapters/php/PhpFileScanner.js +0 -346
- package/lib/adapters/postgresql/IPostgresqlFileAnalysis.d.ts +0 -16
- package/lib/adapters/postgresql/IPostgresqlReference.d.ts +0 -26
- package/lib/adapters/postgresql/PostgresqlFileScanner.d.ts +0 -103
- package/lib/adapters/postgresql/PostgresqlFileScanner.js +0 -431
- package/lib/adapters/postgresql/PostgresqlFingerprint.d.ts +0 -14
- package/lib/adapters/postgresql/PostgresqlFingerprint.js +0 -29
- package/lib/adapters/postgresql/PostgresqlIdentity.d.ts +0 -20
- package/lib/adapters/postgresql/PostgresqlIdentity.js +0 -41
- package/lib/adapters/postgresql/PostgresqlOwnership.d.ts +0 -14
- package/lib/adapters/postgresql/PostgresqlOwnership.js +0 -668
- package/lib/adapters/prisma/IPrismaBlockHead.d.ts +0 -21
- package/lib/adapters/prisma/IPrismaCacheEntry.d.ts +0 -22
- package/lib/adapters/prisma/IPrismaCommentRun.d.ts +0 -51
- package/lib/adapters/prisma/IPrismaDatamodel.d.ts +0 -15
- package/lib/adapters/prisma/IPrismaDatamodelField.d.ts +0 -26
- package/lib/adapters/prisma/IPrismaDatamodelModel.d.ts +0 -29
- package/lib/adapters/prisma/IPrismaField.d.ts +0 -36
- package/lib/adapters/prisma/IPrismaFileAnalysis.d.ts +0 -31
- package/lib/adapters/prisma/IPrismaLineParts.d.ts +0 -26
- package/lib/adapters/prisma/IPrismaLoadResult.d.ts +0 -22
- package/lib/adapters/prisma/IPrismaLocatedDeclaration.d.ts +0 -20
- package/lib/adapters/prisma/IPrismaLocation.d.ts +0 -22
- package/lib/adapters/prisma/IPrismaModel.d.ts +0 -36
- package/lib/adapters/prisma/IPrismaOwnedUnit.d.ts +0 -37
- package/lib/adapters/prisma/IPrismaParser.d.ts +0 -28
- package/lib/adapters/prisma/IPrismaPendingComment.d.ts +0 -52
- package/lib/adapters/prisma/IPrismaSchemaFile.d.ts +0 -22
- package/lib/adapters/prisma/ITrimmedMapping.d.ts +0 -23
- package/lib/adapters/prisma/PrismaCommentForm.d.ts +0 -7
- package/lib/adapters/prisma/PrismaFileScanner.d.ts +0 -70
- package/lib/adapters/prisma/PrismaFileScanner.js +0 -361
- package/lib/adapters/prisma/PrismaModelLoader.d.ts +0 -12
- package/lib/adapters/prisma/PrismaModelLoader.js +0 -268
- package/lib/adapters/prisma/PrismaSyntax.d.ts +0 -9
- package/lib/adapters/prisma/PrismaSyntax.js +0 -27
- package/lib/adapters/prisma/PrismaTarget.d.ts +0 -10
- package/lib/adapters/prisma/PrismaTarget.js +0 -23
- package/lib/adapters/python/IPythonAll.d.ts +0 -24
- package/lib/adapters/python/IPythonBinding.d.ts +0 -52
- package/lib/adapters/python/IPythonClassContext.d.ts +0 -36
- package/lib/adapters/python/IPythonDocumentation.d.ts +0 -47
- package/lib/adapters/python/IPythonDocumentationAttachment.d.ts +0 -31
- package/lib/adapters/python/IPythonFileAnalysis.d.ts +0 -63
- package/lib/adapters/python/IPythonHostPosition.d.ts +0 -33
- package/lib/adapters/python/IPythonModule.d.ts +0 -42
- package/lib/adapters/python/IPythonOwnedUnit.d.ts +0 -30
- package/lib/adapters/python/IPythonResolution.d.ts +0 -21
- package/lib/adapters/python/IPythonResolvedBinding.d.ts +0 -20
- package/lib/adapters/python/PythonAdapter.d.ts +0 -43
- package/lib/adapters/python/PythonAdapter.js +0 -488
- package/lib/adapters/python/PythonAllState.d.ts +0 -7
- package/lib/adapters/python/PythonBindingKind.d.ts +0 -7
- package/lib/adapters/python/PythonExportResolver.d.ts +0 -146
- package/lib/adapters/python/PythonExportResolver.js +0 -408
- package/lib/adapters/python/PythonFileScanner.d.ts +0 -367
- package/lib/adapters/python/PythonFileScanner.js +0 -1019
- package/lib/adapters/python/PythonResolutionMode.d.ts +0 -7
- package/lib/adapters/python/PythonSyntax.d.ts +0 -115
- package/lib/adapters/python/PythonSyntax.js +0 -298
- package/lib/adapters/ruby/IRubyConstantPath.d.ts +0 -20
- package/lib/adapters/ruby/IRubyDeclaration.d.ts +0 -105
- package/lib/adapters/ruby/IRubyDocumentation.d.ts +0 -42
- package/lib/adapters/ruby/IRubyDocumentationAttachment.d.ts +0 -20
- package/lib/adapters/ruby/IRubyFileAnalysis.d.ts +0 -42
- package/lib/adapters/ruby/IRubyScopeContext.d.ts +0 -48
- package/lib/adapters/ruby/RubyAdapter.d.ts +0 -50
- package/lib/adapters/ruby/RubyAdapter.js +0 -724
- package/lib/adapters/ruby/RubyAttributeMode.d.ts +0 -7
- package/lib/adapters/ruby/RubyContainerKind.d.ts +0 -7
- package/lib/adapters/ruby/RubyDeclarationForm.d.ts +0 -7
- package/lib/adapters/ruby/RubyFileScanner.d.ts +0 -332
- package/lib/adapters/ruby/RubyFileScanner.js +0 -990
- package/lib/adapters/ruby/RubyMethodSide.d.ts +0 -7
- package/lib/adapters/ruby/RubyScopeKind.d.ts +0 -7
- package/lib/adapters/ruby/RubySyntax.d.ts +0 -81
- package/lib/adapters/ruby/RubySyntax.js +0 -202
- package/lib/adapters/ruby/RubyVisibility.d.ts +0 -7
- package/lib/adapters/rust/IRustDeclaration.d.ts +0 -72
- package/lib/adapters/rust/IRustDocumentation.d.ts +0 -41
- package/lib/adapters/rust/IRustDocumentationAttachment.d.ts +0 -20
- package/lib/adapters/rust/IRustExportRecord.d.ts +0 -28
- package/lib/adapters/rust/IRustExternalModule.d.ts +0 -32
- package/lib/adapters/rust/IRustFileAnalysis.d.ts +0 -66
- package/lib/adapters/rust/IRustFilePlacement.d.ts +0 -35
- package/lib/adapters/rust/IRustImplementation.d.ts +0 -38
- package/lib/adapters/rust/IRustLocatedDeclaration.d.ts +0 -35
- package/lib/adapters/rust/IRustModuleRecord.d.ts +0 -62
- package/lib/adapters/rust/IRustPublicOccurrence.d.ts +0 -35
- package/lib/adapters/rust/IRustResolvedMember.d.ts +0 -34
- package/lib/adapters/rust/IRustUse.d.ts +0 -33
- package/lib/adapters/rust/IRustUseBinding.d.ts +0 -26
- package/lib/adapters/rust/RustAdapter.d.ts +0 -43
- package/lib/adapters/rust/RustAdapter.js +0 -503
- package/lib/adapters/rust/RustDeclarationForm.d.ts +0 -7
- package/lib/adapters/rust/RustFileScanner.d.ts +0 -61
- package/lib/adapters/rust/RustFileScanner.js +0 -550
- package/lib/adapters/rust/RustModuleResolver.d.ts +0 -70
- package/lib/adapters/rust/RustModuleResolver.js +0 -716
- package/lib/adapters/rust/RustSyntax.d.ts +0 -93
- package/lib/adapters/rust/RustSyntax.js +0 -244
- package/lib/adapters/rust/RustVisibility.d.ts +0 -7
- package/lib/adapters/scala/IScalaDeclaration.d.ts +0 -78
- package/lib/adapters/scala/IScalaDocumentation.d.ts +0 -35
- package/lib/adapters/scala/IScalaDocumentationAttachment.d.ts +0 -22
- package/lib/adapters/scala/IScalaExport.d.ts +0 -29
- package/lib/adapters/scala/IScalaFileAnalysis.d.ts +0 -50
- package/lib/adapters/scala/ScalaAdapter.d.ts +0 -100
- package/lib/adapters/scala/ScalaAdapter.js +0 -638
- package/lib/adapters/scala/ScalaDocumentation.d.ts +0 -16
- package/lib/adapters/scala/ScalaDocumentation.js +0 -77
- package/lib/adapters/scala/ScalaExports.d.ts +0 -16
- package/lib/adapters/scala/ScalaExports.js +0 -136
- package/lib/adapters/scala/ScalaFileScanner.d.ts +0 -111
- package/lib/adapters/scala/ScalaFileScanner.js +0 -434
- package/lib/adapters/sql/ISqlAdapterOptions.d.ts +0 -33
- package/lib/adapters/sql/ISqlDeclaration.d.ts +0 -67
- package/lib/adapters/sql/ISqlDocumentation.d.ts +0 -40
- package/lib/adapters/sql/ISqlDocumentationAttachment.d.ts +0 -18
- package/lib/adapters/sql/ISqlFileAnalysis.d.ts +0 -41
- package/lib/adapters/sql/ISqlPolicy.d.ts +0 -43
- package/lib/adapters/sql/SqlAdapter.d.ts +0 -123
- package/lib/adapters/sql/SqlAdapter.js +0 -658
- package/lib/adapters/sql/SqlDocumentation.d.ts +0 -16
- package/lib/adapters/sql/SqlDocumentation.js +0 -91
- package/lib/adapters/sql/SqlFileScanner.d.ts +0 -86
- package/lib/adapters/sql/SqlFileScanner.js +0 -299
- package/lib/adapters/sql/SqlPolicy.d.ts +0 -20
- package/lib/adapters/sql/SqlPolicy.js +0 -111
- package/lib/adapters/sqlite/SqliteFileScanner.d.ts +0 -83
- package/lib/adapters/sqlite/SqliteFileScanner.js +0 -285
- package/lib/adapters/sqlite/SqliteSyntax.d.ts +0 -26
- package/lib/adapters/sqlite/SqliteSyntax.js +0 -49
- package/lib/adapters/swagger/IRemoteSwaggerSource.d.ts +0 -19
- package/lib/adapters/swagger/ISwaggerCacheEntry.d.ts +0 -18
- package/lib/adapters/swagger/ISwaggerLoadResult.d.ts +0 -13
- package/lib/adapters/swagger/ISwaggerOperation.d.ts +0 -42
- package/lib/adapters/swagger/ISwaggerOperationLocation.d.ts +0 -21
- package/lib/adapters/swagger/IYamlScalarMapping.d.ts +0 -36
- package/lib/adapters/swagger/SwaggerDescription.d.ts +0 -18
- package/lib/adapters/swagger/SwaggerDescription.js +0 -62
- package/lib/adapters/swagger/SwaggerDocumentInput.d.ts +0 -8
- package/lib/adapters/swagger/SwaggerDocumentLoader.d.ts +0 -15
- package/lib/adapters/swagger/SwaggerDocumentLoader.js +0 -6962
- package/lib/adapters/swagger/SwaggerRemoteReader.d.ts +0 -26
- package/lib/adapters/swagger/SwaggerRemoteReader.js +0 -89
- package/lib/adapters/swagger/SwaggerTarget.d.ts +0 -14
- package/lib/adapters/swagger/SwaggerTarget.js +0 -29
- package/lib/adapters/swagger/YamlScalarMapper.d.ts +0 -11
- package/lib/adapters/swagger/YamlScalarMapper.js +0 -76
- package/lib/adapters/swift/ISwiftDeclaration.d.ts +0 -91
- package/lib/adapters/swift/ISwiftDocumentation.d.ts +0 -35
- package/lib/adapters/swift/ISwiftDocumentationAttachment.d.ts +0 -22
- package/lib/adapters/swift/ISwiftFileAnalysis.d.ts +0 -43
- package/lib/adapters/swift/SwiftAdapter.d.ts +0 -108
- package/lib/adapters/swift/SwiftAdapter.js +0 -666
- package/lib/adapters/swift/SwiftDocumentation.d.ts +0 -16
- package/lib/adapters/swift/SwiftDocumentation.js +0 -75
- package/lib/adapters/swift/SwiftFileScanner.d.ts +0 -87
- package/lib/adapters/swift/SwiftFileScanner.js +0 -341
- package/lib/adapters/swift/SwiftOwnership.d.ts +0 -16
- package/lib/adapters/swift/SwiftOwnership.js +0 -141
- package/lib/adapters/zig/IZigDeclaration.d.ts +0 -73
- package/lib/adapters/zig/IZigDocumentation.d.ts +0 -35
- package/lib/adapters/zig/IZigDocumentationAttachment.d.ts +0 -21
- package/lib/adapters/zig/IZigFileAnalysis.d.ts +0 -47
- package/lib/adapters/zig/ZigAdapter.d.ts +0 -114
- package/lib/adapters/zig/ZigAdapter.js +0 -647
- package/lib/adapters/zig/ZigDocumentation.d.ts +0 -18
- package/lib/adapters/zig/ZigDocumentation.js +0 -80
- package/lib/adapters/zig/ZigFileScanner.d.ts +0 -125
- package/lib/adapters/zig/ZigFileScanner.js +0 -538
- package/lib/internal/CanonicalJson.d.ts +0 -20
- package/lib/internal/CanonicalJson.js +0 -67
- package/lib/internal/ConfigDependencyScanner.d.ts +0 -40
- package/lib/internal/ConfigDependencyScanner.js +0 -330
- package/lib/internal/FileGlob.d.ts +0 -24
- package/lib/internal/FileGlob.js +0 -148
- package/lib/internal/IConfigDependencyScan.d.ts +0 -25
- package/lib/internal/IConfigPackageScope.d.ts +0 -16
- package/lib/internal/IEvaluateTypeScriptConfigOptions.d.ts +0 -16
- package/lib/internal/IFileGlobPattern.d.ts +0 -22
- package/lib/internal/IPackageManifest.d.ts +0 -16
- package/lib/internal/IPendingEvidenceTag.d.ts +0 -36
- package/lib/internal/ITreeSitterAssetLock.d.ts +0 -23
- package/lib/internal/ITreeSitterAssetOptions.d.ts +0 -51
- package/lib/internal/ITreeSitterAssetPending.d.ts +0 -29
- package/lib/internal/ITtsxExecutables.d.ts +0 -16
- package/lib/internal/ITtsxManifest.d.ts +0 -17
- package/lib/internal/InventoryMerge.d.ts +0 -53
- package/lib/internal/InventoryMerge.js +0 -317
- package/lib/internal/InventorySources.d.ts +0 -16
- package/lib/internal/InventorySources.js +0 -77
- package/lib/internal/ParserSlots.d.ts +0 -79
- package/lib/internal/ParserSlots.js +0 -113
- package/lib/internal/SourceCollector.d.ts +0 -62
- package/lib/internal/SourceCollector.js +0 -301
- package/lib/internal/SourceFailure.d.ts +0 -17
- package/lib/internal/SourceFailure.js +0 -23
- package/lib/internal/SourcePath.d.ts +0 -43
- package/lib/internal/SourcePath.js +0 -93
- package/lib/internal/SourceText.d.ts +0 -40
- package/lib/internal/SourceText.js +0 -81
- package/lib/internal/TreeSitterAssetCache.d.ts +0 -35
- package/lib/internal/TreeSitterAssetCache.js +0 -456
- package/lib/internal/TreeSitterAssetScope.d.ts +0 -23
- package/lib/internal/TreeSitterAssetScope.js +0 -40
- package/lib/internal/TreeSitterAssets.d.ts +0 -67
- package/lib/internal/TreeSitterAssets.js +0 -367
- package/lib/internal/TreeSitterRange.d.ts +0 -17
- package/lib/internal/TreeSitterRange.js +0 -33
- package/lib/internal/TreeSitterRuntime.d.ts +0 -17
- package/lib/internal/TreeSitterRuntime.js +0 -57
- package/lib/internal/WatchDependencySet.d.ts +0 -31
- package/lib/internal/WatchDependencySet.js +0 -59
- package/lib/internal/WatchDependencySnapshot.d.ts +0 -38
- package/lib/internal/WatchDependencySnapshot.js +0 -191
- /package/lib/adapters/c/{CDeclarationForm.js → EvidenceCDeclarationForm.js} +0 -0
- /package/lib/adapters/c/{CDeclaratorKind.js → EvidenceCDeclaratorKind.js} +0 -0
- /package/lib/adapters/c/{ICDeclaration.js → IEvidenceCDeclaration.js} +0 -0
- /package/lib/adapters/c/{ICDeclarationAddress.js → IEvidenceCDeclarationAddress.js} +0 -0
- /package/lib/adapters/c/{ICDeclarationGroup.js → IEvidenceCDeclarationGroup.js} +0 -0
- /package/lib/adapters/c/{ICDeclaratorShape.js → IEvidenceCDeclaratorShape.js} +0 -0
- /package/lib/adapters/c/{ICDocumentation.js → IEvidenceCDocumentation.js} +0 -0
- /package/lib/adapters/c/{ICDocumentationAttachment.js → IEvidenceCDocumentationAttachment.js} +0 -0
- /package/lib/adapters/c/{ICFileAnalysis.js → IEvidenceCFileAnalysis.js} +0 -0
- /package/lib/adapters/c/{ICTypeContext.js → IEvidenceCTypeContext.js} +0 -0
- /package/lib/adapters/cpp/{CppAccess.js → EvidenceCppAccess.js} +0 -0
- /package/lib/adapters/cpp/{CppAliasKind.js → EvidenceCppAliasKind.js} +0 -0
- /package/lib/adapters/cpp/{CppDeclarationForm.js → EvidenceCppDeclarationForm.js} +0 -0
- /package/lib/adapters/cpp/{CppDeclaratorKind.js → EvidenceCppDeclaratorKind.js} +0 -0
- /package/lib/adapters/cpp/{CppScopeKind.js → EvidenceCppScopeKind.js} +0 -0
- /package/lib/adapters/cpp/{CppVisibility.js → EvidenceCppVisibility.js} +0 -0
- /package/lib/adapters/cpp/{ICppAlias.js → IEvidenceCppAlias.js} +0 -0
- /package/lib/adapters/cpp/{ICppDeclaration.js → IEvidenceCppDeclaration.js} +0 -0
- /package/lib/adapters/cpp/{ICppDeclarationGroup.js → IEvidenceCppDeclarationGroup.js} +0 -0
- /package/lib/adapters/cpp/{ICppDeclaratorShape.js → IEvidenceCppDeclaratorShape.js} +0 -0
- /package/lib/adapters/cpp/{ICppDocumentation.js → IEvidenceCppDocumentation.js} +0 -0
- /package/lib/adapters/cpp/{ICppDocumentationAttachment.js → IEvidenceCppDocumentationAttachment.js} +0 -0
- /package/lib/adapters/cpp/{ICppFileAnalysis.js → IEvidenceCppFileAnalysis.js} +0 -0
- /package/lib/adapters/cpp/{ICppQualifiedName.js → IEvidenceCppQualifiedName.js} +0 -0
- /package/lib/adapters/cpp/{ICppResolvedAlias.js → IEvidenceCppResolvedAlias.js} +0 -0
- /package/lib/adapters/cpp/{ICppScopeContext.js → IEvidenceCppScopeContext.js} +0 -0
- /package/lib/adapters/csharp/{CSharpAccessibility.js → EvidenceCSharpAccessibility.js} +0 -0
- /package/lib/adapters/csharp/{CSharpDeclarationForm.js → EvidenceCSharpDeclarationForm.js} +0 -0
- /package/lib/adapters/csharp/{CSharpTypeKind.js → EvidenceCSharpTypeKind.js} +0 -0
- /package/lib/adapters/csharp/{ICSharpDeclaration.js → IEvidenceCSharpDeclaration.js} +0 -0
- /package/lib/adapters/csharp/{ICSharpDeclarationAddress.js → IEvidenceCSharpDeclarationAddress.js} +0 -0
- /package/lib/adapters/csharp/{ICSharpDeclarationGroup.js → IEvidenceCSharpDeclarationGroup.js} +0 -0
- /package/lib/adapters/csharp/{ICSharpDocumentation.js → IEvidenceCSharpDocumentation.js} +0 -0
- /package/lib/adapters/csharp/{ICSharpDocumentationAttachment.js → IEvidenceCSharpDocumentationAttachment.js} +0 -0
- /package/lib/adapters/csharp/{ICSharpFileAnalysis.js → IEvidenceCSharpFileAnalysis.js} +0 -0
- /package/lib/adapters/csharp/{ICSharpTypeContext.js → IEvidenceCSharpTypeContext.js} +0 -0
- /package/lib/adapters/dart/{IDartDeclaration.js → IEvidenceDartDeclaration.js} +0 -0
- /package/lib/adapters/dart/{IDartDirective.js → IEvidenceDartDirective.js} +0 -0
- /package/lib/adapters/dart/{IDartDocumentation.js → IEvidenceDartDocumentation.js} +0 -0
- /package/lib/adapters/dart/{IDartDocumentationAttachment.js → IEvidenceDartDocumentationAttachment.js} +0 -0
- /package/lib/adapters/dart/{IDartExportFilter.js → IEvidenceDartExportFilter.js} +0 -0
- /package/lib/adapters/dart/{IDartFileAnalysis.js → IEvidenceDartFileAnalysis.js} +0 -0
- /package/lib/adapters/dbml/{IDbmlDeclaration.js → IEvidenceDbmlDeclaration.js} +0 -0
- /package/lib/adapters/dbml/{IDbmlDocumentation.js → IEvidenceDbmlDocumentation.js} +0 -0
- /package/lib/adapters/dbml/{IDbmlEndpoint.js → IEvidenceDbmlEndpoint.js} +0 -0
- /package/lib/adapters/dbml/{IDbmlEnum.js → IEvidenceDbmlEnum.js} +0 -0
- /package/lib/adapters/dbml/{IDbmlFileAnalysis.js → IEvidenceDbmlFileAnalysis.js} +0 -0
- /package/lib/adapters/dbml/{IDbmlRelation.js → IEvidenceDbmlRelation.js} +0 -0
- /package/lib/adapters/ecmascript/{EcmaScriptExportKind.js → EvidenceEcmaScriptExportKind.js} +0 -0
- /package/lib/adapters/ecmascript/{EcmaScriptModuleMode.js → EvidenceEcmaScriptModuleMode.js} +0 -0
- /package/lib/adapters/ecmascript/{EcmaScriptType.js → EvidenceEcmaScriptType.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptBinding.js → IEvidenceEcmaScriptBinding.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptComment.js → IEvidenceEcmaScriptComment.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptCommentAttachment.js → IEvidenceEcmaScriptCommentAttachment.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptExport.js → IEvidenceEcmaScriptExport.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptFileAnalysis.js → IEvidenceEcmaScriptFileAnalysis.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptHostPosition.js → IEvidenceEcmaScriptHostPosition.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptImport.js → IEvidenceEcmaScriptImport.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptModule.js → IEvidenceEcmaScriptModule.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptModuleResolution.js → IEvidenceEcmaScriptModuleResolution.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptOwnedUnit.js → IEvidenceEcmaScriptOwnedUnit.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptResolution.js → IEvidenceEcmaScriptResolution.js} +0 -0
- /package/lib/adapters/ecmascript/{IEcmaScriptStatementContext.js → IEvidenceEcmaScriptStatementContext.js} +0 -0
- /package/lib/adapters/ecmascript/{IJavaScriptPackageJson.js → IEvidenceJavaScriptPackageJson.js} +0 -0
- /package/lib/adapters/go/{GoDeclarationForm.js → EvidenceGoDeclarationForm.js} +0 -0
- /package/lib/adapters/go/{IGoDeclaration.js → IEvidenceGoDeclaration.js} +0 -0
- /package/lib/adapters/go/{IGoDocumentation.js → IEvidenceGoDocumentation.js} +0 -0
- /package/lib/adapters/go/{IGoDocumentationAttachment.js → IEvidenceGoDocumentationAttachment.js} +0 -0
- /package/lib/adapters/go/{IGoFileAnalysis.js → IEvidenceGoFileAnalysis.js} +0 -0
- /package/lib/adapters/go/{IGoMaterializedDeclaration.js → IEvidenceGoMaterializedDeclaration.js} +0 -0
- /package/lib/adapters/java/{IJavaDeclaration.js → EvidenceJavaDeclarationForm.js} +0 -0
- /package/lib/adapters/java/{IJavaDocumentation.js → EvidenceJavaTypeKind.js} +0 -0
- /package/lib/adapters/java/{IJavaDocumentationAttachment.js → IEvidenceJavaDeclaration.js} +0 -0
- /package/lib/adapters/java/{IJavaFileAnalysis.js → IEvidenceJavaDocumentation.js} +0 -0
- /package/lib/adapters/java/{IJavaTypeContext.js → IEvidenceJavaDocumentationAttachment.js} +0 -0
- /package/lib/adapters/java/{JavaDeclarationForm.js → IEvidenceJavaFileAnalysis.js} +0 -0
- /package/lib/adapters/java/{JavaTypeKind.js → IEvidenceJavaTypeContext.js} +0 -0
- /package/lib/adapters/kotlin/{IKotlinDeclaration.js → IEvidenceKotlinDeclaration.js} +0 -0
- /package/lib/adapters/kotlin/{IKotlinDocumentation.js → IEvidenceKotlinDocumentation.js} +0 -0
- /package/lib/adapters/kotlin/{IKotlinDocumentationAttachment.js → IEvidenceKotlinDocumentationAttachment.js} +0 -0
- /package/lib/adapters/kotlin/{IKotlinFileAnalysis.js → IEvidenceKotlinFileAnalysis.js} +0 -0
- /package/lib/adapters/kotlin/{IKotlinResolvedType.js → IEvidenceKotlinResolvedType.js} +0 -0
- /package/lib/adapters/kotlin/{IKotlinTypeReference.js → IEvidenceKotlinTypeReference.js} +0 -0
- /package/lib/adapters/lua/{ILuaDeclaration.js → IEvidenceLuaDeclaration.js} +0 -0
- /package/lib/adapters/lua/{ILuaDocumentation.js → IEvidenceLuaDocumentation.js} +0 -0
- /package/lib/adapters/lua/{ILuaDocumentationAttachment.js → IEvidenceLuaDocumentationAttachment.js} +0 -0
- /package/lib/adapters/lua/{ILuaFileAnalysis.js → IEvidenceLuaFileAnalysis.js} +0 -0
- /package/lib/adapters/lua/{ILuaValue.js → IEvidenceLuaValue.js} +0 -0
- /package/lib/adapters/markdown/{EvidenceMarkdownRenderedEdge.js → IEvidenceMarkdownComment.js} +0 -0
- /package/lib/adapters/markdown/{IMarkdownComment.js → IEvidenceMarkdownFence.js} +0 -0
- /package/lib/adapters/markdown/{IMarkdownFence.js → IEvidenceMarkdownHeading.js} +0 -0
- /package/lib/adapters/{markdown/IMarkdownHeading.js → matlab/IEvidenceMatlabDeclaration.js} +0 -0
- /package/lib/adapters/matlab/{IMatlabDeclaration.js → IEvidenceMatlabDocumentation.js} +0 -0
- /package/lib/adapters/matlab/{IMatlabDocumentation.js → IEvidenceMatlabDocumentationAttachment.js} +0 -0
- /package/lib/adapters/matlab/{IMatlabDocumentationAttachment.js → IEvidenceMatlabFileAnalysis.js} +0 -0
- /package/lib/adapters/{matlab/IMatlabFileAnalysis.js → objc/EvidenceObjcDeclarationForm.js} +0 -0
- /package/lib/adapters/objc/{IObjcDeclaration.js → IEvidenceObjcDeclaration.js} +0 -0
- /package/lib/adapters/objc/{IObjcDocumentation.js → IEvidenceObjcDocumentation.js} +0 -0
- /package/lib/adapters/objc/{IObjcDocumentationAttachment.js → IEvidenceObjcDocumentationAttachment.js} +0 -0
- /package/lib/adapters/objc/{IObjcFileAnalysis.js → IEvidenceObjcFileAnalysis.js} +0 -0
- /package/lib/adapters/{objc/ObjcDeclarationForm.js → php/IEvidencePhpDeclaration.js} +0 -0
- /package/lib/adapters/php/{IPhpDeclaration.js → IEvidencePhpDocumentation.js} +0 -0
- /package/lib/adapters/php/{IPhpDocumentation.js → IEvidencePhpDocumentationAttachment.js} +0 -0
- /package/lib/adapters/php/{IPhpDocumentationAttachment.js → IEvidencePhpFileAnalysis.js} +0 -0
- /package/lib/adapters/{php/IPhpFileAnalysis.js → postgresql/IEvidencePostgresqlFileAnalysis.js} +0 -0
- /package/lib/adapters/postgresql/{IPostgresqlFileAnalysis.js → IEvidencePostgresqlReference.js} +0 -0
- /package/lib/adapters/{postgresql/IPostgresqlReference.js → prisma/EvidencePrismaCommentForm.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaBlockHead.js → IEvidencePrismaBlockHead.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaCacheEntry.js → IEvidencePrismaCacheEntry.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaCommentRun.js → IEvidencePrismaCommentRun.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaDatamodel.js → IEvidencePrismaDatamodel.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaDatamodelField.js → IEvidencePrismaDatamodelField.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaDatamodelModel.js → IEvidencePrismaDatamodelModel.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaField.js → IEvidencePrismaField.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaFileAnalysis.js → IEvidencePrismaFileAnalysis.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaLineParts.js → IEvidencePrismaLineParts.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaLoadResult.js → IEvidencePrismaLoadResult.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaLocatedDeclaration.js → IEvidencePrismaLocatedDeclaration.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaLocation.js → IEvidencePrismaLocation.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaModel.js → IEvidencePrismaModel.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaOwnedUnit.js → IEvidencePrismaOwnedUnit.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaParser.js → IEvidencePrismaParser.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaPendingComment.js → IEvidencePrismaPendingComment.js} +0 -0
- /package/lib/adapters/prisma/{IPrismaSchemaFile.js → IEvidencePrismaSchemaFile.js} +0 -0
- /package/lib/adapters/prisma/{ITrimmedMapping.js → IEvidenceTrimmedMapping.js} +0 -0
- /package/lib/adapters/{prisma/PrismaCommentForm.js → python/EvidencePythonAllState.js} +0 -0
- /package/lib/adapters/python/{IPythonAll.js → EvidencePythonBindingKind.js} +0 -0
- /package/lib/adapters/python/{IPythonBinding.js → EvidencePythonResolutionMode.js} +0 -0
- /package/lib/adapters/python/{IPythonClassContext.js → IEvidencePythonAll.js} +0 -0
- /package/lib/adapters/python/{IPythonDocumentation.js → IEvidencePythonBinding.js} +0 -0
- /package/lib/adapters/python/{IPythonDocumentationAttachment.js → IEvidencePythonClassContext.js} +0 -0
- /package/lib/adapters/python/{IPythonFileAnalysis.js → IEvidencePythonDocumentation.js} +0 -0
- /package/lib/adapters/python/{IPythonHostPosition.js → IEvidencePythonDocumentationAttachment.js} +0 -0
- /package/lib/adapters/python/{IPythonModule.js → IEvidencePythonFileAnalysis.js} +0 -0
- /package/lib/adapters/python/{IPythonOwnedUnit.js → IEvidencePythonHostPosition.js} +0 -0
- /package/lib/adapters/python/{IPythonResolution.js → IEvidencePythonModule.js} +0 -0
- /package/lib/adapters/python/{IPythonResolvedBinding.js → IEvidencePythonOwnedUnit.js} +0 -0
- /package/lib/adapters/python/{PythonAllState.js → IEvidencePythonResolution.js} +0 -0
- /package/lib/adapters/python/{PythonBindingKind.js → IEvidencePythonResolvedBinding.js} +0 -0
- /package/lib/adapters/{python/PythonResolutionMode.js → ruby/EvidenceRubyAttributeMode.js} +0 -0
- /package/lib/adapters/ruby/{IRubyConstantPath.js → EvidenceRubyContainerKind.js} +0 -0
- /package/lib/adapters/ruby/{IRubyDeclaration.js → EvidenceRubyDeclarationForm.js} +0 -0
- /package/lib/adapters/ruby/{IRubyDocumentation.js → EvidenceRubyMethodSide.js} +0 -0
- /package/lib/adapters/ruby/{IRubyDocumentationAttachment.js → EvidenceRubyScopeKind.js} +0 -0
- /package/lib/adapters/ruby/{IRubyFileAnalysis.js → EvidenceRubyVisibility.js} +0 -0
- /package/lib/adapters/ruby/{IRubyScopeContext.js → IEvidenceRubyConstantPath.js} +0 -0
- /package/lib/adapters/ruby/{RubyAttributeMode.js → IEvidenceRubyDeclaration.js} +0 -0
- /package/lib/adapters/ruby/{RubyContainerKind.js → IEvidenceRubyDocumentation.js} +0 -0
- /package/lib/adapters/ruby/{RubyDeclarationForm.js → IEvidenceRubyDocumentationAttachment.js} +0 -0
- /package/lib/adapters/ruby/{RubyMethodSide.js → IEvidenceRubyFileAnalysis.js} +0 -0
- /package/lib/adapters/ruby/{RubyScopeKind.js → IEvidenceRubyScopeContext.js} +0 -0
- /package/lib/adapters/{ruby/RubyVisibility.js → rust/EvidenceRustDeclarationForm.js} +0 -0
- /package/lib/adapters/rust/{IRustDeclaration.js → EvidenceRustVisibility.js} +0 -0
- /package/lib/adapters/rust/{IRustDocumentation.js → IEvidenceRustDeclaration.js} +0 -0
- /package/lib/adapters/rust/{IRustDocumentationAttachment.js → IEvidenceRustDocumentation.js} +0 -0
- /package/lib/adapters/rust/{IRustExportRecord.js → IEvidenceRustDocumentationAttachment.js} +0 -0
- /package/lib/adapters/rust/{IRustExternalModule.js → IEvidenceRustExportRecord.js} +0 -0
- /package/lib/adapters/rust/{IRustFileAnalysis.js → IEvidenceRustExternalModule.js} +0 -0
- /package/lib/adapters/rust/{IRustFilePlacement.js → IEvidenceRustFileAnalysis.js} +0 -0
- /package/lib/adapters/rust/{IRustImplementation.js → IEvidenceRustFilePlacement.js} +0 -0
- /package/lib/adapters/rust/{IRustLocatedDeclaration.js → IEvidenceRustImplementation.js} +0 -0
- /package/lib/adapters/rust/{IRustModuleRecord.js → IEvidenceRustLocatedDeclaration.js} +0 -0
- /package/lib/adapters/rust/{IRustPublicOccurrence.js → IEvidenceRustModuleRecord.js} +0 -0
- /package/lib/adapters/rust/{IRustResolvedMember.js → IEvidenceRustPublicOccurrence.js} +0 -0
- /package/lib/adapters/rust/{IRustUse.js → IEvidenceRustResolvedMember.js} +0 -0
- /package/lib/adapters/rust/{IRustUseBinding.js → IEvidenceRustUse.js} +0 -0
- /package/lib/adapters/rust/{RustDeclarationForm.js → IEvidenceRustUseBinding.js} +0 -0
- /package/lib/adapters/{rust/RustVisibility.js → scala/IEvidenceScalaDeclaration.js} +0 -0
- /package/lib/adapters/scala/{IScalaDeclaration.js → IEvidenceScalaDocumentation.js} +0 -0
- /package/lib/adapters/scala/{IScalaDocumentation.js → IEvidenceScalaDocumentationAttachment.js} +0 -0
- /package/lib/adapters/scala/{IScalaDocumentationAttachment.js → IEvidenceScalaExport.js} +0 -0
- /package/lib/adapters/scala/{IScalaExport.js → IEvidenceScalaFileAnalysis.js} +0 -0
- /package/lib/adapters/{scala/IScalaFileAnalysis.js → sql/IEvidenceSqlAdapterOptions.js} +0 -0
- /package/lib/adapters/sql/{ISqlAdapterOptions.js → IEvidenceSqlDeclaration.js} +0 -0
- /package/lib/adapters/sql/{ISqlDeclaration.js → IEvidenceSqlDocumentation.js} +0 -0
- /package/lib/adapters/sql/{ISqlDocumentation.js → IEvidenceSqlDocumentationAttachment.js} +0 -0
- /package/lib/adapters/sql/{ISqlDocumentationAttachment.js → IEvidenceSqlFileAnalysis.js} +0 -0
- /package/lib/adapters/sql/{ISqlFileAnalysis.js → IEvidenceSqlPolicy.js} +0 -0
- /package/lib/adapters/{sql/ISqlPolicy.js → swagger/EvidenceSwaggerDocumentInput.js} +0 -0
- /package/lib/adapters/swagger/{IRemoteSwaggerSource.js → IEvidenceRemoteSwaggerSource.js} +0 -0
- /package/lib/adapters/swagger/{ISwaggerCacheEntry.js → IEvidenceSwaggerCacheEntry.js} +0 -0
- /package/lib/adapters/swagger/{ISwaggerLoadResult.js → IEvidenceSwaggerLoadResult.js} +0 -0
- /package/lib/adapters/swagger/{ISwaggerOperation.js → IEvidenceSwaggerOperation.js} +0 -0
- /package/lib/adapters/swagger/{ISwaggerOperationLocation.js → IEvidenceSwaggerOperationLocation.js} +0 -0
- /package/lib/adapters/swagger/{IYamlScalarMapping.js → IEvidenceYamlScalarMapping.js} +0 -0
- /package/lib/adapters/{swagger/SwaggerDocumentInput.js → swift/IEvidenceSwiftDeclaration.js} +0 -0
- /package/lib/adapters/swift/{ISwiftDeclaration.js → IEvidenceSwiftDocumentation.js} +0 -0
- /package/lib/adapters/swift/{ISwiftDocumentation.js → IEvidenceSwiftDocumentationAttachment.js} +0 -0
- /package/lib/adapters/swift/{ISwiftDocumentationAttachment.js → IEvidenceSwiftFileAnalysis.js} +0 -0
- /package/lib/adapters/{swift/ISwiftFileAnalysis.js → zig/IEvidenceZigDeclaration.js} +0 -0
- /package/lib/adapters/zig/{IZigDeclaration.js → IEvidenceZigDocumentation.js} +0 -0
- /package/lib/adapters/zig/{IZigDocumentation.js → IEvidenceZigDocumentationAttachment.js} +0 -0
- /package/lib/adapters/zig/{IZigDocumentationAttachment.js → IEvidenceZigFileAnalysis.js} +0 -0
- /package/lib/{adapters/zig/IZigFileAnalysis.js → internal/EvidenceConfigModuleMode.js} +0 -0
- /package/lib/internal/{IConfigDependencyScan.js → IEvidenceConfigDataModule.js} +0 -0
- /package/lib/internal/{IConfigPackageScope.js → IEvidenceConfigDependencyScan.js} +0 -0
- /package/lib/internal/{IEvaluateTypeScriptConfigOptions.js → IEvidenceConfigModuleSpecifier.js} +0 -0
- /package/lib/internal/{IFileGlobPattern.js → IEvidenceConfigPackageBoundary.js} +0 -0
- /package/lib/internal/{IPackageManifest.js → IEvidenceConfigPackageScope.js} +0 -0
- /package/lib/internal/{IPendingEvidenceTag.js → IEvidenceConfigResolutionManifest.js} +0 -0
- /package/lib/internal/{ITreeSitterAssetLock.js → IEvidenceEvaluateTypeScriptConfigOptions.js} +0 -0
- /package/lib/internal/{ITreeSitterAssetOptions.js → IEvidenceFileGlobPattern.js} +0 -0
- /package/lib/internal/{ITreeSitterAssetPending.js → IEvidencePackageManifest.js} +0 -0
- /package/lib/internal/{ITtsxExecutables.js → IEvidencePendingEvidenceTag.js} +0 -0
- /package/lib/internal/{ITtsxManifest.js → IEvidenceTreeSitterAssetLock.js} +0 -0
package/README.md
CHANGED
|
@@ -1,516 +1,494 @@
|
|
|
1
|
-
#
|
|
1
|
+
# `@wrtnlabs/evidence`
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+

|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
[](https://github.com/wrtnlabs/evidence/blob/master/LICENSE) [](https://www.npmjs.com/package/@wrtnlabs/evidence) [](https://www.npmjs.com/package/@wrtnlabs/evidence) [](https://github.com/wrtnlabs/evidence/actions/workflows/build.yml) [](https://github.com/wrtnlabs/evidence/actions/workflows/test.yml)
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Every rule, requirement, schema, and API becomes an obligation the check enforces.
|
|
8
|
+
|
|
9
|
+
- **100% coverage** of every requirement.
|
|
10
|
+
- **100% compliance** with every principle.
|
|
11
|
+
- **20+ languages**, plus Markdown and Swagger.
|
|
12
|
+
|
|
13
|
+
Modern AI already writes code, documents, and fiction well. The remaining bottleneck is not creation but adherence: an agent can understand a specification, ignore one constraint, and still declare the work complete ([_The Compliance Gap_](https://arxiv.org/abs/2605.01771)).
|
|
14
|
+
|
|
15
|
+
Evidence makes the agent account for every instruction where the work is done, stating how the output satisfies it or why it does not apply. That single obligation turns compliance from a promise into a complete, reviewable graph.
|
|
16
|
+
|
|
17
|
+
```tsx
|
|
18
|
+
/**
|
|
19
|
+
* @evidence docs/discount.md#coupon-stacking States the per-issuer stacking limit this section defines, in the buyer's words.
|
|
20
|
+
* @evidence POST:/orders/{orderId}/coupons Explains the rejection this endpoint returns for an over-stacked coupon set.
|
|
21
|
+
* @evidence ../hooks/useCouponStacking.ts#useCouponStacking Renders the limit this hook resolves.
|
|
22
|
+
* @evidence .agents/skills/principles/SKILL.md#no-hard-coding Renders limits from props instead of branching on known issuer names.
|
|
23
|
+
* @evidenceExclude .agents/skills/principles/SKILL.md#fix-root-causes No failure path exists in a pure renderer.
|
|
24
|
+
*/
|
|
25
|
+
export function CouponStackingNotice(props: IProps): JSX.Element;
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
`@evidence <target> <reason>` says that the declaration covers the target and explains why. `@evidenceExclude <target> <reason>` records why the target does not apply.
|
|
29
|
+
|
|
30
|
+
Leave one obligation unanswered and the check stops:
|
|
8
31
|
|
|
9
32
|
```bash
|
|
10
|
-
|
|
33
|
+
$ npx evidence
|
|
34
|
+
Evidence check complete.
|
|
35
|
+
Coverage: 4/5 units covered, 1 missing.
|
|
36
|
+
|
|
37
|
+
Missing acknowledgement:
|
|
38
|
+
src/hooks/useCouponStacking.ts#useCouponStacking
|
|
11
39
|
```
|
|
12
40
|
|
|
13
|
-
|
|
41
|
+
The error list is the task list. The checker verifies that every required connection has an answer; reviewers judge whether each reason is true.
|
|
14
42
|
|
|
15
|
-
|
|
43
|
+
## 1. Spec-driven development
|
|
16
44
|
|
|
17
|
-
|
|
45
|
+
### 1.1. Getting started
|
|
18
46
|
|
|
19
|
-
|
|
20
|
-
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
47
|
+
```bash
|
|
48
|
+
npm install -D typescript ttsc @wrtnlabs/evidence
|
|
49
|
+
npx evidence init
|
|
50
|
+
npx evidence
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
`typescript` and [`ttsc`](https://github.com/samchon/ttsc) are peer dependencies. `ttsc` supplies `ttsx`, which evaluates `evidence.config.ts` without a project `tsconfig.json`. Grammars download on first use. Replace the generated configuration as shown next.
|
|
54
|
+
|
|
55
|
+
### 1.2. Start with principles
|
|
25
56
|
|
|
26
|
-
|
|
57
|
+
Start with the rules already written in `AGENTS.md`, `CLAUDE.md`, or a skill file:
|
|
58
|
+
|
|
59
|
+
```markdown
|
|
60
|
+
## No hard coding {#no-hard-coding}
|
|
61
|
+
## Fix causes, not symptoms {#fix-root-causes}
|
|
62
|
+
## Do not build it before you need it {#yagni}
|
|
63
|
+
```
|
|
27
64
|
|
|
28
|
-
|
|
65
|
+
Replace the starter `evidence.config.ts` with one claim:
|
|
29
66
|
|
|
30
67
|
```ts
|
|
31
68
|
import type { IEvidenceConfig } from "@wrtnlabs/evidence";
|
|
32
69
|
|
|
33
|
-
|
|
34
|
-
severity: "error",
|
|
70
|
+
export default {
|
|
35
71
|
claims: [
|
|
36
72
|
{
|
|
73
|
+
name: "every function answers every engineering principle",
|
|
37
74
|
type: "typescript",
|
|
38
|
-
files: ["src
|
|
75
|
+
files: ["src/**/*.ts"],
|
|
76
|
+
symbol: "function",
|
|
39
77
|
reference: {
|
|
40
78
|
type: "markdown",
|
|
41
|
-
files: ["
|
|
79
|
+
files: [".agents/skills/principles/SKILL.md"],
|
|
42
80
|
symbol: "h2",
|
|
43
|
-
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
type: "typescript",
|
|
47
|
-
files: ["test/**"],
|
|
48
|
-
symbol: "function",
|
|
49
|
-
reference: {
|
|
50
|
-
type: "typescript",
|
|
51
|
-
files: ["src/**"],
|
|
52
|
-
symbol: "function",
|
|
53
|
-
noEvidenceExclude: true,
|
|
81
|
+
checklist: true,
|
|
54
82
|
},
|
|
55
83
|
},
|
|
56
84
|
],
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
export default config;
|
|
85
|
+
} satisfies IEvidenceConfig;
|
|
60
86
|
```
|
|
61
87
|
|
|
62
|
-
A **claim** selects
|
|
88
|
+
A **claim** selects what must cite: every function under `src`. Its **reference** selects what must be cited: every H2 in the skill file. `checklist` makes every selected function answer every selected heading.
|
|
63
89
|
|
|
64
|
-
|
|
90
|
+
The first run turns every missing function-heading answer into an error. On an existing repository, that can be hundreds of errors: the real distance between the rule file and the code. Do not pay it down by hand. Put the loop in `AGENTS.md` so the agent works through the list:
|
|
65
91
|
|
|
66
|
-
|
|
92
|
+
```markdown
|
|
93
|
+
## Evidence
|
|
67
94
|
|
|
68
|
-
Run
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
95
|
+
Run `npx evidence` before finishing any task. Every error names an obligation and its repair.
|
|
96
|
+
Do the work first, then write the `@evidence` line on the declaration that supplies it, stating why in one sentence.
|
|
97
|
+
Never write a tag to silence an error. Never weaken `evidence.config.ts` to pass.
|
|
98
|
+
Use `npx evidence list` to find an address and `npx evidence inspect '<target>'` to see why one does not resolve.
|
|
72
99
|
```
|
|
73
100
|
|
|
74
|
-
|
|
101
|
+
The agent works through the list, fixing code wherever an honest answer cannot be written, and the check goes green:
|
|
75
102
|
|
|
76
103
|
```bash
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
pnpm exec evidence list --language typescript --kind function
|
|
81
|
-
pnpm exec evidence inspect 'src/calculator.ts#add' --format json
|
|
82
|
-
pnpm exec evidence graph --format mermaid --output reports/evidence.mmd
|
|
83
|
-
pnpm exec evidence languages
|
|
104
|
+
$ npx evidence
|
|
105
|
+
Evidence check complete.
|
|
106
|
+
Coverage: 3/3 units covered, 0 missing.
|
|
84
107
|
```
|
|
85
108
|
|
|
86
|
-
|
|
87
|
-
| --- | --- | --- |
|
|
88
|
-
| `-c, --config <path>` | check, list, inspect, graph, init | Select a config instead of `evidence.config.ts`. |
|
|
89
|
-
| `--cwd <path>` | check, list, inspect, graph, languages, init | Resolve CLI paths from another directory. Population roots still resolve from the config file. |
|
|
90
|
-
| `--format text\|json` | check, list, inspect, languages | Select human-readable or versioned machine output. |
|
|
91
|
-
| `--format json\|mermaid\|dot` | graph | Select the lossless graph report or a visual graph syntax. |
|
|
92
|
-
| `-o, --output <path>` | check, list, inspect, graph, languages | Write command output to an explicit path instead of stdout. |
|
|
93
|
-
| `--language <type>` | list | Keep only rows from one certified artifact type. |
|
|
94
|
-
| `--kind <symbol>` | list | Keep only rows with one common symbol kind. |
|
|
95
|
-
| `-h, --help` | all | Print help without loading a config or project. |
|
|
96
|
-
| `-v, --version` | root | Print the package version without loading a config or project. |
|
|
97
|
-
| `-w, --watch` | check | Run an initial check, then recheck after active dependencies change. |
|
|
98
|
-
|
|
99
|
-
The [CLI reference](https://github.com/wrtnlabs/evidence/blob/master/docs/cli.md) gives each command's accepted options, output contract, and failure status.
|
|
100
|
-
|
|
101
|
-
### Watch mode
|
|
102
|
-
|
|
103
|
-
Run `pnpm exec evidence check --watch` or use `-w` while authoring. The watcher publishes an initial cycle, polls active filesystem dependencies every 250 milliseconds, waits for a 100-millisecond quiet period after a change, and serializes complete reevaluations. Each published result comes from a fresh configuration load, source inventory, parse, and graph evaluation. If a dependency changes during that work or the new analysis discovers an additional dependency, the superseded result is discarded and reevaluated before publication.
|
|
104
|
-
|
|
105
|
-
The active set includes `evidence.config.ts`, its static runtime import/export chain, configured glob directories and matching files, module metadata and re-export inputs reported by adapters, exact Markdown, Prisma, and local Swagger inputs, and logical and physical link paths. Missing files and roots remain dependencies so their creation can repair a cycle. A failed config keeps the last active set plus every dependency found in the current config scan; it never reuses the old config value. Disabled claims, effective `off` claims, and `off` references create no artifact reads or watch inputs.
|
|
106
|
-
|
|
107
|
-
Configuration dependency discovery accepts static import/export specifiers and literal `import()` or `require()` calls. A computed runtime module specifier cannot be watched completely and produces a failed watch cycle until it is made static. Each local filesystem change also refetches enabled remote Swagger references during the fresh check. Remote URLs are not polled independently, so a remote-only change does not create a cycle.
|
|
108
|
-
|
|
109
|
-
Text output prints every cycle and keeps failures visible until another dependency change triggers recovery. JSON output is NDJSON: each line is one compact `schemaVersion: 1` object with `watch: true`, a sequential `cycle`, status, exit code, and either the complete check report or an operational failure. `--output` truncates its destination once when watch starts and appends each framed cycle. Cycle exit codes describe that result while the process stays alive; Ctrl+C requests cleanup and exits 0, and an output or watcher failure exits 2.
|
|
110
|
-
|
|
111
|
-
`EvidenceWatcher` exposes the same loop for embedding. Its optional `pollIntervalMilliseconds` and `debounceMilliseconds` settings change the two default intervals, `watch(callback)` awaits asynchronous publication, `dependencies()` returns the current active set, and `close()` requests shutdown. The watcher retains no syntax tree, inventory, graph, or fingerprint cache between cycles. Tree-sitter grammar modules remain immutable process-wide assets, while each analysis releases its bounded parsers, trees, and queries.
|
|
112
|
-
|
|
113
|
-
`evidence list` prints every selected unit and addressable aggregate ancestor in each configured claim/reference scope. Every row carries its stable semantic identity, canonical target, public aliases, symbol kind, and declaration locations. `--language` and `--kind` filter these rows after the complete graph has been evaluated, so they do not change any coverage denominator or check result.
|
|
114
|
-
|
|
115
|
-
`evidence inspect <target>` resolves the target with the same inventories and exact resolver used by checking. It reports ambiguity, withdrawal, or incomplete analysis instead of guessing; a resolved identity includes aliases, children, obligation state, incoming acknowledgements and exclusions, reviews, host provenance, and its current fingerprint. Code paths entered at the command line and printed by list are relative to `--cwd`. Paths inside source `@evidence` and review annotations remain relative to their own citing file.
|
|
116
|
-
|
|
117
|
-
`evidence graph` preserves each claim/reference obligation as an independent boundary. Its edges retain acknowledgement kind, while reviews remain separate relations. JSON is the authoritative lossless format. Mermaid and DOT use generated node identifiers and escape source-controlled labels so paths, quotes, line breaks, and graph operators remain label data.
|
|
118
|
-
|
|
119
|
-
`evidence languages` reads the shipped language registry without loading `evidence.config.ts`. It reports grammar file patterns, symbol coverage, public-surface and documentation policies, and unsupported capabilities for certified adapters. Grammar-only candidates are omitted.
|
|
120
|
-
|
|
121
|
-
Text and JSON contain the same deterministic findings and coverage counts. JSON reports use `schemaVersion: 1`, identify the config and original claim/reference indexes, and distinguish `complete`, `incomplete`, and operationally `failed` analysis. Config output and operational messages use stderr, so JSON stdout remains parseable. When `--output` is present, stdout stays empty; an unwritable destination is an explicit command failure.
|
|
109
|
+
Run the same command in CI; exit 1 means a violation, and exit 2 means incomplete analysis.
|
|
122
110
|
|
|
123
|
-
|
|
111
|
+
### 1.3. Ground code in requirements
|
|
124
112
|
|
|
125
|
-
|
|
113
|
+
Evidence links addresses across artifact types, so anything with an address can join the graph.
|
|
126
114
|
|
|
127
|
-
|
|
115
|
+
<picture>
|
|
116
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://ttsc.dev/evidence/documents-dark.svg">
|
|
117
|
+
<img alt="Idea notes grounding Requirements and Specifications, which ground Implementation and Test" src="https://ttsc.dev/evidence/documents-light.svg">
|
|
118
|
+
</picture>
|
|
128
119
|
|
|
129
|
-
|
|
120
|
+
Each arrow is one claim. Requirements cite idea notes, so a dropped idea is caught before code exists. Tests cite requirements and implementation, so an untested feature never passes.
|
|
130
121
|
|
|
131
|
-
|
|
122
|
+
Whichever layer a human reviews last is the source of truth. The agent writes everything below it.
|
|
132
123
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
For direct local source access, `EvidenceSourceLoader.glob(configFile, { root, files })` loads an enabled population, and `EvidenceSourceLoader.file(configFile, file, root)` loads one exact local path. Relative roots resolve from the configuration file's directory; file globs run left to right, including exclusions and later reinclusions. A bare directory selects no children; use `directory/**`.
|
|
136
|
-
|
|
137
|
-
Source snapshots retain UTF-8 contents, byte digests, physical file identities, every selected logical address, and filesystem dependencies for detecting changes. Directory links and hard links share physical files without losing their addresses. Always inspect `complete` and `diagnostics`: a healthy empty selection is complete, while an inaccessible root, cyclic link, or unreadable file makes the snapshot incomplete. Invalid root or glob syntax rejects the promise. Discovery retains all selected formats for adapter processing; filesystem completeness alone does not establish parser support or evidence coverage.
|
|
138
|
-
|
|
139
|
-
`EvidenceMarkdownAdapter.analyze(snapshot)` turns a Markdown snapshot into file and ATX H1-H4 units, public file/anchor addresses, section ownership, HTML-comment hosts, acknowledgements, and reviews. It retains discovery failures and reports whitespace paths, unresolved heading anchors, annotations below H5/H6, and tag lines rendered as prose. Fenced, indented, HTML `<pre>`, and MDX template examples do not produce annotations.
|
|
140
|
-
|
|
141
|
-
For direct syntax analysis, use `EvidenceParser.parse(input, callback)`. The callback receives a borrowed tree and query helpers; copy extracted values into ordinary data before it returns:
|
|
124
|
+
Two claims draw the bottom of the graph:
|
|
142
125
|
|
|
143
126
|
```ts
|
|
144
|
-
import {
|
|
127
|
+
import type { IEvidenceConfig } from "@wrtnlabs/evidence";
|
|
145
128
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
const names = await parser.parse(
|
|
129
|
+
export default {
|
|
130
|
+
claims: [
|
|
149
131
|
{
|
|
132
|
+
name: "implementation",
|
|
150
133
|
type: "typescript",
|
|
151
|
-
|
|
152
|
-
|
|
134
|
+
files: ["src/**/*.ts"],
|
|
135
|
+
symbol: "function",
|
|
136
|
+
reference: { type: "markdown", files: ["docs/requirements.md"], symbol: "h2" },
|
|
153
137
|
},
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
138
|
+
{
|
|
139
|
+
name: "tests",
|
|
140
|
+
type: "typescript",
|
|
141
|
+
files: ["test/**/*.ts"],
|
|
142
|
+
symbol: "function",
|
|
143
|
+
reference: {
|
|
144
|
+
type: "typescript",
|
|
145
|
+
files: ["src/**/*.ts"],
|
|
146
|
+
symbol: "function",
|
|
147
|
+
noEvidenceExclude: true,
|
|
148
|
+
},
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
} satisfies IEvidenceConfig;
|
|
163
152
|
```
|
|
164
153
|
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
A cold cache requires network access. Verified cached grammars work offline without network requests, and damaged entries are downloaded again automatically. The default cache is `%LOCALAPPDATA%/wrtnlabs/evidence/Cache` on Windows, `~/Library/Caches/wrtnlabs/evidence` on macOS, and `$XDG_CACHE_HOME/wrtnlabs/evidence` or `~/.cache/wrtnlabs/evidence` on Linux. Set `EVIDENCE_CACHE_DIR` to an absolute writable directory to override it; keep this directory outside selected source roots. Cache entries use `grammars-v1/<sha256>.wasm` and are verified on every read.
|
|
168
|
-
|
|
169
|
-
Concurrent callers share downloads, and cache files are published atomically. Transient failures receive up to three attempts with a 30-second deadline per attempt; permanent HTTP failures and checksum mismatches fail immediately. Preparation failures leave analysis incomplete with exit code 2. CLI preparation messages go to stderr and are suppressed with `--output`. Watch retries parser acquisition failures after five seconds even without a source edit; `parserRetryMilliseconds` changes that interval. Imports, configuration loading, help, version, init, and language metadata do not download source grammars. TypeScript configuration dependency scanning in watch also uses the pinned TypeScript grammar.
|
|
170
|
-
|
|
171
|
-
`EvidenceLanguageRegistry.list()` reports certified programming languages including TypeScript, JavaScript, Python, Go, Rust, Java, C#, C, C++, Ruby, Kotlin, Scala, Swift, MATLAB, PHP, Dart, Lua, Zig, and Objective-C. Syntax variants remain explicit: `.h` follows the configured `c`, `cpp`, or `objc` type, `.tsx` selects the TSX grammar within TypeScript, and JSX shares the JavaScript grammar. `select(type, file)` uses the configured language and case-sensitive logical file name. `parser.grammars()` reports pinned asset provenance without loading WASM; `parser.state()` exposes the instance's loaded grammar IDs and active/queued session counts. Grammar metadata alone does not establish public export resolution or graph coverage.
|
|
172
|
-
|
|
173
|
-
For adapter development, `IEvidenceAdapter.analyze(snapshot)` returns an ordinary `IEvidenceInventory`. `new EvidenceInventory(inventories)` combines adapter-established identities, checks declaration ownership and original source coordinates, and reconciles withdrawal across merged declarations. `select(ids)` returns an independent population with its structural ancestors and eligible hosts; `resolve({ file, segments }, ids)` looks up an exact public address inside that scope. Check `complete` and `diagnostics` before using a population. Reviews have a separate collection and never supply acknowledgements. New languages require adapter certification and a pinned downloadable grammar that parses real declarations through the shared runtime.
|
|
174
|
-
|
|
175
|
-
`EvidenceDocumentation.read()` maps a classified comment into its original source, and `EvidenceTagParser.parse()` reads acknowledgements, exclusions, reviews, and withdrawal markers from that mapped text. Adapters establish comment identity and attachment before invoking these helpers. `EvidenceAccessor.parse()` and `format()` preserve literal member segments such as `SomeClass["field.name"]`. See the [adapter inventory guide](https://github.com/wrtnlabs/evidence/blob/master/docs/development/adapter-inventories.md) for ownership, completeness, and documentation contracts.
|
|
176
|
-
|
|
177
|
-
## Artifacts and symbol selectors
|
|
178
|
-
|
|
179
|
-
| Artifact | Claim | Reference | Symbol selectors | Default claim / reference |
|
|
180
|
-
| --- | --- | --- | --- | --- |
|
|
181
|
-
| Programming | Yes | Yes | Supported `type`, `function`, `property` | All supported / `type`, or all supported when no types exist |
|
|
182
|
-
| Markdown | Yes | Yes | `file`, `h1`, `h2`, `h3`, `h4` | All / all |
|
|
183
|
-
| BigQuery | Yes | Yes | `model`, `column`, `relation` | All / `model` |
|
|
184
|
-
| Prisma | Yes | Yes | `model`, `column`, `relation` | All / `model` |
|
|
185
|
-
| DBML | Yes | Yes | `model`, `column`, `relation` | All / `model` |
|
|
186
|
-
| PostgreSQL | Yes | Yes | `model`, `column`, `relation` | All / `model` |
|
|
187
|
-
| Portable SQL | Yes | Yes | `model`, `column`, `relation` | All / `model` |
|
|
188
|
-
| SQLite | Yes | Yes | `model`, `column`, `relation` | All / `model` |
|
|
189
|
-
| MySQL | Yes | Yes | `model`, `column`, `relation` | All / `model` |
|
|
190
|
-
| Swagger / OpenAPI | Yes | Yes | `operation` | Every operation / every operation |
|
|
191
|
-
|
|
192
|
-
Every artifact family can cite every other family, including its own. Markdown can cite programming declarations or Swagger operations, and Swagger operations can cite Markdown, programming declarations, database schemas, or other operations.
|
|
193
|
-
|
|
194
|
-
A `symbol` accepts one selector or a nonempty array. Programming `type` symbols include classes, interfaces, type aliases, and namespaces. Database `model` symbols describe record structures, `column` symbols describe data fields, and `relation` symbols describe connections between models. A foreign-key value is a column; the declaration describing its connection is a relation.
|
|
195
|
-
|
|
196
|
-
Database schema typings share `IEvidenceDatabaseClaim` and `IEvidenceDatabaseReference`. Select the schema language rather than the database server: MongoDB models written in Prisma use `type: "prisma"`.
|
|
197
|
-
|
|
198
|
-
`EvidencePostgresqlAdapter` selects `.sql` files explicitly configured as `postgresql` and uses the pinned SQL grammar. Tables are `model` units; explicit columns are `column` units; each foreign key is one `relation` unit owned by its table. Other column and table constraints contribute to table content without creating additional units. `CREATE SCHEMA` supplies structural namespace context and does not add a model obligation. Tables and referenced tables must use explicit `schema.table` names: the checker does not evaluate `search_path` or assume a default schema. PostgreSQL identifiers fold unquoted ASCII letters to lowercase and preserve quoted case and literal dots. Use `schema.sql#app.item.id` or `schema.sql#app["Order.Item"]["Item.ID"]`; file aliases resolve the same schema identity. Anonymous relations use a literal segment containing both ordered endpoint lists, such as `["foreign key [\"owner_id\"] references [\"app\",\"owner\",\"id\"]"]`. Named additive foreign-key constraints use `["constraint owner_fk"]`.
|
|
199
|
-
|
|
200
|
-
PostgreSQL supports unconditional `ALTER TABLE ADD COLUMN` and named `ADD CONSTRAINT` against exactly one selected table declaration, including declarations in another selected file. Extension sites contribute to the same semantic table and its fingerprint. Adjacent `--` and block comments document declarations; ordinary string values remain inert. `COMMENT ON TABLE` and `COMMENT ON COLUMN` accept ordinary single-quoted strings and attach to exactly one selected declaration, retaining the original UTF-16 offsets through doubled apostrophes. Documentation fences remain examples, and `@internal`, `@hidden`, and `@ignore` withdraw the attached declaration and its descendants. Schema comments, unattached annotations, and unsupported comment targets cannot acknowledge selected units.
|
|
201
|
-
|
|
202
|
-
The PostgreSQL surface is a declared schema snapshot. Duplicate CREATE declarations, temporary or conditional tables, stateful settings, inherited or partitioned schemas, `LIKE`/`OF`/`AS` derivation, destructive ALTER operations, `COMMENT ... IS NULL`, and other unsupported statements produce incomplete analysis. Names longer than 63 UTF-8 bytes are rejected to avoid server-side truncation ambiguities. The pinned grammar rejects identifiers containing doubled double quotes. It also rejects named foreign keys inside CREATE TABLE; express named foreign keys with the supported ALTER TABLE ADD CONSTRAINT form. The grammar also rejects other valid syntax it does not recognize; those parser errors remain incomplete rather than silently removing units. No database engine, SQL migration, function body, or application code is executed.
|
|
203
|
-
|
|
204
|
-
BigQuery populations use `type: "bigquery"` with `.sql` or `.bqsql` files. The configured type selects the pinned GoogleSQL grammar independently of other SQL dialects. Explicit `CREATE TABLE` statements expose models, scalar and repeated fields expose columns, and declared foreign keys expose relations. Primary keys constrain column content and do not create relation units. Every key must use `NOT ENFORCED`; Evidence records the declared relationship without claiming that BigQuery enforces it. Temporary tables remain outside the public schema population.
|
|
205
|
-
|
|
206
|
-
BigQuery addresses are file-qualified declared paths, such as `schema.sql#project.dataset.orders.id`. A backtick pair around `project.dataset.orders` is split into project, dataset, and table segments; omitted qualifiers are never inferred from an ambient database connection. Table paths retain their declared case. Column and named constraint identities normalize case while addresses retain declared spelling. Quoted flexible field names containing whitespace use an escaped accessor segment, such as `schema.sql#dataset.orders["display name"]`. A nested `STRUCT` or `ARRAY<STRUCT<...>>` field has an address such as `schema.sql#dataset.orders.details.sku`; each field remains directly owned by its table model. Withdrawing a STRUCT field also withdraws its nested fields. An unnamed foreign key uses the segment `foreign key ` followed by JSON containing its ordered local columns, referenced table path, and ordered referenced columns. Reordering independent constraints preserves these identities. Duplicate table, column, or relation identities are incomplete analysis; declarations do not merge across files.
|
|
207
|
-
|
|
208
|
-
Leading adjacent `--`, `#`, and block comments and static `OPTIONS(description=...)` strings document the exact BigQuery table, field, or foreign-key declaration. Consecutive line comments form one documentation host. A blank line detaches a comment, and trailing source comments never document the following declaration; defaults, other option values, and fenced code examples cannot acknowledge evidence. Single, double, and triple quoted descriptions support raw strings, common escaped characters, and Unicode escapes with original UTF-16 source locations. An unsupported description expression or escape is incomplete analysis. Query-derived tables and views, external schemas, `LIKE`, `COPY`, `CLONE`, conditional or replacing table declarations, schema migrations, and other statements outside explicit table declarations are incomplete analysis. Evidence does not execute SQL or discover database state.
|
|
209
|
-
|
|
210
|
-
Prisma files selected for one population are parsed together with `@prisma/prisma-schema-wasm`, which ships with this package. Evidence first uses a parser version visible from the project root and falls back to its pinned copy, so consumers do not install a separate Prisma parser. Parser output decides whether a member is a column or relation; the source scanner only supplies locations and documentation attachment. Views are model units, while enums, composite types, indexes, generators, and datasources do not form units.
|
|
211
|
-
|
|
212
|
-
`EvidenceSqliteAdapter` parses explicitly configured `.sql` and `.sqlite` source with the pinned [SQLite Tree-sitter grammar](https://github.com/dhcmrlchtdj/tree-sitter-sqlite/tree/993be0a91c0c90b0cc7799e6ff65922390e2cefe). Each `CREATE TABLE` forms a `model`, each declared column forms a `column`, and each explicit inline or table foreign key forms a `relation` owned directly by its table. Generated columns, omitted column types, `WITHOUT ROWID`, `STRICT`, inline and composite constraints, and double-quoted, single-quoted, backtick, and bracket names are supported. These are source declarations; Evidence never runs SQLite, evaluates a query, or inspects PRAGMA results.
|
|
213
|
-
|
|
214
|
-
SQLite identities use ASCII-insensitive schema and declaration names across the selected files. An unqualified ordinary table belongs to `main`, a `TEMP` table belongs to `temp`, and an explicit schema qualifier remains part of identity. A duplicate selected declaration leaves analysis incomplete instead of choosing migration order. Public file-qualified addresses retain decoded source spelling: `schema.sql#Account.owner` or `schema.sql#main["Order.Items"]["id.part"]`. Unqualified declarations also expose `main.Account.owner` or `temp.Account.owner` aliases so same-name tables in different schemas remain addressable; their shared unqualified alias is ambiguous. Named foreign keys use a separate literal segment such as `Account["foreign key:owner_link"]`; anonymous keys use `foreign key:` followed by the JSON local-column array, `->`, and a JSON array containing the referenced table and explicit target columns. An omitted target-column list denotes the referenced primary key without inventing endpoint columns.
|
|
215
|
-
|
|
216
|
-
A consecutive leading SQLite `--` comment run or one adjacent leading `/* */` or `/** */` block carries evidence, exclusions, reviews, and withdrawals. Blank lines and trailing comments detach documentation; literal strings and fenced examples do not create acknowledgements. Every visible declaration remains an eligible host without documentation, and withdrawing a table withdraws its columns and foreign keys. Explicit qualified schemas can be inventoried without executing `ATTACH`. Virtual tables, views, triggers, `CREATE TABLE AS`, schema mutations, other executable statements, and parser errors leave analysis incomplete with a repair diagnostic. Select a declarative schema snapshot rather than migration scripts.
|
|
217
|
-
|
|
218
|
-
`EvidenceDbmlAdapter` analyzes explicitly configured `dbml` files using a pinned MIT-licensed upstream Tree-sitter grammar with an audited, reproducibly built syntax patch. Consumers download verified WASM automatically and install no parser or database tool. Tables are `model` units, all scalar fields remain `column` units, and each inline or standalone Ref adds a separate `relation` owned by one table. Enum declarations and index definitions add no selectable units; enum values contribute to schema fingerprints. Tables default to schema `public`, and names preserve case and quoted literal punctuation. Duplicate table, alias, column, enum or named relation identities, unresolved endpoints and mismatched composite endpoints make analysis incomplete.
|
|
219
|
-
|
|
220
|
-
DBML addresses are file-qualified: `schema.dbml#public.users.id` and `schema.dbml#users.id` address the same default-schema column. An explicit `Table core.users as U` also exposes `schema.dbml#U.id`. Quoted names stay literal segments, such as `schema.dbml#users["display.name"]`. Schema identities survive file moves, while file-qualified addresses follow their declarations. Named relations use a reserved literal `$ref:` segment: `schema.dbml#posts["$ref:owner"]` for `Ref owner: posts.user_id > users.id`. Anonymous relation segments begin with `$ref:` followed by the JSON tuple of resolved left table, ordered left columns, cardinality, right table and ordered right columns; use the query output to obtain the escaped accessor.
|
|
221
|
-
|
|
222
|
-
DBML supports inline, short and long Ref forms, schema-qualified and composite endpoints, and `>`, `<`, `-` and `<>` cardinalities. The owning table is the left endpoint for `>` and `<>`, the right endpoint for `<` and standalone `-`, and the declaring table for inline `-`. All endpoint tables and columns must be selected; newly selected files participate in watch invalidation. Relations do not replace their foreign-key columns. Table and column notes and adjacent standalone comments are annotation hosts; an inline relation shares its declaring column's documentation site. Enum/index/project notes, trailing comments, default strings and fenced examples cannot acknowledge evidence. Withdrawal annotations hide the documented unit and its descendants. Annotation-only edits preserve fingerprints; column types, defaults, enum values and relationship semantics affect them.
|
|
154
|
+
Every requirement must be cited by a function under `src`. Every function under `src` must be cited by a test, with no exclusions. Start with one requirement:
|
|
223
155
|
|
|
224
|
-
|
|
156
|
+
```md
|
|
157
|
+
## Exact addition {#exact-addition}
|
|
225
158
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
SQL regular ASCII identifiers use uppercase semantic and public spelling; standard double-quoted identifiers preserve their decoded contents, including literal dots and spaces. Qualified names are segmented, so `sales.account.id` and `"sales.account".id` stay distinct. The adapter does not assume a default schema. Table identities are independent of file names within one selected snapshot, and repeated declarations of a table or column are incomplete rather than merged. Each selected logical file address exposes that identity. An anonymous foreign key uses the literal final segment `foreign-key:["ID"]->["PARENT"](["ID"])`; use `EvidenceAccessor.format` to escape that segment in a file-qualified target. Named column constraints and named foreign-key constraints are outside the pinned portable grammar's accepted subset.
|
|
229
|
-
|
|
230
|
-
Leading standalone `--` runs and `/* */` or `/** */` comments immediately adjacent to a table, column, or foreign-key declaration carry SQL evidence. Blank-line-separated, trailing, and unattached tag-bearing comments are unsupported hosts; SQL strings and fenced, indented, or HTML code examples stay inert. Inline foreign keys share their column's physical host, while table-level foreign keys have their own host. Undocumented declarations remain selected. Attached `@internal`, `@hidden`, and `@ignore` withdraw a declaration and its owned descendants; accepted documentation ranges are excluded from review fingerprints.
|
|
231
|
-
|
|
232
|
-
Portable SQL never tries another dialect after a parse failure. `ALTER`, `DROP`, views, query-derived or conditional tables, temporary tables, generated columns, dialect data types/options, malformed syntax, unresolved local foreign-key columns, and mismatched composite endpoints leave the inventory incomplete with actionable diagnostics. Source is not executed and no database server, migration order, search path, or runtime schema is consulted. `EvidenceLanguageRegistry.databases()` lists independently certified database grammars; `evidence languages` reports both programming and database adapters.
|
|
233
|
-
|
|
234
|
-
`EvidenceMysqlAdapter` selects `.sql` files only when configured as `type: "mysql"`. It inventories explicit, unconditional `CREATE TABLE` statements: tables are `model`, their explicit columns are `column`, and table `FOREIGN KEY` declarations are `relation`. Primary keys, unique constraints, checks, and indexes contribute table content without creating relations. MySQL ignores inline column `REFERENCES`, so those clauses add no relation. Relations describe declared source dependencies, independently of whether a particular storage engine enforces them. Evidence never executes a database or infers a dialect from successful parsing.
|
|
235
|
-
|
|
236
|
-
MySQL addresses use source-spelled database and table segments, such as `schema.sql#Store.Child.parent_id`. An unqualified `CREATE TABLE` name remains unqualified; `USE`, server defaults, and `lower_case_table_names` are not evaluated. An unqualified foreign-key target inherits its owning table's explicitly declared database. Backticks decode into literal segments, preserving embedded punctuation. Column spelling also remains exact in Evidence addresses; case-only duplicate columns are rejected, and foreign-key endpoints must use the declaration's spelling. Schema ownership is independent of file location, so duplicate selected table declarations are incomplete rather than merged. File aliases expose the same semantic units.
|
|
237
|
-
|
|
238
|
-
MySQL foreign keys use a literal endpoint segment: `Child["foreign-key:[\"parent_id\"]->[\"Parent\"]([\"id\"])"]`. Composite endpoints retain their declared order. The optional name after `FOREIGN KEY` is an index name, not a constraint symbol, and does not replace endpoint identity. Each column and relation has exactly one owning table. The pinned grammar does not support `CONSTRAINT name FOREIGN KEY` syntax; such input is incomplete.
|
|
239
|
-
|
|
240
|
-
Adjacent `-- ` line comments or `/* ... */` block comments and table or column `COMMENT` strings carry MySQL evidence, exclusions, reviews, and withdrawals. `COMMENT` strings use single quotes and SQL doubled apostrophes; backslash escapes requiring a server mode are unsupported. Strings in defaults, index comments, detached comments, and code examples create no evidence. Undocumented declarations remain eligible hosts. Annotation-only edits preserve review fingerprints, while column, constraint, and option changes invalidate affected table reviews.
|
|
241
|
-
|
|
242
|
-
MySQL columns accept the pinned grammar's integer, fixed/floating numeric, boolean/bit, character/text, binary/blob, temporal, JSON, ENUM, and SET forms, with numeric size/precision and UNSIGNED/ZEROFILL where recognized. User-defined types, array suffixes, and generated columns are outside this declared subset.
|
|
243
|
-
|
|
244
|
-
The supported MySQL table options are explicit `ENGINE=` values (`InnoDB`, `NDB`, `NDBCLUSTER`, `MyISAM`, `MEMORY`, `CSV`, `ARCHIVE`, or `BLACKHOLE`), `COMMENT='...'`, character set, collation, and row format forms recognized by the pinned grammar. Unsupported options, executable comments, `ALTER`, `DROP`, `RENAME`, temporary or conditional tables, generated columns, query-derived tables, views, routines, `DELIMITER`, dynamic SQL, and session changes leave analysis incomplete. Supply the resulting explicit schema instead of a migration script. Parser `ERROR` and `MISSING` nodes always remain incomplete, including doubled-backtick identifiers and other valid MySQL syntax absent from the pinned upstream grammar.
|
|
245
|
-
|
|
246
|
-
`EvidenceJavaScriptAdapter` parses `.js`, `.jsx`, `.mjs`, and `.cjs` with the pinned JavaScript grammar. `.mjs` always uses ESM and `.cjs` always uses CommonJS. A `.js` or `.jsx` file follows the nearest `package.json` `type`; missing metadata defaults to CommonJS. Checked package paths become watch dependencies, and unreadable, malformed, unsupported, or conflicting metadata leaves the inventory incomplete.
|
|
247
|
-
|
|
248
|
-
Exported classes are `type` units. Functions, generators, function-valued `const` declarations, methods, and function-valued class fields are `function` units; other exported values and public fields are `property` units. Static members use `Class.member`, while instance members use `Class.prototype.member`. Constructors, accessors, private fields, and computed member names do not form units. Anonymous default classes, functions, function expressions, and values use the public `default` address.
|
|
249
|
-
|
|
250
|
-
JavaScript ESM follows direct exports, aliases, defaults, imported bindings that are re-exported, named and star reexports, namespace exports, explicit shadowing, ambiguity, and finite cycles through relative snapshot files. CommonJS accepts unconditional top-level `exports.name = local`, `module.exports.name = local`, `module.exports = local`, and `module.exports = { name, alias: local }`. Replacing `module.exports` clears earlier names and detaches `exports`; `exports = module.exports` reconnects it. Computed keys, conditional mutation, dynamic replacement, inline values, shadowed bindings, and escaped aliases make analysis incomplete.
|
|
251
|
-
|
|
252
|
-
Only attached JSDoc carries JavaScript evidence, exclusions, or reviews. JSX text, strings, templates, regular expressions, line comments, ordinary block comments, and detached JSDoc do not create evidence edges. Exported declarations without JSDoc remain policy hosts.
|
|
253
|
-
|
|
254
|
-
`EvidencePythonAdapter` parses `.py` and `.pyi` with the pinned Python grammar. Module classes and explicit type aliases are `type` units; functions, async functions, and methods are `function` units; simple module/class assignments and direct `self.name` assignments in `__init__` are `property` units. Nested classes retain their owners. Static and class methods use `Class.member`; ordinary methods, property-decorated methods, and instance fields use `Class.prototype.member`. Leading-underscore class members and special methods are excluded. An underscored module declaration can still be exported explicitly through `__all__`.
|
|
255
|
-
|
|
256
|
-
A static `__all__` accepts literal string lists or tuples, `+` composition, and top-level `+=` additions. Without `__all__`, supported module declarations and statically resolved imported bindings are public unless their local name starts with an underscore. Relative imports resolve from the importing package directory; absolute imports resolve from the configured population root. Resolution follows local `.py`, `.pyi`, and package `__init__` modules already present in the source snapshot, including aliases, namespace imports, star imports, and finite cycles. Missing local sources, unresolved explicit names, conditional public declarations, and dynamic `__all__` mutation leave analysis incomplete.
|
|
257
|
-
|
|
258
|
-
Python evidence can live in a real class or function docstring, or in a same-indent `#` comment run immediately before a supported declaration. A comment before decorators attaches across the decorator list. Assigned and otherwise arbitrary strings, module docstrings, detached comments, and local nested helpers do not become public evidence hosts. Decorators, imports, metaclasses, module initialization, and dynamic attribute hooks are never executed; members they generate remain outside the declared-source guarantee.
|
|
259
|
-
|
|
260
|
-
`EvidenceGoAdapter` parses selected `.go` files as directory-and-package populations. Exported defined types and aliases are `type` units; exported package functions, receiver methods, and interface methods are `function` units; exported constants, variables, and explicit struct fields, including embedded fields, are `property` units. Go's Unicode uppercase rule decides visibility. Receiver methods use `Type.Method` and can be addressed through either their declaration file or the selected file that declares their owner type.
|
|
261
|
-
|
|
262
|
-
Adjacent standalone `//` runs and block comments are Go documentation hosts. Trailing code comments remain separate from a following documentation run and never attach to the next declaration. A comment on a grouped declaration can host all declarations in the group, while a comment on one specification or member remains local to it. Detached comments, function-body comments, strings, raw strings, and commented-out declarations do not supply evidence. The adapter reads only selected source: it does not run the Go toolchain, evaluate build tags or filename platform constraints, promote embedded members, or fabricate generated declarations absent from the snapshot. Conflicting declarations across selected build variants and missing receiver owners make the inventory incomplete. Same-package `_test.go` files join their package, while external `_test` packages remain distinct.
|
|
263
|
-
|
|
264
|
-
`EvidenceRustAdapter` parses selected `.rs` files as static crate and module graphs. Public modules, structs, enums, traits, and type aliases are `type` units. Public free functions, inherent methods, and trait methods are `function` units. Public fields, tuple fields, constants, statics, enum variants, and associated constants are `property` units; trait associated types and their impl realizations are `type` units. Tuple fields use numeric segments such as `Pair[0]`.
|
|
265
|
-
|
|
266
|
-
Unrestricted `pub` establishes the external surface; restricted visibility does not. Conventional `mod name;` files, inline modules, named/grouped/wildcard `pub use` declarations, private-module reexports, and finite reexport chains preserve one originating identity across public aliases. Inherent members use `Type.member`. Trait implementation members use an explicit qualifier such as `Sale["impl crate::Service"].run`, so they cannot collide with inherent members.
|
|
267
|
-
|
|
268
|
-
Rust evidence attaches to outer or inner doc comments and static `#[doc = "..."]` attributes. Ordinary comments remain whitespace between outer attributes and their declaration: they cannot cancel documentation, withdrawals, or conditional-attribute diagnostics, and do not occupy tuple-field indexes. The adapter does not run Cargo, rustc, build scripts, or macros. Missing or ambiguous module files, `#[path]`, unresolved public reexports, item-position macros, expansion attributes, `cfg` alternatives, blanket or external impl ownership, and syntax failures leave the inventory incomplete. Expression macros inside function bodies do not affect declaration completeness.
|
|
269
|
-
|
|
270
|
-
`EvidenceJavaAdapter` parses selected `.java` files as one source-public population with `tree-sitter-java` v0.23.5. Public classes, interfaces, enums, annotations, records, and publicly reachable nested types are `type` units. Public methods, including interface default and static methods, are `function` units. Public fields, interface constants, record components, enum constants, and annotation elements are `property` units. Constructors and compiler-generated record or enum methods do not form units.
|
|
271
|
-
|
|
272
|
-
Package names and nested owners establish semantic identity, while a file target begins with the top-level type, such as `Sale.java#Sale.calculate`. Methods with the same owner and name form one overload-family unit with every declaration site. A field and method may share a target spelling; the reference's `symbol` selection disambiguates them, while selecting both makes the target ambiguous. Imports and inherited members do not create units. The adapter applies Java source visibility independently of JPMS exports and does not execute annotation processors; generated source participates only when selected explicitly.
|
|
273
|
-
|
|
274
|
-
Only Javadoc immediately attached to a supported public declaration carries Java evidence, exclusions, reviews, or withdrawal. Attachment survives intervening declaration annotations and modifiers. Tags inside `{@code ...}`, `{@literal ...}`, `{@snippet ...}`, `<code>...</code>`, and `<pre>...</pre>` examples stay inert. Ordinary comments, strings, text blocks, and Javadoc on unpublished declarations do not create evidence edges. Conflicting selected identities and syntax failures leave the inventory incomplete.
|
|
275
|
-
|
|
276
|
-
`EvidenceLuaAdapter` parses selected `.lua` files with `tree-sitter-lua` v0.5.0. Explicit global functions and variables are public. Lexical locals become public only through an exported table or function alias. Lua has no type declarations: callable values are `function` units; tables and scalar fields are `property` units. Both claim and reference defaults select `function` and `property`. Explicit `type` selectors are rejected.
|
|
277
|
-
|
|
278
|
-
The module convention accepts one final return of a literal table or an already initialized local table. Address its root as `contract.lua#module` and its fields as `contract.lua#module.run`. Global declarations use their own names. The name `module` is reserved for the return accessor. Table owners are properties with explicit parent relationships; they are not classes. Dot and colon methods use the same field address, and a colon method's implicit receiver does not create a `prototype` segment. String keys are literal segments, so `["a.b"]` remains distinct from `a.b`. Unescaped short strings and long strings are supported as keys; numeric, positional, computed, and escape-dependent keys are diagnosed.
|
|
279
|
-
|
|
280
|
-
Initialization supports one binding per statement, literal scalar values, function declarations and expressions, nested literal tables, resolved local aliases, and first assignments to absent literal table fields. A table or function alias retains one identity and its original declaration host; scalar assignment copies into a separate property. Nil fields are absent and add no property. The first public path establishes canonical ownership, and other public paths under that same owner resolve as aliases. A shared value under distinct containing tables leaves analysis incomplete because aggregate coverage and withdrawal require one structural owner. Documentation belongs to the original declaration, not a later alias assignment. Same-spelled declarations in different selected files remain distinct. There is no loader-derived cross-file export resolution.
|
|
281
|
-
|
|
282
|
-
Adjacent `---` LuaDoc groups and long `--[[...]]` or `--[=[...]=]` comments attach to supported public declarations and literal fields. Ordinary comments, strings, detached annotations, and private declaration comments cannot acknowledge evidence; tag-bearing unsupported carriers are diagnosed. Fenced, indented, and HTML code examples are inert. `@internal`, `@hidden`, and `@ignore` withdraw a documented owner and its descendants.
|
|
283
|
-
|
|
284
|
-
Metatables, `require` loaders, chunk-level calls or control flow, table cycles, unresolved values, reassignment, shadowing, and replacement or deletion of fields leave analysis incomplete. Syntactic deferred writes to public or unresolved bindings and exported tables escaping through function arguments, function-local assignments, or function returns are also diagnosed. Local function-body state does not add public declarations. The adapter does not execute Lua or infer runtime-generated members.
|
|
285
|
-
|
|
286
|
-
`EvidenceDartAdapter` analyzes selected `.dart` files, including supplied generated `.g.dart` source, with a pinned `tree-sitter-dart` grammar. Classes, mixins, enums, named extensions, extension types, and typedefs are `type` units. Explicit functions, methods, class-body constructors, and operators are `function` units. Variables, fields, enum constants, extension-type representation fields, and getter/setter pairs are `property` units. Undocumented declarations remain selected. Names beginning with `_`, their descendants, and unnamed extensions remain library-private. Inherited members, implicit constructors, and other compiler-generated members absent from source do not create units.
|
|
287
|
-
|
|
288
|
-
Addresses use lexical names such as `api.dart#Contract.value`, `api.dart#Numbers.twice`, `api.dart#Contract.new`, and `api.dart#Contract.named`. Operators retain a literal segment such as `api.dart#Contract["operator +"]`. Static and instance members both live directly under their declared owner. Complementary getters and setters share one property identity with separate declaration sites; other conflicting definitions make analysis incomplete. Typedefs are independent type declarations and do not expand the aliased type's members. Separate defining libraries retain separate identities even when they declare the same name. An extension type's primary constructor is represented by its type declaration; its representation field is a separate property.
|
|
289
|
-
|
|
290
|
-
Select the whole relevant library graph in each population. Relative `part` and URI or named `part of` directives must agree on one selected defining library. Library files share public addresses without duplicating units. Static relative exports add transitive aliases and apply ordered `show`/`hide` combinators to root names; a local declaration shadows the same exported name, while competing exported definitions are incomplete. An export combinator only filters that export address: a declaration in another selected source remains an obligation at its defining library. Missing parts and exports retain exact watch dependencies and make analysis incomplete. Package or SDK export URIs, conditional exports, escaped or interpolated directive URIs, and augmentations require additional resolution and are reported as incomplete. Imports do not publish declarations, and external package imports do not imply traversal or member synthesis.
|
|
291
|
-
|
|
292
|
-
Adjacent `///` groups and `/** */` documentation attach to the following declaration, including metadata inside its syntax node. Ordinary comments and strings cannot acknowledge evidence; annotation-like text there receives an unsupported-host diagnostic. Fenced, indented, and HTML code examples inside documentation are inert. Withdrawal tags hide the attached declaration and descendants. Documentation mappings preserve original UTF-16 positions, including Unicode and CRLF, and annotation-only edits preserve review fingerprints.
|
|
293
|
-
|
|
294
|
-
`EvidenceKotlinAdapter` analyzes selected `.kt` files with `tree-sitter-kotlin` v1.1.0. Classes, interfaces, objects, companions, and type aliases are `type` units. Top-level and member functions are `function` units, grouped into overload families by package, lexical owner, receiver, and name. Explicit properties, primary-constructor `val`/`var` parameters, and enum entries are `property` units. A property's getter and setter belong to the property; a private setter does not hide its public getter. Constructors themselves and compiler-generated or inherited members do not add units.
|
|
295
|
-
|
|
296
|
-
Kotlin declarations are public by default. Private, internal, and protected declarations and their descendants do not participate. An override with no explicit visibility produces incomplete analysis because its visibility depends on the inherited member. Explicit public overrides participate. `expect`/`actual` declarations and public delegation also produce incomplete analysis. The snapshot does not execute a compiler, annotation processor, build system, or application. `.kts` scripts are rejected rather than interpreted as ordinary source files.
|
|
297
|
-
|
|
298
|
-
Package names contribute to Kotlin semantic identity; file accessors begin at the top-level declaration. Use `Contract.kt#Contract.value` for a property and `Contract.kt#Contract.Companion.run` for an unnamed companion member. Named companions retain their declared name, such as `Contract.Tools.run`. Extensions stay under their lexical owner and add a quoted receiver segment, such as `Contract.kt#["extension(kotlin.String)"].measure`. Selected nominal declarations, selected type-alias chains, explicit imports, and Kotlin core scalar types establish canonical receiver names; imports do not create exported declarations. Generic, function-type, type-parameter, cyclic, ambiguous, and unresolved wildcard-dependent receivers produce incomplete analysis. Type aliases are independent named type declarations, and dependency-derived member expansion is outside the declared-source surface. Backtick names are literal segments, so a property named `value.part` is addressed as `Contract["value.part"]`.
|
|
299
|
-
|
|
300
|
-
Adjacent `/** */` KDoc attaches before declaration annotations. Evidence tags in ordinary comments, strings, and unattached KDoc never acknowledge a target; recognized tags on unsupported carriers produce diagnostics. Fenced and indented examples remain inert. Withdrawals propagate through lexical ownership, and annotation-only edits preserve semantic fingerprints.
|
|
301
|
-
|
|
302
|
-
The pinned upstream Kotlin grammar requires a newline or semicolon before some closing class-body braces, including `class Example { val value = 1; }`. The equivalent spelling without that separator can produce an `ERROR` node and is reported as incomplete analysis. Evidence does not rewrite source or discard parser errors to obtain a smaller passing inventory.
|
|
303
|
-
|
|
304
|
-
`EvidenceSwiftAdapter` analyzes selected `.swift` files with `tree-sitter-swift` 0.7.3 as one module per physical population root. Configure separate `root` directories for separate Swift modules, and use the same root for populations belonging to one module. Selected files form that module's declared-source snapshot; Evidence does not infer Swift Package Manager or Xcode targets. Public/open classes, structs, actors, enums, protocols, nested types, type aliases, and protocol associated types are `type` units. Functions, initializers, subscripts, and operator implementations are `function` units. Properties, constants, and enum cases are `property` units. Undocumented public declarations remain selected. Ordinary members of a public type default to internal; public protocol requirements inherit their protocol's visibility. Private, fileprivate, internal, and package declarations are excluded. Setter-only restrictions preserve the public getter and its property unit.
|
|
305
|
-
|
|
306
|
-
File-qualified paths use lexical owners, such as `Contract.swift#Contract.value`, `Contract.swift#Contract.init`, and `Contract.swift#Contract.subscript`. All overloads with the same owner and base name share one function identity, including different argument labels, parameter types, and initializer signatures. Static and class members add a `static` segment; an operator implementation can be addressed as `Contract.swift#Contract.static["+"]`. Backtick identifiers are literal segments. Type aliases retain independent type identities and do not project another type's members through alias addresses.
|
|
307
|
-
|
|
308
|
-
Extensions resolve selected local nominal types and finite nominal type-alias chains across files. Their type sites and explicit members merge under the original nominal owner, using that owner's canonical accessor in the extension's file. An ordinary extension defaults to internal members, while `public extension` defaults to public members; individual modifiers override the extension default and the original owner's visibility bounds every member. Extension documentation attaches to the reopened type. Every selected source is an analysis dependency, so owner changes and newly selected files invalidate watch analysis.
|
|
309
|
-
|
|
310
|
-
Adjacent `///` runs and `/** */` DocC attach before declaration attributes. Fenced, indented, and HTML code examples supply no evidence. Recognized tags in ordinary comments, strings, or unattached documentation produce unsupported-host findings. Withdrawals propagate through semantic ownership, and annotation edits preserve review fingerprints. Macros, custom expansion attributes, conditional compilation, constrained extensions, external or ambiguous extension ownership, extension-added conformances, and known synthesized conformances or enum raw-value surfaces leave analysis incomplete. Evidence does not execute Swift or fabricate inherited members, implicit initializers, destructors, operator precedence declarations, or other compiler-generated declarations absent from selected source.
|
|
311
|
-
|
|
312
|
-
`EvidenceMatlabAdapter` analyzes textual `.m` files with the pinned `tree-sitter-matlab` grammar. Configuration selects MATLAB explicitly; Objective-C's `.m` spelling does not infer MATLAB. Binary `.p`, live `.mlx`, MEX files, Octave extensions, and executable script files are outside this adapter's source contract. The primary function or `classdef` name must match the physical file name. File-local and nested functions create no public obligations.
|
|
313
|
-
|
|
314
|
-
MATLAB `classdef` declarations are `type` units. Primary functions, declared methods, constructors, and abstract method signatures are `function` units. Declared class properties, enumeration members, and events are `property` units. Public/default access participates; private and protected methods and properties with neither public read nor public write access do not. `GetAccess` and `SetAccess` are independent. Event access is public when either notification or listening is public. Static, constant, dependent, abstract, and Hidden metadata retain their declared units. Hidden metadata does not act as an Evidence withdrawal. A declared property's getter and setter share its identity and contribute eligible accessible sites; they never create another property or function obligation. No inherited or compiler-generated declarations are invented.
|
|
315
|
-
|
|
316
|
-
Package folders contribute literal owner segments: `+pkg/@Widget/Widget.m#pkg.Widget.run`. All members use their class directly, including static methods and constructors such as `Widget.Widget`. An external `@Widget/run.m` method requires the selected `@Widget/Widget.m` classdef, shares the class member identity, and resolves through both the external file and class file. Nonabstract prototypes require selected method implementations and preserve their declared access; unlisted external methods are public by default. Missing class files, missing implementations, conflicting declarations, and unsupported legacy classes produce incomplete analysis. Class folders and required files participate in watch invalidation. Ordinary same-named declarations in different physical files remain separate file-qualified identities.
|
|
317
|
-
|
|
318
|
-
MATLAB help comments attach according to [MathWorks class help documentation](https://www.mathworks.com/help/matlab/matlab_prog/create-help-for-classes.html): classes and function definitions use the contiguous percent comments immediately following their signature; properties, enumeration members, and events use preceding help, with same-line help as a fallback. Signature-only method declarations accept preceding or same-line percent documentation at their declaration site. Preceding property help takes precedence over same-line help. Only percent-line help is eligible. Percent block comments (`%{` and `%}`), including blocks placed after signatures, remain inert. Strings, executable-body comments, unattached comments, fenced examples, HTML code examples, and help text indented four spaces beyond its baseline are inert. Attached `@internal`, `@hidden`, and `@ignore` help tags withdraw declarations and descendants. Help edits preserve review fingerprints; semantic changes invalidate them.
|
|
319
|
-
|
|
320
|
-
MATLAB analysis never runs MATLAB, Octave, scripts, constructors, or build tools. `dynamicprops`, recognized dynamic-property operations, runtime path changes, `eval`/`evalin`, `assignin`, legacy multiargument `class` construction, `feval`, and `str2func` are reported as incomplete because their public surface cannot be established statically. Unknown class attributes and unsupported declaration forms also produce actionable incomplete diagnostics. Runtime name shadowing, generated code, inherited member expansion, and application-created declarations are outside this explicit source model. Select original static sources and all relevant class-folder files; parser errors are never discarded to obtain a smaller passing inventory.
|
|
321
|
-
|
|
322
|
-
The pinned MATLAB grammar requires a newline or semicolon after the closing `end` of a primary `classdef`. A class file ending directly at that token produces a parser diagnostic even though MATLAB itself accepts it. Add a final line ending; Evidence preserves the original source and reports the grammar boundary rather than dropping its error.
|
|
323
|
-
|
|
324
|
-
`EvidenceScalaAdapter` analyzes selected `.scala` files with `tree-sitter-scala` v0.26.2, including Scala 2 braces and Scala 3 indentation. Classes, traits, objects, package objects, enums, type aliases, abstract type members, and parameterized enum cases are `type` units. Methods and extension methods are `function` units, grouped by lexical owner and name into overload families. Values, variables, named givens, singleton enum cases, explicit constructor `val`/`var` parameters, and first-list case-class parameters are `property` units. Ordinary constructor parameters, constructors, inherited members, compiler-assigned anonymous-given names, case-class `copy`/`apply` methods, enum helper methods, and other synthesized declarations do not add units. Anonymous givens report incomplete analysis; name a given explicitly to include its source declaration. Explicit members in a named given's body remain owned by that given.
|
|
325
|
-
|
|
326
|
-
Scala declarations have unrestricted visibility by default. `private` and `protected`, including every `[this]` or enclosing-scope qualifier, exclude the declaration and its descendants. A private primary constructor does not hide the enclosing class or its public fields. Scala 2 implicit declarations retain their explicit source kinds; implicit conversion and inherited-member expansion are outside this source inventory. `derives`, `uses`, macros, unresolved extractor patterns, structural member types, and anonymous initializer members report incomplete analysis. Tuple bindings and comma-separated simple bindings retain each declared property. The adapter parses source without executing Scala, build tools, or application code.
|
|
327
|
-
|
|
328
|
-
Scala package clauses contribute namespace segments, including chained and braced packages. File accessors include the package, such as `Contract.scala#demo.Contract.run`. An object is always a distinct owner addressed as `Contract.scala#demo["object Contract"]`; its members use `demo["object Contract"].apply`. A package object uses `demo["package object util"].ready`, preserving its explicit source owner. Companion classes and objects never merge. Extension methods belong to their lexical owner, with the extension header included in their fingerprint. Type aliases remain independent declarations. Backtick identifiers are literal segments, such as `demo.Contract["value.part"]`.
|
|
329
|
-
|
|
330
|
-
Explicit named exports from selected public singleton objects through package and singleton-object owners expose alternate addresses of the original source member. For `object Forward { export Origin.{run as call} }`, `demo["object Forward"].call` and `demo["object Origin"].run` resolve to the same semantic method, retain its original parent, and share withdrawals and review content. The export's documentation has its own physical site on that method. Exporting a container, chaining exports, wildcard/given exports, exports in files containing imports, private targets, or missing/ambiguous source objects reports incomplete analysis. Select the declaring object source to resolve a supported export; no import or build metadata is executed.
|
|
331
|
-
|
|
332
|
-
Only adjacent Scaladoc attaches to Scala declarations. Annotations within declaration syntax preserve attachment, while intervening ordinary comments break it. Undocumented public declarations remain selected. Scaladoc Markdown fences, indented examples, HTML code blocks, and `{{{ ... }}}` examples are inert. Evidence tags in ordinary comments, strings, local or private declaration documentation receive unsupported-host diagnostics. Withdrawals propagate through explicit ownership and exports. Original UTF-16 positions and CRLF line endings are retained. `.sc` scripts and differently cased extensions are rejected; parser `ERROR`/`MISSING` nodes keep analysis incomplete.
|
|
333
|
-
|
|
334
|
-
`EvidenceZigAdapter` analyzes `.zig` sources with `tree-sitter-zig` v1.1.2 and its Zig 0.14 syntax. Explicit `pub` declarations participate; unmarked declarations and private containers stay outside the public population unless exposed by a supported local alias. Structs, enums, unions, opaque types, error sets, and explicit primitive or compound type values are `type` units. Functions are `function` units. Variables, scalar constants, container fields, enum cases, and error names are `property` units. Fields and cases of an exposed container participate without a `pub` keyword. Functions with comptime parameters and a fixed primitive return type participate as source declarations. Local declarations, test bodies, compiler-generated declarations, and linker-only `export` declarations do not add public units.
|
|
335
|
-
|
|
336
|
-
Zig addresses follow lexical owners, such as `contract.zig#Contract.run` and `contract.zig#Contract.value`; quoted identifiers preserve literal segments, such as `Contract["value.part"]`. Zig-specific hexadecimal and brace Unicode escapes in identifiers produce incomplete analysis; literal Unicode and JSON-compatible quoted escapes are supported. Physical files retain independent identities. Same-container direct name aliases of types and functions expose the canonical declaration and its members under the alias path, preserve declaration sites and documentation, and detect cycles or unresolved targets. Qualified aliases, imported namespaces, `usingnamespace`, namespace `comptime` blocks, type-producing functions, dependent generic returns, other inferred expressions such as calls or conditional values, and anonymous aggregate values or declaration types produce incomplete analysis. These forms can expose members that require further static resolution. Evidence does not evaluate build options, execute Zig or follow imports; explicitly typed scalar values can use external expressions without creating namespace members.
|
|
159
|
+
Add prices without intermediate rounding.
|
|
160
|
+
```
|
|
337
161
|
|
|
338
|
-
|
|
162
|
+
With `add` and `test_add` still untagged, the first check reports two missing citations: `add` must cite the requirement, and `test_add` must cite `add`.
|
|
339
163
|
|
|
340
|
-
|
|
164
|
+
Add the reasons where the work is done. Markdown targets resolve from the reference root, which defaults to the config directory; programming targets resolve from the citing file:
|
|
341
165
|
|
|
342
|
-
|
|
166
|
+
```ts
|
|
167
|
+
/** @evidence docs/requirements.md#exact-addition Implements exact addition without intermediate rounding. */
|
|
168
|
+
export function add(left: number, right: number): number {
|
|
169
|
+
return left + right;
|
|
170
|
+
}
|
|
171
|
+
```
|
|
343
172
|
|
|
344
|
-
|
|
173
|
+
```ts
|
|
174
|
+
/** @evidence ../src/calculator.ts#add Verifies exact addition through the public function. */
|
|
175
|
+
export function test_add(): void {
|
|
176
|
+
if (add(1, 2) !== 3) throw new Error("Unexpected sum.");
|
|
177
|
+
}
|
|
178
|
+
```
|
|
345
179
|
|
|
346
|
-
|
|
180
|
+
```bash
|
|
181
|
+
$ npx evidence
|
|
182
|
+
Evidence check complete.
|
|
183
|
+
Coverage: 2/2 units covered, 0 missing.
|
|
184
|
+
```
|
|
347
185
|
|
|
348
|
-
|
|
186
|
+
One layer up, Markdown cites Markdown in HTML comments, so the rendered document stays clean:
|
|
349
187
|
|
|
350
|
-
|
|
188
|
+
```md
|
|
189
|
+
## Coupon stacking {#coupon-stacking}
|
|
351
190
|
|
|
352
|
-
|
|
191
|
+
<!-- @evidence ideas/2026-03-checkout.md#stacking-limit Turns the note's per-issuer idea into a testable limit. -->
|
|
353
192
|
|
|
354
|
-
|
|
193
|
+
A buyer may apply at most one coupon per issuer to one order.
|
|
194
|
+
```
|
|
355
195
|
|
|
356
|
-
|
|
196
|
+
### 1.4. Backend
|
|
357
197
|
|
|
358
|
-
|
|
198
|
+
<picture>
|
|
199
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://ttsc.dev/evidence/backend-dark.svg">
|
|
200
|
+
<img alt="Requirements and Specifications grounding DB schema, API operation, API schema and Test" src="https://ttsc.dev/evidence/backend-light.svg">
|
|
201
|
+
</picture>
|
|
359
202
|
|
|
360
|
-
|
|
203
|
+
The schema, API, and tests form one graph:
|
|
361
204
|
|
|
362
|
-
|
|
205
|
+
- Database models cite the documents behind them.
|
|
206
|
+
- API operations cite the models and documents they expose.
|
|
207
|
+
- Tests cite every operation, with no exclusions.
|
|
363
208
|
|
|
364
|
-
|
|
209
|
+
The citations stay native to each artifact: a Prisma `///` comment cites Markdown, a Swagger `description` cites `prisma:Order`, and a test cites `POST:/orders/{orderId}/coupons`.
|
|
365
210
|
|
|
366
|
-
|
|
211
|
+
### 1.5. Frontend
|
|
367
212
|
|
|
368
|
-
|
|
213
|
+
<picture>
|
|
214
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://ttsc.dev/evidence/frontend-dark.svg">
|
|
215
|
+
<img alt="Requirements and Specifications grounding Swagger, Hooks, Screens and Journeys" src="https://ttsc.dev/evidence/frontend-light.svg">
|
|
216
|
+
</picture>
|
|
369
217
|
|
|
370
|
-
|
|
218
|
+
A frontend graph can begin with a Swagger document published by another project:
|
|
371
219
|
|
|
372
|
-
|
|
220
|
+
- Hooks cite the operations they call.
|
|
221
|
+
- Screens cite the hooks they render.
|
|
222
|
+
- Journeys cite the screens they traverse.
|
|
373
223
|
|
|
374
|
-
|
|
224
|
+
"The API is wired up but there is no screen yet" stops being a green check.
|
|
375
225
|
|
|
376
|
-
|
|
226
|
+
### 1.6. Novels
|
|
377
227
|
|
|
378
|
-
|
|
228
|
+
<picture>
|
|
229
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://ttsc.dev/evidence/novel-dark.svg">
|
|
230
|
+
<img alt="Principles and Settings grounding Treatments, Scripts and Prose" src="https://ttsc.dev/evidence/novel-light.svg">
|
|
231
|
+
</picture>
|
|
379
232
|
|
|
380
|
-
|
|
233
|
+
The same graph governs prose. Every layer cites its principles and settings; scripts and prose cite treatments; prose cites the script it executes.
|
|
381
234
|
|
|
382
|
-
|
|
235
|
+
Editing a setting expires every review on it, so a revision leaves no stale scene behind.
|
|
383
236
|
|
|
384
|
-
|
|
237
|
+
## 2. Benchmark
|
|
385
238
|
|
|
386
|
-
|
|
239
|
+

|
|
387
240
|
|
|
388
|
-
|
|
241
|
+
Measured upstream on `@ttsc/evidence`, which shares this package's graph semantics: one agent built four applications twice with the same engine and model. Only the graph differed.
|
|
389
242
|
|
|
390
|
-
|
|
243
|
+
- **Plain:** coverage landed between 51.6% and 85.5%, while the repeated review loop consumed about 90% of all tokens.
|
|
244
|
+
- **Evidence:** every application reached 100%, and review judged the explicit tag list in one pass.
|
|
391
245
|
|
|
392
|
-
|
|
246
|
+
The [benchmark guide](https://ttsc.dev/docs/benchmark/evidence) breaks each run down by phase, and [`samchon/evidence-benchmark-results`](https://github.com/samchon/evidence-benchmark-results) keeps the raw sessions.
|
|
393
247
|
|
|
394
|
-
|
|
395
|
-
/** @evidence ../calculator.ts#add Verifies the addition contract. */
|
|
396
|
-
/** @evidence ../SomeClass.ts#SomeClass.member Supplies the public static member. */
|
|
397
|
-
/** @evidence ../SomeClass.ts#SomeClass Represents the class contract. */
|
|
398
|
-
/** @evidence ../SomeNamespace.ts#SomeNamespace.property Supplies the namespace value. */
|
|
399
|
-
```
|
|
248
|
+
The walkthrough above is enough to start. Everything below is the reference.
|
|
400
249
|
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
| Target | Example |
|
|
404
|
-
| ---------------------- | ------------------------------------- |
|
|
405
|
-
| Code symbol | `../calculator.ts#add` |
|
|
406
|
-
| Go receiver method | `../sale.go#Sale.Calculate` |
|
|
407
|
-
| Rust inherent method | `../sale.rs#Sale.calculate` |
|
|
408
|
-
| Rust trait impl method | `../sale.rs#Sale["impl Service"].run` |
|
|
409
|
-
| Java overload family | `../Sale.java#Sale.calculate` |
|
|
410
|
-
| Java record component | `../Point.java#Point.x` |
|
|
411
|
-
| C# namespaced property | `../Sale.cs#Shop.Sale.Total` |
|
|
412
|
-
| C# generic type | ``../Box.cs#Shop["Box`1"]`` |
|
|
413
|
-
| C# indexer family | `../Sale.cs#Shop.Sale["this[]"]` |
|
|
414
|
-
| C++ template member | ``../box.hpp#shop["Box`1"].value`` |
|
|
415
|
-
| C++ operator family | `../sale.hpp#shop.Sale["operator +"]` |
|
|
416
|
-
| C exact struct field | `../sale.h#["struct Sale"].total` |
|
|
417
|
-
| C typedef field | `../sale.h#Sale.total` |
|
|
418
|
-
| Python symbol | `../calculator.py#add` |
|
|
419
|
-
| Python instance member | `../sale.py#Sale.prototype.total` |
|
|
420
|
-
| Ruby instance method | `../sale.rb#Shop.Sale.total` |
|
|
421
|
-
| Ruby singleton method | `../sale.rb#Shop.Sale.self.find` |
|
|
422
|
-
| Ruby setter method | `../sale.rb#Shop.Sale["price="]` |
|
|
423
|
-
| Markdown document | `docs/requirements.md` |
|
|
424
|
-
| Markdown heading | `docs/requirements.md#pricing` |
|
|
425
|
-
| Prisma model or field | `prisma:Sale`, `prisma:Sale.price` |
|
|
426
|
-
| Swagger operation | `POST:/sales` |
|
|
427
|
-
|
|
428
|
-
Markdown paths resolve from the reference population's root. Backslashes are accepted as portable separators and leading `./` is ignored, while case and percent signs remain literal. The text after `#` is one exact Markdown anchor, so `docs/spec.md#price.v2` does not mean nested members. Markdown claims place tags in HTML comments. Prisma claims use `///` or block documentation attached to models and members; an unattached top-level `///` run may carry exclusions only.
|
|
429
|
-
|
|
430
|
-
Swagger claims read tags from each operation's `description`. For example, an operation can cite a Markdown requirement:
|
|
431
|
-
|
|
432
|
-
```yaml
|
|
433
|
-
paths:
|
|
434
|
-
/sales:
|
|
435
|
-
post:
|
|
436
|
-
description: |
|
|
437
|
-
Creates a sale.
|
|
438
|
-
@evidence docs/requirements.md#sales Exposes the required sale creation operation.
|
|
439
|
-
```
|
|
250
|
+
## 3. Graph rules
|
|
440
251
|
|
|
441
|
-
|
|
252
|
+
A **claim** selects the hosts that must cite. Each **reference** selects the units those hosts must cover. Every claim/reference pair is an independent obligation: references never pool coverage, and a claim `name` only labels diagnostics.
|
|
442
253
|
|
|
443
|
-
|
|
254
|
+
A **unit** is one declaration, even when several public addresses expose it. A function exported from its own file and from a barrel remains one unit with two addresses.
|
|
444
255
|
|
|
445
|
-
|
|
256
|
+
### 3.1. Coverage
|
|
446
257
|
|
|
447
|
-
|
|
258
|
+
- `@evidence` covers its target and the target's selected descendants: a class covers its methods, a file its sections, a model its columns.
|
|
259
|
+
- `@evidenceExclude` covers the same way while recording that the target does not apply. The two cannot overlap in one obligation.
|
|
260
|
+
- `noEvidenceExclude` refuses exclusions.
|
|
261
|
+
- `uniqueEvidence` allows at most one positive host per unit.
|
|
262
|
+
- `singleEvidencePerSymbol` requires every host, tagged or not, to cite exactly one unit.
|
|
263
|
+
- `evidenceExcludeCarriers` limits which claim files may carry exclusions.
|
|
264
|
+
- `checklist` (Markdown references) requires every host to answer every selected heading; `@evidenceExclude docs/rules.md <reason>` excuses one host from the whole file. It cannot combine with `uniqueEvidence` or `singleEvidencePerSymbol`.
|
|
448
265
|
|
|
449
|
-
|
|
266
|
+
### 3.2. Reviews
|
|
450
267
|
|
|
451
|
-
|
|
268
|
+
A false tag removes the error, not the problem. `requireReview: true` demands a review of the same kind, on the same host, naming the same target, with the current fingerprint:
|
|
452
269
|
|
|
453
270
|
```ts
|
|
454
271
|
/**
|
|
455
|
-
* @evidence
|
|
456
|
-
* @evidenceReview
|
|
272
|
+
* @evidence .agents/skills/principles/SKILL.md#no-hard-coding Looks the handler up in the registry it was handed and branches on no known name.
|
|
273
|
+
* @evidenceReview .agents/skills/principles/SKILL.md#no-hard-coding #6385235 Searched the body for literal names and fixture values; found none.
|
|
457
274
|
*/
|
|
458
|
-
export function calculatePrice(): number {
|
|
459
|
-
return 0;
|
|
460
|
-
}
|
|
461
275
|
```
|
|
462
276
|
|
|
463
|
-
The seven
|
|
464
|
-
|
|
465
|
-
`EvidenceFingerprint.inspect(inventory, unitId)` returns the fingerprint version, the unit's content digest, the full scope digest, and the presented seven-character value. It refuses incomplete inventories. Source snapshot digests remain separate cache identities.
|
|
277
|
+
The fingerprint is seven hexadecimal characters over the cited unit and its subtree. Annotations and whitespace do not change it; content does, and the diagnostic then prints the new value:
|
|
466
278
|
|
|
467
|
-
|
|
279
|
+
```bash
|
|
280
|
+
ERROR [graph-missing-review] claim[0] 'every function answers every engineering principle' (typescript) -> reference[0] (markdown)
|
|
281
|
+
Location: /workspace/app/src/resolve.ts:4:4
|
|
282
|
+
Claim 1 ('every function answers every engineering principle') reference 1: @evidence for '.agents/skills/principles/SKILL.md#no-hard-coding' has no matching @evidenceReview; the current scope fingerprint is '#6385235'.
|
|
283
|
+
Repair: Add '@evidenceReview .agents/skills/principles/SKILL.md#no-hard-coding #6385235 <what you checked>' on the same semantic host.
|
|
284
|
+
```
|
|
468
285
|
|
|
469
|
-
|
|
286
|
+
Reviews never provide coverage. `@evidenceReview` pairs with `@evidence`; `@evidenceExcludeReview` pairs with `@evidenceExclude`. A fingerprint version upgrade expires every review once; re-review before updating the value. The checker handles omissions; humans handle falsehoods.
|
|
470
287
|
|
|
471
|
-
|
|
288
|
+
### 3.3. States
|
|
472
289
|
|
|
473
|
-
|
|
|
290
|
+
| State | Result |
|
|
474
291
|
| --- | --- |
|
|
475
|
-
|
|
|
476
|
-
|
|
|
477
|
-
|
|
|
478
|
-
|
|
|
479
|
-
|
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
292
|
+
| A claim selects no units | Inactive, not fabricated coverage. |
|
|
293
|
+
| A reference selects no units | `graph-empty-reference`; exit 1. |
|
|
294
|
+
| A unit has no valid acknowledgement | Missing coverage; exit 1. |
|
|
295
|
+
| A source is unreadable, partially parsed, or unresolved | The population is incomplete, derivative findings are suppressed; exit 2. |
|
|
296
|
+
| A claim is disabled or has effective severity `off` | Removed before loading. |
|
|
297
|
+
|
|
298
|
+
Incomplete analysis never passes as an empty population.
|
|
299
|
+
|
|
300
|
+
## 4. Configuration
|
|
301
|
+
|
|
302
|
+
`evidence.config.ts` exports one `IEvidenceConfig` with a `claims` array and an optional top-level `severity`. Severity defaults to `error`; claims inherit the top-level value, and references inherit their claim. The config is evaluated through the consumer's `ttsx` and validated with `typia` before any source is read.
|
|
303
|
+
|
|
304
|
+
### 4.1. Claim
|
|
305
|
+
|
|
306
|
+
| Property | Type | Default | Behavior |
|
|
307
|
+
| --- | --- | --- | --- |
|
|
308
|
+
| `type` | Artifact type | required | Selects the adapter: `typescript`, `rust`, `prisma`, `markdown`, `swagger`, and every other certified type. |
|
|
309
|
+
| `files` | `string[]` | required | Ordered globs relative to `root`; `!` excludes, a later pattern reincludes. |
|
|
310
|
+
| `reference` | `IEvidenceReference \| IEvidenceReference[]` | required | One reference or an array of independent obligations. |
|
|
311
|
+
| `name` | `string` | none | Labels diagnostics without merging claims. |
|
|
312
|
+
| `severity` | `"error" \| "warning" \| "off"` | config, then `error` | `off` removes the claim; `warning` never fails the check. |
|
|
313
|
+
| `disabled` | `boolean` | `false` | Validates the shape but loads nothing. |
|
|
314
|
+
| `root` | `string` | config directory | Resolves claim globs; names one directory, not a glob. |
|
|
315
|
+
| `symbol` | Symbol or nonempty array | family default | Selects claim hosts. |
|
|
316
|
+
| `evidenceExcludeCarriers` | `string[]` | all selected files | Narrows exclusions to matching selected files. |
|
|
317
|
+
|
|
318
|
+
### 4.2. Reference
|
|
319
|
+
|
|
320
|
+
| Property | Type | Default | Behavior |
|
|
321
|
+
| --- | --- | --- | --- |
|
|
322
|
+
| `type` | Artifact type | required | Selects the referenced adapter independently of the claim. |
|
|
323
|
+
| `files` / `file` | `string[]` / `string` | required | Globs, or for a Swagger reference one local path or URL. |
|
|
324
|
+
| `root` | `string` | config directory | Resolves reference files and Markdown targets; names one directory, not a glob. |
|
|
325
|
+
| `symbol` | Symbol or nonempty array | family default | Selects the denominator. |
|
|
326
|
+
| `severity` | Evidence severity | claim | `off` removes the reference. |
|
|
327
|
+
| `noEvidenceExclude` | `boolean` | `false` | Exclusions fail and provide no coverage. |
|
|
328
|
+
| `uniqueEvidence` | `boolean` | `false` | At most one positive host per unit. |
|
|
329
|
+
| `singleEvidencePerSymbol` | `boolean` | `false` | Every host cites exactly one unit. |
|
|
330
|
+
| `requireReview` | `boolean` | `false` | Every acknowledgement needs a current review. |
|
|
331
|
+
| `checklist` | `boolean` | `false` | Markdown only. Every host answers every selected heading. |
|
|
332
|
+
|
|
333
|
+
### 4.3. Symbols
|
|
334
|
+
|
|
335
|
+
| Family | Symbols | Claim default | Reference default |
|
|
336
|
+
| --- | --- | --- | --- |
|
|
337
|
+
| Programming | `type`, `function`, `property` | all | `type`, or all when unavailable |
|
|
338
|
+
| Markdown | `file`, `h1`, `h2`, `h3`, `h4` | all | all |
|
|
339
|
+
| Database | `model`, `column`, `relation` | all | `model` |
|
|
340
|
+
| Swagger | `operation` | `operation` | `operation` |
|
|
341
|
+
|
|
342
|
+
`type` chooses the language before file selection: `.h` follows `c`, `cpp`, or `objc`; `.sql` follows the configured dialect. Roots resolve from the config file; globs are case-sensitive, and a bare `src` selects nothing.
|
|
343
|
+
|
|
344
|
+
## 5. Tags and targets
|
|
345
|
+
|
|
346
|
+
```text
|
|
347
|
+
@evidence <target> <reason>
|
|
348
|
+
@evidenceExclude <target> <reason>
|
|
349
|
+
@evidenceReview <target> [#fingerprint] <description>
|
|
350
|
+
@evidenceExcludeReview <target> [#fingerprint] <description>
|
|
351
|
+
```
|
|
486
352
|
|
|
487
|
-
|
|
353
|
+
Tags live in documentation attached to selected hosts. A target is one whitespace-free token; the prose is required. `{@link Symbol}` is rejected: addresses are file-qualified. `@internal`, `@hidden`, and `@ignore` withdraw a declaration and its descendants.
|
|
488
354
|
|
|
489
|
-
|
|
355
|
+
| Target | Form |
|
|
356
|
+
| --- | --- |
|
|
357
|
+
| Programming | `<path>#<accessor>`, path from the citing file: `../calculator.ts#add` |
|
|
358
|
+
| Instance member | `SomeClass.prototype.member` in TypeScript, JavaScript, and Python; `SomeClass.member` in other languages; `Shop.Sale.self.find` for Ruby singletons |
|
|
359
|
+
| Literal segment | JSON-string brackets: `Namespace["member.with.dots"]`, ``Shop["Box`1"]``, `Sale["impl Service"].run`, `Widget["-send:to:"]` |
|
|
360
|
+
| Markdown | `docs/requirements.md#anchor` from the reference root; `{#anchor}` wins, otherwise the lowercased heading |
|
|
361
|
+
| Prisma | `prisma:Sale`, `prisma:Sale.price`, no path |
|
|
362
|
+
| SQL and DBML | File-qualified: `schema.sql#app.item.id`; `evidence list` prints relation segments |
|
|
363
|
+
| Swagger | `POST:/sales`, uppercase method and exact path |
|
|
490
364
|
|
|
491
|
-
|
|
365
|
+
Markdown tags go in HTML comments under the heading they belong to. Prisma tags go in `///` on models and fields. Swagger tags go in each operation's `description`. Aliases such as barrels add addresses without adding obligations.
|
|
492
366
|
|
|
493
|
-
|
|
367
|
+
| Outcome | Meaning |
|
|
368
|
+
| --- | --- |
|
|
369
|
+
| `resolved` | Exactly one unit owns the address in this scope. |
|
|
370
|
+
| `missing-file`, `missing-member`, `out-of-population` | Nothing selected owns it. |
|
|
371
|
+
| `ambiguous` | Several units own it. |
|
|
372
|
+
| `hidden` | The unit was withdrawn. |
|
|
373
|
+
| `malformed`, `unsupported-host`, `incomplete` | The target or its host cannot be interpreted. |
|
|
374
|
+
|
|
375
|
+
The resolver never falls back to a project-wide name.
|
|
376
|
+
|
|
377
|
+
## 6. Languages
|
|
378
|
+
|
|
379
|
+
Every family can be a claim and a reference and can cite every other.
|
|
380
|
+
|
|
381
|
+
Programming languages and SQL dialects parse through upstream Tree-sitter grammars, Prisma through its own parser, and Swagger as JSON or YAML. Adapters run no compiler, preprocessor, macro, or build; a construct that could change the public surface and cannot be resolved makes analysis incomplete.
|
|
382
|
+
|
|
383
|
+
`evidence languages` prints the shipped registry.
|
|
384
|
+
|
|
385
|
+
### 6.1. Programming languages
|
|
386
|
+
|
|
387
|
+
| Type | Files | Public surface | Documentation |
|
|
388
|
+
| --- | --- | --- | --- |
|
|
389
|
+
| `typescript` | `.ts`, `.cts`, `.mts`, `.tsx` | Static module exports and declaration files | Attached JSDoc |
|
|
390
|
+
| `javascript` | `.js`, `.jsx`, `.cjs`, `.mjs` | Static ESM exports and unconditional CommonJS initialization | Attached JSDoc |
|
|
391
|
+
| `python` | `.py`, `.pyi` | Module exports with static import and `__all__` resolution | Docstrings or adjacent `#` runs |
|
|
392
|
+
| `go` | `.go` | Exported package declarations with receiver ownership | Adjacent comments |
|
|
393
|
+
| `rust` | `.rs` | Crate modules, public reexports, nominal impl members | Doc comments or `#[doc]` |
|
|
394
|
+
| `java` | `.java` | Source-public declarations, independent of JPMS | Attached Javadoc |
|
|
395
|
+
| `csharp` | `.cs` | Source-public declarations and partial identities | `///` or `/** */` XML |
|
|
396
|
+
| `c` | `.c`, `.h` | External declarations, tags, typedefs, fields, enumerators per file | Attached Doxygen |
|
|
397
|
+
| `cpp` | `.cpp`, `.cc`, `.cxx`, `.h`, `.hpp`, and other C++ spellings | Namespaces, public members, templates, bounded aliases | Attached Doxygen |
|
|
398
|
+
| `ruby` | `.rb`, `.rake`, `.gemspec`, `Gemfile`, `Rakefile` | Classes, modules, public methods, constants, `attr_*`, reopenings | Adjacent `#` runs or RDoc |
|
|
399
|
+
| `kotlin` | `.kt` | Public-by-default declarations, companions, resolvable extensions | Adjacent KDoc |
|
|
400
|
+
| `swift` | `.swift` | Public/open declarations of one module per root, extensions merged | `///` or `/** */` DocC |
|
|
401
|
+
| `php` | `.php` | Namespace declarations and public class members | Adjacent PHPDoc |
|
|
402
|
+
| `dart` | `.dart` | Non-underscore declarations across `part` and relative `export` | `///` or `/** */` |
|
|
403
|
+
| `scala` | `.scala` | Unrestricted Scala 2 and 3 declarations, named givens, object exports | Adjacent Scaladoc |
|
|
404
|
+
| `lua` | `.lua` | Explicit globals and one returned literal module table | `---` LuaDoc or long comments |
|
|
405
|
+
| `matlab` | `.m` | `classdef` types, primary functions, public members, `@Class` folders | Percent help |
|
|
406
|
+
| `objc` | `.m`, `.h` | Interfaces, protocols, categories, methods, properties, `@public` ivars | Doxygen, `///`, `//!` |
|
|
407
|
+
| `zig` | `.zig` | `pub` declarations, exposed container fields, direct aliases | Adjacent `///` |
|
|
408
|
+
|
|
409
|
+
Every adapter maps its language onto `type`, `function`, and `property`, keeps undocumented public declarations in the population, and ignores tags inside code examples, strings, and ordinary comments.
|
|
410
|
+
|
|
411
|
+
<details>
|
|
412
|
+
<summary><strong>Per-language addresses and boundaries</strong></summary>
|
|
413
|
+
|
|
414
|
+
- **TypeScript.** `Class.member` static, `Class.prototype.member` instance. Direct, aliased, default, star, and namespace exports resolve through relative paths; type-only exports keep type-space units. Package `exports`, path aliases, ambient modules, global augmentations, and `export =` are incomplete.
|
|
415
|
+
- **JavaScript.** `.js` follows the nearest `package.json` `type`. CommonJS accepts unconditional top-level `exports.x = local`, `module.exports.x = local`, and `module.exports = { x, alias: local }`; computed keys and conditional mutation are incomplete.
|
|
416
|
+
- **Python.** `Class.member` static, `Class.prototype.member` instance. Static `__all__` or non-underscore declarations; docstrings or a same-indent `#` run before the declaration. Missing local sources and dynamic `__all__` are incomplete.
|
|
417
|
+
- **Go.** `Type.Method`; a grouped declaration's comment hosts every member. Build tags, promoted members, and generated declarations are outside the surface.
|
|
418
|
+
- **Rust.** Unrestricted `pub` only; `pub use` chains keep one identity. `Sale["impl crate::Service"].run` for trait impls, `Pair[0]` for tuple fields. Cargo features, macros, `#[path]`, and `cfg` alternatives are incomplete.
|
|
419
|
+
- **Java.** `Sale.java#Sale.calculate`; same-owner same-name methods form one overload family. `{@code}` and `<pre>` content is inert.
|
|
420
|
+
- **C#.** Namespaced `Sale.cs#Shop.Sale.Total`; ``["Box`1"]`` for generics, `["this[]"]` for indexers, `["operator +"]` for operators. Partial declarations share one unit. Conditional compilation is incomplete.
|
|
421
|
+
- **C.** `models.h#["struct Sale"]`, or `models.h#Sale` when unambiguous. Include guards are accepted; other preprocessing is incomplete, and includes are not traversed.
|
|
422
|
+
- **C++.** ``shop["Box`1"].value``, `constructor`, `destructor`, `["operator +"]`. Class members default private, struct members public. Macros, specialization, inheritance, and modules are incomplete.
|
|
423
|
+
- **Ruby.** `Shop.Sale.total`, `Shop.Sale.self.find`, `Shop.Sale["price="]`. Lexical visibility and `module_function` apply; `define_method` and mixins are not evaluated.
|
|
424
|
+
- **Kotlin.** `Contract.Companion.run`, `["extension(kotlin.String)"].measure`. Overrides without explicit visibility and `expect`/`actual` are incomplete; `.kts` is rejected.
|
|
425
|
+
- **Swift.** One module per root. `Contract.init`, `Contract.subscript`, `Contract.static["+"]`; extensions merge under their owner. Macros and conditional compilation are incomplete.
|
|
426
|
+
- **PHP.** `App.Contract.run`, `App.Contract.$value`. Trait composition, `include`, `eval`, and `class_alias` are incomplete.
|
|
427
|
+
- **Dart.** `Contract.new`, `Contract["operator +"]`; `part` and relative `export` graphs resolve. Package or SDK export URIs are incomplete.
|
|
428
|
+
- **Scala.** `demo.Contract.run`, `demo["object Contract"].apply`; companions never merge. Anonymous givens, `derives`, and macros are incomplete.
|
|
429
|
+
- **Lua.** `contract.lua#module.run`; dot and colon methods share one address; no `type` units. Metatables and `require` are incomplete.
|
|
430
|
+
- **MATLAB.** `+pkg/@Widget/Widget.m#pkg.Widget.run`; percent help after signatures or before members. `eval`, `dynamicprops`, and missing class folders are incomplete.
|
|
431
|
+
- **Objective-C.** `Widget["-send:to:"]`, `["Widget(Extras)"]["-extra"]`, `["protocol(Widget)"]["-run"]`; configure `type: "objc"` explicitly. Non-guard preprocessing and Objective-C++ are incomplete.
|
|
432
|
+
- **Zig.** `contract.zig#Contract.run`; quoted identifiers are literal segments. `usingnamespace`, comptime namespaces, and build options are incomplete.
|
|
433
|
+
|
|
434
|
+
</details>
|
|
435
|
+
|
|
436
|
+
### 6.2. Database schema languages
|
|
437
|
+
|
|
438
|
+
Database adapters share `model`, `column`, and `relation`. Selected files are a declared schema snapshot; migrations, views, and executable statements are incomplete, and no adapter runs SQL.
|
|
439
|
+
|
|
440
|
+
| Type | Files | Units | Documentation |
|
|
441
|
+
| --- | --- | --- | --- |
|
|
442
|
+
| `prisma` | `.prisma` | Models and views; parser output decides column versus relation | `///` on models and fields |
|
|
443
|
+
| `postgresql` | `.sql` | `schema.table` tables, columns, foreign keys, `ADD COLUMN`, named `ADD CONSTRAINT` | Adjacent comments, `COMMENT ON` |
|
|
444
|
+
| `mysql` | `.sql` | `CREATE TABLE` tables, columns, table `FOREIGN KEY` | Adjacent comments, `COMMENT` strings |
|
|
445
|
+
| `sqlite` | `.sql`, `.sqlite` | `CREATE TABLE` tables, columns, inline or table foreign keys | Leading `--` runs or one block comment |
|
|
446
|
+
| `bigquery` | `.sql`, `.bqsql` | `CREATE TABLE` tables, scalar and `STRUCT` fields, `NOT ENFORCED` foreign keys | Leading comments, `OPTIONS(description)` |
|
|
447
|
+
| `sql` | `.sql` | Portable `CREATE TABLE`, inline `REFERENCES`, anonymous `FOREIGN KEY` | Leading `--` runs or block comments |
|
|
448
|
+
| `dbml` | `.dbml` | Tables, scalar fields, inline or standalone `Ref` relations | Notes or adjacent standalone comments |
|
|
449
|
+
|
|
450
|
+
Addresses are file-qualified except Prisma: `schema.sql#app.item.id`, `schema.sql#Store.Child.parent_id`, `schema.dbml#users.id`. Relation segments are dialect-specific (`["constraint owner_fk"]`, `["foreign-key:...]`, `posts["$ref:owner"]`); `evidence list` prints the escaped form.
|
|
451
|
+
|
|
452
|
+
### 6.3. Markdown and Swagger
|
|
453
|
+
|
|
454
|
+
Markdown yields one `file` unit and one per ATX `h1` to `h4`; HTML comments are the only hosts.
|
|
455
|
+
|
|
456
|
+
Swagger 2.0 and OpenAPI 3.x yield `METHOD:/path` operations whose `description` hosts tags. An operation's fingerprint covers its content, effective servers and security, and referenced local components. A reference by URL is fetched on every load.
|
|
457
|
+
|
|
458
|
+
## 7. CLI
|
|
459
|
+
|
|
460
|
+
| Command | Purpose | Formats |
|
|
461
|
+
| --- | --- | --- |
|
|
462
|
+
| `check` | Evaluate every enabled obligation. Default command. | `text`, `json` |
|
|
463
|
+
| `list` | List selected units and addressable ancestors with canonical targets. | `text`, `json` |
|
|
464
|
+
| `inspect <target>` | Resolve one target in every scope and show its fingerprint and citations. | `text`, `json` |
|
|
465
|
+
| `graph` | Export boundaries, nodes, edges, reviews, and diagnostics. | `json`, `mermaid`, `dot` |
|
|
466
|
+
| `languages` | Print the certified adapter registry without loading a config. | `text`, `json` |
|
|
467
|
+
| `init` | Create a typed starter config without overwriting. | none |
|
|
468
|
+
|
|
469
|
+
| Option | Behavior |
|
|
470
|
+
| --- | --- |
|
|
471
|
+
| `-c, --config <path>` | Config path, default `evidence.config.ts`. |
|
|
472
|
+
| `--cwd <path>` | Resolve CLI paths from another directory. |
|
|
473
|
+
| `--format <value>` | Output format from the table above. |
|
|
474
|
+
| `-o, --output <path>` | Write the result to a file and keep stdout empty. |
|
|
475
|
+
| `--language`, `--kind` | Filter `list` rows after the full check. |
|
|
476
|
+
| `-w, --watch` | Recheck `check` when a dependency changes; NDJSON with `--format json`. |
|
|
494
477
|
|
|
495
|
-
|
|
496
|
-
pnpm install --frozen-lockfile
|
|
497
|
-
pnpm build
|
|
498
|
-
pnpm start --include config_loader
|
|
499
|
-
pnpm check:format
|
|
500
|
-
```
|
|
478
|
+
Exit 0 is a complete analysis without errors, 1 is a complete analysis with violations, 2 is an invalid command or incomplete analysis. JSON reports carry `schemaVersion: 1`.
|
|
501
479
|
|
|
502
|
-
|
|
480
|
+
## 8. References
|
|
503
481
|
|
|
504
|
-
|
|
482
|
+
### 8.1. Implementations
|
|
505
483
|
|
|
506
|
-
|
|
484
|
+
For projects whose graph uses only TypeScript, Prisma, Swagger, and Markdown, use [`@ttsc/evidence`](https://github.com/samchon/ttsc/tree/master/packages/evidence). Its dedicated compiler integration is slightly more efficient for that scope than the Tree-sitter implementation.
|
|
507
485
|
|
|
508
|
-
|
|
486
|
+
For graphs that include any other supported language, use `evidence`; its Tree-sitter adapters cover the broader set listed above.
|
|
509
487
|
|
|
510
|
-
|
|
488
|
+
### 8.2. Background
|
|
511
489
|
|
|
512
|
-
|
|
490
|
+
[Evidence Graph: Make Every SKILL Instruction 100% Enforced](https://ttsc.dev/blog/evidence-graph-make-every-skill-instruction-100-percent-enforced/) introduces the method. [The `@ttsc/evidence` README](https://github.com/samchon/ttsc/blob/master/packages/evidence/README.md) documents its original implementation.
|
|
513
491
|
|
|
514
|
-
|
|
492
|
+
Written instructions alone are not enforcement. [_The Compliance Gap_](https://arxiv.org/abs/2605.01771) examined the tool logs of six frontier models. Across 60 runs, none followed the written instruction, yet more than 90% reported compliance. [Cheating Agents](https://debugml.github.io/cheating-agents) shows the underlying incentive: when a cheaper path passes the available check, agents take it.
|
|
515
493
|
|
|
516
|
-
|
|
494
|
+
Evidence leaves creation to the model and makes adherence executable.
|