Skip to content

feat(backup): add S3 target adapter - #23

Merged
vishr merged 3 commits into
feat/oss-protection-foundationfrom
feat/postgres-backup-core
Aug 8, 2026
Merged

feat(backup): add S3 target adapter#23
vishr merged 3 commits into
feat/oss-protection-foundationfrom
feat/postgres-backup-core

Conversation

@vishr

@vishr vishr commented Aug 8, 2026

Copy link
Copy Markdown
Member

Summary

  • add the closed S3-compatible adapter shared by native backup drivers
  • require target-local mode-0600 credential bindings without exposing values or paths in public evidence
  • prove off-host identity, resolved-address independence, TLS, authorization, bucket access, and per-kind encryption evidence
  • keep the local repository test-only and explicitly non-protective

Scope

Implements OpenSpec task 5.1 only. S3-compatible storage is the only target kind; replication targets and operations are intentionally absent. Database-native backup engines and the two minimal repository contracts remain separate follow-up slices.

Validation

  • go test ./...
  • go vet ./...
  • openspec validate complete-oss-production-baseline --type change --strict --no-interactive
  • git diff --check

vishr added 3 commits August 7, 2026 17:03
Project external credentials through least-privilege release files, bind protected service rendering to observed lifecycle state, and make recurring operations occurrence-specific. Fail closed on foreign units, unavailable images, stale timing, and credential cleanup errors.
@vishr
vishr marked this pull request as ready for review August 8, 2026 01:45
@vishr
vishr merged commit 4711770 into feat/oss-protection-foundation Aug 8, 2026
@vishr
vishr deleted the feat/postgres-backup-core branch August 12, 2026 04:42
vishr added a commit that referenced this pull request Aug 18, 2026
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