OPS-008: Certificate Management #159

Closed
opened 2026-04-11 05:50:31 +00:00 by Mark · 2 comments
Owner

Required

  • Let's Encrypt integration
  • Auto-renewal
  • Zero-downtime rotation
  • Wildcard certs

Acceptance Criteria

  • Auto-renewal works
  • No downtime on rotation
  • Certificate expiry alerts
  • ACME challenge handling
## Required - Let's Encrypt integration - Auto-renewal - Zero-downtime rotation - Wildcard certs ## Acceptance Criteria - [ ] Auto-renewal works - [ ] No downtime on rotation - [ ] Certificate expiry alerts - [ ] ACME challenge handling
Author
Owner

Feature Triage Assessment

Scope: medium
Risk: medium
Spec Alignment: misaligned
Summary: Adds Let's Encrypt certificate management, auto-renewal, zero-downtime rotation, and wildcard cert support to the mesh-seed deployment.
Recommendation: Delegate to deployment-layer tools (cert-manager on K8s, Traefik/Caddy reverse proxy with ACME). The mesh-seed API Gateway (Flask) should terminate TLS at the ingress/reverse-proxy layer, not in application code. Do not build cert management into mesh-seed itself.
Rationale: Medium scope because it requires a new subsystem (no existing TLS/cert infrastructure), roughly 5-15 files depending on approach, but doesn't touch core architecture paths. Medium risk because cert management is security-sensitive (private keys) and zero-downtime rotation is non-trivial, but it's additive work that doesn't break existing paths. Misaligned because all current milestones per AGENTS.md focus on completing the core mesh infrastructure-agent pipeline (INFRA-001, INFRA-005, INFRA-013, #123 semantic bidding, ARCH-003); certificate management is an operations concern orthogonal to the mesh architecture. The project already runs on K8s (helm chart exists, k8s/deployment.yaml), making cert-manager the natural solution at the ingress layer — mesh-seed application code should not own cert lifecycle.

Labeled blocked:needs-decision — unblock on Forgejo to dispatch to the fixer pipeline.

## Feature Triage Assessment **Scope:** medium **Risk:** medium **Spec Alignment:** misaligned **Summary:** Adds Let's Encrypt certificate management, auto-renewal, zero-downtime rotation, and wildcard cert support to the mesh-seed deployment. **Recommendation:** Delegate to deployment-layer tools (cert-manager on K8s, Traefik/Caddy reverse proxy with ACME). The mesh-seed API Gateway (Flask) should terminate TLS at the ingress/reverse-proxy layer, not in application code. Do not build cert management into mesh-seed itself. **Rationale:** Medium scope because it requires a new subsystem (no existing TLS/cert infrastructure), roughly 5-15 files depending on approach, but doesn't touch core architecture paths. Medium risk because cert management is security-sensitive (private keys) and zero-downtime rotation is non-trivial, but it's additive work that doesn't break existing paths. Misaligned because all current milestones per AGENTS.md focus on completing the core mesh infrastructure-agent pipeline (INFRA-001, INFRA-005, INFRA-013, #123 semantic bidding, ARCH-003); certificate management is an operations concern orthogonal to the mesh architecture. The project already runs on K8s (helm chart exists, k8s/deployment.yaml), making cert-manager the natural solution at the ingress layer — mesh-seed application code should not own cert lifecycle. Labeled `blocked:needs-decision` — unblock on Forgejo to dispatch to the fixer pipeline.
Author
Owner

Closed: implementation already shipped on main as 190c791 (see commit message). Verified locally: feature is in main.

Closed: implementation already shipped on `main` as `190c791` (see commit message). Verified locally: feature is in `main`.
Mark closed this issue 2026-07-15 08:47:26 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Mark/mesh-seed#159
No description provided.