Skip to content

Latest commit

 

History

History
106 lines (86 loc) · 5.43 KB

File metadata and controls

106 lines (86 loc) · 5.43 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

Added

  • Spec compliance reports for each spec document

  • Spec compliance implementation plan

  • Response envelope middleware ({ data, meta }) across API responses

  • CSRF protection middleware and CSRF token endpoint

  • Security headers middleware (CSP, HSTS, X-Frame-Options, etc.)

  • Audit log storage and write paths for auth/admin actions

  • GDPR delete/anonymize admin endpoint and migration

  • Redis-backed refresh token store with rotation + revoke

  • Auth route additions: /api/v1/auth/logout, /api/v1/auth/refresh-token

  • Denormalized counter triggers for categories (thread_count, post_count)

  • Enhanced thread reply_count trigger to handle soft-delete transitions

  • Data retention service with scheduled cleanup jobs (24-hour interval)

  • Admin endpoint POST /admin/retention/run for manual retention job trigger

  • Next.js middleware for route protection (admin, settings, thread creation, DM routes)

  • Zustand UI store for sidebar, theme, mobile menu, notifications panel state

  • React Hook Form + Zod validation for auth forms (sign-in, sign-up)

  • WebSocket client hook (useWebSocket) for real-time notifications

  • Plugin settings repository with CRUD operations (PluginSettingsRepository)

  • Admin plugin settings API: GET/PATCH/DELETE /admin/plugins/{plugin_id}, GET /admin/plugins

  • OpenAPI schemas for plugin settings endpoints

  • Production Docker deployment stack:

    • Multi-stage backend Dockerfile with slim runtime
    • Multi-stage frontend Dockerfile with Bun
    • Production docker-compose.prod.yml
    • Nginx reverse proxy with SSL, rate limiting, security headers
  • Backend entrypoint script with migration support and service health checks

  • Operations scripts: backup.sh, restore.sh, healthcheck.sh

  • Production environment template (.env.prod.example)

  • Deployment documentation (docs/DEPLOYMENT.md)

  • Backend test fixtures module (tests/fixtures.rs)

  • Comprehensive auth tests: JWT token pair, refresh token decoding, password hashing/verification

  • Frontend component tests: Button variants, auth schema validation, UI store state management

  • Playwright E2E test framework with config and test specs (home, auth, navigation)

  • k6 performance testing scripts (load-test.js, stress-test.js)

  • Forum hierarchy support (Category → Sub-Category → Thread → Post) across backend and frontend

  • Breadcrumb navigation component and integration on category/thread pages

  • Moderator dashboard page and route protection for moderator/admin roles

  • Admin dashboard refresh to align with design previews

  • ZapBB official logo integrated across frontend layouts

  • Seeded admin and moderator accounts for testing

  • Shared click-outside hook to deduplicate global event listeners

  • Password hash utility binary for generating Argon2 hashes

  • Plugin System (Phase 7): Build-time plugin architecture with slot-based UI injection, event handling, settings persistence, and admin management UI

  • Theme System (Phase 7): Configurable theming with light/dark color palettes, typography, layout, and CSS variable generation

  • ShadCN/Base UI Integration: Modern component library setup with Base UI primitives

  • Search & Indexing (Phase 5): Full-text search via OpenSearch with thread/post indexing

  • Core Forum Features (Phase 4): Categories, threads, posts, reactions, polls, and moderation tools

  • Authentication (Phase 3): NextAuth.js sessions for web, JWT tokens for API, role-based access control

  • Database Layer (Phase 2): PostgreSQL with sqlx compile-time checked queries, Redis caching

  • Project Scaffolding (Phase 1): Rust (Axum) backend, Next.js 16 frontend, shared types

  • Foundations (Phase 0): Specification documents, PRD, technical architecture

Changed

  • Migrated to Biome for linting and formatting (replaces ESLint/Prettier)
  • Stabilized backend and frontend toolchains with proper type safety
  • OpenAPI schemas updated for new auth/admin/moderation endpoints
  • Frontend API consumers updated to use response envelopes
  • Auth login response now returns access/refresh token pair with expiry
  • Category API now supports parent_id filtering and computed hierarchy metadata
  • Thread creation now enforces leaf-category validation
  • Home and community pages updated for parent/sub-category navigation
  • Moderator queue and admin navigation entry points added
  • Frontend list rendering optimized with content-visibility and memoized lookups

Fixed

  • Hook ordering issues in plugin SlotRenderer component
  • Pagination metadata integration across all list screens
  • Header avatar now links to public profile route

[0.1.0] - 2026-01-21

Added

  • Initial MVP release with all Phase 0–7 features complete
  • Docker development environment with PostgreSQL, Redis, and OpenSearch
  • Native Windows development support
  • Comprehensive specification documentation

Release Naming

Releases follow the format:

  • vMAJOR.MINOR.PATCH (e.g., v0.1.0)
  • Optional codename for marketing/blog use only (e.g., v0.1.0 "Spark")

Notes

  • Update this file for every merged feature or fix.
  • Group changes under Added, Changed, Fixed, Deprecated, Removed, Security.