19 Commits

Author SHA1 Message Date
073b70cc39 xx 2026-01-22 04:40:05 +00:00
fbe7fc66d8 feat: enhance diarization skipped job logging with meeting creator ID and improve dev server robustness with execvp error handling. 2026-01-19 09:53:55 +00:00
f9b98d43dc feat: introduce a new markdown editor component and enhance UI panel state management, while banning the standard library logger. 2026-01-19 04:39:33 +00:00
f850e52fc4 docs: replace lib-focused code review with comprehensive frontend architecture review covering React components, pages, and e2e tests
- Replaced codefixes.md with broader frontend review covering React/TypeScript patterns, Tauri integration, component architecture, and test coverage
- Added pages.md documenting critical bugs (React key collision in Analytics pie chart, fire-and-forget error swallowing), API architecture patterns, and code duplication opportunities
- Identified must-fix issues: Speaker
2026-01-16 17:01:10 +00:00
9ca570213f docs: add comprehensive code review findings and implementation plan for client library improvements
- Added codefixes.md documenting code review of client/src/lib with 6 findings covering localStorage performance, crypto recovery, preferences hydration, and AI provider architecture
- Added implementation-plan.md with 4-phase remediation strategy prioritizing critical bugs (preferences local-only key inconsistency, missing stack traces) before performance optimizations
- Identified preferences hy
2026-01-16 09:36:47 -05:00
74cb4da680 ```
feat: add drift compensation system for synchronized audio capture with EMA-based detection and resampling

- Added DriftDetector using exponential moving average and linear regression to calculate clock drift in ppm between primary/secondary audio sources
- Implemented DriftMetrics for tracking overflow counts, adjustment counts, and throttled logging to prevent log spam
- Created DriftCompensator with rubato-based resampling to apply dynamic ratio adjustments when drift exceeds threshold
- Added comprehensive
2026-01-16 07:16:02 -05:00
bd1108b157 refactor: add project ID normalization and improve diarization error handling
- Added normalizeProjectId and normalizeProjectIds functions to filter out default/empty project IDs before sending to backend
- Applied normalization to setActiveProject, createMeeting, and listMeetings API calls
- Added AssertionError to caught exceptions in streaming diarization and session chunk processing
- Updated repomix config to focus on src/noteflow/infrastructure directory
- Added mock_torch_minimal fixture to
2026-01-15 22:48:10 +00:00
1ce24cdf7b feat: reorganize Claude hooks and add RAG documentation structure with error handling policies
- Moved all hookify configuration files from `.claude/` to `.claude/hooks/` subdirectory for better organization
- Added four new blocking hooks to prevent common error handling anti-patterns:
  - `block-broad-exception-handler`: Prevents catching generic `Exception` with only logging
  - `block-datetime-now-fallback`: Blocks returning `datetime.now()` as fallback on parse failures to prevent data corruption
  - `block-default
2026-01-15 15:58:06 +00:00
83e6b50983 refactor: update configuration and testing for export settings
- Changed `repomix.config.json` to disable comment removal, empty line removal, and compression, while enabling Base64 truncation.
- Updated the include paths to add a new "tests/" directory.
- Enhanced the `ExportAISection` tests by refining mock implementations and adding new test cases for export settings, template presets, and UI elements.
- Improved the `useAsyncData` hook to store success and error callbacks in refs to prevent unnecessary re-fetching.
- Adjusted timer handling in `useAsrConfig` tests for better accuracy and reliability.
- Added new mock implementations in `RecordingPage` tests to ensure proper state management during rendering.
2026-01-15 03:42:12 +00:00
0c1dbb362f feat: add structured logging for persistence and export operations
- Introduced logging for CRUD operations in repositories to enhance visibility into database interactions.
- Implemented timing logs for BaseRepository and UnitOfWork lifecycle events to track performance.
- Added export logging for size and duration without exposing sensitive content.
- Promoted logging levels for specific operations to improve clarity and reduce noise in logs.
- Established a framework for consistent logging practices across persistence and export functionalities.
2026-01-14 01:18:44 +00:00
bed20ce682 chore: update frontend container configuration and disable compression
- Added a specific container name for the frontend service in `compose.yaml` for better identification.
- Disabled the compression option in `repomix.config.json` to potentially improve build performance.
2026-01-12 19:34:36 +00:00
832a691dd7 refactor: enhance audio capture and playback handling with optional sounddevice support
- Refactored audio capture and playback components to improve handling of the optional `sounddevice` module, allowing for better compatibility in environments lacking PortAudio.
- Introduced a new `sounddevice_support.py` module to centralize the management of sounddevice interactions and error handling.
- Updated the `SoundDeviceCapture` and `SoundDevicePlayback` classes to utilize the new support module, ensuring consistent stream management and error logging.
- Improved the `generate_dek` method in the crypto module to enforce key size validation, enhancing security and reliability.
- Enhanced the key file existence check in the keystore to include validation of the key content, improving robustness against invalid key files.
2026-01-03 12:50:00 +00:00
96ed391a7c chore: update logging configuration and enhance project structure
- Added new logging configuration to improve observability across various services.
- Introduced a `.repomixignore` file to exclude unnecessary files from version control.
- Updated `pyproject.toml` to include additional paths for script discovery.
- Refreshed submodule references for the client to ensure compatibility with recent changes.

