c8volt ops execute retention-policy
Execute process-instance retention cleanup
Synopsis
Delete process instances older than the required retention age.
The workflow discovers candidates, fixes the target set, validates the delete plan, and requires confirmation before deletion. Use process-instance filters to narrow the candidates.
–tenant limits discovery; an empty tenant or –all-tenants searches across accessible tenants. –batch-size controls each discovery request; –limit caps the selected scope. –workers, –fail-fast, and –no-worker-limit control planning and deletion.
Use –dry-run to inspect the plan without mutation, –auto-confirm or –automation for unattended deletion, and –report-file to save an audit report.
c8volt ops execute retention-policy [flags]
Examples
./c8volt ops execute retention-policy --retention-days 90 --dry-run
./c8volt --tenant tenant-a ops execute retention-policy --retention-days 90 --dry-run
./c8volt --tenant "" ops execute retention-policy --retention-days 90 --dry-run
./c8volt ops execute retention-policy --retention-days 90 --state completed --bpmn-process-id <bpmn-process-id> --dry-run
./c8volt ops execute retention-policy --retention-days 90 --state completed --bpmn-process-id <bpmn-process-id> --limit 25
./c8volt --verbose ops execute retention-policy --retention-days 90 --state completed --limit 25 --auto-confirm
./c8volt ops execute retention-policy --retention-days 90 --state completed --bpmn-process-id <bpmn-process-id> --limit 25 --report-file retention-report.md
Options
-n, --batch-size int32 number of process instances to inspect per discovery page; does not cap total frozen scope (max limit 1000 enforced by server) (default 1000)
-b, --bpmn-process-id string BPMN process ID to filter process instances
--children-only discover only child process instances
--dry-run discover and validate retention cleanup without submitting deletion requests
--fail-fast stop scheduling validation or deletion work after the first error
--force allow cancellation when deletion encounters nonterminal process instances
-h, --help help for retention-policy
--incidents-only discover only process instances that have incidents
-k, --key strings unsupported explicit process-instance key selector
-l, --limit int32 maximum number of matching process instances to freeze for retention cleanup; omit to discover all matches
--no-incidents-only discover only process instances that have no incidents
--no-state-check skip checking process-instance state before deleting
--no-wait return after deletion requests are accepted without deletion confirmation
--no-worker-limit use all queued jobs as workers when --workers is unset
--parent-key string parent process instance key to narrow retention discovery
--pd-key string process definition key (mutually exclusive with bpmn-process-id, pd-version, and pd-version-tag)
--pd-version int32 process definition version
--pd-version-tag string process definition version tag
--report-file string write an audit report to the given path
--report-format string audit report format: markdown, json (default inferred from report-file extension)
--retention-days int required non-negative age in days for process-instance retention eligibility
--roots-only discover only root process instances
-s, --state string state to filter process instances: all, active, completed, canceled, terminated (default "all")
-w, --workers int maximum concurrent workers when validating the delete plan and deleting roots (default: min(targets, 2*GOMAXPROCS, 32))
Options inherited from parent commands
--all-tenants clear configured tenant filtering and search all tenants visible to the authenticated user; mutually exclusive with --tenant
-y, --auto-confirm auto-confirm prompts for non-interactive use
--automation enable non-interactive mode for commands that explicitly support it
--config string path to config file
--debug enable debug logging
-j, --json output as JSON (where applicable)
--keys-only output keys only (where applicable)
--log-level string log level (debug, info, warn, error) (default "info")
--no-indicator disable transient terminal activity indicators
--profile string config active profile name to use (e.g. dev, prod)
-q, --quiet suppress output except errors
--tenant string tenant ID for discovery/search, selection, create, deploy, and run flows; explicit empty values can clear configured discovery filters, and explicit keys/IDs remain backend-authorized
--timeout duration HTTP request timeout (default 30s)
-v, --verbose show additional output
SEE ALSO
- c8volt ops execute - Discover predefined operational playbooks