every.channel/evolution/proposals/ECP-0085-ecp-forge-archive-autoworker-enable.md

35 lines
1.6 KiB
Markdown

# ECP-0085: Enable Archive Auto-Worker on Sovereign `ecp-forge`
Status: Implemented
## Context
`ecp-forge` currently runs Forgejo and netboot services from `every.channel`, but archival ingestion is not active. Historical archive/manifests exist on host storage, yet no `every-channel-wt-archive*` unit is running, so stream persistence stalls.
The constitutional direction favors an operational archive network. The sovereign forge host should continuously ingest public streams into durable storage.
## Decision
1. Enable `services.every-channel.ec-node` on `ecp-forge`.
2. Run archive ingestion mode (`archive.enable = true`) with no broadcast publish role.
3. Use:
- `archive.outputDir = "/tank/every-channel/archive"` (large durable ZFS storage),
- `archive.manifestDir = "/var/lib/every-channel/manifests"` (existing manifest path continuity).
4. Keep `archive.serve.enable = false` for now; this change is ingest-only.
## Alternatives considered
- Keep archive workers manual/ephemeral. Rejected because ingestion must survive reboot/redeploy.
- Move manifests to `/tank` in this change. Deferred to avoid migration risk while restoring ingestion first.
- Enable replay serving (`wt-archive-serve`) immediately. Rejected for scope control; ingest health first.
## Rollout / teardown plan
- Rollout:
- deploy `.#nixosConfigurations.ecp-forge`,
- verify `every-channel-wt-archive-auto` is active,
- verify journal shows polling/worker spawn and manifests update.
- Teardown:
- set `services.every-channel.ec-node.archive.enable = false`,
- deploy,
- preserve existing on-disk archive/manifests data.