BEACON

← candidates

npm @sylphx/pdf-reader-mcp @4.0.0

score
0.6024 med
flagged 2026-07-24 04:02
signals by category
content 1 cadence 1

maintainers added:

package profile →

Signals fired

signalweightrationale
content
script_count_spike 0.5 scripts count 173 -> 179
cadence
rapid_release 0.8 5 versions in last 24h: ['3.1.4', '3.2.0', '3.2.1', '3.2.2', '4.0.0']

Prior profile (what it deviated from)

{
  "had_install_script": false,
  "maintainers": [
    "ansonsylphx",
    "shtse8"
  ],
  "versions": 56
}

Evidence (package doc at flag time)

{
  "dependencies_count": 4,
  "dist": {
    "integrity": "sha512-NdAP8urPJz3/uRhGW55TUTPGmUB2RhaO3eQY+Ki/cu0QHPxxQ8OlhtrjAaGThIP9wFmJdVB7PTiVf5LX18hfsA==",
    "tarball": "https://registry.npmjs.org/@sylphx/pdf-reader-mcp/-/pdf-reader-mcp-4.0.0.tgz",
    "unpackedSize": 86963
  },
  "dist-tags": {
    "latest": "4.0.0"
  },
  "latest_version": "4.0.0",
  "maintainers": [
    {
      "email": "anson@sylphx.com",
      "name": "ansonsylphx"
    },
    {
      "email": "shtse8@gmail.com",
      "name": "shtse8"
    }
  ],
  "num_versions": 57,
  "repository": {
    "type": "git",
    "url": "git+https://github.com/SylphxAI/pdf-reader-mcp.git"
  },
  "scripts": {
    "benchmark": "bun scripts/benchmark-pdf-intelligence.ts",
    "benchmark:all": "bun run benchmark && bun run benchmark:quality && bun run benchmark:corpus && bun run benchmark:providers",
    "benchmark:corpus": "bun scripts/benchmark-pdf-corpus.ts",
    "benchmark:provider-manifest": "bun scripts/benchmark-pdf-provider-manifest.ts",
    "benchmark:provider-manifest-crops": "bun scripts/benchmark-pdf-provider-manifest-crops.ts",
    "benchmark:providers": "bun scripts/benchmark-pdf-providers.ts",
    "benchmark:pure-rust": "bun scripts/benchmark-pure-rust.ts",
    "benchmark:quality": "bun scripts/benchmark-pdf-quality.ts",
    "benchmark:release-artifacts": "MCP_PDF_BENCHMARK_OUTPUT_DIR=${MCP_PDF_BENCHMARK_OUTPUT_DIR:-benchmark-artifacts} MCP_PDF_PROVIDER_BENCHMARK_REQUIRED=true bun run benchmark:all && MCP_PDF_BENCHMARK_OUTPUT_DIR=${MCP_PDF_BENCHMARK_OUTPUT_DIR:-benchmark-artifacts} MCP_PDF_PROVIDER_MANIFEST=${MCP_PDF_PROVIDER_MANIFEST:-test/fixtures/provider-crop-manifest.json} MCP_PDF_PROVIDER_MANIFEST_CROP_REQUIRED=true bun run benchmark:provider-manifest-crops && MCP_PDF_BENCHMARK_OUTPUT_DIR=${MCP_PDF_BENCHMARK_OUTPUT_DIR:-benchmark-artifacts} MCP_PDF_PROVIDER_MANIFEST=${MCP_PDF_PROVIDER_MANIFEST:-test/fixtures/provider-analysis-manifest.json} MCP_PDF_PROVIDER_MANIFEST_REQUIRED=true bun run benchmark:provider-manifest",
    "benchmark:release-gate": "bun scripts/sota-release-gate.ts",
    "build": "bun run build:package && bun run build:oracle-ts",
    "build:oracle-ts": "bun build src/index.ts --outdir dist --target node && bun build src/doctor-cli.ts --outdir dist --target node && bun build src/legacy-engine-runtime.ts --outdir dist --target node && bun build src/pure-rust.ts --outdir dist --target node && bun build src/runtime-entry.ts --outdir dist --target node && bun scripts/stage-pdfjs-worker.ts",
    "build:package": "bun build src/runtime-entry.ts --outdir dist --target node && bun build src/pure-rust.ts --outdir dist --target node",
    "build:rust": "cargo build --release -p pdf-reader-core -p pdf-reader-cli -p pdf-reader-mcp-server && bun scripts/stage-rust-mcp.ts",
    "check": "biome check .",
    "check-format": "biome format .",
    "check:agent-task-corpus": "bun scripts/check-agent-task-corpus.ts",
    "check:fix": "biome check --write .",
    "check:production-contract": "bun scripts/check-production-contract.ts",
    "check:pure-rust-exports": "bun scripts/check-pure-rust-exports.ts",
    "check:pure-rust-matrix": "bun scripts/check-pure-rust-matrix.ts",
    "check:registry-install-proof": "bun scripts/check-registry-install-proof.ts",
    "check:semantic-contracts": "bun scripts/check-semantic-contracts.ts",
    "check:sole-rust-core": "bun scripts/check-sole-rust-core-admission.ts",
    "check:ts-production-absence": "bun scripts/check-ts-production-absence.ts",
    "check:verified-candidate-admission": "bun scripts/check-verified-candidate-admission.ts",
    "clean": "rm -rf dist coverage",
    "docs:build": "vitepress build docs",
    "docs:dev": "vitepress dev docs",
    "docs:preview": "vitepress preview docs",
    "format": "biome format --write .",
    "inspector": "npx @modelcontextprotocol/inspector dist/runtime-entry.js",
    "lint": "biome lint .",
    "lint:fix": "biome lint --write .",
    "native:assert-ready": "bun scripts/native/assert-native-packages-ready.ts",
    "native:platform": "bun scripts/native/platform-package-map.ts",
    "native:stage-from-artifacts": "bun scripts/native/stage-native-artifacts.ts",
    "native:sync-manifests": "bun scripts/native/sync-native-package-manifests.ts",
    "package:smoke": "bun scripts/package-smoke.ts",
    "perf:same-host-ab": "bun scripts/perf/same-host-ts-rust-ab.ts",
    "perf:same-host-ab-suite": "bun scripts/perf/run-same-host-ab-suite.ts",
    "prepublishOnly": "bun run clean && bun run build:package && bun run package:smoke && bun run check:ts-production-absence",
    "release": "echo \"PUBLISH FREEZE: refusing release until capability parity is approved\" && exit 1",
    "release:preflight": "bun run typecheck && bun run check && bun run build && bun run package:smoke && bun run test:cov && bun run docs:build && bun run benchmark:release-artifacts && MCP_PDF_BENCHMARK_OUTPUT_DIR=${MCP_PDF_BENCHMARK_OUTPUT_DIR:-benchmark-artifacts} bun run benchmark:release-gate",
    "release:publish-with-natives": "bun scripts/release-publish-with-natives.ts",
    "smoke:native-launcher": "bun scripts/smoke-native-launcher.ts",
    "smoke:native-package-resolve": "bun scripts/smoke-native-package-resolve.ts",
    "start": "node dist/runtime-entry.js",
    "sync:server-json": "bun scripts/sync-server-json.ts",
    "test": "bun test",
    "test:agent-task-eval": "bun scripts/run-agent-task-eval.ts --runtime=pure-rust --compare-baseline",
    "test:agent-task-eval:baseline": "bun scripts/run-agent-task-eval.ts --runtime=typescript --write-baseline --no-compare",
    "test:agent-task-eval:calibrate": "bun scripts/run-agent-task-eval.ts --runtime=both --write-baseline --compare-baseline",
    "test:agent-task-public-eval": "MCP_PDF_AGENT_TASK_PUBLIC=true bun scripts/run-agent-task-eval.ts --runtime=pure-rust --compare-baseline --public",
    "test:agent-task-public-eval:calibrate": "MCP_PDF_AGENT_TASK_PUBLIC=true MCP_PDF_CORPUS_ALLOW_DOWNLOADS=true bun scripts/run-agent-task-eval.ts --runtime=both --write-baseline --compare-baseline --public --allow-corpus-downloads",
    "test:agent-task-public-smoke": "MCP_PDF_AGENT_TASK_PUBLIC=true bun scripts/run-agent-task-smoke.ts --public",
    "test:agent-task-smoke": "bun scripts/run-agent-task-smoke.ts",
    "test:capability-parity": "bun test test/production/capabilityParity.contract.test.ts --timeout=600000",
    "test:cov": "bun test --coverage --timeout=30000",
    "test:native-platform-map": "bun test test/native-platform-package-map.test.ts",
    "test:pure-rust-exports": "bun test test/pure-rust-exports.test.ts",
    "test:rust": "cargo test",
    "test:ts-vs-rust-text": "bun scripts/differential/ts-vs-rust-text-oracle.ts",
    "test:v3014-annotation-action-dest-residual-differential": "bun scripts/differential/check-v3014-annotation-action-dest-residual-differential.ts",
    "test:v3014-annotation-action-precedence-residual-differential": "bun scripts/differential/check-v3014-annotation-action-precedence-residual-differential.ts",
    "test:v3014-annotation-ap-named-state-polyline-ink-residual-differential": "bun scripts/differential/check-v3014-annotation-ap-named-state-polyline-ink-residual-differential.ts",
    "test:v3014-annotation-ap-named-state-residual-differential": "bun scripts/differential/check-v3014-annotation-ap-named-state-residual-differential.ts",
    "test:v3014-annotation-ap-named-state-square-circle-residual-differential": "bun scripts/differential/check-v3014-annotation-ap-named-state-square-circle-residual-differential.ts",
    "test:v3014-annotation-ap-nonstream-residual-differential": "bun scripts/differential/check-v3014-annotation-ap-nonstream-residual-differential.ts",
    "test:v3014-annotation-appearance-bbox-residual-differential": "bun scripts/differential/check-v3014-annotation-appearance-bbox-residual-differential.ts",
    "test:v3014-annotation-contents-multiline-residual-differential": "bun scripts/differential/check-v3014-annotation-contents-multiline-residual-differential.ts",
    "test:v3014-annotation-dest-residual-differential": "bun scripts/differential/check-v3014-annotation-dest-residual-differential.ts",
    "test:v3014-annotation-freetext-rect-residual-differential": "bun scripts/differential/check-v3014-annotation-freetext-rect-residual-differential.ts",
    "test:v3014-annotation-highlight-quadpoints-residual-differential": "bun scripts/differential/check-v3014-annotation-highlight-quadpoints-residual-differential.ts",
    "test:v3014-annotation-link-aa-action-residual-differential": "bun scripts/differential/check-v3014-annotation-link-aa-action-residual-differential.ts",
    "test:v3014-annotation-link-aa-precedence-residual-differential": "bun scripts/differential/check-v3014-annotation-link-aa-precedence-residual-differential.ts",
    "test:v3014-annotation-link-uri-name-residual-differential": "bun scripts/differential/check-v3014-annotation-link-uri-name-residual-differential.ts",
    "test:v3014-annotation-link-uri-normalize-residual-differential": "bun scripts/differential/check-v3014-annotation-link-uri-normalize-residual-differential.ts",
    "test:v3014-annotation-residual-differential": "bun scripts/differential/check-v3014-annotation-residual-differential.ts",
    "test:v3014-annotation-square-circle-widget-residual-differential": "bun scripts/differential/check-v3014-annotation-square-circle-widget-residual-differential.ts",
    "test:v3014-annotation-stamp-caret-file-residual-differential": "bun scripts/differential/check-v3014-annotation-stamp-caret-file-residual-differential.ts",
    "test:v3014-annotation-text-markup-quadpoints-residual-differential": "bun scripts/differential/check-v3014-annotation-text-markup-quadpoints-residual-differential.ts",
    "test:v3014-annotation-text-markup-with-ap-residual-differential": "bun scripts/differential/check-v3014-annotation-text-markup-with-ap-residual-differential.ts",
    "test:v3014-attachment-dupkids-residual-differential": "bun scripts/differential/check-v3014-attachment-dupkids-residual-differential.ts",
    "test:v3014-attachment-odd-names-residual-differential": "bun scripts/differential/check-v3014-attachment-odd-names-residual-differential.ts",
    "test:v3014-attachment-residual-differential": "bun scripts/differential/check-v3014-attachment-residual-differential.ts",
    "test:v3014-behavior-differential": "bun scripts/differential/check-v3014-behavior-differential.ts",
    "test:v3014-border-array-short-residual-differential": "bun scripts/differential/check-v3014-border-array-short-residual-differential.ts",
    "test:v3014-border-array-width-residual-differential": "bun scripts/differential/check-v3014-border-array-width-residual-differential.ts",
    "test:v3014-border-bs-nondict-residual-differential": "bun scripts/differential/check-v3014-border-bs-nondict-residual-differential.ts",
    "test:v3014-border-bs-preference-residual-differential": "bun scripts/differential/check-v3014-border-bs-preference-residual-differential.ts",
    "test:v3014-border-bs-wrong-type-residual-differential": "bun scripts/differential/check-v3014-border-bs-wrong-type-residual-differential.ts",
    "test:v3014-border-width-clamp-residual-differential": "bun scripts/differential/check-v3014-border-width-clamp-residual-differential.ts",
    "test:v3014-border-zero-size-clamp-bypass-residual-differential": "bun scripts/differential/check-v3014-border-zero-size-clamp-bypass-residual-differential.ts",
    "test:v3014-caption-link-differential": "bun scripts/differential/check-v3014-caption-link-differential.ts",
    "test:v3014-citation-chunk-differential": "bun scripts/differential/check-v3014-citation-chunk-differential.ts",
    "test:v3014-document-ast-differential": "bun scripts/differential/check-v3014-document-ast-differential.ts",
    "test:v3014-document-ast-visual-fusion-differential": "bun scripts/differential/check-v3014-document-ast-visual-fusion-differential.ts",
    "test:v3014-document-map-differential": "bun scripts/differential/check-v3014-document-map-differential.ts",
    "test:v3014-encrypt-filter-residual-differential": "bun scripts/differential/check-v3014-encrypt-filter-residual-differential.ts",
    "test:v3014-form-button-array-residual-differential": "bun scripts/differential/check-v3014-form-button-array-residual-differential.ts",
    "test:v3014-form-button-default-off-residual-differential": "bun scripts/differential/check-v3014-form-button-default-off-residual-differential.ts",
    "test:v3014-form-checkbox-as-value-residual-differential": "bun scripts/differential/check-v3014-form-checkbox-as-value-residual-differential.ts",
    "test:v3014-form-checkbox-export-empty-single-residual-differential": "bun scripts/differential/check-v3014-form-checkbox-export-empty-single-residual-differential.ts",
    "test:v3014-form-checkbox-export-normalize-residual-differential": "bun scripts/differential/check-v3014-form-checkbox-export-normalize-residual-differential.ts",
    "test:v3014-form-checkbox-malformed-ap-residual-differential": "bun scripts/differential/check-v3014-form-checkbox-malformed-ap-residual-differential.ts",
    "test:v3014-form-checkbox-multi-export-many-residual-differential": "bun scripts/differential/check-v3014-form-checkbox-multi-export-many-residual-differential.ts",
    "test:v3014-form-checkbox-multi-export-residual-differential": "bun scripts/differential/check-v3014-form-checkbox-multi-export-residual-differential.ts",
    "test:v3014-form-flags-residual-differential": "bun scripts/differential/check-v3014-form-flags-residual-differential.ts",
    "test:v3014-form-parent-child-differential": "bun scripts/differential/check-v3014-form-parent-child-differential.ts",
    "test:v3014-form-pushbutton-default-null-residual-differential": "bun scripts/differential/check-v3014-form-pushbutton-default-null-residual-differential.ts",
    "test:v3014-form-radio-as-no-override-residual-differential": "bun scripts/differential/check-v3014-form-radio-as-no-override-residual-differential.ts",
    "test:v3014-form-radio-broken-parent-chain-residual-differential": "bun scripts/differential/check-v3014-form-radio-broken-parent-chain-residual-differential.ts",
    "test:v3014-form-radio-deeper-kids-ap-residual-differential": "bun scripts/differential/check-v3014-form-radio-deeper-kids-ap-residual-differential.ts",
    "test:v3014-form-radio-group-differential": "bun scripts/differential/check-v3014-form-radio-group-differential.ts",
    "test:v3014-form-radio-malformed-ap-residual-differential": "bun scripts/differential/check-v3014-form-radio-malformed-ap-residual-differential.ts",
    "test:v3014-form-radio-parent-kids-ap-residual-differential": "bun scripts/differential/check-v3014-form-radio-parent-kids-ap-residual-differential.ts",
    "test:v3014-form-residual-differential": "bun scripts/differential/check-v3014-form-residual-differential.ts",
    "test:v3014-form-text-multiline-residual-differential": "bun scripts/differential/check-v3014-form-text-multiline-residual-differential.ts",
    "test:v3014-form-utf16-text-residual-differential": "bun scripts/differential/check-v3014-form-utf16-text-residual-differential.ts",
    "test:v3014-info-extras-residual-differential": "bun scripts/differential/check-v3014-info-extras-residual-differential.ts",
    "test:v3014-info-flags-residual-differential": "bun scripts/differential/check-v3014-info-flags-residual-differential.ts",
    "test:v3014-info-trapped-custom-residual-differential": "bun scripts/differential/check-v3014-info-trapped-custom-residual-differential.ts",
    "test:v3014-ink-annotation-residual-differential": "bun scripts/differential/check-v3014-ink-annotation-residual-differential.ts",
    "test:v3014-line-annotation-residual-differential": "bun scripts/differential/check-v3014-line-annotation-residual-differential.ts",
    "test:v3014-linearized-residual-differential": "bun scripts/differential/check-v3014-linearized-residual-differential.ts",
    "test:v3014-lowercase-index-differential": "bun scripts/differential/check-v3014-lowercase-index-differential.ts",
    "test:v3014-markinfo-residual-differential": "bun scripts/differential/check-v3014-markinfo-residual-differential.ts",
    "test:v3014-metadata-presence-residual-differential": "bun scripts/differential/check-v3014-metadata-presence-residual-differential.ts",
    "test:v3014-ocr-search-differential": "bun scripts/differential/check-v3014-ocr-search-differential.ts",
    "test:v3014-ocr-search-interleave-differential": "bun scripts/differential/check-v3014-ocr-search-interleave-differential.ts",
    "test:v3014-ocr-search-residual-differential": "bun scripts/differential/check-v3014-ocr-search-residual-differential.ts",
    "test:v3014-ocr-search-tsv-differential": "bun scripts/differential/check-v3014-ocr-search-tsv-differential.ts",
    "test:v3014-ocr-table-merge-differential": "bun scripts/differential/check-v3014-ocr-table-merge-differential.ts",
    "test:v3014-ocr-tsv-differential": "bun scripts/differential/check-v3014-ocr-tsv-differential.ts",
    "test:v3014-outline-cycle-residual-differential": "bun scripts/differential/check-v3014-outline-cycle-residual-differential.ts",
    "test:v3014-outline-gotor-residual-differential": "bun scripts/differential/check-v3014-outline-gotor-residual-differential.ts",
    "test:v3014-outline-launch-residual-differential": "bun scripts/differential/check-v3014-outline-launch-residual-differential.ts",
    "test:v3014-outline-named-dest-residual-differential": "bun scripts/differential/check-v3014-outline-named-dest-residual-differential.ts",
    "test:v3014-outline-relative-remote-residual-differential": "bun scripts/differential/check-v3014-outline-relative-remote-residual-differential.ts",
    "test:v3014-outline-residual-differential": "bun scripts/differential/check-v3014-outline-residual-differential.ts",
    "test:v3014-page-geometry-depth-clamp-residual-differential": "bun scripts/differential/check-v3014-page-geometry-depth-clamp-residual-differential.ts",
    "test:v3014-page-geometry-inheritance-residual-differential": "bun scripts/differential/check-v3014-page-geometry-inheritance-residual-differential.ts",
    "test:v3014-page-geometry-residual-differential": "bun scripts/differential/check-v3014-page-geometry-residual-differential.ts",
    "test:v3014-page-geometry-userunit-multipage-residual-differential": "bun scripts/differential/check-v3014-page-geometry-userunit-multipage-residual-differential.ts",
    "test:v3014-page-labels-kids-residual-differential": "bun scripts/differential/check-v3014-page-labels-kids-residual-differential.ts",
    "test:v3014-page-labels-residual-differential": "bun scripts/differential/check-v3014-page-labels-residual-differential.ts",
    "test:v3014-permissions-residual-differential": "bun scripts/differential/check-v3014-permissions-residual-differential.ts",
    "test:v3014-polyline-polygon-residual-differential": "bun scripts/differential/check-v3014-polyline-polygon-residual-differential.ts",
    "test:v3014-popup-annotation-residual-differential": "bun scripts/differential/check-v3014-popup-annotation-residual-differential.ts",
    "test:v3014-popup-group-irt-residual-differential": "bun scripts/differential/check-v3014-popup-group-irt-residual-differential.ts",
    "test:v3014-popup-zero-size-residual-differential": "bun scripts/differential/check-v3014-popup-zero-size-residual-differential.ts",
    "test:v3014-raster-image-differential": "bun scripts/differential/check-v3014-raster-image-differential.ts",
    "test:v3014-read-ocr-differential": "bun scripts/differential/check-v3014-read-ocr-differential.ts",
    "test:v3014-read-ocr-residual-differential": "bun scripts/differential/check-v3014-read-ocr-residual-differential.ts",
    "test:v3014-remote-action-residual-differential": "bun scripts/differential/check-v3014-remote-action-residual-differential.ts",
    "test:v3014-remote-named-dest-residual-differential": "bun scripts/differential/check-v3014-remote-named-dest-residual-differential.ts",
    "test:v3014-search-multiword-geometry-differential": "bun scripts/differential/check-v3014-search-multiword-geometry-differential.ts",
    "test:v3014-search-semantic-differential": "bun scripts/differential/check-v3014-search-semantic-differential.ts",
    "test:v3014-selectable-table-differential": "bun scripts/differential/check-v3014-selectable-table-differential.ts",
    "test:v3014-selectable-text-segmentation-differential": "bun scripts/differential/check-v3014-selectable-text-segmentation-differential.ts",
    "test:v3014-semantic-hint-differential": "bun scripts/differential/check-v3014-semantic-hint-differential.ts",
    "test:v3014-structure-differential": "bun scripts/differential/check-v3014-structure-differential.ts",
    "test:v3014-text-annotation-residual-differential": "bun scripts/differential/check-v3014-text-annotation-residual-differential.ts",
    "test:v3014-text-appearance-residual-differential": "bun scripts/differential/check-v3014-text-appearance-residual-differential.ts",
    "test:v3014-text-invalid-as-residual-differential": "bun scripts/differential/check-v3014-text-invalid-as-residual-differential.ts",
    "test:v3014-text-inverted-rect-residual-differential": "bun scripts/differential/check-v3014-text-inverted-rect-residual-differential.ts",
    "test:v3014-text-layer-differential": "bun scripts/differential/check-v3014-text-layer-differential.ts",
    "test:v3014-text-named-appearance-residual-differential": "bun scripts/differential/check-v3014-text-named-appearance-residual-differential.ts",
    "test:v3014-trust-report-differential": "bun scripts/differential/check-v3014-trust-report-differential.ts",
    "test:v3014-url-single-fetch-differential": "bun scripts/differential/check-v3014-url-single-fetch-differential.ts",
    "test:v3014-utf16-text-residual-differential": "bun scripts/differential/check-v3014-utf16-text-residual-differential.ts",
    "test:v3014-visual-candidate-differential": "bun scripts/differential/check-v3014-visual-candidate-differential.ts",
    "test:v3014-visual-fusion-differential": "bun scripts/differential/check-v3014-visual-fusion-differential.ts",
    "test:watch": "bun test --watch",
    "typecheck": "tsc --noEmit",
    "validate": "bun run check && bun run test",
    "validate:pure-rust-claimed": "bun run check:pure-rust-matrix && bun run check:semantic-contracts && bun run check:agent-task-corpus && bun run test:ts-vs-rust-text && bun run test:v3014-behavior-differential && bun run test:v3014-structure-differential && bun run test:v3014-text-layer-differential && bun run test:v3014-citation-chunk-differential && bun run test:v3014-semantic-hint-differential && bun run test:v3014-document-ast-differential && bun run test:v3014-document-map-differential && bun run test:v3014-trust-report-differential && bun run test:v3014-selectable-table-differential && bun run test:v3014-caption-link-differential && bun run test:v3014-search-semantic-differential && bun run test:v3014-lowercase-index-differential && bun run test:v3014-selectable-text-segmentation-differential && bun run test:v3014-ocr-search-differential && bun run test:v3014-raster-image-differential && bun run test:v3014-visual-candidate-differential && bun run test:v3014-visual-fusion-differential && bun run test:v3014-document-ast-visual-fusion-differential && bun run test:v3014-read-ocr-differential && bun run test:v3014-read-ocr-residual-differential && bun run test:v3014-ocr-tsv-differential && bun run test:v3014-ocr-table-merge-differential && bun run test:v3014-ocr-search-residual-differential && bun run test:v3014-ocr-search-interleave-differential && bun run test:v3014-url-single-fetch-differential && bun run test:v3014-ocr-search-tsv-differential && bun run test:v3014-search-multiword-geometry-differential && bun run test:v3014-form-residual-differential && bun run test:v3014-form-radio-group-differential && bun run test:v3014-attachment-residual-differential && bun run test:v3014-markinfo-residual-differential && bun run test:v3014-form-parent-child-differential && bun run test:v3014-annotation-residual-differential && bun run test:v3014-annotation-dest-residual-differential && bun run test:v3014-annotation-action-dest-residual-differential && bun run test:v3014-annotation-action-precedence-residual-differential && bun run test:v3014-info-flags-residual-differential && bun run test:v3014-page-geometry-residual-differential && bun run test:v3014-page-labels-residual-differential && bun run test:v3014-outline-residual-differential && bun run test:v3014-permissions-residual-differential && bun run test:v3014-metadata-presence-residual-differential && bun run test:v3014-info-extras-residual-differential && bun run test:v3014-encrypt-filter-residual-differential && bun run test:v3014-linearized-residual-differential && bun run test:v3014-form-flags-residual-differential && bun run test:v3014-text-annotation-residual-differential && bun run test:v3014-remote-action-residual-differential && bun run test:v3014-popup-annotation-residual-differential && bun run test:v3014-popup-zero-size-residual-differential && bun run test:v3014-popup-group-irt-residual-differential && bun run test:v3014-text-appearance-residual-differential && bun run test:v3014-text-named-appearance-residual-differential && bun run test:v3014-text-inverted-rect-residual-differential && bun run test:v3014-remote-named-dest-residual-differential && bun run test:v3014-page-labels-kids-residual-differential && bun run test:v3014-form-button-array-residual-differential && bun run test:v3014-form-button-default-off-residual-differential && bun run test:v3014-form-pushbutton-default-null-residual-differential && bun run test:v3014-form-checkbox-as-value-residual-differential && bun run test:v3014-form-checkbox-export-normalize-residual-differential && bun run test:v3014-form-radio-as-no-override-residual-differential && bun run test:v3014-form-checkbox-multi-export-residual-differential && bun run test:v3014-form-checkbox-multi-export-many-residual-differential && bun run test:v3014-form-checkbox-export-empty-single-residual-differential && bun run test:v3014-form-checkbox-malformed-ap-residual-differential && bun run test:v3014-form-radio-malformed-ap-residual-differential && bun run test:v3014-form-radio-parent-kids-ap-residual-differential && bun run test:v3014-form-radio-deeper-kids-ap-residual-differential && bun run test:v3014-form-radio-broken-parent-chain-residual-differential && bun run test:v3014-attachment-odd-names-residual-differential && bun run test:v3014-attachment-dupkids-residual-differential && bun run test:v3014-form-utf16-text-residual-differential && bun run test:v3014-utf16-text-residual-differential && bun run test:v3014-text-invalid-as-residual-differential && bun run test:v3014-line-annotation-residual-differential && bun run test:v3014-polyline-polygon-residual-differential && bun run test:v3014-ink-annotation-residual-differential && bun run test:v3014-border-width-clamp-residual-differential && bun run test:v3014-border-array-width-residual-differential && bun run test:v3014-border-bs-preference-residual-differential && bun run test:v3014-border-bs-nondict-residual-differential && bun run test:v3014-border-array-short-residual-differential && bun run test:v3014-border-bs-wrong-type-residual-differential && bun run test:v3014-border-zero-size-clamp-bypass-residual-differential && bun run test:v3014-annotation-appearance-bbox-residual-differential && bun run test:v3014-annotation-ap-nonstream-residual-differential && bun run test:v3014-annotation-ap-named-state-residual-differential && bun run test:v3014-annotation-ap-named-state-polyline-ink-residual-differential && bun run test:v3014-annotation-ap-named-state-square-circle-residual-differential && bun run test:v3014-annotation-highlight-quadpoints-residual-differential && bun run test:v3014-annotation-text-markup-quadpoints-residual-differential && bun run test:v3014-annotation-text-markup-with-ap-residual-differential && bun run test:v3014-annotation-stamp-caret-file-residual-differential && bun run test:v3014-annotation-square-circle-widget-residual-differential && bun run test:v3014-annotation-link-uri-normalize-residual-differential && bun run test:v3014-annotation-freetext-rect-residual-differential && bun run test:v3014-annotation-link-uri-name-residual-differential && bun run test:v3014-annotation-link-aa-action-residual-differential && bun run test:v3014-annotation-link-aa-precedence-residual-differential && cargo test -p pdf-reader-core --lib && cargo test -p pdf-reader-mcp-server --lib && bun run test:v3014-form-text-multiline-residual-differential && bun run test:v3014-annotation-contents-multiline-residual-differential && bun run test:v3014-outline-cycle-residual-differential && bun run test:v3014-outline-named-dest-residual-differential && bun run test:v3014-outline-gotor-residual-differential && bun run test:v3014-outline-launch-residual-differential && bun run test:v3014-outline-relative-remote-residual-differential && bun run test:v3014-info-trapped-custom-residual-differential && bun run test:v3014-page-geometry-inheritance-residual-differential && bun run test:v3014-page-geometry-depth-clamp-residual-differential && bun run test:v3014-page-geometry-userunit-multipage-residual-differential",
    "watch": "tsc --watch"
  },
  "signal_details": {
    "rapid_release": "5 versions in last 24h: ['3.1.4', '3.2.0', '3.2.1', '3.2.2', '4.0.0']",
    "script_count_spike": "scripts count 173 -> 179"
  },
  "time": {
    "created": "2025-10-31T14:03:29.047Z",
    "modified": "2026-07-24T05:43:56.598Z"
  }
}