Career v3: Gold tier — verified improv upgrades an earned badge - #960
Conversation
… an earned badge The drill-state relay's goldImprov map (virtuoso gold_improv mints, gained-only merged like drill nodes) turns an earned badge gold when the passport's genre — or its genre family — has a verified improv artifact. Gold never substitutes for the badge bar: gold-without-bronze stays in_progress. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…erywhere The drill-state relay now carries virtuoso's goldImprov map; a badge that comes back gold gets its own ceremony + notification (tier-suffixed seen ids — the bronze moment stays seen under its legacy id, a gold slam marks both), a gold stamp slam in the book, gold ink on the shelf-cover mini stamp, and the real gold foil chip. The bronze page's dashed 'Gold rung coming' preview becomes a live invitation to jam the style in Virtuoso. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…guards, rail counter
The review's showstopper: virtuoso mints goldImprov under raw
STYLE_PALETTES ids ('punk', 'djent', 'disco'), which are mostly NOT
family keys — the tier check now matches in family space (artifact style
and passport genre bucket through the same _genre_family keyword match),
so a 'punk' gold reaches a 'punk rock' passport. Also: non-dict
goldImprov 400s loudly instead of silently dropping; evidence-free
artifacts (no verifier) never mint; goldImprov gets the same pre-merge
size bound byNode has (junk under the cap could otherwise persist
forever and wedge every later relay at the post-merge check); the
instrument-rail badge counter counts gold (earning gold no longer made a
badge vanish from the rail); first-artifact-wins is now asserted against
the persisted snapshot instead of vacuously.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
@coderabbitai review |
✅ Action performedReview finished.
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (7)
📝 WalkthroughWalkthroughCareer passports now persist verified Virtuoso gold improv artifacts, compute gold badges by style family, and render tier-aware ceremonies, stamps, foil, notifications, and wall counts. Tests cover minting prerequisites, persistence, validation, family matching, and client seen-state behavior. ChangesGold career passport tier
Estimated code review effort: 3 (Moderate) | ~20 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (3 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
ESLint install failed: one or more packages not found in the registry. Comment |
The Gold rung, integrated (pairs with feedBack-plugin-virtuoso#11). An earned (Bronze) passport badge turns gold when Virtuoso verifies an improvised jam in the passport's style.
Backend
goldImprovmap (styleId → artifact). Intake: gained-only merge like drill nodes (a stale relay never un-mints; first artifact per style wins), non-dict payloads 400 loudly, evidence-free artifacts (noverifier) never mint, and the incoming map gets the same pre-merge size boundbyNodehas.badge: "gold"when a gold artifact matches its genre in family space — virtuoso mints under rawSTYLE_PALETTESids ('punk', 'djent', 'disco'…), so both sides bucket through the existing_genre_familykeyword match ('punk' reaches a 'punk rock' passport). Gold never substitutes for the badge bar: gold-without-bronze staysin_progress.Frontend
Tests
max-lineswarn on career screen.js is registered in docs/size-exemptions.md (planned split, awaiting Byron's signature).🤖 Generated with Claude Code
Summary by CodeRabbit
New Features
Bug Fixes