# Changelog All notable changes to CannaManage will be documented in this file. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). --- ## [Unreleased] ### Added - Complete project documentation suite (10 documents, ~25,000 words) - System architecture design: 8 JPA entities, Maven multi-module structure, multi-tenancy via shared schema + Hibernate filter - REST API specification: 7 controllers, 30+ endpoints, full request/response schemas with error codes - Compliance engine design: `ComplianceService` enforcing CanG §§19–22 limits (25g/day, 50g/month adults; 30g/month under-21; ≤10% THC under-21) - `ComplianceConstants.java` design: all legal thresholds as named constants to prevent magic numbers in compliance logic - UI wireframes for 6 screens: Admin Dashboard, Distribution Recording Form, Member List, Member Quota View, Stock Management, Compliance Report - 5 AI-generated UI mockup images (FLUX.1-schnell via ComfyUI, 1024×512) - Test plan with 26 test cases covering ComplianceService (TC-001–010), MemberService (TC-011–015), tenant isolation (TC-016–017), and integration tests (TC-018–026) - Deployment guide for Hetzner VPS: Docker Compose setup, Nginx reverse proxy, SSL with Let's Encrypt, CI/CD via Gitea Actions, database backup strategy - Coding standards: Java 21 conventions, JPA patterns, multi-tenancy rules, immutable distribution records - Flowcharts: distribution flow (5-step), member lifecycle (state machine), billing provisioning flow (Mermaid diagrams) - README with full documentation index, tech stack table, pricing tiers, legal notice --- ## [0.1.0] - 2026-04-06 ### Added - `STRATEGY.md` — initial project vision and feasibility assessment - Legal analysis confirming CanG compliance viability for B2B SaaS model (no public advertising, no club discovery, B2B-only) - Market analysis: ~3,000 registered clubs in Germany, TAM estimated at €2.85M ARR - Tech stack selection rationale: Spring Boot 3.x + PrimeFaces JSF (MVP) → Next.js v2; PostgreSQL + Flyway; iText 7 PDF; Stripe billing - Multi-tenancy architectural decision: shared schema with `tenant_id` column (chosen over schema-per-tenant for lower operational overhead at MVP scale) - Pricing model: 4 tiers (Starter €29, Growth €59, Professional €99, Enterprise €199/month) --- [Unreleased]: https://github.com/pplate/cannamanage/compare/v0.1.0...HEAD [0.1.0]: https://github.com/pplate/cannamanage/releases/tag/v0.1.0