Skip to content

Cohesion pass: 5 bug fixes + nav unification + insight taxonomy + game cross-links - #95

Merged
jcdavis131 merged 7 commits into
masterfrom
scout/cohesion-redesign
Oct 18, 2026
Merged

jcdavis131 merged 7 commits into
masterfrom
scout/cohesion-redesign

Conversation

@jcdavis131

Copy link
Copy Markdown
Owner

Follows the 2026-10-16 live UX audit (walked all 7 surfaces, played Daily Court to a win). Audit notes: hidden_files/redesign/AUDIT-2026-10-16.md — including three audit claims that did NOT reproduce (gaps 1, 2, 5), so this is targeted fixes, not a retheme.

Bug fixes

  • B1: Twin Reveal / Era Lock lifeline text was wiped instantly — renderLifelines() rebuilt #lifelines-bar after lifelineStatus() wrote into it. Button state now flips first, then the reveal text is written.
  • B2: live game header showed 'NaN – NaN' for pre-tip games (ESPN sends no score) — guarded setScore() renders an en dash.
  • B3: '1 guesses' → '1 guess' pluralization.
  • B4: warmer/colder hardened — compares the visible similarity % instead of rank (same ordering, immune to stale-rank edge cases).
  • B5: 27 player display names were missing hyphens in source data ('Shai GilgeousAlexander') across 23 JSON assets — normalized everywhere, collision-checked, all JSON re-validated.

Cohesion

  • Footer now matches top nav (Live was omitted) on all 9 pages; new 'More' row links the three orphan pages (Props Lab had zero inbound links site-wide).
  • Stale Live tooltip dropped ('the arcade between games' — arcade was removed in Wave 5c).
  • Kicker taxonomy: 21 ad-hoc kickers → 16 controlled topical kickers; KICKER_THEMES updated so money/entity color-coding survives.
  • Insight cards carry their № (JSON position), matching the home 'Fresh from the lab' doors.
  • Win/reveal cards link back out: 'Open dossier' (/players?q=) + 'See season on the atlas' (/?id=#atlas) on all four result cards; home atlas readout deep-links the selected player.
  • Play page clarity: suit tags unglued + first real CSS ('SCORING VOLHONORS' → chip); opaque 'WORLD 10-16' → plain date.

Verification

  • node --check clean on all touched JS; JSON re-validated; P-index deep-link lookup verified against real data; door numbers verified against computed card numbers.

Scout added 4 commits October 16, 2026 10:18
Bugs (from 2026-10-16 live UX audit):
- B2: live game header showed 'NaN - NaN' for pre-tip games (ESPN sends
  no score) - now renders an en dash via guarded setScore().
- B3: '1 guesses' pluralization - header counter now says '1 guess'.
- B5: 27 player display names were missing hyphens in the source data
  ('Shai GilgeousAlexander' etc.) across 23 JSON assets - normalized to
  hyphenated forms everywhere (collision-checked, all JSON re-validated).

Nav cohesion (audit gaps 3+4):
- Footer now matches the top nav (Live was omitted) on all 9 pages.
- Orphan pages linked: new footer 'More' row -> Props Lab, Taxonomy,
  Playoff Runs (Props Lab previously had zero inbound links site-wide).
- Stale Live nav tooltip dropped ('the arcade between games' - arcade
  was removed in Wave 5c).
- B1: Twin Reveal (and Era Lock) lifeline status text was wiped instantly -
  renderLifelines() rebuilds #lifelines-bar AFTER lifelineStatus() wrote
  into it. Now the button state flips first, then the reveal text is
  written. The names actually stay visible.
- B4: warmer/colder compared rank (stale-prone, could contradict the
  visible similarity %) - now compares the similarity % the player sees,
  so the tag can never disagree with the numbers on screen.
- Gap 7: slot tabs glued the suit tag to the archetype label
  ('SCORING VOLHONORS') - added the missing space and gave .suit-tag its
  first real CSS (chip), so Honors/Style/Team/Era reads as a tag.
- Gap 12: opaque 'WORLD 10-16' daily label -> plain 'Oct 16' date on the
  home today-strip and the play header.
- Gap 10: the post-win/reveal card was a dead end. It now carries
  'Open <twin> dossier' (-> /players?q= deep link) and 'See <season>
  on the atlas' (-> /?id=<P-index>#atlas, the deep link the atlas
  already reads on load) on all four result cards (daily + pack,
  won + revealed).
- Gap 9: the home atlas readout's 'Open player directory' now
  deep-links the selected player (/players?q=<name>) instead of
  dumping at the directory top.
- Gap 11: 21 ad-hoc kickers -> 16 controlled topical kickers
  (Cap spike, Dead money, Contracts, Sacrifice, Payroll, Tickets, Tax,
  Meta on the ledger side; Contenders, Playoffs, Roles normalized on
  the model side). KICKER_THEMES map updated to match so the
  money/entity color-coding survives the rename.
- Gap 6: insight cards now carry their № (JSON position), matching the
  home 'Fresh from the lab' doors ('Insight №10/№11') - verified the
  door numbers match the computed card numbers.
- Gap 5 checked and cleared: all 27 cards already render the big-stat
  number; the audit's '8 missing statnum' claim does not reproduce
  against the JSON or the render code.
@vercel

vercel Bot commented Oct 16, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
vector-hoops Ready Ready Preview Oct 18, 2026 2:21am UTC

Request Review

@cursor cursor Bot 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.

Approved. Cursor Bugbot was not present on this PR after the first check poll, so that automated-review signal was skipped; no applicable approval policy or existing review state requires holding this PR.

Open in Web View Automation 

Sent by Cursor Approval Agent: Pull Request Router and Approver

…cohesion-redesign

Conflict resolutions:
- assets/insights.json: #95's kicker taxonomy kept on 17 cards; payroll-per-win
  card takes master's reviewed 4-season rebuild (title/lede/rows/viz/foot)
- assets/insights.js: keep #95's card numbering (NUM_BY_SLUG) + #94's seasons
  viz renderer; KICKER_THEMES unioned to cover both taxonomies
- insights.html/index.html: token-only conflicts, re-stamped
All repo gates pass: stamp_assets, sync_public, ruff, site facts, a11y, contrast.
@jcdavis131
jcdavis131 merged commit 255caa6 into master Oct 18, 2026
7 of 8 checks passed

This branch was successfully deployed

1 active deployment
Preview — b7e14804 Deployed Oct 18, 2026 by vercel[bot]
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