Task · GCI-0065

Qualify the label-risk trap retention value as the module default

Description

Loop6 independent cross-document review at4f0b5fa found docs/traps.md:712-714 states private scans retain an existing90-day lifecycle, while current configuration and storage code use positive configurable scan_retention_days for scans and the raw-match view. Ninety is the module default, not a fixed retention promise. This file was excluded from all loop6 edit ownership, so the note is explicitly tracked instead of silently changing its contract.

Acceptance Criteria

Definition of Done

Implementation Plan

Loop7 frozen packets: bounded implementation or AC1 research; public-boundary proof, offline gate and CodeRabbit before landing, exact landed CI. Root security review/guard landing, research staff GET probe and conditional reserve decision, integrated review, stable release and dev-only rollout proof. Tracker remains root-owned.

Final Summary

Qualified 90 days as configurable scan_retention_days module default and linked canonical current/noncurrent targeted retention, publication-age resets and asynchronous expiry, without a fixed erasure promise. Landed b1ab9ef4e1cbabf222ff46f69437678514eaa975, exact CI 36872675362 all four required jobs successful, shared L-staff-a1 offline gate/CodeRabbit completed. Root reviewed final diff and exact CI readback; effective AWS retention remains outside this documentation criterion.

References

View the source file on GitHub