Skip to content

Fix Deploy Dashboard: stop slug-twin models from sharing a logo review ID - #814

Merged
ktwu01 merged 1 commit into
mainfrom
claude/brave-goodall-8cu1et
Oct 8, 2026
Merged

ktwu01 merged 1 commit into
mainfrom
claude/brave-goodall-8cu1et

Conversation

@ktwu01

@ktwu01 ktwu01 commented Oct 8, 2026

Copy link
Copy Markdown
Owner

What was broken

Deploy Dashboard has failed on every main push since run 338 (e.g. https://github.com/ktwu01/benchmark-radar/actions/runs/37723739921). The only failing test is tests/test_logo_audit.py::test_review_ids_are_frozen_so_feedback_survives_a_rebuild: 946 model cards, only 910 distinct IDs. CI on the same commits stays green because only the Pages workflow runs scripts/build_logo_registry.py before pytest.

Why

models.json now keeps separate live records whose slugs collide, e.g. Gemini 2.5 Flash / Gemini-2.5-Flash or Step 3.5 Flash / Step-3.5-Flash (36 pairs). The registry's rename inheritance maps each new label to the ID of an existing label with the same model_key slug, even when that existing label is still live, so both cards ended up with one ID.

Fix

  • A new label inherits an ID only from a label that is no longer in models.json (a genuine rename like Grok-4 → Grok 4), and each retired ID can be claimed once.
  • Live slug twins get fresh IDs from the high-water mark, so no number is reused.
  • New regression test test_slug_twins_that_are_both_live_get_distinct_logo_ids covers both the twin case and the rename case.

No derived files are committed; CI regenerates the registry.

Verification

From a clean worktree with the submodule initialized: ruff check ., ruff format --check ., normalize-catalog, classify, build-data-release, build_logo_registry.py, then pytest -q → 1789 passed. The only failure is test_briefing.py::test_zh_output_budget_covers_worst_case, a ProxyError caused by the sandbox's lack of network access; it passes in CI. Rebuilt registry: 946 models, 0 duplicate IDs.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Xy5io9WxsQmk5G9cqmNjKV


Generated by Claude Code

models.json keeps live records whose slugs collide, such as
"Gemini 2.5 Flash" and "Gemini-2.5-Flash". Rename inheritance in
build_logo_registry.py handed the new label its still-live twin's ID, so
36 model cards shared an ID and test_review_ids_are_frozen failed the
Pages build (946 IDs, 910 unique).

Inherit only from labels the data no longer carries, and let each
retired ID be claimed once.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Xy5io9WxsQmk5G9cqmNjKV
Copilot AI balanced review requested due to automatic review settings October 8, 2026 16:29

ktwu01 commented Oct 8, 2026

Copy link
Copy Markdown
Owner Author

330226 claude-opus-5-5


Generated by Claude Code

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-08T16:31:35.093945Z 3534e06 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@ktwu01
ktwu01 merged commit 35d2c88 into main Oct 8, 2026
2 checks passed
@ktwu01
ktwu01 deleted the claude/brave-goodall-8cu1et branch October 8, 2026 16:35
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.

3 participants