feat(storage): define data retention contract#928
Closed
luoye520ww wants to merge 1 commit into
Closed
Conversation
Collaborator
Author
|
The Windows packaged check is failing before this storage-only change reaches any behavior: the smoke waits for the packaged Extension guest target and times out. This is the same shared guest-target selector issue fixed independently in #915, so I am keeping that CI fix out of this storage contract PR to preserve scope. Once #915 is merged, this check should be rerun. |
Collaborator
Author
|
Superseded by #944, which consolidates storage usage reporting, safe cleanup decisions, and data-retention validation into one reviewed PR. Closing this split PR to avoid duplicate review. |
Collaborator
Author
|
Closed in favor of #944. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Kun has log-only retention settings, but storage cleanup also needs a consistent policy for threads, attachments, checkpoints, worktrees, diagnostics, extension logs, and model caches.
Scope
Adds a shared category allowlist and strict retention policy normalizer. Categories accept bounded day counts or null for keep-forever. Age checks revalidate untrusted policies and retain data on invalid/future timestamps.
Non-goals
No automatic deletion, disk scanner, backup integration, quota UI, or settings migration is included; those are separate PRs.
Tests
Review
Completed functional, data integrity, security, cross-platform, compatibility, and scope review. No package smoke is claimed because this PR is a shared contract-only change.
Issue
Part of #885