35 lines
1.6 KiB
Markdown
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.
|