{ "version": "v0.5", "date": "2026-06-01", "title": "W.Rank Improvements", "layout": "default", "messageId": null, "sections": [ { "type": "new", "label": "New Features", "emoji": "✨", "items": [ { "text": "W.Rank delta system — tracks rank movement with <:wrank_up:1512114414474756132><:wrank_down:1511906547104616643> and grey placeholder for unchanged", "emojiKey": "wrank_up" }, { "text": "Midnight snapshot — after 24 hours of no rank change, delta resets to ( - 0 )", "emojiKey": "wrank_1" }, { "text": "Weekly reset carries Bringer forward — W.Rank 1 with goal TGs becomes next week's Bringer", "emojiKey": "storm_bringer" }, { "text": "No-rank placeholder alignment — players without W.Rank align with those who have it", "emojiKey": "wrank_no_dash" } ] }, { "type": "improvement", "label": "Improvements", "emoji": "⚡", "items": [ { "text": "W.Rank now tracked per character, not per player — borrowing a character preserves its rank", "emojiKey": "wrank_2_gold" }, { "text": "Bringer validation — must be W.Rank 1 AND have 7 TGs, otherwise no Bringer this week", "emojiKey": "luminous_bringer" } ] }, { "type": "technical", "label": "Under the Hood", "emoji": "🔩", "items": [ { "text": "`lastRankChangeAt` timestamp on W.Rank entries — drives the 24h snapshot window", "emojiKey": null }, { "text": "W.Rank keys migrated from lowercase `capella/procyon` to `Nation` enum values", "emojiKey": null }, { "text": "`WRankEntry` hydration — runtime entries carry full `Character` object, not just flat fields", "emojiKey": null } ] } ], "examples": [ { "caption": "W.Rank delta display — rank movement since last TG", "type": "poll", "layout": "default", "file": "examples/poll-wrank.json" } ] }