Skip to content

Add live skeleton-mode recruit class replacement#10

Merged
eric-levinson merged 9 commits into
mainfrom
codex/live-recruit-class-poc
Jul 15, 2026
Merged

Add live skeleton-mode recruit class replacement#10
eric-levinson merged 9 commits into
mainfrom
codex/live-recruit-class-poc

Conversation

@eric-levinson

Copy link
Copy Markdown
Owner

Summary

  • add a guarded live-class replace command that generates a Brooks recruit class and writes it into the verified live Player, Recruit, and Player-string surfaces
  • support skeleton mode only for live generation; free mode is intentionally unavailable so EA rank, star, position, geography, HS/JUCO identity, NIL, and recruiting state remain intact
  • generate names, ratings, archetypes, development traits, abilities, heads, and portraits while preserving hometown when Brooks omits it and continuing to skip gear
  • snapshot every target, batch writes, verify every batch, and automatically roll back verified prior batches on failure
  • locate sparse skeleton surfaces from exact pre-write records and resolve duplicate string mirrors through verified allocation adjacency

Why

Free-mode generation reassigned class-structure fields while leaving EA recruiting identity/state attached to the original rows. In CFB27, the Recruit Class enum currently decodes as raw bits, so the free-mode JUCO guard could not recognize JUCO rows; that allowed five-star rank/star values to land on JUCO recruits. Brooks's skeleton redesign avoids the mismatch by preserving EA's class structure and recruiting/NIL state and rerolling only the player surfaces intended for replacement.

User impact

The command provides a lightweight external recruit-class generator that updates a loaded dynasty without editing the save file directly. The live entry point always requests Brooks skeleton mode; there is no live free-mode option.

Validation

  • npm test — 207/207 passing
  • npm run check — passing
  • live game verification on a clean dynasty at the Prospect List using seed live-skeleton-20260714-1
    • status applied_verified
    • 4,101 Player rows
    • 969 changed Recruit rows
    • 4,101 name slots
    • 287 verified batches
    • 0 portraits skipped
    • gear skipped for 4,101 recruits
    • rollback not needed
    • post-write hook status healthy

@eric-levinson
eric-levinson marked this pull request as ready for review July 15, 2026 03:43
@eric-levinson
eric-levinson merged commit 20ed2c9 into main Jul 15, 2026
2 checks passed
@eric-levinson
eric-levinson deleted the codex/live-recruit-class-poc branch July 15, 2026 03:48
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