Single-node k3s cluster cannot schedule a second pod during rolling update
(512Mi request × 2 exceeds available memory). Recreate terminates the old
pod before starting the new one, trading brief downtime for schedulability.
Add marketing/ manifests (Deployment, Service, ExternalSecret) for the
Next.js marketing site in neuron-prod namespace, an Argo CD app pointing
to the new path, and update the prod ingress to serve / from neuron-marketing
instead of neuron-rest.
OAuth discovery endpoints (/.well-known/oauth-protected-resource and
/.well-known/oauth-authorization-server) and the authorization server
paths (/oauth2/*, /login) were routing to neuron-rest, which has none
of those endpoints. MCP also uses /sse and /message directly.
All five path prefixes now route to neuron-mcp on port 8080.
NeuronModule reads NEURON_DATA_DIR to construct the DB path as
$NEURON_DATA_DIR/neuron.db. Without this env var the app falls
back to a temp file, losing all data on pod restart. Also renamed
the PVC file from neuron-prod.db to neuron.db to match.
Adds license deployment, service, ingress route (/license), and
Unkey + admin token secrets via ExternalSecret. Image built and
pushed by CI on merge of neuron PR #30.
- Stage and prod deployments scaled to 0 — not yet promoted, no need for running pods
- Dev memory requests reduced from 384Mi to 256Mi to allow scheduling on memory-constrained node
Completes the three-env setup (dev was added previously). Each env has
deployments, services, ingress, PVC, ConfigMap, and ExternalSecret pulling
from Vault. Prod has larger resource limits and 10Gi PVC. Vault secret at
secret/neuron-technologies/prod seeded separately.