Skip to content

Migrate challenge progress storage to SQLite#137

Merged
minoneer merged 7 commits intomasterfrom
feature/challenge-progress-db-migration
Mar 17, 2026
Merged

Migrate challenge progress storage to SQLite#137
minoneer merged 7 commits intomasterfrom
feature/challenge-progress-db-migration

Conversation

@minoneer
Copy link
Member

Summary

  • move challenge progress from legacy YAML files into a SQLite-backed repository
  • migrate legacy completion and player challenge data eagerly on first startup into island-owned records
  • keep migrated backups under backup/completion and store the DB under data/challenge-progress.db

Notes

  • legacy import is one-shot and tracked in DB metadata so startup does not keep rescanning old files forever
  • the repository keeps sparse progress rows and uses WAL mode with a short busy timeout

Testing

  • ./gradlew :uSkyBlock-Core:test --tests us.talabrek.ultimateskyblock.challenge.ChallengeCompletionLogicTest --tests us.talabrek.ultimateskyblock.challenge.SqliteChallengeProgressRepositoryTest --tests us.talabrek.ultimateskyblock.island.IslandKeyTest

@minoneer minoneer force-pushed the feature/challenge-progress-db-migration branch from c527f89 to ab658b3 Compare March 17, 2026 09:14
@minoneer minoneer merged commit 480ea7c into master Mar 17, 2026
1 check passed
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