freeCodeCamp / freeCodeCamp/artemis

Bundled PostgreSQL runs on node-local storage: registry, audit log and durable-exec state at ~24h RPO

Open
#37 1 comment 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Go
Stars
2
Forks
0
Avg merge
16h 21m
Merged PRs (30d)
19

Description

## Summary

The bundled PostgreSQL StatefulSet stores its data on the cluster's default `local-path` StorageClass. That volume holds the site registry (source of truth since v1.4.0), the `audit_log`, the deploy index, the outbox, and the Hatchet tenant's entire durable-execution state.

Properties of the current binding:

- `local-path` — node-local directory, not replicated and not network-attached, which pins the pod to one node
- reclaim policy `Delete`
- `ALLOWVOLUMEEXPANSION: false`

The only durability layer is the nightly logical backup to R2, so the recovery point objective for all of the above is up to 24 hours.

This is the artemis-specific instance of the ADR-008 gap already recorded in the platform state audit (`docs/architecture/universe-state-2026-07-17.md` §4-3: no network-attached storage layer exists on this galaxy).

## Fix direction

Needs a design decision rather than a patch. Options include network-attached block storage for the PVC, a replicated Postgres (the CNPG operator already runs on the sibling galaxy), or continuous archiving to shrink the RPO. Worth scoring against ADR-008 and the DR runbooks before picking.

Not a code change in this repo; filed here to keep the artemis reliability picture in one tracker.

Contributor guide

Open the contributing guide

Research direction

Start with ADR-008 and docs/architecture/universe-state-2026-07-17.md §4-3, then review the DR runbooks and the bundled PostgreSQL StatefulSet configuration. Compare the listed storage, replication, and archiving options against the stated RPO, and consider the work complete when a decision and implementation path are documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
postgresql
Domain
databases, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.