Skip to content

fix(code): sweep expired history archives at startup - #5751

Merged
Mason Daugherty (mdrxy) merged 6 commits into
mainfrom
mdrxy/code/history-archive-sweep
Aug 24, 2026
Merged

fix(code): sweep expired history archives at startup#5751
Mason Daugherty (mdrxy) merged 6 commits into
mainfrom
mdrxy/code/history-archive-sweep

Conversation

@mdrxy

@mdrxy Mason Daugherty (mdrxy) commented Aug 23, 2026

Copy link
Copy Markdown
Member

Conversation-history archives older than 30 days are now removed by a best-effort startup worker; [history].retention_days overrides the window and 0 disables cleanup.


The sweep is restricted to regular .md files directly under the archive directory, logs and swallows filesystem/config failures, and never blocks startup.

Made by Open SWE

Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
@github-actions github-actions Bot added dcode Related to `deepagents-code` fix A bug fix (PATCH) internal User is a member of the `langchain-ai` GitHub organization size: M 200-499 LOC labels Aug 23, 2026
@mdrxy
Mason Daugherty (mdrxy) marked this pull request as ready for review August 24, 2026 01:53

@open-swe open-swe Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Open SWE Review found 2 potential issues.

Open in WebView Open SWE trace

Comment thread libs/code/deepagents_code/offload.py Outdated
Comment thread libs/code/deepagents_code/offload.py Outdated
Declare the sweep's retention window in `config_manifest` and resolve it
via `resolve_scalar` instead of hand-parsing the user TOML, so managed
config and `DEEPAGENTS_CODE_HISTORY_RETENTION_DAYS` apply with normal
precedence and `dcode config`/`config get` report the value the sweep
acts on.
Open each expired candidate and re-check its mtime with `fstat` on the
live descriptor immediately before `unlink`, so a concurrent archive
refresh (read-append-rewrite by path) that lands after the sweep lists the
directory is observed and the archive kept rather than orphaned into an
unlinked inode.
@mdrxy

Copy link
Copy Markdown
Member Author

This should come after rebasing on top of #5755

Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
@mdrxy
Mason Daugherty (mdrxy) merged commit d9dc96e into main Aug 24, 2026
57 checks passed
@mdrxy
Mason Daugherty (mdrxy) deleted the mdrxy/code/history-archive-sweep branch August 24, 2026 17:01
Mason Daugherty (mdrxy) pushed a commit that referenced this pull request Aug 24, 2026
> [!CAUTION]
> Merging this PR will automatically publish to **PyPI** and create a
**GitHub release**.

For the full release process, see
[`.github/RELEASING.md`](https://github.com/langchain-ai/deepagents/blob/main/.github/RELEASING.md).

---

_Release notes preview: keep this section in sync with the package
`CHANGELOG.md`. Publish reads the merged CHANGELOG via `release.yml`,
not this PR description — keep them aligned anyway so the PR stays an
accurate historical record for reviewers and anyone returning later._

---


##
[0.1.61](deepagents-code==0.1.60...deepagents-code==0.1.61)
(2026-08-24)

### Features

- Added `google_anthropic_vertex` provider support for Claude on Vertex
AI ([#5760](#5760)).
- Enforced configured model allowlists
([#5649](#5649)).
- Injected goal and rubric context directly, replacing `get_goal` and
`get_rubric`
([#5041](#5041)).
- Made `/offload` server-owned
([#5261](#5261)).
- Added prompt clipboard support
([#5733](#5733)).
- Show Auto approval review progress
([#5729](#5729)).

### Bug Fixes

- Kept long thread resumes responsive
([#5772](#5772)).
- Render first streamed text immediately
([#5761](#5761)).
- Show the incognito shell command widget
([#5768](#5768)).
- Only highlight actionable tool rows
([#5769](#5769)).
- Warn and ignore `--auto-approve` and `--yolo` in headless mode
([#5750](#5750)).
- Sweep expired history archives at startup
([#5751](#5751)).
- Clarified auth environment setup
([#5767](#5767)).

_End release notes preview._

---

> [!NOTE]
> A **community contributors** list and a **Special thanks** section
(crediting the users who filed the issues this release's PRs closed) are
appended to the GitHub release notes automatically at publish time (see
[Release
Pipeline](https://github.com/langchain-ai/deepagents/blob/main/.github/RELEASING.md#release-pipeline),
step 3).

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: langchain-oss-automated-triage[bot] <248757908+langchain-oss-automated-triage[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dcode Related to `deepagents-code` fix A bug fix (PATCH) internal User is a member of the `langchain-ai` GitHub organization size: M 200-499 LOC

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant