promotional bannermobile promotional banner

Bestie

Celebrate each other's achievements across guilds.
Back to Files

Bestie-1.0.1-beta1

File nameBestie-1.0.1-beta1.zip
Uploaded
Oct 6, 2026
Downloads
3
Size
8.9 KB
Flavors
Retail
File ID
9084794
Type
B
Beta
Supported game versions
  • 12.1.0

What's new

Bestie

1.0.1-beta1 (2026-10-06)

Full Changelog

  • Merge pull request #7 from unselfish-means/chore/beta-1.0.1-beta1
    chore(release): mark Bestie as beta and bump to 1.0.1-beta1
  • chore(release): mark Bestie as beta and bump to 1.0.1-beta1
    While Bestie is in beta, every version and tag must contain "beta" so
    the packager uploads a Beta file, not a Release. CLAUDE.md spells out
    the rule.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Merge pull request #6 from unselfish-means/chore/curseforge-project-id
    chore(release): add the CurseForge project ID
  • chore(release): add the CurseForge project ID
    Bestie's CurseForge project is 1730974. The .toc TODO is replaced by
    the ID, so the Package and release workflow can upload on the next tag.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Merge pull request #5 from unselfish-means/chore/project-icon
    chore: add the Bestie project icon
  • chore: add the Bestie project icon
    media/icon.png is the CurseForge project icon. .pkgmeta ignores media
    so it never ships in the addon.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Merge pull request #4 from unselfish-means/chore/curseforge-display-name
    chore(release): name CurseForge files <Addon>-<version>
  • chore(release): name CurseForge files <Addon>-<version>
    The CurseForge display name now matches the zip's file name, for example
    Reclaim-1.0.3, instead of the bare version.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Merge pull request #3 from unselfish-means/chore/bump-1.0.0
    chore(release): bump version to 1.0.0
  • chore(release): bump version to 1.0.0
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Merge pull request #2 from unselfish-means/chore/bigwigs-packager
    chore(release): switch to the shared CurseForge packaging workflow
  • chore(release): switch to the shared CurseForge packaging workflow
    Replace the older packager workflow with the shared WIKR one (pinned
    packager v2.6.1, full-history checkout, setup check, bare-tag file
    names, CURSEFORGE_API_TOKEN secret). A root .pkgmeta moves Bestie/ up
    to the package root, replacing -t and Bestie/.pkgmeta.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Merge pull request #1 from unselfish-means/implement-bestie-v1
    feat: implement Bestie v1
  • docs: point CLAUDE.md at the local GitHub account notes
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • docs: add a player-facing README and move the test plan to TESTING.md
    The README at the repo root describes Bestie for players and is the
    CurseForge description. The build, install, and two-account test plan
    that lived in Bestie/README.md move to TESTING.md, so they no longer
    ship inside the addon folder. CLAUDE.md links both.
    Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • docs: add Bestie install and test plan
    Mirrors spike/README.md's structure -- install steps plus a two-part test
    plan split into solo checks (no network dependency) and joint checks that
    need both testers online at once. Doubles as the instructions handed to the
    second tester alongside the built zip.
    Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com
  • chore: pin BigWigsMods/packager action to a commit SHA
    Automated push security review flagged the mutable v2 tag as a supply-chain
    risk. Pinned to the commit v2 currently resolves to (v2 -> v2.5.1 -> this
    commit) so a tag re-point upstream can't silently change what CI runs.
    Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com
  • feat: implement Bestie v1
    Builds all P0 requirements from SPEC.md on top of the confirmed spike findings:
    besties list with request/accept/decline handshake, mute, and block; same-guild-aware
    achievement notifications over BNSendWhisper; and a CurseForge release workflow.
    The handshake and guild-sync protocol reuses the achievement whisper channel, marking
    its own traffic with a control-character prefix that's filtered out of chat, while
    achievement notifications pass through unmarked exactly as SPEC.md requires. Same-guild
    detection (previously an open design decision) is resolved by exchanging each side's
    current guild name as part of that same protocol, best-effort, consistent with the
    no-offline-queueing non-goal.
    Untested in-game — needs the same two-account manual testing the spike used. CurseForge
    publishing needs a project + CF_API_TOKEN secret created outside this repo (see the TODO
    in Bestie.toc).
    Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com
  • Merge pull request #2 from puppysnuff/spec-handshake-abuse-boundary
    Require completed handshake before any notification send
  • Merge pull request #1 from puppysnuff/local-testing-tooling
    Add local build/versioning tooling for spike addon
  • docs: mark technical spike resolved with findings
    All four spike unknowns confirmed end-to-end on real Battle.net
    accounts: BattleTag resolution, presence check, and send/receive of
    an achievement link all work via C_BattleNet.GetFriendAccountInfo and
    BNSendWhisper. Documents two API gotchas hit along the way (isOnline
    nested under gameAccountInfo, battleTag vs the display-only
    accountName field) so they don't need rediscovering during v1.
    Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com
  • docs: require a completed handshake before any notification send
    Makes explicit that achievement notifications are gated on an Active
    bestie relationship as a deliberate anti-abuse boundary, not because
    BNSendWhisper itself requires any relationship to exist.
    Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com
  • fix: correct C_BattleNet friend-info field names in BestieSpike
    Live testing showed /bspike friends always reporting online=nil and
    /bspike online|send never matching a typed BattleTag. Per the
    C_BattleNet.GetFriendAccountInfo reference: isOnline only exists
    nested under gameAccountInfo (not top-level), and accountName is a
    display name rather than the literal BattleTag -- battleTag is the
    field to match against. Matching and online-status logic now use the
    correct fields, and /bspike friends prints battleTag= explicitly so
    it is unambiguous which value to type into other commands.
    Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com
  • feat: add local build/versioning script for spike addon testing
    Adds scripts/build-addon.ps1 to stamp a build version, install into
    the local WoW AddOns folder, and produce a versioned zip to share
    manually. Also bumps BestieSpike to Interface 120100 and prints its
    version on load so both testers can confirm they are on the same build.
    Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com
  • test: add BestieSpike addon to validate BattleTag whisper delivery
    Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com
  • docs: add CLAUDE.md and initial Bestie product spec
    Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com

This mod has no additional files