Repository navigation
fix(benchmark): attribute private QA diagnostics to questions - #87
Merged
Merged
Conversation
Reference #85. Join capture requests and outcomes to question IDs and record pre-provider and terminal stages without changing answer or judge behavior.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Existing private QA capture could not reliably attribute requests to questions or show failures before answer dispatch. Reference #85; this is a diagnostics prerequisite, not an answer-quality fix.
The existing opt-in writer retains private permissions, configured-key redaction and fail-closed writes. Added stage records distinguish retrieval/eligibility failures, invalid completions, transport failures and valid incorrect judgments. Capture-disabled prompts, scoring and call accounting stay unchanged.
officialandcustom-judgeruns; legacycustom-v1excludedEvidence
prepareOfficialQa→scoreOfficialScenarioretrieval-failure regression failed: zero case records instead of the required question-attributed failure.After: the regression passes before any answer dispatch; private upstream text is absent from capture.
bun run test --concurrency=1: 6,231 passed, 4 skipped, 0 failed. The first ordinary-concurrency run failed an unchanged 50 ms engine readiness test; that test passed in isolation and in the complete serial-package run. No assertion or engine change was made.CI=true bun run test --concurrency=1 --forcealso passed with zero Turbo cache hits; all nine JUnit reports and the API conformance suite passed the skip-green guard.bun run check-types, explicit strict TypeScript checking of the changed scorer/helper/new test,bun run lint,bun run build, andbun run check-publishability --artifacts-only: passed. Build outputs may use Turbo cache. Artifacts mode excludes unpublished-version validation; no version change is included.The pinned upstream evaluator defines the official judge; a custom judge is not an official score. AutoMem #158 is related research, not evidence of the same cause here.
Merge Danger
Door: two-way
The change can be reverted without migrating stored memory. An opted-in capture write failure deliberately stops QA; a prior provider call may already have incurred a charge. Raw diagnostic captures must not be committed or attached publicly.
Blast Radius: benchmark
This draft leaves #85 open. Comparable evaluation remains pending; no merge or publication is requested.