Skip to content

Enhance gacha banner functionality and improve stats management - #89

Open
Js41637 wants to merge 12 commits into
masterfrom
new-stuff
Open

Enhance gacha banner functionality and improve stats management#89
Js41637 wants to merge 12 commits into
masterfrom
new-stuff

Conversation

@Js41637

@Js41637 Js41637 commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

Summary

This branch overhauls the gacha import and statistics pipeline across Honkai: Star Rail, Genshin Impact, and Zenless Zone Zero.

  • Introduces a shared import pipeline with deterministic deduplication, pool/item validation, provenance handling, conflict-safe persistence, and transactional stat recalculation.
  • Makes multi-game UIGF imports atomic and recalculates stats even when an identical import changes no pull rows.
  • Adds pool-aware banner classification with consistent win/loss fallback behavior across all three games.
  • Completes ZZZ support for all six signal pools, including banners, personal/global statistics, imports, and UIGF exports.
  • Batches global percentile updates and prevents non-finite luck or win-rate values.
  • Hardens import jobs with opaque UUIDs, one active job per UID, redacted upstream URLs, and stable client-facing errors.
  • Corrects per-game private-history authorization.
  • Adds Mizuki to Genshin’s standard character pool.
  • Fixes official European Genshin wish timestamps that were previously stored seven hours early.

Database changes

  • Sanitizes existing NaN statistics and adds finite/range constraints.
  • Adds pool metadata to HSR and Genshin banners.
  • Adds ZZZ banner and missing pool-stat tables.
  • Migrates existing official European Genshin wishes by +7 hours.

Existing Chronicled Wish and HSR collaboration banner rows should be reviewed after deployment for any pool-specific metadata backfills.

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