All quality checks pass.
2025-12-31 15:23:57 +00:00
cf60ef266e chore: update client submodule and refactor calendar settings
- Updated client submodule reference to the latest commit.
- Refactored calendar settings to distinguish between integration and trigger settings, renaming `CalendarSettings` to `CalendarIntegrationSettings` and introducing `CalendarTriggerSettings`.
- Enhanced asset deletion logic in `MeetingService` to utilize the correct asset path.
- Updated tests to reflect changes in calendar settings and asset management.

All quality checks pass.
2025-12-30 03:52:56 +00:00
6fa792990b Enhance summarization model attributes and database schema
- Updated the Summary entity to include provider and model names, along with tokens used and latency metrics for better tracking of summarization performance.
- Modified the ORM converters and repository methods to accommodate new attributes, ensuring backward compatibility.
- Introduced word timing position indexing to maintain order within summaries.
- Added a new SQLAlchemy model structure for improved organization of persistence layers, including core, identity, and integration models.
- Removed deprecated models and files to streamline the codebase.
2025-12-25 13:46:00 -05:00
703a9f2670 Refactor Repomix configuration and update documentation
- Removed the `support/` and `tests/` directories from the Repomix configuration to streamline included files.
- Updated `repomix-output.md` to reflect the new file structure and clarify included patterns.
- Deleted the outdated `triage.md` document to reduce clutter and improve project organization.
- Introduced a new `ui.md` document detailing the migration plan for transitioning to a Rust/Tauri application, including architecture overview and feature parity checklist.
2025-12-21 01:02:11 +00:00
d66aa6b958 Update configuration and enhance transcript component functionality
- Added `repomix-output.md` to `.gitignore` to exclude output files from version control.
- Updated `repomix.config.json` to include the `support/` directory in the include paths.
- Enhanced `TranscriptComponent` to improve search functionality with a debounce mechanism for input.
- Refactored search logic to filter visible segments based on the search query, ensuring better user experience.
- Updated `Meeting` and `Annotation` entities to use `utc_now()` for consistent UTC-aware timestamps.
- Introduced new repository protocols for `DiarizationJob` and `Preferences` to support additional functionalities.
- Implemented in-memory persistence for repositories to facilitate testing and development without a database.
- Added error handling and utility functions to streamline gRPC service responses and improve code maintainability.
2025-12-20 20:45:58 +00:00
a1fc7edeea Enhance recovery and summarization services with asset path management
- Added `asset_path` to the `Meeting` entity for audio asset storage.
- Implemented `AudioValidationResult` for audio integrity checks during recovery.
- Updated `RecoveryService` to validate audio file integrity for crashed meetings.
- Enhanced `SummarizationService` to include consent persistence callbacks.
- Introduced new database migrations for `diarization_jobs` and `user_preferences` tables.
- Refactored various components to support the new asset path and audio validation features.
- Improved documentation in `CLAUDE.md` to reflect changes in recovery and summarization functionalities.
2025-12-19 10:40:21 +00:00
b333ea5b23 Add initial Docker and development environment setup
- Created .dockerignore to exclude unnecessary files from Docker builds.
- Added .repomixignore for managing ignored patterns in Repomix.
- Introduced Dockerfile.dev for development environment setup with Python 3.12.
- Configured docker-compose.yaml to define services, including a PostgreSQL database.
- Established a devcontainer.json for Visual Studio Code integration.
- Implemented postCreate.sh for automatic dependency installation in the dev container.
- Added constants.py to centralize configuration constants for the project.
- Updated pyproject.toml to include new development dependencies.
- Created initial documentation files for project overview and style conventions.
- Added tests for new functionalities to ensure reliability and correctness.
2025-12-19 05:02:16 +00:00