Skip to content

New module: Storage + health tools that feed awareness alerts #49

Description

@cmeans-claude-dev

Summary

Post-baggage feature opportunity surfaced during the 2026-04-16 review. The system module exposes get_system_info and get_resource_usage today — point-in-time queries the user has to remember to run. For a NAS, the interesting questions are anomaly-driven: 'is anything going wrong?' The right place to put that signal is the awareness briefing.

Proposal

New storage module (or expand system) with:

  • get_volume_status() — healthy / degraded / crashed / rebuilding, free/used, filesystem, RAID level
  • get_disk_health() — SMART + DSM-reported status per bay, reallocated sectors, hours, temperature
  • get_snapshot_summary() — per-share, count + newest/oldest + any failed
  • get_scheduled_task_status() — recent backup, Hyper Backup, Snapshot Replication runs + outcomes

And a periodic poller (separate from the MCP tool surface — a scripts/poll_nas_health.py or background task the server can optionally run) that writes learn_pattern / add_context / report_alert entries to awareness when:

  • A volume transitions from healthy to degraded (high-urgency alert)
  • SMART reallocated-sector count increases (pattern match → alert)
  • A scheduled backup fails (alert) or stops firing (absence detection)
  • Free space crosses a per-volume threshold (tunable)

Awareness side

The briefing already surfaces alerts across sources — adding "synology-nas" as a source means a user opening any Claude agent hears about disk-failure-in-progress without having to ask.

Acceptance criteria

  • 4 new read-only tools with response shapes added to the spec.
  • Permission tier: READ (safe to expose broadly).
  • Poller design doc in docs/specs/storage-health-spec.md covering: trigger intervals, alert thresholds, suppression rules, source and tag conventions in awareness.
  • Integration tests against vdsm where possible.
  • Opt-in config (same pattern as Awareness integration: emit add_context events after significant write operations #48modules.storage.settings.emit_awareness_alerts).

Not baggage

This is a new-feature enhancement. Depends on the baggage (#33#47) being cleared and on the awareness event plumbing from #48.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions