{"adoption": {"forks": 88, "observed_at": "2026-08-28T04:03:39.920755+00:00", "stars": 1121}, "canonical_url": "https://ross.abutalabs.com/products/btrfsmaintenance", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Scripts for btrfs maintenance tasks like periodic scrub, balance, trim or defrag on selected mountpoints or directories.", "domain": ["operating-systems", "developer-tools", "self-hosted"], "enriched": true, "function": ["developer-tools", "file-system", "workflow-automation", "scheduling"], "health_score": 50, "homepage": null, "language": "Shell", "license": "GPL-2.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["kdave/btrfsmaintenance"], "name": "kdave/btrfsmaintenance", "platform": ["cli"], "pushed_at": "2025-08-28T15:55:50+00:00", "repo": "kdave/btrfsmaintenance", "stars": 1121, "tags": ["btrfs", "filesystem-maintenance", "shell-scripts", "system-administration", "cron", "scrub", "balance", "trim", "linux"], "topics": ["btrfs", "administration"], "urls": [], "use_cases": ["schedule periodic btrfs scrub to detect bit rot and checksum errors", "automatically reclaim space with btrfs balance on underused chunks", "run periodic SSD trim on btrfs filesystems", "defragment btrfs directories on a schedule", "automate btrfs health maintenance on a root filesystem", "set up btrfs maintenance timers on a Linux server"], "what_it_is": "A set of shell scripts that automate periodic btrfs filesystem maintenance tasks such as scrub, balance, trim, and defragmentation on selected mountpoints or directories. Each task can be independently enabled, configured, and scheduled via cron or systemd timers.", "when_to_avoid": ["your filesystem is ext4, XFS, or anything other than btrfs", "you need a GUI for filesystem administration", "you cannot tolerate periodic IO-heavy background activity on latency-sensitive systems", "you need advanced btrfs features like snapshot management or send/receive orchestration"], "when_to_choose": ["you run Linux with btrfs as a root or data filesystem and want hands-off maintenance", "you want early detection of failing hardware or bit rot via scheduled scrubs", "you need to prevent btrfs metadata allocation corner cases with periodic balance", "you want distro-integrated cron/systemd timers for filesystem upkeep"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/btrfsmaintenance", "repo": "kdave/btrfsmaintenance", "role": "main", "score": 40}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:41:00.933780+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "631cad4187c08dd3faca30d03adf01eb69d724cadcfb01c63ceb587a13ef5724", "fetched_at": "2026-08-28T04:03:39.920755+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kdave/btrfsmaintenance"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:41:00.933780+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "631cad4187c08dd3faca30d03adf01eb69d724cadcfb01c63ceb587a13ef5724", "fetched_at": "2026-08-28T04:03:39.920755+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kdave/btrfsmaintenance"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:41:00.933780+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "631cad4187c08dd3faca30d03adf01eb69d724cadcfb01c63ceb587a13ef5724", "fetched_at": "2026-08-28T04:03:39.920755+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kdave/btrfsmaintenance"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:41:00.933780+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "631cad4187c08dd3faca30d03adf01eb69d724cadcfb01c63ceb587a13ef5724", "fetched_at": "2026-08-28T04:03:39.920755+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kdave/btrfsmaintenance"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:41:00.933780+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "631cad4187c08dd3faca30d03adf01eb69d724cadcfb01c63ceb587a13ef5724", "fetched_at": "2026-08-28T04:03:39.920755+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kdave/btrfsmaintenance"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:41:00.933780+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "631cad4187c08dd3faca30d03adf01eb69d724cadcfb01c63ceb587a13ef5724", "fetched_at": "2026-08-28T04:03:39.920755+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kdave/btrfsmaintenance"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:39.920755+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:41:00.933780+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "631cad4187c08dd3faca30d03adf01eb69d724cadcfb01c63ceb587a13ef5724", "fetched_at": "2026-08-28T04:03:39.920755+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kdave/btrfsmaintenance"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:41:00.933780+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "631cad4187c08dd3faca30d03adf01eb69d724cadcfb01c63ceb587a13ef5724", "fetched_at": "2026-08-28T04:03:39.920755+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kdave/btrfsmaintenance"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:41:00.933780+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "631cad4187c08dd3faca30d03adf01eb69d724cadcfb01c63ceb587a13ef5724", "fetched_at": "2026-08-28T04:03:39.920755+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kdave/btrfsmaintenance"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:41:00.933780+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "631cad4187c08dd3faca30d03adf01eb69d724cadcfb01c63ceb587a13ef5724", "fetched_at": "2026-08-28T04:03:39.920755+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kdave/btrfsmaintenance"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 39, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4349, "days_push": 370, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 40, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}