Auto-archive by state

Owner rulings 112, 112a and 112b (2026-10-25, goodqa#9361):

  • Done tickets archive themselves after 72 hours.
  • Cancelled / won't do tickets archive themselves after 24 hours.
  • Superseded tickets archive themselves after 24 hours.

Each window can be changed or switched off per project. It can be set in project settings (General → Auto-archive), through PATCH /v1/projects/:projectId/archive-settings (doneAutoArchiveHours, cancelledAutoArchiveHours, supersededAutoArchiveHours: whole hours from 1 to 8760, or null for off; needs project:manage), or through the MCP tools project_archive_settings_get / project_archive_settings_update.

What counts:

  • Done pile: any closed stage whose category is completed. That includes done and a workflow's own closing stage such as On Production.
  • Cancelled / won't do: any closed stage whose category is canceled (wont_fix, duplicate or a custom one).
  • Superseded: a ticket another ticket supersedes, timed from that link, or a ticket closed as superseded.

Times run from when the ticket entered the closed stage.

These tickets are never archived:

  • a parent that still has open children;
  • a ticket someone has unarchived by hand.

Archiving is reversible (Unarchive on the ticket). It sends no email, push or in-app notification, and records one audit entry per ticket. The sweep runs hourly and handles at most 500 tickets per rule per run.

For an on-demand read of would-archive counts, call POST /v1/cron/auto-archive-done-superseded?preview=1 with the x-cron-token header. This always runs in shadow mode, even when platform setting autoArchive.byState.mode is enforce or off, and never archives tickets. It returns and logs the usual shadow body (mode: 'shadow', wouldArchive, perOrg, cap, note) plus preview: true. Counts are uncapped per rule and organization; a ticket eligible for multiple rules is counted under each. This is an on-demand read, not a new schedule.

preview must be absent or exactly 1; any other value returns 400. Without the cron token the call returns 401. Calls without preview retain the configured behavior: off skips, shadow counts without archiving, and enforce archives.

We use essential cookies to keep you signed in. See our Privacy Policy for details.