Skip to content

fix: duplicate DB rows after SOAP generation + README update#6

Merged
cortexuvula merged 2 commits into
mainfrom
fix/duplicate-db-rows-readme-update
Apr 1, 2026
Merged

fix: duplicate DB rows after SOAP generation + README update#6
cortexuvula merged 2 commits into
mainfrom
fix/duplicate-db-rows-readme-update

Conversation

@cortexuvula
Copy link
Copy Markdown
Owner

Summary

  • Fix duplicate database entries after SOAP note generation caused by _current_recording_id (private) vs current_recording_id (public) attribute mismatch — queue completion only set the private one, so downstream generators created new rows instead of updating
  • Fix audio_path overwrite — completion callback re-wrote all fields but audio_path was missing from the result dict, overwriting valid paths with ''
  • Remove redundant DB write in _on_queue_completion (data already saved by task_executor_mixin)
  • Update README.md and CLAUDE.md to match actual codebase: 4,100+ tests, 420+ modules, 17 migrations, 7 queue mixins, 80+ dialogs, 15 managers, 46 RAG modules, sidebar nav architecture

Test plan

  • Full test suite passes (4,139 tests, 1 pre-existing flaky test)
  • Manual test: generate SOAP note via queue, verify single DB row created
  • Manual test: verify audio_path preserved after queue completion
  • Verify README accuracy against codebase counts

🤖 Generated with Claude Code

Andre Hugo and others added 2 commits March 31, 2026 14:34
The _play_audio_async method now wraps _play_audio_blocking in a
_safe_play closure for error handling. Update test to verify thread
creation without asserting exact target/args of the closure.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… codebase

Fix recording_id attribute mismatch causing duplicate database entries:
- _on_queue_completion now sets both _current_recording_id (private) and
  current_recording_id (public) so downstream generators update existing
  rows instead of inserting new ones
- Remove redundant re-write of transcript/soap_note/audio_path in
  completion callback (already saved by task_executor_mixin), which also
  fixed audio_path being overwritten with empty string
- Include audio_path in callback_result dict for completeness

Update README and CLAUDE.md with accurate counts:
- 4,100+ tests (was 1,850+), 420+ modules, 17 DB migrations
- 8 sidebar nav sections + 6 editor tabs + 6 analysis sub-tabs
- ProcessingQueue 7 mixins, 80+ dialogs, 15 managers, 46 RAG modules
- Added controllers, handlers, service registry to architecture docs

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown

@greptile-apps greptile-apps Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your free trial has ended. If you'd like to continue receiving code reviews, you can add a payment method here.

@cortexuvula cortexuvula merged commit 824fb51 into main Apr 1, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant