docs: metrics.json is token-usage telemetry, not aggregate eval rates — no rename - #192
Merged
Merged
Conversation
Copilot
AI
changed the title
[WIP] Debate renaming scores.jsonl to aggregate_scores.jsonl
docs: metrics.json is token-usage telemetry, not aggregate eval rates — no rename
Jun 1, 2026
changliu2
approved these changes
Jun 2, 2026
Collaborator
There was a problem hiding this comment.
@minthigpen , fyi on metrics.jsonl actually storing token telemetry as opposed to aggregate scores. No rename needed.
changliu2
approved these changes
Jun 2, 2026
changliu2
enabled auto-merge (squash)
June 2, 2026 04:52
There was a problem hiding this comment.
Pull request overview
Docs-only correction clarifying that metrics.json is pipeline token-usage telemetry rather than aggregate evaluation rates, with no file rename. Adjusts inspection order and stage attribution accordingly.
Changes:
- Correct
metrics.jsondescriptions across user-facing docs and the judges README. - Re-attribute
metrics.jsonfrom the judge stage to the runner (post-stage). - Reorder debug/inspection lists to put
scores.jsonlfirst andmetrics.jsonlast.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| docs/guides/results.md | Fix metrics.json description; reorder fast-inspection list. |
| docs/getting-started.md | Note metrics.json is written by the runner, not the judge. |
| docs/concepts.md | Remove metrics.json from judge-stage outputs; add runner clarification. |
| assert_ai/library/judges/README.md | Fix weight field description to reference scores.jsonl aggregation. |
| AGENTS.md | Reorder debug inspection order: scores.jsonl first, metrics.json last. |
changliu2
approved these changes
Jun 2, 2026
minthigpen
previously approved these changes
Jun 12, 2026
minthigpen
requested review from
AaronAspinwall123,
jakepresent and
tangym
as code owners
June 12, 2026 20:11
auto-merge was automatically disabled
June 12, 2026 20:11
Head branch was pushed to by a user without write access
AaronAspinwall123
approved these changes
Jun 12, 2026
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.
Debated renaming
metrics.json→aggregate_scores.jsonl. Verdict: no rename. The file contains pipeline token-usage telemetry (calls, token counts, cache stats, timing), not aggregated evaluation rates. Renaming would be wrong on format (single JSON object, not JSONL) and semantics, with high breaking-change surface for no accuracy gain.Separately, docs had a pervasive misdescription of
metrics.jsonas "aggregate rates by dimension and category" — those rates are computed on-demand fromscores.jsonlby the CLI/viewer and never persisted.Fixes
docs/guides/results.md— correctmetrics.jsondescription; reorder fast-inspection toscores.jsonlfirstdocs/concepts.md— removemetrics.jsonfrom judge-stage outputs (it's written by the runner after all stages complete)docs/getting-started.md— fix pipeline table attribution ofmetrics.jsonAGENTS.md— debug inspection order:scores.jsonlfirst,metrics.jsonlastassert_ai/library/judges/README.md— fixweightfield description (was pointing tometrics.jsonincorrectly)Original prompt
first debate whether scores.jsonl/metrics.jsonl is better renamed /refactored to scores.jsonl/aggregate_scores.jsonl. only when the benefit is much larger, open a pr to refactor the code and all doc surfaces.
**Chronological Review:** This conversation is a late-night fleet-mode session for Chang (PM working on the responsibleai/ASSERT OSS eval framework) preparing for v1 public-preview launch. The prior summary captured 7 previously merged PRs tonight (#177, #182, #181, #185, #186, #187, #188, #189) and one open PR (#180) with viewer table UX improvements.The current segment continues from where the prior summary left off: restarting vite for PR #180 audit. Sequence:
p2m-wt-bank-primaryworktreeIntent Mapping:
Technical Inventory:
viewer/src/routes/suite/[suite_id]/+page.sveltep2m-wt-bank-primaryis Chang's primary demo worktree on PR viewer/compare: pin baseline left + show only populated dim columns #180 branch)Code Archaeology:
changliu2/viewer-compare-baseline-pin-and-populated-dimsnow at commitd74e0097dea023,a5ae45c,0e3559d,a2658eb,afd95bf,d74e009viewer/src/routes/suite/[suite_id]/+page.svelteProgress Assessment:
fix-test-runtime-safetyagent still running in backgroundContext Validation:
All loose ends from prior summary still relevant (CODEOWNERS placeholder, Discussions, PR #88 flip, stash cleanup).
Recent Commands Analysis:
Get-NetTCPConnection -LocalPort 5173→ PID 28068 owning (Listen + Established + FinWait2)Stop-Process -Id 28068 -Force+ recheck → FinWait2 remains (process gone)Get-NetTCPConnection ... -State Listen→ "Port 5173 has no LISTEN — safe to rebind"cd p2m-wt-bank-primary; git status; git log→ clean, HEAD ata2658ebgit fetch responsibleai; git pull ... --ff-only→ fast-forwarded a2658eb..d74e009Start-Process npm.cmd run devwith redirected logs → returned PID 21864Get-Content viewer-stdout.log→ "VITE v7.3.2 ready in 2624 ms; Local: http://127.0.0.1:5174/"Invoke-WebRequest http://127.0.0.1:5174/→ StatusCode 2001. Conversation Overview: - Primary Objectives: Late-night fleet-mode session for Chang (PM, responsibleai/ASSERT OSS eval framework v1 public-preview prep). Original user requests this segment included merging Yeming's PR #182, fixing PR #180 dimension display, rebasing PR #181, plus 4 follow-up agents (M-3 jargon, CHANGELOG, TS rename, Bundle D hygiene), then clean-slate doc sweep, viewer table UX improvements stacked on #180, CI test fix + CI/GHA developer UX design memo, and finally — the current segment trigger — "kill exising ports (why still exsits 5173) and refire a new one for 180 audit." - Session Context: 9 PRs merged tonight (#182, #181, #185, #186, #187, #188, #189 in this segment; #177 earlier), PR #180 still open with 6 commits awaiting Chang's eyeball merge. Currently restarting vite for that audit. - User Intent Evolution: Started broad (fleet of 5 follow-up agents), narrowed to clean-slate doc sweep (rejecting migration callouts for clean public-preview), then specific viewer UX fixes, then specific test fix + design memo, now operational (restart viewer to inspect).- Technical Foundation:
- Vite v7.3.2 dev server: SvelteKit viewer, normally on 5173 but tonight bound to 5174 due to lingering TCP FinWait2 socket
- PowerShell port management: Get-NetTCPConnection, Stop-Process, Start-Process with -RedirectStandardOutput/Error -WindowStyle Hidden -PassThru
- Git worktree-per-agent pattern:
- Remote convention:
- TCP FinWait2 explanation: lingering socket doesn't block rebind unless State=List...
p2m-wt-bank-primaryis Chang's primary demo worktree, on PR viewer/compare: pin baseline left + show only populated dim columns #180 branchresponsibleairemote =responsibleai/ASSERT(push target);origin=microsoft/ASSERT(never push)Created from Copilot CLI via the copilot delegate command.