Neuron CI
c76eb09aa5
ci(neuron-prod): deploy neuron@v0.12.1
2026-04-25 06:11:44 +00:00
Neuron CI
5ff525e1c8
ci(neuron-prod): deploy neuron@v0.12.0
2026-04-25 05:50:26 +00:00
Neuron CI
ec66233644
ci(neuron-prod): deploy neuron@v0.11.1
2026-04-25 05:33:25 +00:00
Neuron CI
abf3453d8d
ci(neuron-prod): deploy neuron@v0.10.0
2026-04-25 04:53:36 +00:00
Will Anderson
1a9dd13b0a
Fix neuron-mcp OTLP endpoint: alloy → alloy-otlp service
...
The `alloy` ClusterIP service only exposes port 12345 (UI/metrics).
OTLP HTTP ingestion on port 4318 is on the separate `alloy-otlp` service.
Pointing OTEL_EXPORTER_OTLP_ENDPOINT at `alloy:4318` caused continuous
SocketTimeoutException in neuron-mcp. Updated both blue and green deployments.
2026-04-24 23:36:48 -05:00
Neuron CI
c9ffa55863
ci(neuron-prod): deploy neuron@v0.9.1
2026-04-25 03:35:33 +00:00
Will Anderson
1d527a9365
chore(neuron-prod): add green deployment to kustomization
...
Green manifest was committed but missing from kustomization.yaml so Argo CD
never created the resource. Wires it in so the blue/green slot swap can work.
2026-04-24 22:22:20 -05:00
Neuron CI
67de9ac463
ci(neuron-prod): deploy neuron@v0.9.0
2026-04-25 03:17:56 +00:00
Will Anderson
f86ee04467
fix(neuron-mcp): blue/green deployment, memory limits, preStop drain hook
...
- Rename Deployment to neuron-mcp-blue with slot=blue label
- Add neuron-mcp-green Deployment scaffold (replicas=0, ready to receive new image)
- Service selector now routes by slot label; annotation tracks active slot
- Memory: 768Mi → 1536Mi limit, 256Mi → 512Mi request (fixes OOM pod restarts / 502s)
- Add JAVA_TOOL_OPTIONS: container-aware GC + ExitOnOutOfMemoryError
- Add preStop sleep 8s so Traefik drains in-flight connections before pod terminates
- terminationGracePeriodSeconds: 30
- Add scripts/blue-green-deploy.sh: automated slot-swap with health check and rollback
2026-04-24 22:08:12 -05:00
Neuron CI
b411f2a7b0
ci(neuron-prod): deploy neuron@v0.8.3
2026-04-25 01:35:26 +00:00
Neuron CI
719c66ea82
ci(neuron-prod): deploy neuron@v0.8.2
2026-04-25 01:13:52 +00:00
Neuron CI
6160e8e6b8
ci(neuron-prod): deploy neuron@v0.8.1
2026-04-25 00:57:54 +00:00
Neuron CI
af8a178b8c
ci(neuron-prod): deploy neuron@v0.8.0
2026-04-25 00:36:02 +00:00
Neuron CI
cc489e4047
ci(neuron-prod): deploy neuron@v0.7.7
2026-04-25 00:22:52 +00:00
Will Anderson
0e590df537
fix(neuron-prod): reduce mcp memory request to unblock scheduling
2026-04-24 18:27:18 -05:00
Neuron CI
851e64a561
ci(neuron-prod): deploy neuron@v0.7.6
2026-04-24 23:22:38 +00:00
Neuron CI
cf6f390756
ci(neuron-prod): deploy neuron@v0.7.5
2026-04-24 22:26:03 +00:00
Neuron CI
2befcc088a
ci(neuron-prod): deploy neuron@v0.7.4
2026-04-24 22:07:54 +00:00
Neuron CI
b36de8190e
ci(neuron-prod): deploy neuron@v0.7.3
2026-04-24 21:59:07 +00:00
Neuron CI
060995e762
ci(neuron-prod): deploy neuron@v0.7.2
2026-04-24 21:26:01 +00:00
Neuron CI
2a0011c479
ci(neuron-prod): deploy neuron@v0.7.1
2026-04-24 20:57:42 +00:00
Will Anderson
1e5a02f5d0
debug: add Spring Security DEBUG logging to license service
2026-04-24 15:42:09 -05:00
Neuron CI
1ba33ef201
ci(neuron-stage): deploy neuron@stage-0f5b2328
2026-04-24 20:21:11 +00:00
Will Anderson
90bde78d7a
feat(marketing): add NEURON_LICENSE_ADMIN_TOKEN to ExternalSecret
2026-04-24 15:19:15 -05:00
Will Anderson
fe17d020ef
fix(k8s): use Recreate strategy for neuron-mcp deployments
...
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.
2026-04-24 15:19:10 -05:00
Will Anderson
95b4669839
feat(neuron-prod): add IngressRoute for license API at /api/v1/* paths
2026-04-24 15:12:37 -05:00
Will Anderson
c238fbb198
fix(marketing): point license API URL to neuron-license service on correct port 8082
2026-04-24 15:10:08 -05:00
Will Anderson
d9257ab1b7
feat(marketing): expose Team and Enterprise Stripe price IDs via ExternalSecret
2026-04-24 14:34:59 -05:00
Will Anderson
02db9c3d43
feat(observability): wire OpenTelemetry into MCP backend and marketing site
...
- Add OTEL_EXPORTER_OTLP_ENDPOINT env var to prod and stage MCP deployments pointing at Alloy in-cluster
- Add Neuron Platform Overview Grafana dashboard (request rate, latency percentiles, error rate, memory nodes, HTTP status distribution)
- Allow grafana/dashboards/*.json through .gitignore (was blocked by secrets rule)
2026-04-24 14:21:34 -05:00
Will Anderson
e901b9a541
Add staging marketing site and Cloudflare Access gate
...
- Deploy marketing site to neuron-stage namespace (replaces bare REST catch-all)
- Staging uses test-mode Stripe keys from Vault
- Updated stage ingress to match prod routing pattern (MCP paths + marketing at /)
- Cloudflare Access: stage.neurontechnologies.ai requires Google auth
- @neurontechnologies.ai domain allowed
- 1timlingo@gmail.com explicitly allowed
2026-04-24 13:43:12 -05:00
Neuron CI
477af9b673
ci(neuron-prod): deploy neuron@v0.7.0
2026-04-24 18:32:40 +00:00
Neuron CI
b187805e63
ci(neuron-stage): deploy neuron@stage-6d08a241
2026-04-24 18:23:50 +00:00
Will Anderson
0bb18cedac
Route /connect to neuron-mcp for OAuth dynamic client registration
2026-04-24 13:16:36 -05:00
Will Anderson
0f9448e8ea
deploy neuron marketing site to neurontechnologies.ai
...
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.
2026-04-24 13:09:29 -05:00
Will Anderson
ebe4789935
Route /.well-known, /oauth2, /login, /sse, /message to neuron-mcp
...
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.
2026-04-24 13:00:56 -05:00
Will Anderson
336a9333a2
prepare neuron-tim namespace for Tim's future Neuron instance
...
Adds the neuron-tim namespace (via Terraform) and a full Argo CD
app + k8s manifests mirroring neuron-prod. All deployments set to
replicas=0 — nothing runs until Tim's imprint is ready and Vault
secrets are populated at secret/neuron-technologies/tim.
2026-04-24 12:52:36 -05:00
Neuron CI
befbc006be
ci(neuron-prod): deploy neuron@v0.6.1
2026-04-24 17:35:59 +00:00
Neuron CI
91e7607c28
ci(neuron-stage): deploy neuron@stage-fa185003
2026-04-24 17:31:16 +00:00
Neuron CI
5eb18b6e7c
ci(neuron-prod): deploy neuron@v0.6.0
2026-04-24 17:20:57 +00:00
Neuron CI
88d8b34724
ci(neuron-stage): deploy neuron@stage-fcc34199
2026-04-24 17:16:51 +00:00
Will Anderson
0858844c25
neuron-prod: add NEURON_API_KEY to ExternalSecret from Vault
2026-04-24 12:07:08 -05:00
Neuron CI
48e349559d
ci(neuron-stage): deploy neuron@stage-0879a862
2026-04-24 15:48:03 +00:00
Neuron CI
fb17a37bea
ci(neuron-prod): deploy neuron@v0.5.0
2026-04-24 15:42:48 +00:00
Neuron CI
058f52ec21
ci(neuron-stage): deploy neuron@stage-5d3537e1
2026-04-24 15:34:21 +00:00
Neuron CI
e68836de8d
ci(neuron-stage): deploy neuron@stage-473abea9
2026-04-24 15:25:09 +00:00
Neuron CI
f729ef9812
ci(neuron-stage): deploy neuron@stage-94b7a876
2026-04-24 13:02:44 +00:00
Neuron CI
6f349a21b9
ci(neuron-prod): deploy neuron@v0.4.4
2026-04-24 12:44:46 +00:00
Neuron CI
8e27d7e069
ci(neuron-prod): deploy neuron@v0.4.3
2026-04-24 12:05:43 +00:00
Neuron CI
5f99d10839
ci(neuron-prod): deploy neuron@v0.4.2
2026-04-24 11:47:42 +00:00
Neuron CI
ec2ee48ae5
ci(neuron-prod): deploy neuron@v0.4.1
2026-04-24 11:42:27 +00:00