Murloc Cult

Back to the log

Reproduction platform: a staging server replays bugs with the exact character state

A separate worldserver, isolated from production, replays a bug within minutes using a faithful copy of the affected characters, builds disposable characters on demand and validates a candidate build before any deployment.

Commit
b8d419c
Build
Build success · Target staging
Why

Every fix used to require hand-building a test server, without the real state of the affected characters.

What is in place
  • Staging server: separate databases and realm, local access only, low CPU and disk priority, stopped as soon as it is idle.
  • Reproduction: read-only snapshot of only the affected characters (inventory, spells, talents, quests, reputations, pet, mail, brain memory), copied under a new name and played for N minutes; the bug detector runs on the staging logs and returns a reproduced / not reproduced verdict with a log excerpt.
  • Disposable characters: race, class, level, location, quests; the module creates and levels them (spells, talents, typical gear for the level, pet) using the combat lab code.
  • Validation: a candidate build plays clones of the targeted bugs plus a sample of the population; it is cleared for production only with no crash, no new error, no targeted bug reproduced and indicators at least as good as production over the same period.
First runs

A mailbox goal loop was reproduced in 15 minutes; validating a development build correctly rejected it because the loop is still there. Staging load: about one core out of eight with a dozen characters.