HSHOT SPOTSSTEEL DOMINIONHOT SPOTS / CAMPAIGN CONTROL

Updates and troubleshooting

Administrators and players · Reviewed for v433

Apply releases safely and resolve common access or navigation problems.

Applying a release

  1. Back up the database and preserve your private configuration files. Upload the supplied deploy/ contents to the installation.

  2. Open Admin → Database updates. Compare installed application and database versions, then apply or verify the update.

  3. The updater applies registered changes and records the verified release. It does not upload application files. The menu entry is muted when the database is current.

Common problems

  1. Missing menu options: open the campaign first. Hot Spots company actions also require selecting a company; Aces uses one shared force. Some actions require GM or administrator permissions.

  2. An expired-form or changed-session message: reload the page and sign in again if necessary. Check whether the earlier action succeeded before trying another submission.

  3. An invitation does not work: check its expiry, whether it was used or revoked, and whether its required email matches your verified email. Ask its issuer for a replacement.

  4. Sign-in provider unavailable: an administrator must configure and enable it. An account with the same email may need an explicit provider link after signing in.

  5. An import fails: use the correct template and source type. Rules imports take CSV exports; an XLSX workbook must be exported first.

  6. If a problem persists, give the administrator the page name, action, error message and approximate time. Never send passwords, client secrets or sign-in links as troubleshooting details.

Recovering a database verification error

  1. Database updates shows progress in place while applying or verifying a release. Keep the page open. A confirmed error retains the current plan and retry form; the full-area error link leads to that form. Reloaded status checks do not reapply migrations. Without JavaScript, the same authorized form uses the normal server-rendered workflow.

  2. Version 351 fixes a false Equipment changed during value reconciliation error caused by integer/float values that save as identical JSON. Upload v351, preserving config.php, then run Database updates again. The failed reconciliation transaction was rolled back; earlier completed migrations retain their receipts. Existing account balances and finalized history are not rebuilt by this fix.

  3. If a record really changes during reconciliation, the error names its saved ID and the transaction rolls back. Reload Database updates and explicitly verify again. If the response is interrupted or cannot be confirmed, use the reload link to check status before retrying; the browser never repeats the mutation automatically.

Deployment acceptance

  1. Generate upload packages with build-deploy.ps1. Required staged browser and workflow checks must pass before a deploy folder is created or replaced. Failed or unavailable checks block packaging and preserve the previous deploy; repair the cause and run the complete build again.

  2. The build uses a fresh synthetic database and isolated browser through Chrome DevTools MCP, then checks evidence and package hashes. See tools/acceptance/README.md for local prerequisites, executable change coverage and private evidence. Never upload .acceptance/ or reuse an earlier PASS report.

  3. SQL-changing releases require matching disposable MySQL 8.0.46 tests with the verified empty hosting sql_mode (no modes enabled) and native prepares. The gate can provision its own isolated server. Unknown or mismatched target facts block packaging; SQLite workflow results do not establish MySQL/updater compatibility.

Access denied pages

  1. A page you cannot access shows the reason with the shared menu and, when signed in, a Dashboard breadcrumb. It does not show private campaign navigation. Use Dashboard to return to your own campaigns; ask the organizer if you need membership or a GM-only task.

Application and database release versions

  1. Upload every file from the generated release folder, including data/releases.json outside public/. Installed application version comes from that manifest, not the folder name.

  2. After each upload, open Admin > Database updates. The database version is the last release successfully verified, so a code-only release can still offer Apply updates to v405 without a new SQL migration.

  3. For the corrected v405 package, verify that Installed application version shows v405, then apply or verify the update. The registered updater checks earlier migrations and records release_v405 on success. Do not manually insert a version marker to conceal an incomplete upload.

Browse all help topics · Release notes