feat: add automated upgrade workflow for overlays

Merged
SH
9mo ago
+4199-178

Summary

  • Add automated GitHub Action workflow for overlay upgrades
  • Schedule daily runs at 2 AM UTC with manual dispatch option
  • Implement upgrade-overlays.sh script for all overlay updates
  • Create pull request automatically with upgrade changes
  • Add upgrade-check job to ensure workflow success

Changes

  • New .github/workflows/upgrade.yml workflow file
  • Automated overlay upgrade process with proper error handling
  • Integration with existing upgrade infrastructure
  • Maintains branch hygiene with automatic cleanup

Testing

  • Workflow validated with proper GitHub Actions syntax
  • Concurrency controls prevent duplicate runs
  • Proper token handling for pull request creation

Summary by cubic

Automates Nix overlay upgrades with a nightly GitHub Action and a tested, extensible upgrade script that opens PRs with changes. This reduces manual upkeep and keeps overlays current.

  • New Features

    • Scheduled workflow (.github/workflows/upgrade.yml) runs daily at 02:00 UTC, supports manual dispatch, enforces concurrency, and creates PRs via PAT_TOKEN.
    • Extensible upgrade script (scripts/upgrade-overlays.sh) with robust error handling; upgrades one overlay or all.
    • Makefile targets: upgrade, upgrade-overlays, upgrade-clawdbot.
    • New shpec tests for the script and coverage wiring.
  • Refactors

    • Flake modules now inherit env/host from inputs; pass inputs to Home Manager and nix-darwin; general cleanup.
    • Clawdbot module cleans stale port-guard entries and maintains the SSH tunnel on macOS remote mode.
    • Cargo globals installer skips already-installed versions; fish helpers bump Codex model to gpt-5.2-codex.
    • Config/deps: add claude-mem plugin, enable aider-chat and qwen-code, add mistral-vibe; update Cargo/uv/flake locks.