Commit Graph

567 Commits

Author SHA1 Message Date
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
Will Anderson 3b2b1d037c fix(neuron-stage): set NEURON_DATA_DIR=/data for persistent Kotlin DB
The Kotlin NeuronModule reads NEURON_DATA_DIR to locate the SQLite file.
The stage configmap only had NEURON_DB_PATH/NEURON_STORAGE_PATH which
the Kotlin code doesn't read, causing it to fall back to a temp file
that was wiped on every pod restart.

Adding NEURON_DATA_DIR=/data ensures the server reads from the persistent
PVC-backed /data/neuron.db going forward.
2026-04-24 06:36:13 -05:00
Neuron CI 0f77faea81 ci(neuron-prod): deploy neuron@v0.4.0 2026-04-24 10:22:56 +00:00
Will Anderson add9d92fd0 chore(neuron-prod): restart pods to pick up NEURON_DATA_DIR configmap change 2026-04-24 04:57:11 -05:00
Will Anderson b5e8ea9111 fix(neuron-prod): set NEURON_DATA_DIR to point app to PVC database
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.
2026-04-24 04:56:29 -05:00
Will Anderson 883c4afd50 ci(neuron-prod): restart mcp and rest pods to reload DB state 2026-04-24 04:47:33 -05:00
Neuron CI bd2a6ccddb ci(neuron-stage): deploy neuron@stage-e743beed 2026-04-24 09:25:54 +00:00
Neuron CI 87d11aa87c ci(neuron-prod): deploy neuron@v0.3.2 2026-04-24 09:21:57 +00:00
Will Anderson 9d824aaf1f feat(neuron-stage): scale stage MCP and REST to 1 replica for cultivation loop 2026-04-24 04:03:01 -05:00
Neuron CI 129dd0d606 ci(neuron-prod): deploy neuron@v0.3.1 2026-04-24 08:58:38 +00:00
Will Anderson 9bf99bdd8e fix(neuron-prod): add PVC and volume mount for neuron-license SQLite data
The license server writes its database to /data/neuron-license.db.
The deployment had no volume, causing CrashLoopBackOff on first start.
2026-04-24 03:13:56 -05:00
Neuron CI d66062b4cc ci(neuron-prod): deploy neuron@v0.3.0 2026-04-24 08:12:04 +00:00
Neuron CI 7a47e0cbf9 ci(neuron-prod): deploy neuron@v0.2.0 2026-04-24 08:04:37 +00:00
Will Anderson 59aa0f0dfb deploy neuron-license service to prod
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.
2026-04-24 01:42:07 -05:00
Will Anderson b1867a542d add nightly Vault raft snapshot backup to R2
Snapshot via vault operator raft snapshot save using a least-privilege
periodic token. Stored in legion-vault-backup R2 bucket via restic.
Retains 30 daily / 12 weekly / 6 monthly snapshots. Runs at 3am,
offset from the Gitea backup at 2am.
2026-04-24 01:36:30 -05:00
Will Anderson 816d79760d add alpha/beta/gamma subdomains on neurontechnologies.ai
- Tunnel ingress rules for alpha/beta/gamma.neurontechnologies.ai
- DNS CNAME records pointing to legion tunnel
- k8s ingress rules routing to neuron-alpha/beta/gamma services (port 8001)
- TLS certs via cert-manager for new hostnames
2026-04-24 01:13:03 -05:00
Neuron CI 3e28dd88eb ci(neuron-prod): deploy neuron@v0.0.15 2026-04-24 05:45:09 +00:00
Neuron CI 97973ba6be ci(neuron-prod): deploy neuron@v0.0.14 2026-04-24 05:35:02 +00:00
Neuron CI c3f2ecc9a9 ci(neuron-prod): deploy neuron@v0.0.13 2026-04-24 05:16:25 +00:00
Neuron CI b9e1c94b36 ci(neuron-prod): deploy neuron@v0.0.11 2026-04-24 04:53:51 +00:00
Neuron CI 69c2f1d2f9 ci(neuron-prod): deploy neuron@v0.0.8 2026-04-24 04:23:02 +00:00
Neuron CI 0b23a5e964 ci(neuron-prod): deploy neuron@v0.0.7 2026-04-24 04:14:10 +00:00
Will Anderson d71bc3bd9e ci(neuron-prod): scale prod to 1 replica — DB migrated, v0.0.6 ready 2026-04-23 23:06:55 -05:00
Neuron CI c9e9f11db8 ci(neuron-prod): deploy neuron@v0.0.6 2026-04-24 04:04:24 +00:00
Will Anderson 5085840a79 Add neuron prod DB backup and tighten actuator surface
- Add hourly restic backup CronJob to neuron-prod namespace
  - Backs up /data/neuron-prod.db to Cloudflare R2 (legion-neuron-backup bucket)
  - Retention: 24 hourly, 7 daily, 4 weekly — <$0.01/month at current DB size
  - ExternalSecret pulls restic password + R2 creds from Vault secret/r2
- Actuator exposure per environment:
  - prod: health,info only / show-details=never (no internals exposed)
  - stage: health,info,metrics,loggers / show-details=always (pre-prod visibility)
  - dev: full (health,info,metrics,env,beans,loggers,mappings) / show-details=always
2026-04-23 21:43:20 -05:00
Will Anderson cd0cb30933 ci: add neuron-technologies runner for Gitea Actions 2026-04-23 21:19:26 -05:00
Will Anderson b2c25e4e0f chore(neuron): promote 617dcd1d to prod (fix begin_work NOT NULL data column) 2026-04-24 00:26:24 +00:00
Gitea CI c30da5d1a8 chore(neuron): deploy 617dcd1d5c1d148838b8e73df1bba8296257c0b6 to alpha/beta/gamma 2026-04-24 00:21:40 +00:00
Gitea CI 48964eccac chore(neuron): deploy 3e230d550235599d21edaa1df0a22949ccbf695a to alpha/beta/gamma 2026-04-23 19:35:30 +00:00
Gitea CI 3d739b6c5b chore(neuron): deploy 539fc9e7f333dfa0cd31772fc09a976b3079090c to alpha 2026-04-23 19:30:27 +00:00
Will Anderson a8ef7e1782 feat(neuron): set NEURON_SERVER_NAME per slot so each advertises a unique MCP identity 2026-04-23 14:27:03 -05:00
Will Anderson cc4db4dc11 feat(neuron): gamma zone, all-slot ingress, snapshot job, self-improvement loop script 2026-04-23 13:57:13 -05:00
Gitea CI a9758b6eda chore(neuron): deploy 7d29e699c061c3cdb907fc2326b67ad6601298a9 to alpha 2026-04-23 18:51:52 +00:00
Will Anderson 27b4b1e066 feat(neuron): add alpha slot + lb Service; standardize all slots to port 8001 2026-04-23 13:47:21 -05:00
Gitea CI 6dd67730b7 chore(neuron): deploy bddce6b2bd11428efe3eac0dcb269da5490014c4 2026-04-23 18:36:29 +00:00
Will Anderson 882c4a79d4 feat(neuron): add neuron-beta deployment on port 8002 with separate PVC 2026-04-23 13:34:55 -05:00
Will Anderson 43737ce5cb chore(ci-runner): restore ESO refresh interval to 1h 2026-04-23 13:32:18 -05:00
Will Anderson 60d0d81144 chore(ci-runner): roll pod to pick up NodePort URL from updated secret 2026-04-23 13:16:18 -05:00
Will Anderson c8ee5e66ee fix(ci-runner): use NodePort HTTP URL to bypass Cloudflare gRPC issue 2026-04-23 13:15:16 -05:00