feat: Phase 6 — storage tier formalisation (HOT/WARM lifecycle)
- musehub/storage/tiers.py: new module with StorageTier enum, prune_packed, classify_object, storage_stats, and auto_pack - StorageTier.HOT = loose files; StorageTier.WARM = pack files - prune_packed removes loose objects covered by packs (missing half of the Phase 5 pack workflow) - classify_object returns HOT/WARM/None with loose taking precedence - storage_stats returns hot/warm/total counts deduplicating objects present in both tiers (pre-prune state) - auto_pack packs + prunes in one call when loose count >= min_loose - 24 new tests in 7 tiers across the full HOT→WARM lifecycle
sha256:12ddea7e93c748883b24ad5ce08bea8fe3cb02abd213de51ac1e2b063a3bc890
sha
sha256:e60d1a1893f2f0b5f5c7271b651525108660a31a895e657d984f8a3cd87325cb
snapshot
0 comments
To add a comment, use the Muse CLI:
muse hub commit comment sha256:12ddea7e93c748883b24ad5ce08bea8fe3cb02abd213de51ac1e2b063a3bc890 --body "your comment"
No comments yet. Be the first to start the discussion.