Skip to content

feat: autonomous 3-2-1 backup system (centralized brains, strongest secret scanner, hard-fail)#2

Merged
aedneth merged 2 commits into
mainfrom
feat/autonomous-backup-system
Jun 17, 2026
Merged

feat: autonomous 3-2-1 backup system (centralized brains, strongest secret scanner, hard-fail)#2
aedneth merged 2 commits into
mainfrom
feat/autonomous-backup-system

Conversation

@aedneth

@aedneth aedneth commented Jun 14, 2026

Copy link
Copy Markdown
Owner

A small, dependency-light, self-hosting backup framework that gives a multi-repo / knowledge-base / dotfiles setup the 3-2-1 rule, runs itself, and restores plug-and-play on a fresh machine. You describe what to back up in one JSON manifest; the scripts do the rest. Zero hard deps beyond bash/git/jq/rsync/flock.

Highlights

  • Three rings of autonomy — event push (fails hard, never fakes success), a reconciling timer as the tool-agnostic real-time floor (no inotify), and a passive one-line health banner (🔴 FAILED vs ⚠ drift).
  • Strongest secret scanner — detects real key material (Shannon-entropy-gated tokens + PEM body-proximity), not documentation that merely mentions a marker; also covers .git/config remote-URL credentials and class=secret filenames; .ckis-secret-allow escape valve. Plus a whole-system ckis-secret-audit.
  • Centralized, tool-agnostic memory backup — every project's .brain/-style subdir, regardless of which agent made it or its own visibility, into one private repo; discovery = registry ∪ filesystem scan.
  • Declarative & self-hosting — rules live in a versioned manifest that is itself backed up; adding a repo/tool is one manifest entry.
  • Plug-and-play restore + encrypted-physical bundles (FAT-safe); the mirror excludes .git so no credential reaches the drive.

Quality

Pure-bash test harness, 12 suites green (bash tests/run.sh); CI runs the gate on every change. Fully sanitized (no personal paths/identifiers).

Built and battle-tested protecting a real CKIS "second brain". Lesson baked in: silent success is the worst failure — a backup that reports green while doing nothing. Every failure path here exits non-zero.

aedneth and others added 2 commits June 14, 2026 12:15
Self-hosting backup engine: one ckis-manifest.json classifies every path
(track/regenerable/secret/sensitive/snapshot); three rings of autonomy
(session-end push, daily systemd safety net, passive health line);
plug-and-play restore on a fresh machine/OS. Zero heavy deps (bash/git/jq/
rsync/flock). Pure-bash test suite (94 assertions). Generic example manifest
+ README so anyone can implement their own. Adds a scoped CI workflow and a
README section.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…-fail, reconcile floor

Sync the sanitized backup framework to v2:
- Strongest secret scanner: entropy-gated tokens + PEM body-proximity (real
  secrets, not prose/placeholder mentions), .git/config + filename coverage,
  .ckis-secret-allow escape valve; new ckis-secret-audit (whole-system).
- Centralized brain aggregation (brains-sync): every project's memory subdir
  regardless of tool or visibility; discovery = registry ∪ filesystem scan.
- Reconciling timer as the tool-agnostic real-time floor (daily -> 15min,
  manifest-templated); no inotify dependency.
- Hard-fail observability: failure markers, backup-all exits non-zero, doctor
  shows 🔴 FAILED vs benign drift (fixes silent-success).
- Physical mirror excludes .git so no .git/config credential reaches the drive.
- Clean-room restore test; example manifest + README updated; 12 test suites green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@aedneth aedneth changed the title feat: autonomous, declarative 3-2-1 backup system feat: autonomous 3-2-1 backup system (centralized brains, strongest secret scanner, hard-fail) Jun 16, 2026
@aedneth aedneth merged commit 2158310 into main Jun 17, 2026
3 checks passed
@aedneth aedneth deleted the feat/autonomous-backup-system branch June 17, 2026 18:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant