Skip to content

Retention 0.1.0 (community) - #14

Merged
robotastic merged 1 commit into
TrunkRecorder:mainfrom
connorjfarrell:retention-v0.1.0
Nov 5, 2026
Merged

robotastic merged 1 commit into
TrunkRecorder:mainfrom
connorjfarrell:retention-v0.1.0

Conversation

@connorjfarrell

@connorjfarrell connorjfarrell commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

Adds Retention 0.1.0: it deletes the oldest calls from the recordings folder once they are older than a set age, the folder is bigger than a set size, or it is more than a set share of its disk. It replaces the built-in retention I proposed in TrunkRecorder/trunk-recorder-pro#26, as a plugin instead of core code.

  • What it touches: only a call's own files (.wav, .m4a, .json, .frames.jsonl, .sdr) under the recordings folder the recorder gives it, all of a call's files together, oldest first. A call changed in the last ten minutes is never deleted. It refuses a root or missing folder and doesn't follow links. It sends no data anywhere.
  • Safe to try: a Dry run setting reports what it would delete without deleting. With no limit set, it deletes nothing and says so.
  • Subscribes to call.concluded only to run a pass early on a busy recorder.
  • Checked: ./check plugins/retention.json passes; the release workflow built all four platforms with attestations. 16 tests, clippy -D warnings and fmt are clean. I have run it on a live recorder with a real recordings folder, including a dry run over about 208,000 calls.

(Supersedes #13, which I closed after rewriting the release's commit history.)

🤖 Generated with Claude Code

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@connorjfarrell
connorjfarrell marked this pull request as ready for review November 4, 2026 22:17
@connorjfarrell
connorjfarrell requested a review from a team as a code owner November 4, 2026 22:17
@robotastic
robotastic merged commit 302b3ed into TrunkRecorder:main Nov 5, 2026
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.

2 participants