Skip to content

Retention and erasure

Core’s daily retention schedule clears run data in two stages.

StageDefaultWhat happens
Payload purge30 days after the run endsInputs, model requests and replies, tool inputs and results, approval comments, and vault values are cleared. Who did what, and when, stays.
Record deletionNeverThe run and its steps are deleted.

The defaults live in the Agent Data Policy custom metadata type.

  1. In Setup, open Custom Metadata Types, then Agent Data Policy, then Manage Records.

  2. Create a record with the Agent Data Policy Name OrgDefaults, or edit it if it exists. Core reads only this record. Set:

    FieldDefaultRange
    Payload Retention Days300 to 3,650
    Record Retention DaysBlank: keep foreverPayload Retention Days to 3,650
    Payload Retention ModeRedactedRedacted stores tokens, not real values. Full stores raw content. Hash Only and None store less.

Changes apply to runs that start after the change. Runs already started keep their own values.

For a data subject request, a developer calls PayloadRetentionPurgeService.scheduleErasure with the Ids of the person’s records, such as their Contact and User. Core moves the purge and deletion dates of every run started by them, or about those records, to now. The next retention pass clears them.

  • A paused run loses its data but keeps its record.
  • A running or waiting run is only counted. Cancel it, then call scheduleErasure again.

Each daily pass clears about 10,000 run payloads and deletes about 5,000 runs. If you start more than about 5,000 runs a day with Record Retention Days set, deletion falls behind. The Agent Core Health card shows the backlog.

With Record Retention Days blank, the run, its steps, and its approvals stay after the payload purge. They show who started the run, which tools ran, who approved, and how long each step took, without the content.

Agent Operational Issues are deleted 30 days after they are closed.

Pluto is licensed under the GNU Affero General Public License, version 3 only.