chore: bump version to 2026.1.0 and write changelog
This commit is contained in:
@@ -2,6 +2,32 @@
|
||||
|
||||
All notable changes to DeckyVault will be documented in this file.
|
||||
|
||||
## [2026.1.0] - 2026-05-16
|
||||
|
||||
### Added
|
||||
- **Moderator role** with content moderation permissions (verify entries, handle reports, review suggestions, manage comments) — sits between contributor and admin
|
||||
- **Moderation analytics tab** with ECharts time-series: benchmark submissions, user registrations, device distribution, and genre popularity over 90 days
|
||||
- **Ban reason and expiry UI** in user management — modal with optional reason and duration, plus active/banned filter tabs
|
||||
- **Steam Sale section** on landing page showing discounted games with ≥3 benchmarks, sorted by performance — includes discount badges, pricing, and review scores
|
||||
- Database performance indexes: `perf_removed_created_idx`, `perf_upvotes_idx`, `reports_status_idx`, `suggestions_status_idx`, `games_sync_status_idx`, `perf_game_lookup_idx`
|
||||
- In-memory 5-minute cache for manage dashboard stats endpoint
|
||||
- Auto-pin unit tests covering threshold edge cases
|
||||
|
||||
### Changed
|
||||
- **Performance tags (Raw Performer/Poor Performance/best FPS) now scoped to handheld devices** (Steam Deck OLED/LCD) by default — console (Steam Machine) data no longer influences the badges shown on game cards, listings, and search results
|
||||
- **Public dashboard** now uses full-width layout matching game details page styling (no `max-w` constraint)
|
||||
- Moderator role added between contributor and admin; manage sidebar adapts to show role-appropriate navigation (hides Users, Storage for moderators)
|
||||
- Manage panel now requires moderator or admin role for access (previously contributor+)
|
||||
- Content moderation endpoints (reports, suggestions, comments, benchmark removal) gated to moderator+
|
||||
|
||||
### Fixed
|
||||
- **Submit wizard drag-and-drop** no longer triggers text selection or touch-scroll interference on settings and screenshot reorder handles
|
||||
- **Editing entries with screenshots** now shows existing screenshots in the Review step with remove capability; supports hybrid existing + new screenshot management
|
||||
|
||||
### Security
|
||||
- Manage panel access restricted to moderator+ (up from contributor+)
|
||||
- Destructive benchmark operations (remove, hard-delete, restore) now require moderator+ (up from admin-only — wider moderation capability with proper role separation)
|
||||
|
||||
## [2026.0.101] - 2026-05-14
|
||||
|
||||
### Added
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
---
|
||||
title: "Moderator Role, Performance Tag Fix, and Steam Sale Section"
|
||||
date: "2026-05-16"
|
||||
version: "2026.1.0"
|
||||
summary: "New moderator role for community management, handheld-scoped performance tags for more accurate badges, Steam sale discovery on the landing page, and submit wizard fixes."
|
||||
---
|
||||
|
||||
### New Moderator Role
|
||||
|
||||
A new **moderator** role sits between contributor and admin, giving trusted community members the ability to:
|
||||
- Verify benchmarks, handle reports, and review community suggestions
|
||||
- Moderate comments and remove problematic entries
|
||||
- Access the manage panel with role-appropriate navigation
|
||||
|
||||
Admins retain full control over user management, storage, and hardware creation. Existing contributors keep their permissions unchanged.
|
||||
|
||||
### Handheld-Scoped Performance Tags
|
||||
|
||||
Performance badges (Raw Performer, Poor Performance, best FPS) are now calculated using **Steam Deck data only** — console performance no longer masks handheld reality. A game running at 90 FPS on Steam Machine but 25 FPS on Steam Deck will correctly show as "Poor Performance" rather than displaying both badges confusingly.
|
||||
|
||||
### Steam Sale Discovery
|
||||
|
||||
The landing page now features an **On Sale & Performing Well** section showing discounted Steam games from the DeckyVault database. Each card displays the discount percentage, sale price, performance badges, and Steam review score — helping you spot great deals on games that actually run well.
|
||||
|
||||
### Submit Wizard Improvements
|
||||
|
||||
- **Drag-and-drop** in the settings editor and screenshot uploader no longer triggers accidental text selection
|
||||
- **Editing entries with screenshots** now shows your existing screenshots in the Review step — remove individual ones or add new ones before re-submitting
|
||||
+2
-2
@@ -73,7 +73,7 @@ export const app = new Elysia({ prefix: "/api" })
|
||||
documentation: {
|
||||
info: {
|
||||
title: "DeckyVault API",
|
||||
version: "2026.0.101",
|
||||
version: "2026.1.0",
|
||||
description:
|
||||
"API for DeckyVault — Steam Deck game compatibility, performance reports, and community features.",
|
||||
},
|
||||
@@ -214,7 +214,7 @@ export const app = new Elysia({ prefix: "/api" })
|
||||
.use(rateLimit("default"))
|
||||
.get("/", () => ({
|
||||
name: "DeckyVault API",
|
||||
version: "2026.0.101",
|
||||
version: "2026.1.0",
|
||||
}))
|
||||
|
||||
export type App = typeof app
|
||||
|
||||
+2
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "deckyvault",
|
||||
"version": "2026.0.101",
|
||||
"version": "2026.1.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "next dev --experimental-https --webpack",
|
||||
@@ -18,6 +18,7 @@
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-s3": "^3.1036.0",
|
||||
"@better-auth/drizzle-adapter": "^1.6.9",
|
||||
"@better-auth/expo": "^1.6.11",
|
||||
"@better-auth/passkey": "^1.6.9",
|
||||
"@elysia/cron": "^1.4.2",
|
||||
"@elysia/eden": "^1.4.10",
|
||||
|
||||
Reference in New Issue
Block a user