Skip to content

Conversation

@heathdutton
Copy link

Fixes #7203

find_disconnected_db_submissions() only checks for Submission records missing from the filesystem, not Reply records. This adds parallel functions to find and delete disconnected Reply records.

New commands:

  • manage.py check-disconnected-db-replies
  • manage.py list-disconnected-db-replies
  • manage.py delete-disconnected-db-replies [--force]

Test plan

  1. Register as a source and submit something
  2. Reply to the source
  3. Delete that source's directory from /var/lib/securedrop/store
  4. Run manage.py check-disconnected-db-replies - should report disconnected replies
  5. Run manage.py list-disconnected-db-replies - should list the reply ID
  6. Run manage.py delete-disconnected-db-replies --force - should delete the reply record

Checklist

This change accounts for:

  • any required additional documentation
  • any necessary AppArmor changes (added or removed application files)
  • any impact on new SecureDrop installs and upgrades
  • our dependency update policy

@heathdutton heathdutton requested a review from a team as a code owner December 31, 2025 21:05
@zenmonkeykstop zenmonkeykstop moved this to Next sprint candidates in SecureDrop Jan 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Next sprint candidates

Development

Successfully merging this pull request may close these issues.

find_disconnected_db_submissions() does not check for disconnected replies

1 participant