feat(scripts): add emit-retention-policy compliance script + tests

Adds scripts/compliance/emit-retention-policy.mjs which walks Payload
collection files, validates purgeSchedule is declared on every
collection, and emits deterministic YAML to
compliance/retention-policy.yml. Supports --print and --check modes.

Wires compliance:retention-policy root package script. Ships 19 unit
tests covering validation, builder, YAML rendering, and diff modes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-18 19:52:01 +00:00
parent ab44b2f16d
commit 844b9ee324
3 changed files with 521 additions and 0 deletions

View File

@@ -22,6 +22,7 @@
"fallow": "fallow",
"fallow:audit": "fallow audit --base main",
"compliance:data-map": "node scripts/compliance/emit-data-map.mjs",
"compliance:retention-policy": "node scripts/compliance/emit-retention-policy.mjs",
"work": "node scripts/work/cli.mjs",
"format": "prettier --write \"**/*.{ts,tsx,js,jsx,json,md}\"",
"format:check": "prettier --check \"**/*.{ts,tsx,js,jsx,json,md}\"",