Skip to content

AUR-385: Raider.IO normalized class/spec identity (slice 1) - #34

Merged
aurokin merged 1 commit into
mainfrom
aur-385-monorepo-shared-identity-and-cross-provider-handoffs
Jun 1, 2026
Merged

AUR-385: Raider.IO normalized class/spec identity (slice 1)#34
aurokin merged 1 commit into
mainfrom
aur-385-monorepo-shared-identity-and-cross-provider-handoffs

Conversation

@aurokin

@aurokin aurokin commented Jun 1, 2026

Copy link
Copy Markdown
Owner

Summary

First slice of AUR-385 (shared identity + cross-provider handoffs). Surfaces 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 — 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 character now emits an additive class_spec_identity block built via the shared warcraft_core.identity contract, alongside the preserved raw class_name/active_spec_name strings. Mirrors the existing warcraftlogs-cli convention (main.py:2060, :2934).
  • Confidence is gated: high only when both class and active spec resolve; degrades to none (status unknown) 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.)
  • Tests: extended the happy-path character test (raw fields preserved + normalized identity {actor_class, spec} + high confidence) and added a degradation test (missing class/spec → unknown / none).
  • CHANGELOG [Unreleased] entry.

Not in this slice (AUR-385 stays open)

  • Blizzard provider identity emission
  • Encounter / ability / report-actor crosswalks beyond what already ships
  • The remaining handoff paths

Verification

  • make check green — 979 passed, 237 deselected; ruff / mypy / import-linter clean.
  • diffwarden --target uncommittedpatch is correct, no findings (codex-gpt54 + codex-gpt55; cursor-composer errored transiently, not a finding).

Refs AUR-385

🤖 Generated with Claude Code

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>
@linear

linear Bot commented Jun 1, 2026

Copy link
Copy Markdown

AUR-385

@aurokin
aurokin merged commit 65180fe into main Jun 1, 2026
2 checks passed
@aurokin
aurokin deleted the aur-385-monorepo-shared-identity-and-cross-provider-handoffs branch June 1, 2026 01:51
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