bubbles-upkeep-cadence

Schedules, dispatches, and records recurring operational upkeep tasks via calendar config and append-only ledger.

1|Updated Mar 17, 2026
One-click install
npx skills add https://github.com/pkirsanov/bubbles --skill bubbles-upkeep-cadence-pkirsanov
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: bubbles-upkeep-cadence
Source: https://github.com/pkirsanov/bubbles/tree/main/skills/bubbles-upkeep-cadence
Command: npx skills add https://github.com/pkirsanov/bubbles --skill bubbles-upkeep-cadence-pkirsanov

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Recurring preventive operations work — backups, restore drills, secret rotations, compliance sweeps — is easily forgotten or run ad hoc, leaving deployed products to rot silently. This Skill defines how to schedule, dispatch, and audit those tasks so nothing is missed and every run leaves verifiable evidence. ## Core Features & Use Cases - Seven Task Types: Covers backup, restore-test, BCDR-drill, patch-cycle, secret-rotation, flag-cleanup-audit, and compliance-sweep, each with a default cadence and owning workflow mode. - Calendar-Driven Dispatch: Reads config/upkeep-calendar.yaml plus the append-only upkeep-ledger.jsonl to report which tasks are DUE, with priority rules (a failed backup blocks restore-test; a failed restore-test blocks release promotion). - Failure Routing: Maps each failure type to the correct owning agent (devops, stabilize, security, train, audit) instead of fixing in-line. - Use Case: When investigating a missed quarterly BCDR drill, run the calendar dispatch script to see last-run status, then check the ledger for the recorded RTO/RPO actuals and route the failure for root-cause analysis. ## Quick Start Ask the agent to run the upkeep calendar dispatch script against your repository and list which upkeep tasks are currently DUE.

Frequently Asked Questions about bubbles-upkeep-cadence

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I schedule recurring backup and restore tasks for a deployed product?▼

Define each task in config/upkeep-calendar.yaml with an id, cadence (daily, weekly, monthly, or quarterly), and optional time hint. The upkeep-calendar.sh dispatch script then compares cadence against the ledger's last successful run and marks overdue tasks as DUE.

How to check which maintenance tasks are overdue?▼

Run bash .github/bubbles/scripts/upkeep-calendar.sh against the repository path. It outputs a table of tasks with last-run, status (DUE or ok), and next-due ISO timestamp, read from the upkeep calendar and ledger.

What happens when a backup or restore test fails?▼

Failures are routed to owning agents rather than fixed in-line: backup failures go to devops, restore-test failures go to stabilize plus train (blocking the next promote), and secret-rotation failures go to security. A failed restore-test blocks release-train-promote.

Can I store rotated secret values in the upkeep ledger?▼

No. The ledger records only old and new key-id hashes, never secret values, per gate G119. The ledger is append-only JSONL with one JSON object per line capturing task, repo, timestamps, outcome, and evidence path.

Why must restore drills use an isolated namespace?▼

Restores must run in an ephemeral restore-test namespace that is torn down on exit, never the live production namespace. Backup destinations must also stay strictly separated from test stack write paths per gate G115.