Problemet
Et database-dump er ikke det samme som en recovery-plan for et hosted Supabase-projekt. Data og konfiguration kan også ligge i Storage, Auth, Edge Functions, API-nøgler, Vault og andre platformsoverflader, og nogle værdier kan ikke eksporteres eller genskabes identisk gennem Supabases offentlige interfaces.
pgDumpster er bygget til ikke at skjule de huller. Hvis noget ikke kan eksporteres, verificeres eller restores automatisk, bliver det rapporteret som en platform- eller manuel begrænsning i stedet for at blive markeret som en komplet backup.

Produktmål og krav
Målet er en verificerbar recovery-proces for ét hosted Supabase-projekt, hvor backupmaterialet kan flyttes, inspiceres og valideres før en restore.
Den implementerede dækning omfatter blandt andet:
- Database-backup og restore med eksplicit håndtering af managed og ikke-portabel state
- Storage-katalog og streamet capture af objekter
- Auth-, SSO-, Third-party Auth- og API-key coverage med platform-limit semantik
- Edge Function source-tree capture og deployment til target
- Krypteret
.tar.zst.age-output medage - SHA-256-verifikation og offline inspect, coverage og verify
- Checkpoints, resume og drift detection på backupforløbet
- Lokal og S3-kompatibel destination
- Restore dry-run, immutable restore-plan, checkpointed executor og parity-rapport
- JSON-output og ikke-interaktiv brug til CI
Løsningen
pgDumpster er en CLI, der opretter et portabelt og inspicerbart backup-bundle. Backupforløbet registrerer coverage på tværs af de understøttede overflader, verificerer integritet og kan efterfølgende bygge en restore-plan mod et separat, frisk target-projekt.
Den normale recovery-proces er trinvis: doctor, backup, offline verify/coverage/inspect, restore dry-run og først derefter eksplicit restore --apply.


Vigtige tekniske beslutninger
Fail-closed coverage
Manglende eksport- eller restore-dækning bliver ikke behandlet som succes. Begrænsninger, der skyldes Supabases offentlige interfaces eller kræver manuel håndtering, får et eksplicit coverage-resultat. Det er en del af produktets kontrakt og forhindrer, at en ufuldstændig backup bliver præsenteret som komplet.
Restore i separate trin
Verification, inspection og restore-plan ligger før det eksplicitte restore --apply. Restore-planen er immutable og kan inspiceres som en separat del af forløbet, før executor-delen anvender den mod target-projektet.
Integritet og kryptering
Backup-output kan krypteres som .tar.zst.age, og SHA-256-verifikation bruges til integritetskontrol. Offline verify, coverage og inspect kan derfor køres på det producerede bundle uden at starte en restore.
Validering og nuværende status
v0.1.2 er publiceret som npm-pakke og kan installeres som global CLI. Den konkrete release-SHA passerede repository CI, CodeQL, official-contract drift og en beskyttet hosted source-to-target E2E før publicering.
Den live recovery-test gennemførte krypteret backup, offline verification og restore til et clean target med 55 terminale coverage-komponenter. Resultatet rapporterede samtidig de platformbegrænsninger, som ikke kan genskabes automatisk.

Produktwebsite og dokumentation
Produktwebsitet er bygget som en teknisk introduktion til værktøjet med fokus på coverage, recovery-begrænsninger, krav, workflow og licens. Den samme informationsstruktur er tilpasset mobile viewports.
Installer CLI'en fra npm:
npm install -g pgdumpster
pgdumpster --version
- pgdumpster.com — produktwebsite og introduktion
- GitHub-repository — kildekode, dokumentation, issues og releases
- npm: pgdumpster — den publicerede CLI-pakke
Licens og afgrænsning
pgDumpster er source-available under PolyForm Shield License 1.0.0. Intern og ikke-konkurrerende brug er tilladt efter licensens vilkår; en konkurrerende hosted, managed eller white-label backupservice kræver separat kommerciel licens.
Projektet er uafhængigt af Supabase og er ikke affilieret med, sponsoreret eller vedligeholdt af Supabase.