# Changelog All notable changes to StarPunk will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] ### Added - Notes management module (`starpunk/notes.py`) with CRUD operations - Custom exceptions for note operations (NoteError, NoteNotFoundError, InvalidNoteDataError, NoteSyncError) - File and database synchronization with transaction safety - Support for soft and hard note deletion - Comprehensive test suite for notes module (85 tests, 86% coverage) - Database schema support for soft deletes (deleted_at column) - Slug uniqueness enforcement with random suffix generation - Content hash calculation for integrity verification ### Changed - Updated database schema to include `deleted_at` column in notes table - Added index on `deleted_at` for query performance ## [0.1.0] - 2024-11-18 ### Added - Initial project structure - Core architecture design - Technology stack selection (Flask, SQLite, file-based storage) - Architecture Decision Records (ADR-001 through ADR-007) - Development documentation and standards - Phase 1.1 design: Core utilities specification - Python coding standards - Documentation organization structure ### Documentation - Complete architecture overview - Technology stack documentation - ADR-001: Python web framework (Flask) - ADR-002: Flask extensions (minimal approach) - ADR-003: Frontend technology (server-side rendering) - ADR-004: File-based note storage - ADR-005: IndieLogin authentication - ADR-006: Python virtual environment (uv) - ADR-007: Slug generation algorithm - ADR-008: Versioning strategy [Unreleased]: https://github.com/YOUR_USERNAME/starpunk/compare/v0.1.0...HEAD [0.1.0]: https://github.com/YOUR_USERNAME/starpunk/releases/tag/v0.1.0