feat(config): add validated persistent state
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
type: User Story
|
||||
title: "US-006: Configure plugin behavior"
|
||||
description: Let operators tune cooldown tiers and run the plugin with clear validation, messages, permissions, and durable state.
|
||||
status: backlog
|
||||
status: done
|
||||
---
|
||||
|
||||
# US-006: Configure plugin behavior
|
||||
@@ -11,17 +11,17 @@ As a **server operator**, I want safe configuration and durable state so that Tr
|
||||
|
||||
## Acceptance criteria
|
||||
|
||||
- [ ] The one-kill cooldown is independently configurable and defaults to 28,800 seconds.
|
||||
- [ ] The two-kill cooldown is independently configurable and defaults to 14,400 seconds.
|
||||
- [ ] The three-kill cooldown is independently configurable and defaults to 3,600 seconds.
|
||||
- [ ] Configured cooldowns must be positive and representable safely by the plugin.
|
||||
- [ ] Invalid required configuration prevents partial initialization and produces a clear server log message.
|
||||
- [ ] Player-facing messages use clear built-in wording, readable colors, and friendly duration formatting.
|
||||
- [ ] Ordinary players do not require a plugin permission node to execute `/spawn`; eligibility is controlled by progression, grants, cooldowns, and bans.
|
||||
- [ ] Administrative commands require `triggerspawn.admin`.
|
||||
- [ ] Server operators receive `triggerspawn.admin` by default.
|
||||
- [ ] Boss progress, grants, bans, cooldown timestamps, latest known names, and per-world spawn settings persist across clean restarts.
|
||||
- [ ] Persisted data is handled defensively so corrupt or invalid records do not silently grant access.
|
||||
- [x] The one-kill cooldown is independently configurable and defaults to 28,800 seconds.
|
||||
- [x] The two-kill cooldown is independently configurable and defaults to 14,400 seconds.
|
||||
- [x] The three-kill cooldown is independently configurable and defaults to 3,600 seconds.
|
||||
- [x] Configured cooldowns must be positive and representable safely by the plugin.
|
||||
- [x] Invalid required configuration prevents partial initialization and produces a clear server log message.
|
||||
- [x] Player-facing messages use clear built-in wording, readable colors, and friendly duration formatting.
|
||||
- [x] Ordinary players do not require a plugin permission node to execute `/spawn`; eligibility is controlled by progression, grants, cooldowns, and bans.
|
||||
- [x] Administrative commands require `triggerspawn.admin`.
|
||||
- [x] Server operators receive `triggerspawn.admin` by default.
|
||||
- [x] Boss progress, grants, bans, cooldown timestamps, latest known names, and per-world spawn settings persist across clean restarts.
|
||||
- [x] Persisted data is handled defensively so corrupt or invalid records do not silently grant access.
|
||||
|
||||
## Related
|
||||
|
||||
|
||||
Reference in New Issue
Block a user