Skip to content

HUB-047 stage 1: scoring design for end-to-end answer quality - #16

Merged
funsaized merged 1 commit into
mainfrom
hub-047-scoring-design
Aug 14, 2026
Merged

HUB-047 stage 1: scoring design for end-to-end answer quality#16
funsaized merged 1 commit into
mainfrom
hub-047-scoring-design

Conversation

@funsaized

Copy link
Copy Markdown
Owner

Design only — no question set, no code. Settling how a report is scored first, because the scheme determines what the set must contain.

The gap

The system verifies every claim it publishes and measures nothing about what it failed to say. A report stating three true trivial facts and omitting everything that mattered passes every existing gate at citation_validity = 1.0. Every instrument in the repo — claim gate, citation validity, exact-term recall, coverage@k — is precision-side.

The design

Two axes, never blended. The claim gate stays the precision axis. Completeness becomes nugget recall: per question a short list of atomic facts a good answer must contain, labelled vital/okay, assigned supported/partial/absent, and credited only when carried by a claim that passed the gate — otherwise completeness could be bought with unverified assertions.

Three decisions worth naming:

  1. Nuggets are mined from document scope, never from retrieval output. A pipeline that picks its own yardstick scores itself — the exact self-reference that mechanically flattered arXiv:2608.03860. To be enforced by test: the construction command must not import the retrieval service.
  2. Zero metered judge calls. Drafting is local; human blind verification is the quality bar, per the v4 protocol already in the repo. The real cost is ~180 hand-verified nuggets of operator time, and that cannot be delegated to the drafter without reintroducing the circularity.
  3. Calibration set ≠ evaluation set. One is blind, sealed and consumed on use; the other must be stable and re-runnable. Conflating them either invalidates the agreement number or produces a benchmark that can only run once.

It ranks configurations, not reports. All three fetched abstracts agree nugget scoring tracks human judgment at system level and is noisy per topic. It may never gate a single report — only answer "is marginal_gain better than rank", "does late chunking help", "does a knowledge graph earn its keep".

Citations

Fetched and read for this design: arXiv:2504.15068 (vital/okay nuggets, three-way assignment, weighted recall) · arXiv:2509.26184 (attribution and completeness as independent axes over supported claims) · arXiv:2603.09891 (completeness as its own axis; private-corpus and lexical-matching limits). Carried from the HUB-049 pass: 2607.00725, 2603.22633, 2608.03860.

Known limits are recorded in the PRD rather than left to be discovered: recall is against a self-authored reference, single annotator with no inter-assessor agreement, and a growing corpus means scores are always quoted against a corpus state.

🤖 Generated with Claude Code

…(stage 1)

The system verifies every claim it publishes and measures nothing about what
it failed to say: a report stating three true trivial facts passes every gate
at citation_validity 1.0. That gap now blocks HUB-045, HUB-048 and HUB-049's
flag, and the two available proxies are ruled out by prior art rather than
opinion -- recall stops predicting accuracy under a context budget
(arXiv:2607.00725) and coverage is worth ~0.01 F1 (arXiv:2603.22633).

The design: precision and completeness as two axes that are never blended,
the existing claim gate serving the first, and nugget recall serving the
second -- atomic facts a good answer must contain, labelled vital or okay,
assigned three-way, credited only when carried by a gate-passed claim
(arXiv:2504.15068, arXiv:2509.26184, arXiv:2603.09891).

Three decisions worth naming. Nuggets are mined from document scope and never
from retrieval output, because a pipeline that picks its own yardstick scores
itself -- the failure that mechanically flattered arXiv:2608.03860, and to be
enforced by test rather than convention. Drafting is local with human blind
verification as the quality bar, so the item costs zero metered judge calls
and the real price is ~180 hand-verified nuggets of operator time. The
calibration set and the evaluation set are separate artefacts because one is
consumed on use and the other must be re-runnable.

The instrument ranks configurations, not reports: all three fetched abstracts
agree that nugget scoring tracks human judgment at system level and is noisy
per report, so it may never gate a single report.

Design only. No question set, no code.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@funsaized
funsaized merged commit e78e70d into main Aug 14, 2026
4 checks passed
@funsaized
funsaized deleted the hub-047-scoring-design branch August 14, 2026 16:51
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.

1 participant