Parent-child archival and recurring groups
Archive related MySQL or PostgreSQL tables and validate every member before child-first deletion.
Selection and verification
Configure 2 to 32 distinct table policies on one source. Roots use retention rules; automatic child selection includes every descendant matching archived parent foreign-key values, including newer children. Archives are verified parent-first. Every deletion slice re-verifies the complete group. Remaining children block parent deletion, including CASCADE and SET NULL.
coldctl archive group-run --policies orders items --select-children --confirm-quiescent-sourceRecurring cycles and Gateway shadow
Run init to upgrade local state, then create a group and keep the scheduler worker running. Recurring groups always select children automatically. Configure require_gateway_shadow and automatic_shadow for every member policy, using distinct Gateway datasets. Partial coverage, mismatches and Gateway failures block initial deletion of the entire group. Retry retains the same jobs. Started deletions use manifest-bound receipts; cached passing evidence can be reused. The next cycle begins after all deletions complete plus the configured delay.
coldctl agent scheduler group create --policies orders items --every-seconds 3600 --confirm-quiescent-source --confirm-original-source --delete-after-archive
coldctl agent scheduler runSafety and limits
Keep all member tables quiescent throughout each cycle and retries. This is not a cross-table snapshot or atomic deletion: verified children may already be deleted when a parent is blocked. Single integer primary keys are required; cycles and self references are unsupported. PostgreSQL requires ordinary tables, TEMP privilege and matching built-in FK types, modifiers and collations; inheritance, partitions and RLS are unsupported. MySQL needs temporary-table and authoritative metadata privileges. Large groups need performance qualification.