Adv 2.0 post-L5 audit cleanup: drop redundant dual-writes + refresh stale comments

Audit confirmed saveAdvCharacter's fan-out (upsertAllPlayerMetaFromAdvChar)
covers all 13 migrated subsystems, so the per-call-site upsertPlayerMetaXxx
calls retained "as defense" through the L4-L5 migration are redundant
post-L5h. Removed 16 such call sites across arena (2), scheduler (4),
hospital (1), consumables (2), rival (1), housing (11), and reordered
masterwork to drop a now-pointless explicit upsert before the load+save.

Refreshed nine stale doc comments referencing the legacy
adventure_characters table or "soak window / fallback" language that no
longer applies after the L5 close-out (commit 596b2b7). No behavior
change; go vet + go test ./... pass.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
prosolis
2026-05-09 13:01:00 -07:00
parent c0f03a41b5
commit 5d98e5684a
11 changed files with 27 additions and 95 deletions

View File

@@ -199,10 +199,9 @@ func (p *AdventurePlugin) resolveHospitalPay(ctx MessageContext, interaction *ad
trackTaxPaid(ctx.Sender, potCut)
}
// Revive. Phase L4a: restore DnDCharacter HP to full (canonical
// post-L5 path) and keep flipping AdvCharacter.Alive during soak
// since other systems still read it. HospitalVisits dual-writes
// to player_meta + AdvCharacter (§11).
// Revive. Restore DnDCharacter HP to full (canonical post-L5 path);
// AdvCharacter.Alive flip + HospitalVisits++ propagate through the
// saveAdvCharacter fan-out into player_meta.
char.Alive = true
char.DeadUntil = nil
char.HospitalVisits++
@@ -212,9 +211,6 @@ func (p *AdventurePlugin) resolveHospitalPay(ctx MessageContext, interaction *ad
p.euro.Credit(ctx.Sender, float64(cost), "hospital_revival_refund")
return p.SendDM(ctx.Sender, "Something went wrong during recovery. Your payment has been refunded.")
}
if err := upsertPlayerMetaHospitalVisits(char.UserID, char.HospitalVisits); err != nil {
slog.Error("hospital: failed to dual-write hospital_visits to player_meta", "user", char.UserID, "err", err)
}
if dnd, err := LoadDnDCharacter(char.UserID); err == nil && dnd != nil {
dnd.HPCurrent = dnd.HPMax
if err := SaveDnDCharacter(dnd); err != nil {