Limit activity reward multipliers to whitelisted pools - #76
Conversation
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (5)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review. 📝 WalkthroughWalkthroughReward configuration now supports a pool-name whitelist for extra milestone reward draws. Milestone payouts pass this whitelist to reward selection. Fixed rewards retain their amount multiplier. ChangesReward Pool Multipliers
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~15 minutes Change: Bug fix Sequence Diagram(s)sequenceDiagram
participant ActivityConfiguration
participant ActivityManager
participant rewardFor
ActivityConfiguration->>ActivityManager: provide multiplierPools()
ActivityManager->>rewardFor: pass multiplierPools with reward and multiplier
rewardFor->>rewardFor: draw multiplier times for listed pools
rewardFor->>rewardFor: draw once for unlisted pools
Suggested reviewers: Merge Risk: ⚪ Minimal · up to No actionable merge-blocking issue is established; complete the pending Maven and dev-server checks before merging. Security Architecture ReviewSecurity architecture risk: 🔵 Low · up to The new whitelist limits extra weekly pool draws to configured pools. No new player-controlled way to increase payouts was identified. Existing payout-recovery limitations remain, and deployment behavior has not been validated. Retained concerns Security review detailsSecurity Blast Radius
Trust Boundaries and Controls
Resilience and Maintainability Implications
Hardening Proposals
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 23 functions across 4 files. (1 skipped: 1 unsupported.)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
A rabbit checks the pool-name set, Comment |
Weekly activity multipliers currently add draws to every pool, so multiplier 2 also awards two skin scrolls at drop_3. Add
rewards.multiplier-pools, an explicit case-insensitive whitelist for extra weekly pool draws. Configure[pool_prologue]to boost materials while skin pools draw once.Missing, empty, or malformed whitelists enable no extra pool draws. Daily pool rewards and fixed-item amount behavior remain unchanged. The default configuration documents migration and reload behavior.
Validation: regression coverage for the live three-milestone setup at multiplier 2, excluded default/scroll pools at multiplier 64, whitelist parsing, and existing payout failure handling. Validation completed:
mvn clean verify: 773 tests passed, no failures/errors/skips.activity-DEV-20260928-1652.jarinstalled on TFMCDev01 withmultiplier-pools: [pool_prologue]; Paper startup completed, ActivityTF enabled all integrations,version activityconfirmed the build, andactivity reloadcompleted successfully.Deployment: routine main push after release, retaining
multiplier: 1and whitelisting onlypool_prologue. Jar and config take effect at the next main restart. Documentation: TF-Minecraft/Docs#71.