AUR-385: Raider.IO normalized class/spec identity (slice 1) - #34
Merged
aurokin merged 1 commit intoJun 1, 2026
Merged
Conversation
First slice of the shared-identity / cross-provider handoff epic: surface a normalized class_spec_identity on the Raider.IO character profile so a Warcraft Logs report actor can later be cross-walked to a Raider.IO profile. - `raiderio character` emits an additive `class_spec_identity` block via the shared `warcraft_core.identity` contract, alongside the preserved raw `class_name`/`active_spec_name` strings (mirrors the warcraftlogs-cli convention). - Confidence is gated: `high` only when both class and active spec resolve; degrades to `none` (status `unknown`) when source data is missing, so downstream handoff ranking never treats an unresolved profile as trustworthy. - Tests: happy-path asserts raw preservation + normalized identity + high confidence; degradation path asserts unknown/none when class/spec are absent. Slice scope only: Blizzard identity, encounter/ability/report-actor crosswalks, and the remaining handoff paths stay open under AUR-385. make check green (979 passed, 237 deselected). diffwarden clean (codex-gpt54 + codex-gpt55; cursor-composer errored transiently). Refs AUR-385 Co-Authored-By: OpenAI Codex <noreply@openai.com> Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
aurokin
deleted the
aur-385-monorepo-shared-identity-and-cross-provider-handoffs
branch
June 1, 2026 01:51
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
First slice of AUR-385 (shared identity + cross-provider handoffs). Surfaces a normalized
class_spec_identityon the Raider.IO character profile so a Warcraft Logs report actor can later be cross-walked to a Raider.IO profile — the "log actor → profile" handoff named in the issue's acceptance criteria.This is intentionally a thin, additive slice; the broader epic stays In Progress (see "Not in this slice" below).
What changed
raiderio characternow emits an additiveclass_spec_identityblock built via the sharedwarcraft_core.identitycontract, alongside the preserved rawclass_name/active_spec_namestrings. Mirrors the existingwarcraftlogs-cliconvention (main.py:2060,:2934).highonly when both class and active spec resolve; degrades tonone(statusunknown) when Raider.IO omits the data — so downstream handoff ranking never treats an unresolved profile as trustworthy. (This was a diffwarden finding, fixed before merge.){actor_class, spec}+highconfidence) and added a degradation test (missing class/spec →unknown/none).[Unreleased]entry.Not in this slice (AUR-385 stays open)
Verification
make checkgreen — 979 passed, 237 deselected; ruff / mypy / import-linter clean.diffwarden --target uncommitted→ patch is correct, no findings (codex-gpt54 + codex-gpt55; cursor-composer errored transiently, not a finding).Refs AUR-385
🤖 Generated with Claude Code