mirror of
https://github.com/prosolis/gogobee.git
synced 2026-07-16 08:52:42 +00:00
Adv 2.0 L5f: misc fields (Title, TreasuresLocked, CraftsSucceeded) migration
Three player_meta columns (title TEXT, treasures_locked INT, crafts_succeeded INT). MiscState struct + load/upsert/backfill/ projection helpers. Dual-write rides saveAdvCharacter alongside the L5e death-state hook — Title is dormant, the other two already mutate at sites that save. Tests: TestPlayerMetaMiscStateBackfill_Idempotent, TestLoadMiscState_FallsBackToAdvCharacter, TestUpsertPlayerMetaMiscState_RoundTrip. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -250,6 +250,11 @@ func (p *AdventurePlugin) Init() error {
|
||||
if err := backfillPlayerMetaDeathState(); err != nil {
|
||||
slog.Error("player_meta: death state backfill failed", "err", err)
|
||||
}
|
||||
// Adv 2.0 Phase L5f — one-shot misc state backfill into player_meta.
|
||||
// Idempotent (only fills rows whose misc fields are all default).
|
||||
if err := backfillPlayerMetaMiscState(); err != nil {
|
||||
slog.Error("player_meta: misc state backfill failed", "err", err)
|
||||
}
|
||||
// Phase L3 — cancel any open/active legacy coop dungeon runs and
|
||||
// refund member contributions + unsettled bets. Idempotent.
|
||||
closeAndRefundLegacyCoopRuns(p.euro)
|
||||
|
||||
Reference in New Issue
Block a user