Skip to content

test(search): compare rankers and measure storage-backed discovery - #5

Merged
leemour merged 8 commits into
mainfrom
test/search-experiments
Oct 10, 2026
Merged

leemour merged 8 commits into
mainfrom
test/search-experiments

Conversation

@leemour

@leemour leemour commented Oct 9, 2026 •

Copy link
Copy Markdown
Contributor

Keep the search experiments in one synthetic, offline research area and measure the complete lightweight path rather than only ranking manually anchored candidates. Preserve the original transferred fixtures/reports, model explanations, tool research, 23-variant matrix and frozen-feature robustness validation.

Add a model-free question path, fresh authored wording, simple ranking ablations and a build-driven storage-backed discovery benchmark. The frozen planner/BM25/context prototype drops from 92.9% on shared topic templates to 56.3% (9/16) on fresh actual-answer questions. Partial candidate retrieval recovers the missing evidence. The integrated shared service reaches 16/16 in the fresh top ten, 14/16 in the top three and 2/16 at rank one, with MRR@10 0.521 and nDCG@10 0.748. These examples became development cases; they are not blinded or independently human-labeled quality proof.

The older template remains recorded: 48/56 actual answers in the top ten, eight retention-paraphrase ranking failures and 160 partial hits on missing-fact/unknown-qualifier queries. Discovery is evidence retrieval, not an answer-availability detector; the strict default-switch gates remain unmet.

Separate archive ingestion from query RAM by launching fresh Node query processes against marked synthetic databases. The 100,341-message report records about 125 MB query-process peak RSS and about 108 ms question p95 on the measured Ryzen laptop, with no neural weights. Preserve exact question inputs, result ids, build/fixture/runner hashes and launch metadata. The launcher stages only the selected harness and transparently adapts staged core scope/native package aliases after the @wirecat rename, without changing original scripts.

The shared implementation is cli-messaging PR #803; public CLI/MCP strict defaults and SDK compatibility are preserved. This repo publishes no live account data and changes no existing conversation-search benchmark or published suite API.

Validation after rebase: repository lint, types, all 59 tests with coverage and document checks; targeted research Markdown; historical/matrix/validation/model-free harness typechecks; 12 planner tests; built SDK integration/control tests in cli-messaging. Reports retain failures. See performance/search/model-free/FRESH-VALIDATION.md for complete comparison, resources, limitations and reproduction.

@leemour leemour changed the title test(search): centralize offline ranking experiments and explain models test(search): compare lightweight rankers and centralize search research Oct 9, 2026
@socket-security

socket-security Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Priority Alert  (click "▶" to expand/collapse) Action
Critical priority
Critical CVE: NLTK: Unsafe Pickle Deserialization in TransitionParser Allows Remote Code Execution

CVE: GHSA-rhp5-r9x4-f5g2 NLTK: Unsafe Pickle Deserialization in TransitionParser Allows Remote Code Execution (CRITICAL)

Affected versions: < 3.10.0

Patched version: 3.10.0

From: performance/search/matrix/requirements.lock → pypi/nltk@3.9.2

ℹ Read more on: This package | This alert | What is a critical CVE?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Remove or replace dependencies that include known critical CVEs. Consumers can use dependency overrides or npm audit fix --force to remove vulnerable dependencies.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore pypi/nltk@3.9.2. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn
Critical priority
Critical CVE: NLTK: Allowlisted pickle loaders still permit code execution in current source

CVE: GHSA-x99w-6fgc-pmfw NLTK: Allowlisted pickle loaders still permit code execution in current source (CRITICAL)

Affected versions: < 3.10.3

Patched version: 3.10.3

From: performance/search/matrix/requirements.lock → pypi/nltk@3.9.2

ℹ Read more on: This package | This alert | What is a critical CVE?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Remove or replace dependencies that include known critical CVEs. Consumers can use dependency overrides or npm audit fix --force to remove vulnerable dependencies.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore pypi/nltk@3.9.2. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn
Critical priority
Critical CVE: NLTK has a Zip Slip Vulnerability

CVE: GHSA-7p94-766c-hgjp NLTK has a Zip Slip Vulnerability (CRITICAL)

Affected versions: < 3.9.3

Patched version: 3.9.3

From: performance/search/matrix/requirements.lock → pypi/nltk@3.9.2

ℹ Read more on: This package | This alert | What is a critical CVE?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Remove or replace dependencies that include known critical CVEs. Consumers can use dependency overrides or npm audit fix --force to remove vulnerable dependencies.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore pypi/nltk@3.9.2. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn
Critical priority
Critical CVE: NLTK: JVM argument injection bypass via per-call options in the NLTK Stanford wrappers (incomplete fix of CVE-2026-12841)

CVE: GHSA-m4rf-3fr8-xwx3 NLTK: JVM argument injection bypass via per-call options in the NLTK Stanford wrappers (incomplete fix of CVE-2026-12841) (CRITICAL)

Affected versions: < 3.10.3

Patched version: 3.10.3

From: performance/search/matrix/requirements.lock → pypi/nltk@3.9.2

ℹ Read more on: This package | This alert | What is a critical CVE?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Remove or replace dependencies that include known critical CVEs. Consumers can use dependency overrides or npm audit fix --force to remove vulnerable dependencies.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore pypi/nltk@3.9.2. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn

View full report

@leemour leemour changed the title test(search): compare lightweight rankers and centralize search research test(search): compare lightweight ranking and validate reply context Oct 9, 2026
@leemour leemour changed the title test(search): compare lightweight ranking and validate reply context test(search): compare lightweight ranking and evaluate model-free question search Oct 10, 2026
Comment thread performance/search/model-free/plan.ts Fixed
@leemour leemour changed the title test(search): compare lightweight ranking and evaluate model-free question search test(search): compare rankers and measure storage-backed discovery Oct 10, 2026
@leemour
leemour marked this pull request as ready for review October 10, 2026 14:45
@leemour
leemour force-pushed the test/search-experiments branch from 208e716 to 84921e7 Compare October 10, 2026 14:48
@leemour
leemour merged commit 63de1d7 into main Oct 10, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants