Polyglot document intelligence with a Rust core: extract text, metadata, images, tables, and structured data from 106 formats across 140 file extensions, plus code intelligence for 371 languages. Fifteen bindings, with CLI, REST API, and MCP server.
This report summarizes scanner evidence for xberg-io/xberg, a Rust project with 9,400 GitHub stars. SynthScan examined 1,999,215 lines of code across 6903 source files, recording 10127 pattern matches distributed across 24 syntactic categories. The legacy adjusted pattern signal is 6.1 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 8968 finding(s).
Are imports declared and package/API names verified? 984 finding(s).
Are wrappers, guards, and repeated structures necessary? 1069 finding(s).
Which changes need focused human review? 10127 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 10127 distinct pattern matches across 24 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | Cargo.toml | 181 | # | COMMENT |
| LOW | Cargo.toml | 221 | # WASM size optimization: reduce memory spikes during compilation | COMMENT |
| LOW | basemind.toml | 1 | # basemind configuration — https://github.com/Goldziher/basemind | COMMENT |
| LOW | basemind.toml | 21 | # max_file_bytes = 2097152 | COMMENT |
| LOW | basemind.toml | 41 | [mcp] | COMMENT |
| LOW | basemind.toml | 61 | # extract_archives = false | COMMENT |
| LOW | rustfmt.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| LOW | .alef-toml-merge-provenance.toml | 1 | # alef toml-merge provenance record -- COMMIT THIS FILE, do not add it to .gitignore. | COMMENT |
| LOW | .hadolint.yaml | 1 | # DL3008/DL3018: version-pinning apt/apk packages is intentionally not done — | COMMENT |
| LOW | pyproject.toml | 21 | # docling-jobkit drives the batch path (in-process converter manager) and pulls | COMMENT |
| LOW | Package.swift | 41 | // RustBridgeBinary so the linker picks up the static library symbols. | COMMENT |
| LOW | Taskfile.yml | 201 | # poly runs shellcheck on shell but does NOT run shfmt: a tracked .sh mangled on purpose | COMMENT |
| LOW | .alef-ownership.toml | 1 | # alef ownership record -- COMMIT THIS FILE, do not add it to .gitignore. | COMMENT |
| LOW | .alef-generation.toml | 1 | # alef generation-inputs record -- COMMIT THIS FILE, do not add it to .gitignore. | COMMENT |
| LOW | alef.toml | 161 | # compiles xberg's heavy native dependency chain (onnxruntime, tesseract, | COMMENT |
| LOW | alef.toml | 201 | manifest = "packages/python/pyproject.toml" | COMMENT |
| LOW | alef.toml | 261 | manifest = "packages/kotlin-android/build.gradle.kts" | COMMENT |
| LOW | alef.toml | 281 | # four nested dirnames each print "usage: dirname string [...]", ANDROID_HOME | COMMENT |
| LOW | alef.toml | 301 | # xberg_swift.a and libxberg_ffi.a explicitly, and neither exists until | COMMENT |
| LOW | alef.toml | 361 | "crates/xberg-pdfium-render/include/pdfium_*/**", | COMMENT |
| LOW | alef.toml | 401 | "plugin/.ai-rulez-generated.json", | COMMENT |
| LOW | alef.toml | 441 | use-default-ignores = true | COMMENT |
| LOW | alef.toml | 601 | # written, so paying it down makes this file shorter, never longer. A line count on declarative | COMMENT |
| LOW | alef.toml | 1141 | "unicorn/prefer-top-level-await", | COMMENT |
| LOW | alef.toml | 1341 | # glob from the builtin "**/api.py" default (same builtin key can't be | COMMENT |
| LOW | alef.toml | 1441 | "crates/xberg/src/plugins/processor/trait.rs", | COMMENT |
| LOW | alef.toml | 1601 | output = "packages/python/xberg/" | COMMENT |
| LOW | alef.toml | 1821 | # already compiled in transitively: `simd-utf8` is only pulled in by the | COMMENT |
| LOW | alef.toml | 1841 | # (#244). Both are already active transitively via wasm-target -> no-ort-target | COMMENT |
| LOW | alef.toml | 1861 | # zero-dependency, type-only leaves -- and "html" is already compiled into | COMMENT |
| LOW | alef.toml | 1881 | # marker rather than hard-failing -- but grep -c ALEF-OMITTED | COMMENT |
| LOW | alef.toml | 1981 | COMMENT | |
| LOW | alef.toml | 2021 | # swift-bridge shim can depend on `xberg-ffi` with that feature — heic's | COMMENT |
| LOW | alef.toml | 2041 | # artifacts. | COMMENT |
| LOW | alef.toml | 2801 | # `ffi_features` (`full-no-heic`), which pulls `sceptre-ocr` -> `sceptre-ocr-ort`. | COMMENT |
| LOW | alef.toml | 5521 | # `async_extraction` snippet under `docs-site/src/snippets/c/`. With `async = true` | COMMENT |
| LOW | docs-site/public/demo.html | 381 | phase: (label) => { | COMMENT |
| LOW | docs-site/public/demo.html | 401 | const WASM_PKG = "@xberg-io/xberg-wasm"; | COMMENT |
| LOW | tools/benchmark-harness/tests/baseline_validation.rs | 1 | //! Baseline validation tests for benchmark infrastructure | COMMENT |
| LOW | tools/benchmark-harness/tests/profiling_zero_cost.rs | 1 | //! Verification that the no-op profiling path is the one compiled in when `profiling` is off. | COMMENT |
| LOW | tools/benchmark-harness/tests/fixture_validation.rs | 1 | //! Comprehensive fixture validation integration tests | COMMENT |
| LOW | tools/benchmark-harness/scripts/bench_local.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | tools/benchmark-harness/scripts/bench_local.sh | 21 | # FRAMEWORKS single-file frameworks (default: xberg baseline+layout, liteparse) | COMMENT |
| LOW | tools/benchmark-harness/src/system_load.rs | 1 | //! System-load capture for benchmark measurements. | COMMENT |
| LOW | tools/benchmark-harness/src/sizes.rs | 21 | #[derive(Debug, Clone, Serialize, Deserialize)] | COMMENT |
| LOW | tools/benchmark-harness/src/sizes.rs | 281 | "markitdown" => "markitdown", | COMMENT |
| LOW | tools/benchmark-harness/src/sizes.rs | 361 | /// to a directory that was actually walked and found to contain 0 bytes of models, which cannot | COMMENT |
| LOW | tools/benchmark-harness/src/types.rs | 41 | } | COMMENT |
| LOW | tools/benchmark-harness/src/types.rs | 61 | pub first_parse_ms: f64, | COMMENT |
| LOW | tools/benchmark-harness/src/types.rs | 81 | #[serde(rename = "baseline-paddle")] | COMMENT |
| LOW | tools/benchmark-harness/src/types.rs | 221 | } | COMMENT |
| LOW | tools/benchmark-harness/src/types.rs | 241 | /// - **ConfigSetupError**: environment/dependency misconfiguration (missing models, torch module not available, etc.) | COMMENT |
| LOW | tools/benchmark-harness/src/types.rs | 261 | EmptyContent, | COMMENT |
| LOW | tools/benchmark-harness/src/types.rs | 321 | COMMENT | |
| LOW | tools/benchmark-harness/src/types.rs | 341 | pub pdf_metadata: Option<PdfMetadata>, | COMMENT |
| LOW | tools/benchmark-harness/src/types.rs | 381 | /// Whether a result's timing/resource measurements are valid to pool into performance | COMMENT |
| LOW | tools/benchmark-harness/src/types.rs | 461 | pub peak_memory_delta_bytes: u64, | COMMENT |
| LOW | tools/benchmark-harness/src/types.rs | 521 | /// Reading-order fidelity (0.0-1.0), via anchor-based Longest Increasing Subsequence. | COMMENT |
| LOW | tools/benchmark-harness/src/types.rs | 561 | COMMENT | |
| LOW | tools/benchmark-harness/src/types.rs | 581 | /// Framework version | COMMENT |
| 7741 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | …ates/xberg-candle-ocr/src/models/deepseek_ocr/model.rs | 1292 | config.vision_config.width.sam_vit_b.global_attn_indexes.clone(), | CODE |
| CRITICAL⚡ | …n-android/src/main/kotlin/io/xberg/NoChunkingReason.kt | 33 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = NoChunkingReason.SmallFile::class, name = "SmallFile"), | CODE |
| CRITICAL⚡ | …n-android/src/main/kotlin/io/xberg/NoChunkingReason.kt | 34 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = NoChunkingReason.FewPages::class, name = "FewPages"), | CODE |
| CRITICAL⚡ | …n-android/src/main/kotlin/io/xberg/NoChunkingReason.kt | 35 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = NoChunkingReason.TextLayerDetected::class, name = "TextLa | CODE |
| CRITICAL⚡ | …n-android/src/main/kotlin/io/xberg/NoChunkingReason.kt | 36 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = NoChunkingReason.FormatNotChunkable::class, name = "Forma | CODE |
| CRITICAL⚡ | …n-android/src/main/kotlin/io/xberg/NoChunkingReason.kt | 37 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = NoChunkingReason.ChunkingDisabled::class, name = "Chunkin | CODE |
| CRITICAL⚡ | …n-android/src/main/kotlin/io/xberg/NoChunkingReason.kt | 38 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = NoChunkingReason.FastTextExtraction::class, name = "FastT | CODE |
| CRITICAL | …n-android/src/main/kotlin/io/xberg/NoChunkingReason.kt | 54 | @com.fasterxml.jackson.databind.annotation.JsonDeserialize(using = NoChunkingReasonChunkingDisabledDeserializer::cla | CODE |
| CRITICAL | …n-android/src/main/kotlin/io/xberg/NoChunkingReason.kt | 57 | @com.fasterxml.jackson.databind.annotation.JsonDeserialize(using = NoChunkingReasonFastTextExtractionDeserializer::c | CODE |
| CRITICAL⚡ | …android/src/main/kotlin/io/xberg/EmbeddingModelType.kt | 33 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = EmbeddingModelType.Preset::class, name = "preset"), | CODE |
| CRITICAL⚡ | …android/src/main/kotlin/io/xberg/EmbeddingModelType.kt | 34 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = EmbeddingModelType.Custom::class, name = "custom"), | CODE |
| CRITICAL⚡ | …android/src/main/kotlin/io/xberg/EmbeddingModelType.kt | 35 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = EmbeddingModelType.Llm::class, name = "llm"), | CODE |
| CRITICAL⚡ | …android/src/main/kotlin/io/xberg/EmbeddingModelType.kt | 36 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = EmbeddingModelType.Plugin::class, name = "plugin") | CODE |
| CRITICAL | …lin-android/src/main/kotlin/io/xberg/FormatMetadata.kt | 36 | @com.fasterxml.jackson.databind.annotation.JsonDeserialize(using = FormatMetadataDeserializer::class) | CODE |
| CRITICAL | …lin-android/src/main/kotlin/io/xberg/FormatMetadata.kt | 37 | @com.fasterxml.jackson.databind.annotation.JsonSerialize(using = FormatMetadataSerializer::class) | CODE |
| CRITICAL | …lin-android/src/main/kotlin/io/xberg/FormatMetadata.kt | 127 | else -> throw com.fasterxml.jackson.databind.exc.InvalidFormatException( | CODE |
| CRITICAL⚡ | …/kotlin-android/src/main/kotlin/io/xberg/AuthConfig.kt | 33 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = AuthConfig.Basic::class, name = "basic"), | CODE |
| CRITICAL⚡ | …/kotlin-android/src/main/kotlin/io/xberg/AuthConfig.kt | 34 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = AuthConfig.Bearer::class, name = "bearer"), | CODE |
| CRITICAL⚡ | …/kotlin-android/src/main/kotlin/io/xberg/AuthConfig.kt | 35 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = AuthConfig.Header::class, name = "header") | CODE |
| CRITICAL⚡ | …d/src/main/kotlin/io/xberg/SparseEmbeddingModelType.kt | 33 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = SparseEmbeddingModelType.Preset::class, name = "preset"), | CODE |
| CRITICAL⚡ | …d/src/main/kotlin/io/xberg/SparseEmbeddingModelType.kt | 34 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = SparseEmbeddingModelType.Custom::class, name = "custom"), | CODE |
| CRITICAL⚡ | …d/src/main/kotlin/io/xberg/SparseEmbeddingModelType.kt | 35 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = SparseEmbeddingModelType.Plugin::class, name = "plugin") | CODE |
| CRITICAL | …lin-android/src/main/kotlin/io/xberg/EntityCategory.kt | 36 | @com.fasterxml.jackson.databind.annotation.JsonDeserialize(using = EntityCategoryDeserializer::class) | CODE |
| CRITICAL | …lin-android/src/main/kotlin/io/xberg/EntityCategory.kt | 37 | @com.fasterxml.jackson.databind.annotation.JsonSerialize(using = EntityCategorySerializer::class) | CODE |
| CRITICAL | …lin-android/src/main/kotlin/io/xberg/EntityCategory.kt | 82 | else -> throw com.fasterxml.jackson.databind.exc.InvalidFormatException( | CODE |
| CRITICAL | …lin-android/src/main/kotlin/io/xberg/EntityCategory.kt | 96 | else -> throw com.fasterxml.jackson.databind.exc.InvalidFormatException( | CODE |
| CRITICAL | …lin-android/src/main/kotlin/io/xberg/EntityCategory.kt | 103 | throw com.fasterxml.jackson.databind.exc.InvalidFormatException( | CODE |
| CRITICAL⚡ | …-android/src/main/kotlin/io/xberg/DocumentStructure.kt | 98 | private val VALUE_METHOD_MAPPER = com.fasterxml.jackson.module.kotlin.jacksonObjectMapper() | CODE |
| CRITICAL⚡ | …-android/src/main/kotlin/io/xberg/DocumentStructure.kt | 99 | .registerModule(com.fasterxml.jackson.datatype.jdk8.Jdk8Module()) | CODE |
| CRITICAL⚡ | …-android/src/main/kotlin/io/xberg/DocumentStructure.kt | 101 | com.fasterxml.jackson.databind.module.SimpleModule() | CODE |
| CRITICAL | …-android/src/main/kotlin/io/xberg/DocumentStructure.kt | 125 | com.fasterxml.jackson.module.kotlin.KotlinModule.Builder() | CODE |
| CRITICAL | …ndroid/src/main/kotlin/io/xberg/OcrBoundingGeometry.kt | 38 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = OcrBoundingGeometry.Rectangle::class, name = "rectangle") | CODE |
| CRITICAL | …ndroid/src/main/kotlin/io/xberg/OcrBoundingGeometry.kt | 39 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = OcrBoundingGeometry.Quadrilateral::class, name = "quadril | CODE |
| CRITICAL⚡ | …otlin-android/src/main/kotlin/io/xberg/DoctorReport.kt | 50 | private val VALUE_METHOD_MAPPER = com.fasterxml.jackson.module.kotlin.jacksonObjectMapper() | CODE |
| CRITICAL⚡ | …otlin-android/src/main/kotlin/io/xberg/DoctorReport.kt | 51 | .registerModule(com.fasterxml.jackson.datatype.jdk8.Jdk8Module()) | CODE |
| CRITICAL⚡ | …otlin-android/src/main/kotlin/io/xberg/DoctorReport.kt | 53 | com.fasterxml.jackson.databind.module.SimpleModule() | CODE |
| CRITICAL | …otlin-android/src/main/kotlin/io/xberg/DoctorReport.kt | 77 | com.fasterxml.jackson.module.kotlin.KotlinModule.Builder() | CODE |
| CRITICAL⚡ | …kotlin-android/src/main/kotlin/io/xberg/HostMatcher.kt | 49 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = HostMatcher.Exact::class, name = "exact"), | CODE |
| CRITICAL⚡ | …kotlin-android/src/main/kotlin/io/xberg/HostMatcher.kt | 50 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = HostMatcher.Suffix::class, name = "suffix"), | CODE |
| CRITICAL⚡ | …kotlin-android/src/main/kotlin/io/xberg/HostMatcher.kt | 51 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = HostMatcher.Cidr::class, name = "cidr") | CODE |
| CRITICAL⚡ | …lin-android/src/main/kotlin/io/xberg/FootnoteConfig.kt | 61 | private val VALUE_METHOD_MAPPER = com.fasterxml.jackson.module.kotlin.jacksonObjectMapper() | CODE |
| CRITICAL⚡ | …lin-android/src/main/kotlin/io/xberg/FootnoteConfig.kt | 62 | .registerModule(com.fasterxml.jackson.datatype.jdk8.Jdk8Module()) | CODE |
| CRITICAL⚡ | …lin-android/src/main/kotlin/io/xberg/FootnoteConfig.kt | 64 | com.fasterxml.jackson.databind.module.SimpleModule() | CODE |
| CRITICAL | …lin-android/src/main/kotlin/io/xberg/FootnoteConfig.kt | 88 | com.fasterxml.jackson.module.kotlin.KotlinModule.Builder() | CODE |
| CRITICAL | …kages/kotlin-android/src/main/kotlin/io/xberg/Xberg.kt | 45 | private val byteArrayModule = com.fasterxml.jackson.databind.module.SimpleModule().apply { | CODE |
| CRITICAL | …kages/kotlin-android/src/main/kotlin/io/xberg/Xberg.kt | 79 | .registerModule(com.fasterxml.jackson.datatype.jdk8.Jdk8Module()) | CODE |
| CRITICAL | …kages/kotlin-android/src/main/kotlin/io/xberg/Xberg.kt | 82 | com.fasterxml.jackson.databind.module.SimpleModule() | CODE |
| CRITICAL | …kages/kotlin-android/src/main/kotlin/io/xberg/Xberg.kt | 106 | com.fasterxml.jackson.module.kotlin.KotlinModule.Builder() | CODE |
| CRITICAL | …otlin-android/src/main/kotlin/io/xberg/OutputFormat.kt | 37 | @com.fasterxml.jackson.databind.annotation.JsonDeserialize(using = OutputFormatDeserializer::class) | CODE |
| CRITICAL | …otlin-android/src/main/kotlin/io/xberg/OutputFormat.kt | 38 | @com.fasterxml.jackson.databind.annotation.JsonSerialize(using = OutputFormatSerializer::class) | CODE |
| CRITICAL | …otlin-android/src/main/kotlin/io/xberg/OutputFormat.kt | 74 | else -> throw com.fasterxml.jackson.databind.exc.InvalidFormatException( | CODE |
| CRITICAL | …otlin-android/src/main/kotlin/io/xberg/OutputFormat.kt | 88 | else -> throw com.fasterxml.jackson.databind.exc.InvalidFormatException( | CODE |
| CRITICAL | …otlin-android/src/main/kotlin/io/xberg/OutputFormat.kt | 95 | throw com.fasterxml.jackson.databind.exc.InvalidFormatException( | CODE |
| CRITICAL⚡ | …-android/src/main/kotlin/io/xberg/RerankerModelType.kt | 33 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = RerankerModelType.Preset::class, name = "preset"), | CODE |
| CRITICAL⚡ | …-android/src/main/kotlin/io/xberg/RerankerModelType.kt | 34 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = RerankerModelType.Custom::class, name = "custom"), | CODE |
| CRITICAL⚡ | …-android/src/main/kotlin/io/xberg/RerankerModelType.kt | 35 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = RerankerModelType.Llm::class, name = "llm"), | CODE |
| CRITICAL⚡ | …-android/src/main/kotlin/io/xberg/RerankerModelType.kt | 36 | com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = RerankerModelType.Plugin::class, name = "plugin") | CODE |
| CRITICAL | …tlin-android/src/main/kotlin/io/xberg/DefaultClient.kt | 29 | .registerModule(com.fasterxml.jackson.datatype.jdk8.Jdk8Module()) | CODE |
| CRITICAL | …tlin-android/src/main/kotlin/io/xberg/DefaultClient.kt | 61 | .registerModule(com.fasterxml.jackson.datatype.jdk8.Jdk8Module()) | CODE |
| CRITICAL | …es/kotlin-android/src/main/kotlin/io/xberg/DiffHunk.kt | 42 | @field:com.fasterxml.jackson.databind.annotation.JsonSerialize(contentAs = DiffLine::class) | CODE |
| 140 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docs-site/src/snippets/python/ocr/cloud_ocr_backend.md | 28 | def supports_document_processing(self) -> bool: | CODE |
| LOW | docs-site/src/snippets/python/ocr/cloud_ocr_backend.md | 31 | def emits_structured_markdown(self) -> bool: | CODE |
| LOW | docs-site/src/content/docs/reference/api-ruby.md | 4334 | def supports_document_processing() | CODE |
| LOW | docs-site/src/content/docs/reference/api-ruby.md | 4357 | def emits_structured_markdown() | CODE |
| LOW | docs-site/src/content/docs/reference/api-ruby.md | 4408 | def page_orientation_handling() | CODE |
| LOW | docs-site/src/content/docs/reference/api-php.md | 56 | public static function extractWithExternalRedaction(ExtractInput $input, ExtractionConfig $config, string $findingsJson, | CODE |
| LOW | docs-site/src/content/docs/reference/api-php.md | 264 | public static function registerDocumentExtractor(DocumentExtractor $extractor): void | CODE |
| LOW | docs-site/src/content/docs/reference/api-php.md | 299 | public static function unregisterDocumentExtractor(string $name): void | CODE |
| LOW | docs-site/src/content/docs/reference/api-php.md | 429 | public static function listOcrBackendCapabilities(): array<OcrBackendCapabilities> | CODE |
| LOW | docs-site/src/content/docs/reference/api-php.md | 456 | public static function listOcrBackendCapabilitiesFor(OcrConfig $config): array<OcrBackendCapabilities> | CODE |
| LOW | docs-site/src/content/docs/reference/api-php.md | 494 | public static function ocrBackendSupportsLanguage(string $backend, string $language): bool | CODE |
| LOW | docs-site/src/content/docs/reference/api-php.md | 527 | public static function ocrBackendSupportsLanguageFor(string $backend, string $language, OcrConfig $config): bool | CODE |
| LOW | docs-site/src/content/docs/reference/api-php.md | 4334 | public function supportsDocumentProcessing(): bool | CODE |
| LOW | docs-site/src/content/docs/reference/api-typescript.md | 56 | function extractWithExternalRedaction(input: ExtractInput, config: ExtractionConfig, findingsJson: string, offsetEncodin | CODE |
| LOW | docs-site/src/content/docs/reference/api-typescript.md | 264 | function registerDocumentExtractor(extractor: DocumentExtractor): void | CODE |
| LOW | docs-site/src/content/docs/reference/api-typescript.md | 299 | function unregisterDocumentExtractor(name: string): void | CODE |
| LOW | docs-site/src/content/docs/reference/api-typescript.md | 429 | function listOcrBackendCapabilities(): Array<OcrBackendCapabilities> | CODE |
| LOW | docs-site/src/content/docs/reference/api-typescript.md | 456 | function listOcrBackendCapabilitiesFor(config: OcrConfig): Array<OcrBackendCapabilities> | CODE |
| LOW | docs-site/src/content/docs/reference/api-typescript.md | 494 | function ocrBackendSupportsLanguage(backend: string, language: string): boolean | CODE |
| LOW | docs-site/src/content/docs/reference/api-typescript.md | 527 | function ocrBackendSupportsLanguageFor(backend: string, language: string, config: OcrConfig): boolean | CODE |
| LOW | docs-site/src/content/docs/reference/api-elixir.md | 58 | def extract_with_external_redaction(input, config, findings_json, offset_encoding, max_findings) | CODE |
| LOW | docs-site/src/content/docs/reference/api-elixir.md | 291 | def clear_document_extractors() | CODE |
| LOW | docs-site/src/content/docs/reference/api-elixir.md | 366 | def list_ocr_backend_capabilities() | CODE |
| LOW | docs-site/src/content/docs/reference/api-elixir.md | 394 | def list_ocr_backend_capabilities_for(config) | CODE |
| LOW | docs-site/src/content/docs/reference/api-elixir.md | 433 | def ocr_backend_supports_language(backend, language) | CODE |
| LOW | docs-site/src/content/docs/reference/api-elixir.md | 467 | def ocr_backend_supports_language_for(backend, language, config) | CODE |
| LOW | docs-site/src/content/docs/reference/api-elixir.md | 4222 | def supports_document_processing(obj) | CODE |
| LOW | docs-site/src/content/docs/reference/api-elixir.md | 4245 | def emits_structured_markdown(obj) | CODE |
| LOW | docs-site/src/content/docs/reference/api-elixir.md | 4296 | def page_orientation_handling(obj) | CODE |
| LOW | docs-site/src/content/docs/reference/api-python.md | 56 | def extract_with_external_redaction(input: ExtractInput, config: ExtractionConfig, findings_json: str, offset_encoding: | CODE |
| LOW | docs-site/src/content/docs/reference/api-python.md | 282 | def clear_document_extractors() -> None | CODE |
| LOW | docs-site/src/content/docs/reference/api-python.md | 355 | def list_ocr_backend_capabilities() -> list[OcrBackendCapabilities] | CODE |
| LOW | docs-site/src/content/docs/reference/api-python.md | 382 | def list_ocr_backend_capabilities_for(config: OcrConfig) -> list[OcrBackendCapabilities] | CODE |
| LOW | docs-site/src/content/docs/reference/api-python.md | 420 | def ocr_backend_supports_language(backend: str, language: str) -> bool | CODE |
| LOW | docs-site/src/content/docs/reference/api-python.md | 453 | def ocr_backend_supports_language_for(backend: str, language: str, config: OcrConfig) -> bool | CODE |
| LOW | docs-site/src/content/docs/reference/api-python.md | 4190 | def supports_document_processing(self) -> bool | CODE |
| LOW | docs-site/src/content/docs/reference/api-python.md | 4213 | def emits_structured_markdown(self) -> bool | CODE |
| LOW | docs-site/src/content/docs/reference/api-python.md | 4264 | def page_orientation_handling(self) -> PageOrientationHandling | CODE |
| LOW | docs-site/src/content/docs/reference/api-wasm.md | 226 | function registerDocumentExtractor(extractor: DocumentExtractor): void | CODE |
| LOW | docs-site/src/content/docs/reference/api-wasm.md | 261 | function unregisterDocumentExtractor(name: string): void | CODE |
| LOW | docs-site/src/content/docs/reference/api-wasm.md | 391 | function listOcrBackendCapabilities(): Array<OcrBackendCapabilities> | CODE |
| LOW | docs-site/src/content/docs/reference/api-wasm.md | 418 | function listOcrBackendCapabilitiesFor(config: OcrConfig): Array<OcrBackendCapabilities> | CODE |
| LOW | docs-site/src/content/docs/reference/api-wasm.md | 456 | function ocrBackendSupportsLanguage(backend: string, language: string): boolean | CODE |
| LOW | docs-site/src/content/docs/reference/api-wasm.md | 489 | function ocrBackendSupportsLanguageFor(backend: string, language: string, config: OcrConfig): boolean | CODE |
| LOW | tools/ocr-measure/score_gt_lines.py | 70 | def _unescape_markdown_outside_code(text: str) -> str: | CODE |
| LOW⚡ | tools/ocr-measure/test_ocr_measure.py | 12 | def test_should_remove_successive_markdown_list_markers() -> None: | CODE |
| LOW⚡ | tools/ocr-measure/test_ocr_measure.py | 22 | def test_should_preserve_backslashes_inside_inline_code() -> None: | CODE |
| LOW⚡ | tools/ocr-measure/test_ocr_measure.py | 27 | def test_should_preserve_backslashes_inside_fenced_code() -> None: | CODE |
| LOW⚡ | tools/ocr-measure/test_ocr_measure.py | 38 | def test_should_preserve_shorter_backtick_run_inside_longer_fence() -> None: | CODE |
| LOW⚡ | tools/ocr-measure/test_ocr_measure.py | 48 | def test_should_preserve_content_inside_tilde_fence() -> None: | CODE |
| LOW⚡ | tools/ocr-measure/test_ocr_measure.py | 57 | def test_should_preserve_non_markdown_path_backslashes() -> None: | CODE |
| LOW⚡ | tools/ocr-measure/test_ocr_measure.py | 62 | def test_should_fail_fast_when_filter_has_no_runtime_toggle() -> None: | CODE |
| LOW | tools/benchmark-harness/tests/test_docling_extract.py | 132 | def test_render_includes_text_nested_under_pictures(self) -> None: | CODE |
| LOW | tools/benchmark-harness/tests/test_docling_extract.py | 145 | def test_converter_configuration_fails_closed(self) -> None: | CODE |
| LOW | tools/benchmark-harness/tests/test_docling_extract.py | 161 | def test_batch_uses_jobkit_single_lazy_ordered_timed(self) -> None: | CODE |
| LOW | tools/benchmark-harness/tests/test_docling_extract.py | 198 | def test_batch_plaintext_renders_export_to_text(self) -> None: | CODE |
| LOW | tools/benchmark-harness/tests/test_docling_extract.py | 212 | def test_batch_renders_partial_success_content(self) -> None: | CODE |
| LOW | tools/benchmark-harness/tests/test_mineru_extract.py | 26 | def test_native_batch_uses_one_do_parse_call_and_preserves_input_order(self) -> None: | CODE |
| LOW | tools/benchmark-harness/tests/test_mineru_extract.py | 58 | def test_batch_reports_only_makespan_and_unavailable_item_timings(self) -> None: | CODE |
| LOW | tools/benchmark-harness/tests/test_mineru_extract.py | 74 | def test_missing_native_output_fails_strict_cardinality(self) -> None: | CODE |
| 828 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/ocr-measure/score_gt_lines.py | 26 | CODE | |
| LOW | tools/benchmark-harness/tests/test_docling_extract.py | 8 | CODE | |
| LOW | tools/benchmark-harness/tests/test_mineru_extract.py | 4 | CODE | |
| LOW | tools/benchmark-harness/scripts/normalize_gt.py | 16 | CODE | |
| LOW | tools/benchmark-harness/scripts/gt_eval.py | 30 | CODE | |
| LOW | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 3 | CODE | |
| LOW | tools/benchmark-harness/scripts/build_corpus.py | 27 | CODE | |
| LOW | tools/benchmark-harness/scripts/mineru_extract.py | 14 | CODE | |
| LOW | …/benchmark-harness/scripts/build_structural_sidecar.py | 40 | CODE | |
| LOW | tools/benchmark-harness/scripts/docling_extract.py | 9 | CODE | |
| LOW | tools/benchmark-harness/scripts/generate_markdown_gt.py | 24 | CODE | |
| LOW | …ls/benchmark-harness/scripts/plausibility_calibrate.py | 33 | CODE | |
| LOW | tools/benchmark-harness/scripts/unstructured_extract.py | 4 | CODE | |
| LOW | tools/benchmark-harness/scripts/markitdown_extract.py | 3 | CODE | |
| LOW | …ls/benchmark-harness/scripts/build_language_sidecar.py | 36 | CODE | |
| LOW | tools/generate_test_fixtures/tests/test_generation.py | 7 | CODE | |
| LOW | …xtures/src/generate_test_fixtures/security_fixtures.py | 22 | CODE | |
| LOW | …_fixtures/src/generate_test_fixtures/xlsx_revisions.py | 15 | CODE | |
| LOW | …_test_fixtures/src/generate_test_fixtures/gt_schema.py | 14 | CODE | |
| LOW | …t_fixtures/src/generate_test_fixtures/odt_revisions.py | 17 | CODE | |
| LOW | …test_fixtures/src/generate_test_fixtures/diff_pairs.py | 20 | CODE | |
| LOW | …fixtures/src/generate_test_fixtures/pdf_incremental.py | 28 | CODE | |
| LOW | …_fixtures/src/generate_test_fixtures/docx_revisions.py | 15 | CODE | |
| LOW | …t_fixtures/src/generate_test_fixtures/pptx_comments.py | 16 | CODE | |
| LOW | …e_test_fixtures/src/generate_test_fixtures/__main__.py | 8 | CODE | |
| LOW | tools/perf/extract_top_symbols.py | 17 | CODE | |
| LOW | plugin/.hermes/plugins/xberg/__init__.py | 8 | CODE | |
| LOW | plugin/.hermes/plugins/xberg/__init__.py | 9 | CODE | |
| LOW | …in/.hermes/package/src/xberg_hermes_plugin/__init__.py | 8 | CODE | |
| LOW | …in/.hermes/package/src/xberg_hermes_plugin/__init__.py | 9 | CODE | |
| LOW | …parser-xberg/llama_index/node_parser/xberg/__init__.py | 3 | CODE | |
| LOW | …ex-readers-xberg/llama_index/readers/xberg/__init__.py | 3 | CODE | |
| LOW | …ndex-readers-xberg/llama_index/readers/xberg/_utils.py | 24 | CODE | |
| LOW | …ndex-readers-xberg/llama_index/readers/xberg/_utils.py | 24 | CODE | |
| LOW | …ndex-readers-xberg/llama_index/readers/xberg/_utils.py | 24 | CODE | |
| LOW | …ndex-readers-xberg/llama_index/readers/xberg/_utils.py | 24 | CODE | |
| LOW | …ndex-readers-xberg/llama_index/readers/xberg/_utils.py | 24 | CODE | |
| LOW | …ndex-readers-xberg/llama_index/readers/xberg/_utils.py | 24 | CODE | |
| LOW | integrations/python/crewai/src/crewai_xberg/__init__.py | 3 | CODE | |
| LOW | integrations/python/crewai/src/crewai_xberg/__init__.py | 3 | CODE | |
| LOW | integrations/python/crewai/src/crewai_xberg/__init__.py | 3 | CODE | |
| LOW | integrations/python/crewai/src/crewai_xberg/__init__.py | 3 | CODE | |
| LOW | integrations/python/crewai/src/crewai_xberg/__init__.py | 3 | CODE | |
| LOW | integrations/python/crewai/src/crewai_xberg/__init__.py | 3 | CODE | |
| LOW | …tions/python/surrealdb/src/surrealdb_xberg/__init__.py | 3 | CODE | |
| LOW | …tions/python/surrealdb/src/surrealdb_xberg/__init__.py | 4 | CODE | |
| LOW | …tions/python/surrealdb/src/surrealdb_xberg/__init__.py | 5 | CODE | |
| LOW | …tions/python/surrealdb/src/surrealdb_xberg/__init__.py | 5 | CODE | |
| LOW | …tions/python/surrealdb/src/surrealdb_xberg/__init__.py | 5 | CODE | |
| LOW | …tions/python/surrealdb/src/surrealdb_xberg/__init__.py | 6 | CODE | |
| LOW | …tions/python/surrealdb/src/surrealdb_xberg/__init__.py | 7 | CODE | |
| LOW | …tions/python/surrealdb/src/surrealdb_xberg/__init__.py | 7 | CODE | |
| LOW | integrations/python/langchain/tests/conftest.py | 11 | CODE | |
| LOW | …tions/python/langchain/src/langchain_xberg/__init__.py | 3 | CODE | |
| LOW | …rations/python/langchain/src/langchain_xberg/loader.py | 3 | CODE | |
| LOW | integrations/python/txtai/src/txtai_xberg/__init__.py | 3 | CODE | |
| LOW | integrations/python/txtai/src/txtai_xberg/__init__.py | 3 | CODE | |
| LOW | integrations/python/txtai/src/txtai_xberg/__init__.py | 3 | CODE | |
| LOW | integrations/python/txtai/src/txtai_xberg/__init__.py | 3 | CODE | |
| LOW | integrations/python/txtai/src/txtai_xberg/__init__.py | 3 | CODE | |
| 501 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | alef.toml | 406 | # tools/benchmark-harness/src/bench_matrix.rs (*_MANIFEST_BLAKE3) and verified | COMMENT |
| MEDIUM | alef.toml | 1982 | # Test harness for the in-crate #[wasm_bindgen_test] suites in src/engine.rs; | COMMENT |
| MEDIUM | tools/benchmark-harness/Cargo.toml | 40 | # default-on feature would break `cargo build -p benchmark-harness` there. Selecting | COMMENT |
| MEDIUM | tools/benchmark-harness/scripts/bench_local.sh | 20 | # OUT output root; profile label is always appended (default: tools/benchmark-harness/results/local) | COMMENT |
| MEDIUM | tools/benchmark-harness/scripts/bench_local.sh | 32 | # HARNESS benchmark-harness executable (default: ./target/release/benchmark-harness) | COMMENT |
| MEDIUM | tools/benchmark-harness/scripts/build_corpus.py | 936 | # `materialize` is on-demand (harness pre-run step), not part of `all`. ~keep | STRING |
| MEDIUM | …benchmark-harness/scripts/bench_local_profiles_test.sh | 2 | # This harness drives bench_local_profiles.sh, which it sources: the variables assigned here are | COMMENT |
| MEDIUM⚡ | tools/benchmark-harness/scripts/mineru_extract.py | 431 | # Reap MinerU's orphaned render pool before emitting, so the harness sees stdout EOF. | COMMENT |
| MEDIUM⚡ | tools/benchmark-harness/scripts/mineru_extract.py | 441 | # Reap MinerU's orphaned render pool before emitting, so the harness sees stdout EOF. | COMMENT |
| MEDIUM | tools/benchmark-harness/scripts/mineru_extract.py | 40 | # restricted runner it hangs the full harness timeout. The bench workflow avoids the | COMMENT |
| MEDIUM | tools/benchmark-harness/scripts/mineru_extract.py | 321 | # Only reap by process-group when we OWN the group. The benchmark harness | COMMENT |
| MEDIUM | tools/benchmark-harness/scripts/mineru_extract.py | 327 | # harness (which reads our stdout to EOF), so when we are not the group | COMMENT |
| MEDIUM | tools/benchmark-harness/scripts/docling_extract.py | 110 | # harness OCR flag; ``abort_on_error`` stays False so one bad document does not sink the batch. | COMMENT |
| MEDIUM | …ls/benchmark-harness/scripts/plausibility_calibrate.py | 45 | # files under `tools/benchmark-harness/fixtures/pdf/`. ~keep | COMMENT |
| MEDIUM | tools/benchmark-harness/src/cli.rs | 73 | #[command(name = "benchmark-harness")] | COMMENT |
| MEDIUM | tools/benchmark-harness/src/cli.rs | 74 | #[command(about = "Benchmark harness for document extraction frameworks", long_about = None)] | COMMENT |
| MEDIUM | tools/benchmark-harness/src/cli.rs | 184 | #[arg(short, long, default_value = "tools/benchmark-harness/fixtures/split")] | COMMENT |
| MEDIUM | crates/xberg-pdfium-render/src/bindgen/pdfium_7678.rs | 1518 | #[doc = " Experimental API.\n Function: FPDF_GetXFAPacketContent\n Get the content of a packet in the XFA a | COMMENT |
| MEDIUM | crates/xberg/Cargo.toml | 121 | # in tools/benchmark-harness, which owns its own `profiling`/`pprof` pair; | COMMENT |
| MEDIUM | crates/xberg/tests/ocr_errors.rs | 3 | //! This module tests OCR error scenarios to ensure robust error handling: | COMMENT |
| MEDIUM | crates/xberg/tests/typst_behavioral_tests.rs | 895 | /// Even if a heading has no text, extraction should be robust. | COMMENT |
| MEDIUM | crates/xberg/tests/gh1779_scan_score_separation.rs | 20 | /// tolerance: it is the minimum gap that makes the separation robust to small scoring | COMMENT |
| MEDIUM | …ates/xberg/tests/gh1832_shaded_table_reconstruction.rs | 522 | /// Per-fill-kind absolute counts for GH#1837, in a form a shell harness can grep and compare: | COMMENT |
| MEDIUM | …ates/xberg/tests/gh1832_shaded_table_reconstruction.rs | 708 | /// re-pass (GH#1897). A change gated on "the caller chose nothing" is invisible to a harness that | COMMENT |
| MEDIUM | crates/xberg/src/embeddings/engine.rs | 223 | /// robust to either left- or right-padding. A row whose mask is entirely zero | COMMENT |
| MEDIUM | crates/xberg/src/embeddings/engine.rs | 478 | /// last_pool picks the final non-pad token per row, robust to right- and | COMMENT |
| MEDIUM | crates/xberg/src/plugins/registry/mod.rs | 204 | /// `PostProcessorRegistryGuard` cycle). A by-name check is more robust than an | COMMENT |
| MEDIUM | crates/xberg/src/ocr/shaded_rows.rs | 76 | /// The percentile used to estimate a band's ink (foreground) value, robust to a | COMMENT |
| MEDIUM | crates/xberg/src/ocr/shaded_rows.rs | 319 | /// contiguous run; a column *median* over the band's rows is already robust enough that a | COMMENT |
| MEDIUM | crates/xberg/src/ocr/table/coverage.rs | 17 | /// clustering heuristic that is far less robust than the hOCR-derived content it replaces. | COMMENT |
| MEDIUM | crates/xberg/src/pdf/render.rs | 535 | /// producing a usable raster for OCR/VLM (which are robust to moderate downscaling). | COMMENT |
| MEDIUM | crates/xberg/src/pdf/native/text.rs | 1554 | /// returns their median split point, robust to the rare line whose own gap | COMMENT |
| MEDIUM | crates/xberg/src/pdf/structure/constants.rs | 27 | /// jitter amplitudes ≥ 3 pt while being robust against false positives: | COMMENT |
| MEDIUM | crates/xberg/src/pdf/structure/adapters.rs | 385 | /// Rotation-robust line-height proxy for a 4-point OCR quadrilateral, in raster | COMMENT |
| MEDIUM | …s/xberg/src/pdf/structure/regions/table_recognition.rs | 1529 | /// paragraphs are never swallowed. Alignment is robust for dense many-column | COMMENT |
| MEDIUM | crates/xberg/src/reranking/mod.rs | 337 | /// robust to how different tokenizers encode a leading word. | COMMENT |
| MEDIUM | …erg-native-pdf/tests/test_word_boundary_integration.rs | 387 | /// When TJ offset AND geometric gap both indicate boundary, detection should be robust. | COMMENT |
| MEDIUM | …ates/xberg-native-pdf/tests/test_adaptive_threshold.rs | 199 | /// Expected: median should be 0.3 (robust to outlier) | COMMENT |
| MEDIUM | …ates/xberg-native-pdf/tests/test_adaptive_threshold.rs | 573 | /// Adaptive threshold should use median to be robust to these outliers. | COMMENT |
| MEDIUM | …erg-native-pdf/tests/test_inline_image_agl_fallback.rs | 5 | //! A robust ToUnicode + embedded-TrueType `cmap` + Adobe Glyph List + | COMMENT |
| MEDIUM | …f/tests/test_transparency_flattening_smask_knockout.rs | 277 | // defensive coverage is "the renderer is robust to broken input." | COMMENT |
| MEDIUM | …f/tests/test_transparency_flattening_smask_knockout.rs | 462 | // For the renderer at HEAD, the simplest robust assertion is | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/parser.rs | 369 | // This heuristic makes parsing more robust at the cost of spec compliance. | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/outline.rs | 362 | /// the search stays robust against damaged trees. ~keep | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/pipeline/ordered_span.rs | 21 | /// Confidence: 0.90 (robust for multi-column layouts). | COMMENT |
| MEDIUM | …erg-native-pdf/src/pipeline/reading_order/geometric.rs | 114 | // This is more robust than median for documents with varying layouts ~keep | COMMENT |
| MEDIUM | …s/xberg-native-pdf/src/pipeline/reading_order/xycut.rs | 1742 | // Using a cluster fraction (not raw spread) is robust to rows | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/layout/text_block.rs | 21 | /// - More robust for complex layouts | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/layout/region_classifier.rs | 130 | // TABLE: short content per line. This is the robust grid signal — a prose or | COMMENT |
| MEDIUM | …ates/xberg-native-pdf/src/document/span_postprocess.rs | 561 | /// # Alignment (robust, per span) | COMMENT |
| MEDIUM | …ates/xberg-native-pdf/src/document/span_postprocess.rs | 561 | /// # Alignment (robust, per span) | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/document/tables.rs | 394 | /// for robust table detection without explicit structure markup. | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/document/reading_order.rs | 1069 | /// - More robust for complex layouts | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/rendering/page_renderer.rs | 9227 | // robust against off-page axis endpoints. ~keep | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/rendering/page_renderer.rs | 9233 | // diagonal margin keeps the test robust. ~keep | COMMENT |
| MEDIUM | …/xberg-native-pdf/src/rendering/separation_renderer.rs | 1000 | /// best-effort behaviour and keeps separation rendering robust on PDFs | COMMENT |
| MEDIUM | …s/xberg-native-pdf/src/text/complex_script_detector.rs | 147 | /// - Some(true): Definitely create a boundary | COMMENT |
| MEDIUM | …s/xberg-native-pdf/src/text/complex_script_detector.rs | 148 | /// - Some(false): Definitely do NOT create a boundary | COMMENT |
| MEDIUM | …s/xberg-native-pdf/src/text/complex_script_detector.rs | 242 | /// - Some(true): Definitely create a boundary | COMMENT |
| MEDIUM | …s/xberg-native-pdf/src/text/complex_script_detector.rs | 243 | /// - Some(false): Definitely do NOT create a boundary | COMMENT |
| 33 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/benchmark-harness/cohorts/native-email-fast.json | 11 | "msg/fake-email.json", | CODE |
| LOW⚡ | …-harness/vendored/docling/md/picture_classification.md | 27 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …-harness/vendored/docling/md/picture_classification.md | 27 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …-harness/vendored/docling/md/picture_classification.md | 33 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …-harness/vendored/docling/md/picture_classification.md | 33 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …-harness/vendored/docling/md/picture_classification.md | 65 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …-harness/vendored/docling/md/picture_classification.md | 65 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …-harness/vendored/docling/md/picture_classification.md | 71 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …-harness/vendored/docling/md/picture_classification.md | 71 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …hmark-harness/vendored/docling/md/word365_structure.md | 3 | Lorem ipsum dolor | CODE |
| LOW⚡ | …hmark-harness/vendored/docling/md/word365_structure.md | 9 | Lorem ipsum dolor sit amet | CODE |
| LOW⚡ | …hmark-harness/vendored/docling/md/word365_structure.md | 9 | Lorem ipsum dolor sit amet | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 3 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 3 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 5 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 5 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 13 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 13 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 15 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 15 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 19 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 19 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 21 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 21 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 25 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 25 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 27 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 27 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 29 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW⚡ | …chmark-harness/vendored/docling/md/code_and_formula.md | 29 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW | …ls/benchmark-harness/vendored/docling/md/pdf_tables.md | 3 | Lorem ipsum dolor sit amet, consectetur adipiscing elit | CODE |
| LOW | …ls/benchmark-harness/vendored/docling/md/pdf_tables.md | 3 | Lorem ipsum dolor sit amet, consectetur adipiscing elit | CODE |
| LOW | …ols/benchmark-harness/vendored/docling/md/issue-905.md | 5 | Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus facilisis odio sed mi. Curabitur suscipit. Nullam ve | CODE |
| LOW | …ols/benchmark-harness/vendored/docling/md/issue-905.md | 5 | Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus facilisis odio sed mi. Curabitur suscipit. Nullam ve | CODE |
| LOW | …benchmark-harness/vendored/docling/md/pdf_structure.md | 3 | Contenu 1, contenu 2, contenu 3. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididu | CODE |
| LOW | …benchmark-harness/vendored/docling/md/pdf_structure.md | 3 | Contenu 1, contenu 2, contenu 3. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididu | CODE |
| LOW | …benchmark-harness/vendored/docling/md/pdf_structure.md | 14 | 3. Longue énumération : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut lab | CODE |
| LOW | …benchmark-harness/vendored/docling/md/pdf_structure.md | 14 | 3. Longue énumération : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut lab | CODE |
| LOW | tools/benchmark-harness/src/bench_matrix.rs | 365 | "msg/fake-email.json", | CODE |
| LOW | tools/benchmark-harness/src/bench_matrix.rs | 373 | "fake-email", | CODE |
| LOW | crates/xberg/tests/jupyter_extractor_tests.rs | 42 | /// - Lorem ipsum heading with bold formatting | COMMENT |
| LOW⚡ | crates/xberg/tests/jupyter_extractor_tests.rs | 76 | extraction.content.contains("Lorem ipsum"), | CODE |
| LOW⚡ | crates/xberg/tests/jupyter_extractor_tests.rs | 77 | "Should extract markdown cell 'Lorem ipsum'" | CODE |
| LOW⚡ | crates/xberg/tests/jupyter_extractor_tests.rs | 80 | extraction.content.contains("Lorem ipsum"), | CODE |
| LOW | crates/xberg/tests/docx_output_format.rs | 149 | &redacting(docx(), &["Jane Doe", "jdoe"]), | CODE |
| LOW | crates/xberg/tests/docx_output_format.rs | 182 | let result = extract_one(&bytes, "application/zip", &redacting(docx(), &["Jane Doe", "UEsDB"])).await; | CODE |
| LOW | crates/xberg/tests/llm_response_byte_cap.rs | 106 | r#"{"invoice_number":"INV-001","vendor":"Acme Corp","total":"$42.00"}"#, | CODE |
| LOW | crates/xberg/tests/llm_response_byte_cap.rs | 141 | r#"{"invoice_number":"INV-001","vendor":"Acme Corp","total":"$42.00"}"#, | CODE |
| LOW | crates/xberg/tests/llm_response_byte_cap.rs | 168 | assert_eq!(structured_output["vendor"].as_str(), Some("Acme Corp")); | CODE |
| LOW | …xberg/tests/issue_64_pdf_form_field_values_rendered.rs | 220 | let count = result.content.matches("Jane Doe").count(); | CODE |
| LOW | …xberg/tests/issue_64_pdf_form_field_values_rendered.rs | 223 | "flattened Widget value 'Jane Doe' must appear exactly once in Markdown output, not \ | CODE |
| LOW | crates/xberg/tests/latex_extractor_tests.rs | 92 | Some("John Doe"), | CODE |
| LOW | crates/xberg/tests/latex_extractor_tests.rs | 93 | "FAIL: Should extract author 'John Doe' from \\author{{}} command" | CODE |
| LOW | crates/xberg/tests/structured_pipeline.rs | 117 | r#"{"invoice_number":"INV-001","vendor":"Acme Corp","total":"$42.00"}"#, | CODE |
| LOW | crates/xberg/tests/structured_pipeline.rs | 132 | assert_eq!(structured_output["vendor"].as_str(), Some("Acme Corp")); | CODE |
| LOW | crates/xberg/tests/rtf_extractor_tests.rs | 711 | result.content.to_lowercase().contains("lorem ipsum"), | CODE |
| LOW | crates/xberg/tests/rtf_extractor_tests.rs | 712 | "Content should contain lorem ipsum text" | CODE |
| LOW⚡ | crates/xberg/tests/pdf_form_fields.rs | 253 | let count = content.matches("Jane Doe").count(); | CODE |
| LOW⚡ | crates/xberg/tests/pdf_form_fields.rs | 256 | "flattened Widget value 'Jane Doe' must appear exactly once, not duplicated; got: {content:?}" | CODE |
| LOW⚡ | crates/xberg/tests/pdf_form_fields.rs | 265 | /// `test_documents/ground_truth/pdf/flattened_form.fields.json` expects "Jane Doe". | COMMENT |
| 152 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | rustfmt.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | poly.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | crates/xberg-wasm/Cargo.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | crates/xberg-php/Cargo.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | crates/xberg-ffi/Cargo.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | crates/xberg-ffi/cbindgen.toml | 1 | # This file is auto-generated by alef. DO NOT EDIT. | COMMENT |
| MEDIUM | crates/xberg-node/Cargo.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | crates/xberg-py/Cargo.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | .cargo/config.toml | 1 | # This file is auto-generated by alef. DO NOT EDIT. | COMMENT |
| MEDIUM⚡ | scripts/tests/lib/xberg-bats/load.bash | 32 | # Create the four GitHub Actions workflow-command files and export their paths. | COMMENT |
| MEDIUM | packages/python/pyproject.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/python/xberg/options.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/python/xberg/__init__.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/python/xberg/api.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/python/xberg/exceptions.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/elixir/native/xberg_nif/Cargo.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/dart/rust/Cargo.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/dart/rust/flutter_rust_bridge.yaml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/ruby/.rubocop.yml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/ruby/ext/xberg_rb/native/Cargo.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/ruby/ext/xberg_rb/native/extconf.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/ruby/lib/xberg.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/ruby/lib/xberg/native.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | packages/ruby/lib/xberg/version.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/conftest.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/pyproject.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_registry.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_pdf.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_format_specific.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM⚡ | e2e/python/tests/test_post_processor_management.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_code.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_smoke.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM⚡ | e2e/python/tests/test_reranker_backend_management.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_summarization.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_contract.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_error.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_ocr_backend_management.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_plugin_api.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM⚡ | e2e/python/tests/test_tokenizer_backend_management.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_url.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_extract.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_batch.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_validator_management.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/python/tests/test_renderer_management.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM⚡ | e2e/python/tests/test_embedding_backend_management.py | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/rust/Cargo.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/rust/.cargo/config.toml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/wasm/pnpm-workspace.yaml | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/error_spec.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/batch_spec.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/spec_helper.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/pdf_spec.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/validator_management_spec.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/summarization_spec.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/code_spec.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/url_spec.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/renderer_management_spec.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/plugin_api_spec.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/registry_spec.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| MEDIUM | e2e/ruby/spec/contract_spec.rb | 1 | # This file is auto-generated by alef — DO NOT EDIT. | COMMENT |
| 8 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | Taskfile.yml | 3 | # ============================================================================ | COMMENT |
| MEDIUM | Taskfile.yml | 4 | # ============================================================================ | COMMENT |
| MEDIUM | docs-site/public/demo.html | 370 | // ── Structured logger ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs-site/public/demo.html | 390 | // ── Resolve the latest published WASM release ────────────────────────── | COMMENT |
| MEDIUM | docs-site/public/demo.html | 406 | // ── Upload size limit ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs-site/public/demo.html | 483 | // ── Drag & Drop ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs-site/public/demo.html | 527 | // ── Markdown Renderer ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs-site/public/demo.html | 599 | // ── JSON Syntax Highlighter ──────────────────────────────────────────── | COMMENT |
| MEDIUM | docs-site/public/demo.html | 615 | // ── Extraction via Web Worker ────────────────────────────────────────── | COMMENT |
| MEDIUM | docs-site/public/demo.html | 722 | // ── Process File ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs-site/public/demo.html | 819 | // ── Reset ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs-site/public/demo.html | 835 | // ── Extract it anyway ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs-site/public/demo.html | 849 | // ── Copy ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs-site/public/demo.html | 872 | // ── Tab Switcher ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 53 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 55 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 183 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 185 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 287 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 289 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 451 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 453 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 557 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 559 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 612 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/rotated_text_repair.rs | 614 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/pdf_markdown_regression.rs | 114 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/pdf_markdown_regression.rs | 125 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/pdf_markdown_regression.rs | 289 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/tests/pdf_markdown_regression.rs | 318 | // ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | crates/xberg/src/pdf/structure/constants.rs | 3 | // ~keep ── Glyph-fragmentation repair (issue #962) ──────────────────────────────── | COMMENT |
| MEDIUM | crates/xberg/src/pdf/structure/constants.rs | 3 | // ~keep ── Glyph-fragmentation repair (issue #962) ──────────────────────────────── | COMMENT |
| MEDIUM | crates/xberg/src/pdf/structure/page_number.rs | 38 | // ── Band geometry ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/xberg/src/pdf/structure/page_number.rs | 76 | // ── Shape classification ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/xberg/src/pdf/structure/page_number.rs | 331 | // ── Roman numerals ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/xberg/src/pdf/structure/page_number.rs | 430 | // ── Cross-page sequence evidence ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ates/xberg-native-pdf/tests/test_page_image_handles.rs | 395 | // ── Test B: N images → paint_order is [0, 1, 2] ────────────────────────────── ~keep | COMMENT |
| MEDIUM | crates/xberg-native-pdf/tests/test_path_extraction.rs | 169 | // ─── Optional Content Group (PDF "layer") tagging ───────────────── | COMMENT |
| MEDIUM | …s/xberg-native-pdf/tests/test_render_region_and_fit.rs | 55 | // ── Fit-box DPI rounding regressions ──────────────────────────────────────── | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/content/parser.rs | 2889 | // ── Nom-based operand skippers (test-only, superseded by raw variants) ───── ~keep | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/content/parser.rs | 3109 | // ── Byte-level graphics region scanner ───────────────────────────────────── | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/content/parser.rs | 3243 | // ── Raw index-returning skip functions ───────────────────────────────────── | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/content/parser.rs | 3393 | // ── Fast BT/ET block parser ──────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/extractors/auto.rs | 437 | // ───────────────────────── classifier (T2/T2.5/T3) ───────────────────────── | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/extractors/auto.rs | 759 | // ─────────────────────────── AutoExtractor (T4–T8) ───────────────────────── | COMMENT |
| MEDIUM⚡ | scripts/tests/lib/xberg-bats/load.bash | 28 | # -------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | scripts/tests/lib/xberg-bats/load.bash | 30 | # -------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/tests/lib/xberg-bats/load.bash | 82 | # -------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/tests/lib/xberg-bats/load.bash | 84 | # -------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/tests/lib/xberg-bats/load.bash | 170 | # -------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/tests/lib/xberg-bats/load.bash | 172 | # -------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/tests/lib/xberg-bats/load.bash | 251 | # -------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | scripts/tests/lib/xberg-bats/load.bash | 256 | # -------------------------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .task/tools/demo.yml | 3 | # ============================================================================ | COMMENT |
| MEDIUM | .task/tools/fixtures.yml | 3 | # ============================================================================ | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | basemind.toml | 46 | # Document RAG tier (PDF / Office / HTML / email / images). Requires a `documents` build. | COMMENT |
| MEDIUM | poly.toml | 1279 | # scaffolding step drops these on every regen -- restore them if a regen diff | COMMENT |
| MEDIUM | tools/ocr-measure/score_gt_lines.py | 39 | # Markdown scaffolding the extractor adds that the plain-text ground truth never contains. | COMMENT |
| MEDIUM | tools/benchmark-harness/src/groups.rs | 47 | /// `guardrails.json` only after fresh fixed outputs have been measured. | COMMENT |
| MEDIUM | tools/benchmark-harness/src/split_benchmark.rs | 81 | /// If set, write a `split-boundary-guardrails.json` at this path from the | COMMENT |
| MEDIUM | tools/benchmark-harness/src/split_benchmark.rs | 135 | /// `split-boundary-guardrails.json` schema (mirrors `guardrails.json`). | COMMENT |
| MEDIUM | tools/benchmark-harness/src/split_benchmark.rs | 411 | /// Write a `split-boundary-guardrails.json` from default-threshold results. | COMMENT |
| MEDIUM | tools/benchmark-harness/src/cli.rs | 191 | /// Write a split-boundary-guardrails.json to this path (from default-threshold results) | COMMENT |
| MEDIUM | tools/benchmark-harness/src/fixture/mod.rs | 239 | /// are pinned by `guardrails.json`. What must never happen is `file_type` naming a | COMMENT |
| MEDIUM⚡ | tools/benchmark-harness/src/commands/compare.rs | 32 | /// Enable quality guardrails (fail on regressions) | COMMENT |
| MEDIUM⚡ | tools/benchmark-harness/src/commands/compare.rs | 36 | /// Path to guardrails JSON config file (used when --guardrails is set) | COMMENT |
| MEDIUM⚡ | tools/benchmark-harness/src/commands/compare.rs | 37 | #[arg(long, default_value = "guardrails.json")] | COMMENT |
| MEDIUM | tools/benchmark-harness/src/comparison/execution.rs | 25 | /// Path to a JSON guardrails file. When `guardrails` is true this file | COMMENT |
| MEDIUM | tools/benchmark-harness/src/comparison/mod.rs | 2 | //! compare quality (SF1, TF1) against ground truth with optional guardrails. | COMMENT |
| MEDIUM | tools/benchmark-harness/src/comparison/mod.rs | 28 | //! When `guardrails` is enabled, the comparison enforces per-document minimum | COMMENT |
| MEDIUM | tools/benchmark-harness/src/comparison/mod.rs | 39 | //! [`report`] prints/writes results; [`guardrails`] loads and checks per-document score/order | COMMENT |
| MEDIUM | tools/benchmark-harness/src/comparison/mod.rs | 66 | /// Run comparison with guardrails and return exit code (0 = pass, 1 = fail). | COMMENT |
| MEDIUM | tools/benchmark-harness/src/comparison/guardrails.rs | 10 | /// Data-driven guardrails configuration loaded from JSON. | COMMENT |
| MEDIUM | tools/benchmark-harness/src/comparison/guardrails.rs | 46 | /// Load a guardrails configuration from a JSON file. | COMMENT |
| MEDIUM | tools/benchmark-harness/src/comparison/guardrails.rs | 149 | /// Check guardrails from a loaded config, returning a list of failure messages (empty = all passed). | COMMENT |
| MEDIUM | crates/xberg-cli/README.md | 615 | # Download only the fast embedding model | COMMENT |
| MEDIUM | crates/xberg/Cargo.toml | 651 | ner-llm = ["ner", "liter-llm"] # LLM-driven zero-shot NER (no ORT). | CODE |
| MEDIUM | crates/xberg/tests/generated_fixtures.rs | 1 | //! Integration scaffold for the generated fixture corpus produced by | COMMENT |
| MEDIUM | crates/xberg/tests/gpu_acceleration.rs | 294 | #[ignore = "gpu: requires CUDA + ONNX Runtime CUDA EP + embedding model"] | COMMENT |
| MEDIUM | crates/xberg/tests/gpu_acceleration.rs | 322 | #[ignore = "gpu: requires CUDA + ONNX Runtime CUDA EP + embedding model"] | COMMENT |
| MEDIUM | crates/xberg/src/core/pipeline/features.rs | 1552 | /// Regression test for #258: `chunker_type='semantic'` without an embedding model | COMMENT |
| MEDIUM | crates/xberg/src/core/config/llm.rs | 152 | /// Provider-specific extra parameters merged into the request body (guardrails, | COMMENT |
| MEDIUM | …berg-native-pdf/tests/test_reading_order_glyph_sort.rs | 23 | //! These tests assert the guardrails the sort comparator must hold: | COMMENT |
| MEDIUM | crates/xberg-native-pdf/src/fonts/cmap_injector.rs | 453 | // own (no required tables) but a usable test scaffold for the | COMMENT |
| MEDIUM | …n/.cursor-plugin/skills/xberg/references/python-api.md | 275 | def llm(llm) -> EmbeddingModelType # an LLM-backed embedding model | CODE |
| MEDIUM | plugin/.opencode/skills/xberg/references/python-api.md | 275 | def llm(llm) -> EmbeddingModelType # an LLM-backed embedding model | CODE |
| MEDIUM | plugin/.ai-rulez/skills/xberg/references/python-api.md | 268 | def llm(llm) -> EmbeddingModelType # an LLM-backed embedding model | CODE |
| MEDIUM | plugin/skills/xberg/references/python-api.md | 275 | def llm(llm) -> EmbeddingModelType # an LLM-backed embedding model | CODE |
| MEDIUM | …es/plugins/xberg/skills/xberg/references/python-api.md | 275 | def llm(llm) -> EmbeddingModelType # an LLM-backed embedding model | CODE |
| MEDIUM | …rg_hermes_plugin/skills/xberg/references/python-api.md | 275 | def llm(llm) -> EmbeddingModelType # an LLM-backed embedding model | CODE |
| MEDIUM | plugin/.pi/skills/xberg/references/python-api.md | 275 | def llm(llm) -> EmbeddingModelType # an LLM-backed embedding model | CODE |
| MEDIUM | .cargo/config.toml | 3 | # Re-generate with: alef scaffold | COMMENT |
| MEDIUM | .ai-rulez/skills/chunking-embeddings/SKILL.md | 52 | ### Presets set chunk size AND the embedding model | COMMENT |
| MEDIUM | packages/go/binding.go | 9801 | // Provider-specific extra parameters merged into the request body (guardrails, | COMMENT |
| MEDIUM | packages/dart/test/xberg_test.dart | 10 | // the generated API. Create-only scaffold seed. ~keep | COMMENT |
| MEDIUM | packages/dart/lib/src/xberg_bridge_generated/lib.dart | 12029 | /// Provider-specific extra parameters merged into the request body (guardrails, | COMMENT |
| MEDIUM | packages/swift/Tests/XbergTests/XbergTests.swift | 10 | /// nothing about the generated API. Create-only scaffold seed. ~keep | COMMENT |
| MEDIUM | packages/csharp/src/Xberg/LlmConfig.cs | 148 | /// Provider-specific extra parameters merged into the request body (guardrails, | COMMENT |
| MEDIUM | packages/ruby/spec/xberg_spec.rb | 12 | # value passed in. It proves nothing beyond field storage. Create-only scaffold seed: | COMMENT |
| MEDIUM | packages/ruby/lib/xberg/native.rb | 1192 | ## Provider-hosted embedding model via liter-llm. | COMMENT |
| MEDIUM | packages/ruby/lib/xberg/native.rb | 1238 | ## context window via `max_characters` directly. | COMMENT |
| MEDIUM | packages/ruby/lib/xberg/native.rb | 5013 | # Sparse-embedding model types supported by Xberg. | COMMENT |
| MEDIUM | templates/readme/cli.md | 610 | # Download only the fast embedding model | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 0 | get peak memory usage in bytes using resource module. | STRING |
| HIGH | tools/benchmark-harness/scripts/mineru_extract.py | 0 | get peak memory usage in bytes using resource module. | STRING |
| HIGH | tools/benchmark-harness/scripts/docling_extract.py | 0 | get peak memory usage in bytes using resource module. | STRING |
| HIGH | tools/benchmark-harness/scripts/unstructured_extract.py | 0 | get peak memory usage in bytes using resource module. | STRING |
| HIGH | tools/benchmark-harness/scripts/markitdown_extract.py | 0 | get peak memory usage in bytes using resource module. | STRING |
| HIGH | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 0 | run extraction in a forked child process. closes inherited stdin/stdout so the child cannot corrupt the parent's line-ba | STRING |
| HIGH | tools/benchmark-harness/scripts/mineru_extract.py | 0 | run extraction in a forked child process. closes inherited stdin/stdout so the child cannot corrupt the parent's line-ba | STRING |
| HIGH | tools/benchmark-harness/scripts/docling_extract.py | 0 | run extraction in a forked child process. closes inherited stdin/stdout so the child cannot corrupt the parent's line-ba | STRING |
| HIGH | tools/benchmark-harness/scripts/unstructured_extract.py | 0 | run extraction in a forked child process. closes inherited stdin/stdout so the child cannot corrupt the parent's line-ba | STRING |
| HIGH | tools/benchmark-harness/scripts/markitdown_extract.py | 0 | run extraction in a forked child process. closes inherited stdin/stdout so the child cannot corrupt the parent's line-ba | STRING |
| HIGH | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 0 | execute fn(*args) in a forked child with a timeout. on timeout the child is killed but the parent stays alive — no expen | STRING |
| HIGH | tools/benchmark-harness/scripts/mineru_extract.py | 0 | execute fn(*args) in a forked child with a timeout. on timeout the child is killed but the parent stays alive — no expen | STRING |
| HIGH | tools/benchmark-harness/scripts/docling_extract.py | 0 | execute fn(*args) in a forked child with a timeout. on timeout the child is killed but the parent stays alive — no expen | STRING |
| HIGH | tools/benchmark-harness/scripts/unstructured_extract.py | 0 | execute fn(*args) in a forked child with a timeout. on timeout the child is killed but the parent stays alive — no expen | STRING |
| HIGH | tools/benchmark-harness/scripts/markitdown_extract.py | 0 | execute fn(*args) in a forked child with a timeout. on timeout the child is killed but the parent stays alive — no expen | STRING |
| HIGH | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 0 | parse a request line: json object with path field, or plain file path. | STRING |
| HIGH | tools/benchmark-harness/scripts/mineru_extract.py | 0 | parse a request line: json object with path field, or plain file path. | STRING |
| HIGH | tools/benchmark-harness/scripts/docling_extract.py | 0 | parse a request line: json object with path field, or plain file path. | STRING |
| HIGH | tools/benchmark-harness/scripts/unstructured_extract.py | 0 | parse a request line: json object with path field, or plain file path. | STRING |
| HIGH | tools/benchmark-harness/scripts/markitdown_extract.py | 0 | parse a request line: json object with path field, or plain file path. | STRING |
| HIGH | tools/benchmark-harness/scripts/mineru_extract.py | 0 | persistent server mode: read paths from stdin, write json to stdout. | STRING |
| HIGH | tools/benchmark-harness/scripts/docling_extract.py | 0 | persistent server mode: read paths from stdin, write json to stdout. | STRING |
| HIGH | tools/benchmark-harness/scripts/unstructured_extract.py | 0 | persistent server mode: read paths from stdin, write json to stdout. | STRING |
| HIGH | tools/benchmark-harness/scripts/markitdown_extract.py | 0 | persistent server mode: read paths from stdin, write json to stdout. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …te/src/snippets/python/utils/error_handling_extract.md | 18 | print(f"Error: {error_type}: {message}") | CODE |
| LOW | …nchmark-harness/scripts/generate_vendored_baselines.py | 287 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 56 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 61 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 83 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 98 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 101 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 128 | except Exception as e: | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 162 | print("Error: sync mode requires a file path", file=sys.stderr) | CODE |
| LOW⚡ | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 168 | except Exception as e: | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 169 | print(f"Error extracting with PyMuPDF4LLM: {e}", file=sys.stderr) | CODE |
| LOW⚡ | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 175 | except Exception as e: | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 176 | print(f"Error extracting with PyMuPDF4LLM: {e}", file=sys.stderr) | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/mineru_extract.py | 423 | print("Error: sync mode requires exactly one file", file=sys.stderr) | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/mineru_extract.py | 437 | print("Error: batch mode requires at least one file", file=sys.stderr) | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/mineru_extract.py | 446 | print(f"Error: Unknown mode '{mode}'. Use sync, batch, or server", file=sys.stderr) | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/mineru_extract.py | 450 | print(f"Error extracting with MinerU: {e}", file=sys.stderr) | CODE |
| MEDIUM | tools/benchmark-harness/scripts/mineru_extract.py | 403 | print(f"Error: --format must be 'markdown' or 'plaintext'; got '{output_format}'", file=sys.stderr) | CODE |
| LOW⚡ | tools/benchmark-harness/scripts/mineru_extract.py | 291 | except Exception: | CODE |
| LOW⚡ | tools/benchmark-harness/scripts/mineru_extract.py | 294 | except Exception as e: | CODE |
| LOW⚡ | tools/benchmark-harness/scripts/mineru_extract.py | 449 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/mineru_extract.py | 249 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/mineru_extract.py | 254 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/mineru_extract.py | 276 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/mineru_extract.py | 377 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/docling_extract.py | 215 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/docling_extract.py | 220 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/docling_extract.py | 242 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/docling_extract.py | 257 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/docling_extract.py | 260 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/docling_extract.py | 287 | except Exception as e: | CODE |
| MEDIUM | tools/benchmark-harness/scripts/docling_extract.py | 326 | print(f"Error: --format must be 'markdown' or 'plaintext'; got '{output_format}'", file=sys.stderr) | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/docling_extract.py | 347 | print("Error: sync mode requires exactly one file", file=sys.stderr) | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/docling_extract.py | 355 | print("Error: batch mode requires at least one file", file=sys.stderr) | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/docling_extract.py | 363 | print(f"Error: Unknown mode '{mode}'. Use sync, batch, or server", file=sys.stderr) | CODE |
| LOW⚡ | tools/benchmark-harness/scripts/docling_extract.py | 366 | except Exception as e: | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/docling_extract.py | 367 | print(f"Error extracting with Docling: {e}", file=sys.stderr) | CODE |
| LOW | tools/benchmark-harness/scripts/generate_markdown_gt.py | 207 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/unstructured_extract.py | 65 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/unstructured_extract.py | 70 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/unstructured_extract.py | 92 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/unstructured_extract.py | 107 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/unstructured_extract.py | 110 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/unstructured_extract.py | 137 | except Exception as e: | CODE |
| MEDIUM | tools/benchmark-harness/scripts/unstructured_extract.py | 163 | print(f"Error: Unstructured supports only native plaintext output; got '{output_format}'", file=sys.stderr) | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/unstructured_extract.py | 180 | print("Error: sync mode requires a file path", file=sys.stderr) | CODE |
| LOW⚡ | tools/benchmark-harness/scripts/unstructured_extract.py | 185 | except Exception as e: | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/unstructured_extract.py | 186 | print(f"Error extracting with Unstructured: {e}", file=sys.stderr) | CODE |
| LOW⚡ | tools/benchmark-harness/scripts/unstructured_extract.py | 192 | except Exception as e: | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/unstructured_extract.py | 193 | print(f"Error extracting with Unstructured: {e}", file=sys.stderr) | CODE |
| LOW | tools/benchmark-harness/scripts/markitdown_extract.py | 48 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/markitdown_extract.py | 53 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/markitdown_extract.py | 75 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/markitdown_extract.py | 90 | except Exception: | CODE |
| LOW | tools/benchmark-harness/scripts/markitdown_extract.py | 93 | except Exception as e: | CODE |
| LOW | tools/benchmark-harness/scripts/markitdown_extract.py | 120 | except Exception as e: | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/markitdown_extract.py | 154 | print("Error: sync mode requires a file path", file=sys.stderr) | CODE |
| LOW⚡ | tools/benchmark-harness/scripts/markitdown_extract.py | 160 | except Exception as e: | CODE |
| MEDIUM⚡ | tools/benchmark-harness/scripts/markitdown_extract.py | 161 | print(f"Error extracting with MarkItDown: {e}", file=sys.stderr) | CODE |
| LOW⚡ | tools/benchmark-harness/scripts/markitdown_extract.py | 167 | except Exception as e: | CODE |
| 13 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 56 | except Exception: | CODE |
| HIGH | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 111 | except (json.JSONDecodeError, ValueError): | CODE |
| HIGH | tools/benchmark-harness/scripts/mineru_extract.py | 249 | except Exception: | CODE |
| HIGH | tools/benchmark-harness/scripts/mineru_extract.py | 360 | except (json.JSONDecodeError, ValueError): | CODE |
| HIGH | tools/benchmark-harness/scripts/docling_extract.py | 215 | except Exception: | CODE |
| HIGH | tools/benchmark-harness/scripts/docling_extract.py | 270 | except (json.JSONDecodeError, ValueError): | CODE |
| HIGH | tools/benchmark-harness/scripts/unstructured_extract.py | 65 | except Exception: | CODE |
| HIGH | tools/benchmark-harness/scripts/unstructured_extract.py | 120 | except (json.JSONDecodeError, ValueError): | CODE |
| HIGH | tools/benchmark-harness/scripts/markitdown_extract.py | 48 | except Exception: | CODE |
| HIGH | tools/benchmark-harness/scripts/markitdown_extract.py | 103 | except (json.JSONDecodeError, ValueError): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …ls/benchmark-harness/vendored/docling/md/nougat_034.md | 163 | Most beneficial owners holding stock in 'street name' will receive instructions for voting their shares from their broke | CODE |
| HIGH | tools/benchmark-harness/vendored/docling/md/pdfa_009.md | 163 | Most beneficial owners holding stock in 'street name' will receive instructions for voting their shares from their broke | CODE |
| HIGH | …tes/xberg-pdfium-render/include/pdfium_7678/fpdfview.h | 31 | // XFA forms as requested by the PDF_ENABLE_XFA setting. | COMMENT |
| HIGH | crates/xberg/src/llm/vlm_ocr.rs | 544 | /// Regression test for issue #188: inline math `$...$`, as requested by | COMMENT |
| HIGH | crates/xberg/src/llm/vlm_ocr.rs | 544 | /// Regression test for issue #188: inline math `$...$`, as requested by | COMMENT |
| HIGH | plugin/.opencode/ai-rulez-content.js | 6 | // Generated by ai-rulez. Registers the skills, commands, agents, and MCP servers bundled with | COMMENT |
| HIGH | .github/workflows/publish.yaml | 5148 | # --- Coding-agent plugin (lives in plugin/, generated by ai-rulez; see plugin/README.md) --- | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | …/benchmark-harness/scripts/build_structural_sidecar.py | 21 | {"kind": "heading", "level": u8, "parent": int|null, "path": [str], "text": str} | STRING |
| HIGH⚡ | …/benchmark-harness/scripts/build_structural_sidecar.py | 22 | {"kind": "list_item", "depth": int, "ordered": bool, "parent_item": int|null, "text": str} | STRING |
| HIGH⚡ | …/benchmark-harness/scripts/build_structural_sidecar.py | 26 | {"kind": "figure", "caption": int|null, "text": str} | STRING |
| HIGH⚡ | …/benchmark-harness/scripts/build_structural_sidecar.py | 27 | {"kind": "caption", "binds_to": int|null, "text": str} | STRING |
| HIGH⚡ | …/benchmark-harness/scripts/build_structural_sidecar.py | 28 | {"kind": "footnote", "binds_to": int|null, "text": str} | STRING |
| HIGH | scripts/ci/check-ffi-declaration-parity.py | 257 | fallbacks ending in `.orElseThrow(...)`, and a short `.map(s -> ...).orElse(null)` one. | STRING |
| HIGH | scripts/ci/test_publish_workflow_contracts.py | 257 | f" count=$(cat '{counter}' 2>/dev/null || echo 0)\n" | CODE |
| HIGH | scripts/ci/docker/test_docker.py | 904 | "echo 'attempt' > /data/test2.txt 2>&1 || echo 'READ_ONLY'", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …grations/python/surrealdb/src/surrealdb_xberg/_base.py | 217 | Unwrap the single document from an ``ExtractionResult`` container. Args: result: The container returned by | STRING |
| HIGH | …tions/python/surrealdb/src/surrealdb_xberg/pipeline.py | 258 | Embed a query string using xberg's extraction pipeline. Args: query: The text to embed. Re | STRING |
| HIGH | integrations/python/txtai/src/txtai_xberg/pipeline.py | 107 | Extract text and metadata from one or more documents (synchronous). Bridges Xberg's async API to a synchronous | STRING |
| HIGH | integrations/python/txtai/src/txtai_xberg/pipeline.py | 127 | Extract text and metadata from one or more documents (asynchronous). The async counterpart to :meth:`__call__`, | STRING |
| HIGH | integrations/python/txtai/src/txtai_xberg/pipeline.py | 151 | Extract and flatten into ``txtai.Embeddings.index``-ready documents. Synchronous wrapper around :meth:`ato_docu | STRING |
| HIGH | integrations/python/txtai/src/txtai_xberg/pipeline.py | 171 | Extract and flatten into ``txtai.Embeddings.index``-ready documents. The async counterpart to :meth:`to_documen | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …/benchmark-harness/tests/test_corpus_cache_manifest.py | 168 | CODE | |
| LOW | …/benchmark-harness/tests/test_corpus_cache_manifest.py | 216 | CODE | |
| LOW | tools/benchmark-harness/scripts/pymupdf4llm_extract.py | 133 | CODE | |
| LOW | tools/benchmark-harness/scripts/mineru_extract.py | 382 | CODE | |
| LOW | …/benchmark-harness/scripts/build_structural_sidecar.py | 277 | CODE | |
| LOW | tools/benchmark-harness/scripts/docling_extract.py | 292 | CODE | |
| LOW | …ols/benchmark-harness/scripts/corpus_cache_manifest.py | 134 | CODE | |
| LOW | …ols/benchmark-harness/scripts/corpus_cache_manifest.py | 281 | CODE | |
| LOW | tools/benchmark-harness/scripts/unstructured_extract.py | 142 | CODE | |
| LOW | tools/benchmark-harness/scripts/markitdown_extract.py | 125 | CODE | |
| LOW | …xtures/src/generate_test_fixtures/security_fixtures.py | 43 | CODE | |
| LOW | …_fixtures/src/generate_test_fixtures/xlsx_revisions.py | 91 | CODE | |
| LOW | …t_fixtures/src/generate_test_fixtures/odt_revisions.py | 108 | CODE | |
| LOW | …t_fixtures/src/generate_test_fixtures/pptx_comments.py | 105 | CODE | |
| LOW | scripts/sync_supported_counts.py | 134 | CODE | |
| LOW | scripts/classic_ocr_cache_acceptance.py | 111 | CODE | |
| LOW | scripts/ci/check-ffi-declaration-parity.py | 253 | CODE | |
| LOW | scripts/ci/test_publish_workflow_contracts.py | 32 | CODE | |
| LOW | scripts/ci/test_publish_workflow_contracts.py | 64 | CODE | |
| LOW | scripts/ci/test_publish_workflow_contracts.py | 67 | CODE | |
| LOW | scripts/ci/check-alef-readme-paths.py | 130 | CODE | |
| LOW | scripts/ci/benchmarks/validate-workflow-matrix.py | 35 | CODE | |
| LOW | scripts/ci/benchmarks/validate-workflow-matrix.py | 128 | CODE | |
| LOW | scripts/ci/benchmarks/validate-workflow-matrix.py | 152 | CODE | |
| LOW | scripts/ci/ruby/vendor-xberg-core.py | 115 | CODE | |
| LOW | scripts/ci/ruby/vendor-xberg-core.py | 275 | CODE | |
| LOW | scripts/ci/ruby/vendor-xberg-core.py | 124 | CODE | |
| LOW | cli-proxy/pypi/xberg_cli/downloader.py | 184 | CODE | |
| LOW | e2e/python/conftest.py | 51 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs-site/src/snippets/python/ocr/cloud_ocr_backend.md | 61 | backend: CloudOcrBackend = CloudOcrBackend(api_key="your-api-key") | CODE |
| HIGH | docs-site/src/snippets/java/ocr/cloud_ocr_backend.md | 117 | Xberg.registerOcrBackend(new CloudOcrExample("your-api-key")); | CODE |
| HIGH | docs-site/src/snippets/csharp/cloud_ocr_backend.md | 75 | var backend = new CloudOcrBackend(apiKey: "your-api-key"); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …g-pdfium-render/include/pdfium_7678/fpdf_sysfontinfo.h | 86 | // NOTE: This method will not be called when version is set to 2. | COMMENT |
| LOW⚡ | crates/xberg-native-pdf/src/object.rs | 238 | // Step 1: Decrypt stream data BEFORE applying filters | COMMENT |
| LOW⚡ | crates/xberg-native-pdf/src/object.rs | 242 | // Step 2: Apply filters (decompression) | COMMENT |
| LOW | crates/xberg-native-pdf/src/encryption/algorithms.rs | 251 | // Step 1: Initial hash = SHA-256(password || salt || user_key) ~keep | COMMENT |
| LOW | crates/xberg-native-pdf/src/document/extract_api.rs | 1886 | // Step 2: Apply text post-processing pipeline | COMMENT |
| LOW | crates/xberg-native-pdf/src/document/tables.rs | 751 | // Step 4: spatial detection without struct-tree backing | COMMENT |
| LOW | crates/xberg-native-pdf/src/rendering/page_renderer.rs | 7616 | // Step 2: locate subinterval index via the half-open | COMMENT |
| LOW | …ates/xberg-native-pdf/src/extractors/text/tj_arrays.rs | 450 | // Step 3: Create WordBoundaryDetector and detect boundaries | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | crates/xberg-pdfium-render/src/bindgen/pdfium_7678.rs | 1165 | #[doc = " Function: FPDF_LoadDocument\n Open and load a PDF document.\n Parameters:\n file_path - | COMMENT |
| MEDIUM⚡ | crates/xberg-pdfium-render/src/bindgen/pdfium_7678.rs | 1169 | #[doc = " Function: FPDF_LoadMemDocument\n Open and load a PDF document from memory.\n Parameters:\n | COMMENT |
| MEDIUM⚡ | crates/xberg-pdfium-render/src/bindgen/pdfium_7678.rs | 1177 | #[doc = " Experimental API.\n Function: FPDF_LoadMemDocument64\n Open and load a PDF document from memory.\ | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | crates/xberg-native-pdf/src/object.rs | 238 | // Step 1: Decrypt stream data BEFORE applying filters | COMMENT |
| LOW⚡ | crates/xberg-native-pdf/src/object.rs | 242 | // Step 2: Apply filters (decompression) | COMMENT |
| LOW | crates/xberg-native-pdf/src/encryption/algorithms.rs | 251 | // Step 1: Initial hash = SHA-256(password || salt || user_key) ~keep | COMMENT |
| LOW | crates/xberg-native-pdf/src/document/extract_api.rs | 1886 | // Step 2: Apply text post-processing pipeline | COMMENT |
| LOW | crates/xberg-native-pdf/src/document/tables.rs | 751 | // Step 4: spatial detection without struct-tree backing | COMMENT |
| LOW | crates/xberg-native-pdf/src/rendering/page_renderer.rs | 7616 | // Step 2: locate subinterval index via the half-open | COMMENT |
| LOW | crates/xberg-native-pdf/src/fonts/cmap.rs | 735 | // For notdefrange, we need to check if source is already mapped ~keep | COMMENT |
| LOW | …ates/xberg-native-pdf/src/extractors/text/tj_arrays.rs | 450 | // Step 3: Create WordBoundaryDetector and detect boundaries | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | plugin/.hermes/plugins/xberg/__init__.py | 12 | __all__ = ["hermes", "register"] | CODE |
| LOW | …in/.hermes/package/src/xberg_hermes_plugin/__init__.py | 12 | __all__ = ["hermes", "register"] | CODE |
| LOW | …parser-xberg/llama_index/node_parser/xberg/__init__.py | 5 | __all__ = ["XbergNodeParser"] | CODE |
| LOW | …ode-parser-xberg/llama_index/node_parser/xberg/base.py | 17 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ex-readers-xberg/llama_index/readers/xberg/__init__.py | 5 | __all__ = ["XbergReader"] | CODE |
| LOW | …-index-readers-xberg/llama_index/readers/xberg/base.py | 34 | logger = logging.getLogger(__name__) | CODE |
| LOW | integrations/python/crewai/src/crewai_xberg/__init__.py | 12 | __all__ = [ | CODE |
| LOW | …tions/python/surrealdb/src/surrealdb_xberg/__init__.py | 9 | __all__ = [ | CODE |
| LOW | …tions/python/langchain/src/langchain_xberg/__init__.py | 5 | __all__ = ["XbergLoader"] | CODE |
| LOW | integrations/python/txtai/src/txtai_xberg/__init__.py | 11 | __all__ = [ | CODE |
| LOW | scripts/ci/ruby/vendor-xberg-core.py | 359 | def _update_native_extension_toml(repo_root: Path) -> None: | CODE |
| LOW | packages/python/xberg/__init__.py | 452 | __all__ = [ | CODE |
| LOW | packages/python/xberg/exceptions.py | 40 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …arsers/llama-index-node-parser-xberg/tests/conftest.py | 60 | CODE | |
| LOW | …ex/readers/llama-index-readers-xberg/tests/conftest.py | 48 | CODE | |
| LOW | …ex/readers/llama-index-readers-xberg/tests/conftest.py | 83 | CODE | |
| LOW | …rations/python/surrealdb/src/surrealdb_xberg/schema.py | 111 | CODE | |
| LOW | integrations/python/langchain/tests/conftest.py | 124 | CODE | |
| LOW | packages/python/xberg/api.py | 1345 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/actions/cache-benchmark-harness/action.yml | 276 | # Check if binary exists | COMMENT |
| LOW | .github/actions/cache-benchmark-harness/action.yml | 282 | # Check if binary is executable | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | integrations/scripts/publish-placeholders.sh | 12 | # Usage: | COMMENT |