Skip to content

feat: the Guild tab shows spec, professions and reputations from the site when a member hasn't logged in - #13

Merged
JacobCoffee merged 1 commit into
mainfrom
feat/battlenet-guild-detail
Nov 12, 2026
Merged

JacobCoffee merged 1 commit into
mainfrom
feat/battlenet-guild-detail

Conversation

@JacobCoffee

Copy link
Copy Markdown
Collaborator

What

The Guild tab's member detail panel now falls back to Battle.net-sourced data from the site import (SQI1, GameImportCharacter.spec/professions/reputations, additive) for spec, professions and tracked reputations -- the same pattern item_level already uses (website befe3e5-era _build_members_news_sheets_crafters, addon importItemLevel).

  • Live addon data always wins, per section independently: e.g. if the live directory has professions but no reputations, the panel shows live professions and imported reputations.
  • Imported reputations are filtered to SideQuest.Data.REPUTATIONS (the tracked list) and shown in that list's order, as Label: Standing (value/max); at Exalted, or when the import has no max, just the standing word shows.
  • Imported sections are marked "(from Battle.net)" (heading suffix for Professions/Reputations, inline suffix for spec) so officers know it can be a few hours stale.
  • An import predating these fields (or with no record for the character) leaves the panel working exactly as before: no error, same empty texts.
  • Sync.lua/Codec.lua need no changes -- the import payload's members[].characters[] is stored and read back opaquely, so the new fields just ride along once the site sends them.

Testing

  • luajit tests/run_tests.lua -- 223 passed, 0 failed (includes 6 new tests in tests/test_guild_battlenet_fallback.lua, alongside the existing 3 item-level tests).
  • luacheck SideQuest tests -- 0 warnings / 0 errors.
  • uv run --directory uploader pytest -- 17 passed.

Depends on

Companion website PR adding GameImportCharacter.spec/professions/reputations to the SQI1: payload (see SiteGuildDetail agent's PR). The companion app needs no change since it treats SQI1: as opaque.

@JacobCoffee
JacobCoffee merged commit f27527a into main Nov 12, 2026
7 checks passed
@JacobCoffee
JacobCoffee deleted the feat/battlenet-guild-detail branch November 12, 2026 01:10
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