4.9 KiB
4.9 KiB
type, title, description
| type | title | description |
|---|---|---|
| Log | Spigot Heights Design Log | Chronological record of material decisions affecting Spigot Heights. |
Spigot Heights Design Log
2026-09-07T00:00:54Z — Player-height commands completed
- Added
/heights player <name> [scale]for exact online-player lookup, base/effective scale reporting, immediate saved changes, and permission-protected name/size completion. - Command-set scales honor live limits and the exact
1.0restoration exception. The player-state store now publishes cached changes only after successful persistence, and commands save before applying scale. - Verified
./gradlew clean check jar: all 33 tests passed, including permissions, input validation, completions, scale reporting, reload, and failed-save protection. Inspected Bukkit lookup/attribute and join/respawn wiring; live-server/client verification remains unperformed. - Updated README and completed US-008 and related US-004/US-007 criteria.
2026-09-06T23:54:36Z — Player-height commands approved and started
- Approved US-008:
/heights player <name> [scale]for online players, admin permissions, tab completion, and UUID persistence. - Values follow current min/max bounds with the exact
1.0exception; failed saves must not change cached or live player height.
2026-09-06T23:51:22Z — Settings commands completed
- Added
/heights settingsand/heights set min|max <value>withspigotheights.admin(default op), generic sender support, and prefix-filtered tab completion of valid example values. - Validated changes are persisted through temporary-file replacement (atomic where supported) before activating shared live settings. Unrelated YAML values are preserved; malformed files and write failures do not activate new limits.
- Updated gameplay listeners to read current settings without immediately resizing players or resetting launcher cooldowns.
- Verified
./gradlew clean check jar: all 26 tests passed. Inspected command registration and event wiring; live-server/client verification remains unperformed. Completed US-007 and the related US-004 change.
2026-09-06T23:45:28Z — Settings commands approved and started
- Approved US-007: permission-protected min/max commands, tab completion, validation, and persistent live updates.
- Existing players are not resized immediately; subsequent gameplay reads current limits. The exact
1.0restoration exception remains intact.
2026-09-06T23:41:16Z — Restoration completed
- Added the white Potion of Restoration with persistent identity and the approved Sugar upgrade recipe.
- Consumption restores exact scale
1.0through the existing report/save path; saved1.0bypasses configured-range clamping on join and respawn. - Verified
./gradlew clean check jar: all 17 tests passed, including restoration, persistence reload, range exceptions, recipe shape, identity, and existing potion regression coverage. - Inspected Bukkit recipe/metadata and event wiring; live-server gameplay verification remains unperformed. Updated the README and completed US-006 and the related US-004 change.
2026-09-06T23:37:19Z — Restoration approved and implementation started
- Approved US-006: a Sugar-based upgrade of Shifting Stature restores exact scale
1.0. - Approved an exception to saved-scale clamping in US-004 so restoration survives reconnects and respawns even outside configured limits.
2026-09-04 — Initial design approved
- Player scale defaults to a configurable range of
0.4through2.0. - A moderate recipe creates a random stature potion; more expensive upgrades create targeted growth and diminution potions.
- Random stature is selected uniformly in configurable
0.1increments. - Players strictly below scale
0.5can be launched through a dispenser fed by the hopper beneath them. - Launcher speed defaults to 1.5 blocks per tick with a 20-tick cooldown and safe-exit checks.
- The project follows the neighboring Spigot Base Java 25, Purpur, Gradle, OKF, CI, and release conventions.
2026-09-04 — Implementation started
- Approved implementation began with user stories, tests, and the Gradle/Purpur foundation.
2026-09-04 — Initial release scope completed
- Implemented authenticated random, growth, and diminution potions with approved recipes and durable UUID-keyed player scale.
- Added validated stature and launcher configuration with safe clamping to Minecraft's scale range.
- Implemented cooldown-protected hopper-to-dispenser launch tubes for tiny players with six-axis launch support and empty-exit checks.
- Added the Java 25 Purpur build, automated tests, Gitea CI and semantic-release workflows, README, and project-specific agent guidance.
- Verified the implementation with
./gradlew clean check jarand created the publicdmg/spigot-heightsGitea repository.