Sovereign Intelligence Platform β Production Roadmap
Owner: kernelcore Created: 2026-03-28 Updated: 2026-03-30 Target: Production-ready event-driven AI operations platform
Current Stateβ
All projects build. Umbrella Delivery (ADR-0050) completed the wiring layer.
Spectre events flow from owasaka β NATS β phantom-soc data-plane β control-plane GTK4 UI.
ai-agent-os publishes system.metrics.v1. Phantom API has all 7 endpoints. Spooknix has MCP tool.
Orchestration layer (sentinel) is now complete: unified compose with profiles, full integration test suite (scenarios, chaos, performance), CI/CD pipelines, release workflow, and cross-platform packaging scripts are all in place.
Blocking: live security and observability validation are complete. The remaining hard gates before production are recovery/docs execution and the final go/no-go review.
Go-live baseline: operational execution is now tracked in sentinel/docs/go-live-goals.md.
Use that document as the release gate reference for live validation, secrets, observability,
rollback, and project documentation updates.
Operational Execution Batchesβ
Run the remaining production work in these batches:
- Batch 1 β Bring-up + Smoke: full stack boot, healthchecks, endpoint validation
(
sentinel/docs/runbooks/batch-1-bringup-smoke.md) - Batch 2 β Live E2E: Spectre E2E, phantom-soc E2E, critical event-flow proof
(
sentinel/docs/runbooks/batch-2-live-e2e.md) - Batch 3 β Security: NATS auth E2E, TLS/mTLS validation, secret loading validation
(
sentinel/docs/runbooks/batch-3-security.md) - Batch 4 β Observability: structured logs, log aggregation, correlation IDs
- Batch 5 β Recovery + Docs: rollback exercise, config backup, project documentation updates
- Batch 6 β Go/No-Go: evidence review, open-risk review, final release decision
Current operational status:
- Batch 1:
PASSon 2026-03-30 - Batch 2:
PASSon 2026-03-30 (9 passed, 3 skipped) - Batch 3:
PASSon 2026-03-30 (14 passed,phantom TLS PASS,NATS mTLS wiring readiness PASS) - Batch 5:
PASSon 2026-03-30 (backup archive PASS,core rollback PASS,NATS/Phantom health PASS) - Batch 6:
GOon 2026-03-30 (all required gates PASS,core live health PASS) - Gate 5 Secrets:
PASSon 2026-03-30 (4 passed, 0 failed) - Block C Metrics:
PASSon 2026-03-30 (5 passed, 0 failed) - Block D Logging:
PASSon 2026-03-30 (4 passed, 0 failed) - Block E Alerting:
PASSon 2026-03-30 (4 passed, 0 failed) - Observability config incident resolved on 2026-03-30: local
spectrebind-mounted configs with host mode0600caused Prometheus/Loki startup failures; normalized to readable mounts and reflected in CI notes
Operational Attack Planβ
Execute the remaining work in these isolated blocks. Each block only closes when it has:
- a dedicated runner or script
- explicit
PASS/NO-GOoutput - focused debug assertions for the failure mode
- roadmap and runbook updates
Block A β Security Completionβ
Goal: complete Batch 3 and keep Security at full PASS.
Scope:
- finish NATS mTLS live wiring in compose and client configs
- keep Phantom TLS validation green
- keep NATS auth E2E green while mTLS is introduced
Exit criteria:
batch-3-securityreturnsPASS- NATS rejects missing or invalid client certs
- compose clients no longer depend on plaintext
nats://wiring where mTLS is required
Status:
- closed on 2026-03-30 (
Batch 3 PASS)
Block B β Secrets Gateβ
Goal: complete Milestone 3.3 for real production secrets, not only NKeys/TLS material.
Runbook: sentinel/docs/runbooks/gate-5-secrets.md
Scope:
- move
HF_TOKEN,DATABASE_URL, and remaining provider/API secrets into SOPS - standardize secret injection across services
- validate rotation and recovery path
Exit criteria:
- no production-required secret depends on ad hoc shell export
- secret loading is documented and validated in the live stack
- a dedicated secrets gate runner returns
PASS
Block C β Metrics Completionβ
Goal: close 4.1 by delivering the ai-agent-os system metrics dashboard.
Runbook: sentinel/docs/runbooks/batch-4-metrics.md
Scope:
- expose or bridge
system.metrics.v1into Prometheus/Grafana - create a Grafana dashboard for CPU, memory, thermal, host, and publish cadence
- link it to the existing observability stack
Exit criteria:
- dashboard is versioned in repo
- live data from
ai-agent-osis visible in Grafana - dashboard validation runner returns
PASS
Block D β Loggingβ
Goal: close 4.2 with operationally useful logs.
Runbook: sentinel/docs/runbooks/batch-4-logging.md
Scope:
- structured JSON logs from required services
- centralized aggregation (
Lokior equivalent) - correlation IDs propagated across HTTP and NATS flows
Exit criteria:
- logs are machine-parseable and centrally queryable
- one end-to-end flow can be traced by a single
correlation_id - logging validation runner returns
PASS
Block E β Alertingβ
Goal: close 4.3 operationally, including the deferred thermal path.
Runbook: sentinel/docs/runbooks/batch-4-alerting.md
Scope:
- validate existing Prometheus alert rules against live services
- wire alert evidence and triage context
- implement or explicitly re-scope the
ai-agent-osthermal alert path
Exit criteria:
- alert rules validate cleanly
- at least one controlled alert fires with usable context
- alerting validation runner returns
PASS
Block F β Recovery & Documentationβ
Goal: prove rollback + backup readiness ahead of Batch 6.
Runbook: sentinel/docs/runbooks/batch-5-recovery.md
Scope:
- archive
spectre/config, TLS cert/key bundles, and runtime/seed secrets; - stop the core profile with
docker compose --profile core down --remove-orphans; - bring the core profile back up and hit
NATS+Phantom TLShealth endpoints; - snapshot
tmp/batch-5-backupfor audit.
Exit criteria:
sentinel/scripts/batch-5-recovery-check.shreturns exit 0;- tarballs in
tmp/batch-5-backupmatch the current timestamp; - docs reference the recovery exercise plus health endpoints used.
Status:
- closed on 2026-03-30 (
Batch 5 PASS)
Execution Orderβ
The release gate was executed in this order:
- Block A β Security Completion
- Block B β Secrets Gate
- Block C β Metrics Completion
- Block D β Logging
- Block E β Alerting
- Block F β Recovery & Documentation
- Batch 6 β Go / No-Go
Why this order:
- security and secrets are hard deploy gates
- metrics must exist before logging/alerting evidence is useful
- logging and correlation must exist before alerts can be triaged well
Milestone 0 β Foundation (DONE)β
- Spectre event types defined (9 variants +
system.metrics.v1) - Owasaka publishes
network.asset.discovered.v1/network.dns.query.v1to NATS - phantom-soc data-plane consumes NATS events
- phantom-soc control-plane GTK4 LogViewer wired to EventBus
- phantom-soc scheduler fix (
dequeue(&self)via tokio Mutex) - ai-agent-os publishes
system.metrics.v1to NATS - Phantom API: all 7 endpoints +
/api/uploadmulti-file - Spooknix MCP tool (
spooknix_health,spooknix_transcribe,spooknix_diarize) - Domain Manifest v2.1.0 updated
Milestone 1 β Unified Compose & Local Dev (DONE)β
Goal: docker compose up boots the entire platform locally.
1.1 β Top-level docker-compose.yml β β
-
/home/kernelcore/master/docker-compose.ymlβ profiles: core, intelligence, gpu, observability, compliance, full - Service: nats (nats:2.10-alpine, ports 4222/8222/6222, JetStream)
- Service: phantom-api (port 8008, depends_on nats healthy)
- Service: owasaka (port 8080, depends_on nats healthy, NET_RAW cap)
- Service: ai-agent-os (depends_on nats, profile: core)
- Service: cerebro (profile: intelligence)
- Service: securellm-bridge (port 8081, profile: intelligence)
- Service: spooknix (port 8000, GPU profile, CUDA)
- Service: prometheus + grafana + jaeger (profile: observability)
- Service: neotron (temporal + postgres, profile: compliance)
- Shared network
spectre-net(172.28.0.0/16) for all services -
.env.examplewith all required variables (consolidated)
1.2 β Nix flake for local devβ
-
sentinel/flake.nixβ remote flake inputs for all projects, custom test runner - Top-level
flake.nixat~/master/β local-only (no root git repo; each project is its own repo) -
nix run .#natsβ start NATS standalone (JetStream, store /tmp/nats-data) -
nix run .#dev-stackβ docker compose --profile core up + health checks -
nix run .#smoke-testβ run sentinel smoke-test.sh -
nix run .#integration-testsβ full pytest suite via poetry -
nix developβ unified shell (Rust + Go + Python + Bun + natscli + sops)
1.3 β Smoke test script β β
-
sentinel/scripts/smoke-test.shβ boots compose, health checks all endpoints, exit 1 on failure - Validates: NATS healthz/varz, phantom
/health+/ready+/metrics
Milestone 2 β Integration Tests (suite complete + reconnect fixes done; live validation next)β
Goal: Prove events flow across service boundaries.
2.1 β Spectre E2E β (suite written)β
- Test: owasaka β NATS
network.asset.discovered.v1β schema validation (scenarios/test_spectre_e2e.py) - Test: ai-agent-os β NATS
system.metrics.v1β CPU/memory field validation - Test: DNS query event flow (
network.dns.query.v1) - Test: All event subjects follow
{domain}.{entity}.{action}.v{version}format - Live validation: passed against real stack on 2026-03-30 (
9 passed, 3 skipped)
2.2 β Phantom API E2E β (suite written)β
- Test: upload file β
/vectors/searchreturns it (scenarios/test_phantom_e2e.py) - Test:
/api/chatwith indexed context β sources in response - Test: multi-file upload
- Test:
/metricsreturns Prometheus format - Test: cortex-desktop β phantom-api proxy round-trip (Playwright β deferred)
2.3 β phantom-soc E2E β (suite written)β
- Test: publish
network.asset.discovered.v1β consumer subject reachable (scenarios/test_phantom_soc_e2e.py) - Test: publish
network.dns.query.v1β event schema + envelope validated - Test: multi-event ordering over single subject (NATS ordering guarantee)
- Test: data-plane
phantom ops listen-natsstarts without crash - Test: GTK4 LogViewer headless smoke (skipped if no DISPLAY)
- Test: live dispatch round-trip β consumer subprocess receives published event
- Live validation: passed against real stack on 2026-03-30 (
9 passed, 3 skipped)
2.4 β NATS reconnect β β
- Test: kill NATS β owasaka/ai-agent-os survive + reconnect (
chaos/test_nats_reconnect.py) - Test: partial boot β intelligence services gracefully unavailable (
chaos/test_partial_boot.py) - Test: phantom degraded β cached responses served (
chaos/test_phantom_degraded.py) - Fix: owasaka
PublisherβMaxReconnects(-1),ReconnectWait(2s), disconnect/reconnect handlers - Fix: ai-agent-os
nats_clientβConnectOptions::max_reconnects(None),connection_timeout(5s), event callback
2.5 β Performance / SLO β (suite written)β
- Test: phantom-api P99 < 500ms (
performance/test_phantom_latency.py) - Test: β₯20 req/s sustained throughput (
performance/test_throughput.py) - Test: spooknix transcribe < 30s/min-audio (
performance/test_spooknix_latency.py)
Milestone 3 β Security Hardeningβ
Goal: Zero-trust between services. No plaintext secrets.
3.1 β NATS Auth β β
- Generate NATS NKey credentials for all 6 services (owasaka, ai-agent-os, phantom, phantom-soc, cerebro, securellm-bridge)
- Seeds:
spectre/config/nkeys/<service>.nk(gitignored, SOPS-managed in prod) - Regenerate:
nix run .#nkeys-gen
- Seeds:
- NATS server config with per-subject ACLs (
spectre/config/nats-server.conf)- owasaka: publish
network.>only - ai-agent-os: publish
system.>only - phantom: publish
ingest.>+analysis.>, subscribecognition.insight.generated.v1 - phantom-soc: subscribe
network.>+system.>(consumer-only, no publish) - cerebro: publish
cognition.>, subscribeingest.file.sanitized.v1 - securellm-bridge: publish
llm.>only
- owasaka: publish
- owasaka
Publisher.Connect()β NKey auth viaNATS_NKEY_SEED/NATS_NKEY_SEED_FILE - ai-agent-os
Agent::with_config()β NKey auth viaNATS_NKEY_SEED/NATS_NKEY_SEED_FILE - docker-compose:
NATS_NKEY_SEEDenv vars wired for all core services -
.env.example: all 6*_NKEY_SEEDvars documented - flake:
nix run .#natsloads auth config if present;nix run .#nkeys-genregenerates all seeds - Integration tests:
sentinel/scenarios/test_nats_auth.pyβ connection auth, ACL allow/deny, cross-service flows - Live validation: passed against live stack on 2026-03-30 (
14 passed) - SOPS encryption of seed files (M3.3 β done)
3.2 β TLS everywhere β β
- Self-signed CA (
secrets/tls/ca.crt) + per-service EC P-256 certs (7 services)- SANs include Docker DNS names, spectre-net IPs, and localhost
- Cert rotation script:
sentinel/scripts/rotate-tls.sh
- NATS mTLS live wiring (
spectre/config/nats-server.conf+ client TLS wiring) validated in local compose- Clients must present cert signed by spectre CA
- Certs mounted in compose:
secrets/tls/{nats,ca}.{crt,key}
- Phantom API behind TLS β Caddy reverse proxy on :8008
spectre/config/Caddyfileβ terminates TLS, proxies to phantom-api:8000phantom-proxyservice in docker-compose with cert volumes
- Spooknix cert generated (
secrets/tls/spooknix.{crt,key}) β ready for server config - Live validation: passed on 2026-03-30 (
phantom TLS PASS,NATS mTLS wiring PASS,NATS auth E2E 14 passed) - Sentinel TLS harness adjusted for Python 3.13 strict CA handling so local auth validation reflects the live stack behavior
- Production: replace self-signed with Let's Encrypt / Vault PKI
3.3 β Secrets management β β
-
.sops.yamlat project root β age encryption, path-regex rules forsecrets/and*.env.enc - Age key at
~/.config/sops/age/keys.txt(pre-existing) - NKey seeds encrypted:
secrets/nkeys.envβsecrets/nkeys.env.enc(SOPS+age) -
secrets/.gitignoreβ blocks*.env,*.key,*.pem; allows*.enc - Rotation script:
sentinel/scripts/rotate-nkeys.sh- Regenerates all 6 NKey seeds, updates nats-server.conf pub keys, encrypts to SOPS
- TLS rotation script:
sentinel/scripts/rotate-tls.sh- Regenerates CA + 7 service certs with correct SANs
- No plaintext secrets in git β all sensitive files gitignored, encrypted copies committed
- Runtime secret bundle baseline:
secrets/runtime.env.encforHF_TOKEN,DATABASE_URL, provider keys - HF_TOKEN, DATABASE_URL, API keys β live per-project SOPS adoption and runtime injection
3.4 β SecureLLM Bridge integration β β
-
phantom/api/cortex_api.pyβ_call_via_bridge()routes all providers through bridgeSECURELLM_BRIDGE_URLenv var (Docker:http://securellm-bridge:8080, local dev:http://localhost:8081)_bridge_model_id()maps cortex provider names β{provider}/{model}identifiers- Graceful fallback: if bridge unreachable (local dev) β direct provider calls
-
phantom/api/app.pyβ/readyendpoint now checkssecurellm_bridgestatus -
docker-compose.ymlβSECURELLM_BRIDGE_URLwired to phantom-api service -
.env.exampleβSECURELLM_BRIDGE_URLdocumented - Integration tests:
sentinel/scenarios/test_securellm_e2e.pyextended with:test_phantom_ready_includes_bridge_checkβ validates /ready wiringtest_phantom_chat_routes_through_bridgeβ metrics-based routing prooftest_bridge_rate_limit_enforcedβ 429 enforcement under loadtest_bridge_provider_model_routingβ /v1/models registry check
Milestone 4 β Observability Operational PASSβ
Goal: Know what's happening across the platform in real-time.
4.1 β Metrics β β
- Prometheus scrape config for all spectre-net services (
spectre/prometheus.yml)- phantom-api, owasaka, securellm-bridge, cerebro, spooknix, nats-exporter, prometheus self
- NATS Prometheus exporter (
nats-exporterservice in compose observability profile) - owasaka: real
/metricsendpoint β HTTP requests, events published, assets discovered, DNS queries - Grafana dashboard: service health, phantom latency P50/P95/P99, NATS throughput, bridge requests, owasaka events
(
spectre/config/grafana/dashboards/voidnxlabs-overview.json) - ai-agent-os system metrics dashboard (
spectre/config/grafana/dashboards/ai-agent-os-system-metrics.json) -
system.metrics.v1β Prometheus bridge (spectre/tools/ai-agent-metrics-bridge) - Batch 4 metrics gate returns
PASSwith liveai_agent_*series in Prometheus
4.2 β Logging β β
- Structured JSON logging wiring validated in required services
- Loki + Promtail centralized log aggregation wired in observability compose profile
- Correlation ID wiring present across HTTP/NATS code paths
- Batch 4 logging gate returns
PASSwith live Loki query validation
4.3 β Alerting β β
- 15 alert rules across 5 groups (
spectre/config/alerts.yml):- Service availability (all services), phantom SLO (P99 < 500ms, error rate < 5%)
- SecureLLM Bridge provider failures + rate limits
- NATS slow consumers + connection drops
- owasaka event throughput
- Prometheus rule and alert endpoints validated live
- Batch 4 alerting gate returns
PASS - Thermal threshold alert (ai-agent-os β NATS β phantom-soc UI) β deferred to M7
- E2E tests:
sentinel/scenarios/test_observability_e2e.py
Milestone 5 β CI/CD (DONE)β
Goal: Every push is tested and deployable.
5.1 β GitHub Actions β β
-
integration-tests.ymlβ quick-tests (PR), full matrix (main), chaos (nightly), benchmarks -
ci.ymlβ per-project build matrix (spectre, owasaka, phantom, ai-agent-os, neoland, website) -
release.ymlβ integration gate β image builds β GHCR push β GitHub Release - PR template with ROADMAP checklist (
.github/pull_request_template.md) - Nix build cache (cachix
voidnxlabs)
5.2 β Container images β β
- Images built in
release.yml: phantom-api, owasaka, cerebro, securellm-bridge, spooknix - Multi-arch:
linux/amd64+linux/arm64 - Push to
ghcr.io/VoidNxSEC/{service}:{version}on release
5.3 β Deployβ
-
packaging/nix/nixos-module.nixβ NixOS systemd services module -
docker-compose.ymlproduction profiles with restart policies and healthchecks - Rollback procedure documented (
sentinel/docs/runbooks/rollback.md)
Milestone 6 β ML Pipeline (Neutron + Cerebro) β β
Goal: Training and knowledge extraction operational.
6.1 β Cerebro knowledge pipeline β β
- Phantom publishes
ingest.file.sanitized.v1after DAG pipeline sanitization (phantom/nats/publisher.py+phantom_dag.pyStep 10) - Cerebro consumes
ingest.file.sanitized.v1β runs HermeticAnalyzer + ChromaDB indexing (cerebro/nats/consumer.py) - Cerebro publishes
cognition.insight.generated.v1with themes, concepts, summary, file_hash (cerebro/nats/publisher.py) - Phantom subscribes to
cognition.insight.generated.v1β ingests into FAISS vector store (phantom/nats/consumer.py) - Both consumer+publisher wired into FastAPI lifespan in
app.py(phantom + cerebro) -
nats-py >= 2.7added to bothphantom/pyproject.tomlandcerebro/pyproject.toml
6.2 β SecureLLM Bridge observability β β
- Real Prometheus metrics:
securellm_requests_total,securellm_request_duration_seconds,securellm_rate_limited_total,securellm_provider_errors_total,securellm_token_usage_total,securellm_cost_usd_total(crates/api-server/src/state.rs) - NATS events:
llm.request.v1+llm.response.v1+cost.incurred.v1on every LLM call (crates/api-server/src/services/nats.rs) - Metrics endpoint wired via
prometheus::TextEncoder(routes/metrics.rs)
6.3 β ml-ops-api β β
- NATS events:
inference.request.v1/inference.response.v1(ml-ops-api/api/src/nats.rswired into AppState + inference handler) -
MlOpsProviderin securellm-bridge routing (ml-ops/{model}prefix) (crates/providers/src/ml_ops.rsβ OpenAI-compatible proxy, no API key) - Config:
ML_OPS_ENABLED=true+ML_OPS_API_URLenv vars - Circuit breaker: 3 failures β open, 120s timeout (GPU-aware)
- Fallback chain orchestration (local candle β ml-ops-api β securellm-bridge)
(
phantom/src/phantom/api/cortex_api.pyβ 3-tier chain with graceful degradation)
6.4 β E2E test suite β β
-
sentinel/scenarios/test_ml_pipeline_e2e.pyβ full pipeline: upload β ingest event β cerebro insight event β phantom RAG updated β bridge real metrics β bridge NATS events
Milestone 7 β Production Deployβ
Goal: Running on real hardware, serving real users.
Execution note: use sentinel/docs/go-live-goals.md as the operational checklist for batch
execution and release gating.
7.1 β NixOS deployment β β
- NixOS configuration module for full stack (
packaging/nix/nixos-module.nix) - Systemd services with restart rate limits (
StartLimitIntervalSec=60s+StartLimitBurst=5) - Firewall rules β only expose: phantom-api 8008, spooknix 8000, cortex-desktop 1420
(
openFirewalloption guards the TCP port list; internal ports never exposed)
7.2 β Backup & DR β β
- PostgreSQL backup script:
sentinel/scripts/backup-postgres.sh(7d daily / 4w weekly retention) - PostgreSQL restore script:
sentinel/scripts/restore-postgres.sh - NixOS backup timer:
sentinel/packaging/nix/backup.nix(runs at 02:00,Persistent=true) - NATS JetStream streams:
spectre/config/jetstream-streams.json(7 streams: INGEST/COGNITION/LLM/NETWORK/SYSTEM/INFERENCE/COST) - JetStream init script:
sentinel/scripts/init-jetstream.sh(idempotent, idempotent create) - Rollback runbook:
sentinel/docs/runbooks/rollback.md(Docker/NixOS/DB/NATS/SOPS/provider) - Git-based config backup:
sentinel/scripts/backup-config-git.shemitsgit bundle+ tracked-change evidence formaster,sentinel, andspectre
7.3 β SLO validation β β
- P99 latency targets: phantom-api < 500ms, spooknix transcribe < 30s/min-audio
- Availability target: 99.5% uptime (tested via chaos suite)
- Neoland readiness score: 85/100 β
(engine tests +12, nlp tests +9, proxy tests +5, SLO suite added)
(
neoland/tests/slo_validation_test.rsβ 7 non-ignored + 4 server-dependent tests)
Milestone 8 β Distribution (POST-RELEASE)β
Goal: Installable on NixOS, Linux, macOS, Windows. Zero manual setup.
Status: intentionally deferred until after the production release. Before deploy, the priority is per-project release checkups and final hardening across the participating software.
8.1 β NixOS / nixpkgs upstreamβ
-
packaging/nix/nixos-module.nixβ systemd services + SOPS secrets - Submit
spooknixto nixpkgs (most standalone, good first PR) - Submit
cerebro,phantomafter spooknix lands
8.2 β Linux (Debian/Ubuntu)β
-
packaging/deb/build.shβ builds.debvia cargo-deb + fpm -
packaging/deb/postinst.shβ service user + systemd unit setup - GitHub Releases asset upload (
release.ymldownloadsdeb-packagesartifacts and attaches*.deb) - Optional: Launchpad PPA
8.3 β Linux (RHEL/Fedora)β
-
packaging/rpm/build.shβ builds.rpmvia fpm - Copr repository for Fedora users
- GitHub Releases asset upload (
release.ymldownloadsrpm-packagesartifacts and attaches*.rpm)
8.4 β macOS (Darwin aarch64 + x86_64)β
-
packaging/macos/build.shβ universal binary vialipo -
packaging/macos/homebrew-formula.rbβ Homebrew formula for custom tap - Publish tap as
VoidNxSEC/homebrew-voidnxlabs - Submit to Homebrew core (after tap matures)
8.5 β Windows (amd64)β
-
packaging/windows/build.ps1β cross-compile + PyInstaller bundles -
packaging/windows/wix-config.wxsβ.msiinstaller config - Submit winget manifest to
microsoft/winget-pkgs - GitHub Releases
.msiasset upload
Project Status Matrixβ
| Project | Phase | Builds | Tests | NATS Wired | Prod Ready |
|---|---|---|---|---|---|
| spectre | Phase 0 done | yes | 11/11 | N/A (is the bus) | infra yes |
| owasaka | All 6 phases | yes | 35 pass | publishes | reconnect β , NKey β , TLS ready |
| phantom | M6 done | yes | 70%+ cov | pub+sub β | API yes, TLS (Caddy proxy) β |
| phantom-soc/control | A5 done | yes | β | subscribes (EventBus) | dev only |
| phantom-soc/data | A4 done | yes | β | consumes | dev only |
| ai-agent-os | Phase 1 done | yes | 2/2 | publishes | reconnect β , NKey β , TLS ready |
| neoland | 85/100 | yes | 131 pass | no | SLO suite β |
| spooknix | Sprint 3 done | yes | β | no | needs TLS |
| cerebro | M6 done | β | 112 pass | pub+sub β | NATS wired β |
| securellm-bridge | M6 done | yes | β | publishes β | real Prometheus metrics β |
| securellm-mcp | Phase 1 done | yes | β | N/A | prod ready |
| intelagent | Foundation | yes | core only | no | scaffolding, ADR-0054 decoupled |
| phantom-soc-kernel | Kernel done | yes | β | no | backend complete, needs UI wire |
| adr-ledger | Alpha | β | β | N/A | release governance + docs gate |
| sentinel | Orchestrator | yes | suite complete | N/A | CI/CD + dist ready |
Priority Orderβ
M1 (compose) β
-> M2 (tests) β
-> M3 (security) β
-> M4 (observability) β
M5 (CI/CD) β
-> M6 (ML pipeline) β
-> M7 (deploy + release checkups) β NEXT
M8 (distribution) β POST-RELEASE
Milestones M1 through M4 are operationally closed.
Immediate pre-release focus:
- Complete per-project release checkups before deploy
- Track the deferred
ai-agent-os -> phantom-soc UIthermal path in M7 - Keep rerunnable evidence current if core configuration changes before deploy
Referencesβ
- ADR-0050: Umbrella Delivery Roadmap (adr-ledger)
- Domain Manifest v2.1.0:
phantom-ray/phantom-stack/specs/DOMAIN_MANIFEST.md - Spectre docker-compose:
spectre/docker-compose.yml(NATS + TimescaleDB + Neo4j) - Unified compose:
~/master/docker-compose.yml - Sentinel test suite:
sentinel/scenarios/,sentinel/chaos/,sentinel/performance/ - Packaging:
sentinel/packaging/(nix, deb, rpm, macos, windows)