Releases: vortex-run/vortex
Releases · vortex-run/vortex
VORTEX v0.3.0
Changelog
New features
- 89f5cdf feat(m14): SLO tracker
- a2bb369 feat(m14): dashboard healing page
- 4035663 feat(m14): health monitor
- 690e5a7 feat(m14): process watchdog
- 80d4e65 feat(m14): recovery manager
- 870befc feat(m14): watchdog command + wire self-healing into start
- 35f74c0 feat(m15): AI summarizer
- 282d6c6 feat(m15): URL fetcher with SSRF protection
- 22e3b6b feat(m15): report generator
- d5d5ac1 feat(m15): research agent
- 054106d feat(m15): web searcher
- 892dc2e feat(m15): wire research into coordinator + start + API
- f0809e5 feat(m16): DevOps agent
- 15814f6 feat(m16): Docker management over SSH
- 778b0b6 feat(m16): Nginx management over SSH
- 1b109b1 feat(m16): SSH client
- be96c0b feat(m16): VPS server management
- db3e729 feat(m16): wire DevOps into coordinator + config + start + API
- 0299e79 feat(m17): SVG chart renderer
- 4cf1ef0 feat(m17): data pipeline agent
- 44b1273 feat(m17): data processor
- 6c572c4 feat(m17): data reader
- fa36497 feat(m17): pipeline scheduler
- 7e0ba69 feat(m17): wire data pipeline into coordinator + start + API
- eccb6b1 feat(m18): dependency-aware task queue
- 37a5c7b feat(m18): orchestration agent
- 20daeee feat(m18): orchestrator
- bb1702e feat(m18): planner
- 1429432 feat(m18): shared memory
- bb4a84a feat(m18): wire orchestration into coordinator + start + API
- 748b614 feat(m19): CVE scanning workflow (govulncheck + dependency review)
- 2b496e0 feat(m19): SBOM generation in release pipeline, release verification script
- 3df5f34 feat(m19): binary verification command, SBOM generation in release pipeline
- 1eb2c5f feat(m19): compliance report generation, audit log archival, vortex audit report command
- c6c483b feat(m19): per-API-key rate limiting, global rate limit, burst protection
- b5014af feat(m19): secret expiry tracking, rotation metadata, startup alerts
- ef52e89 feat(m19): security headers middleware, TLS session ticket rotation, OCSP stub
- 14242ee feat(m19): security tasks in Taskfile
- 8a7ee72 feat(m20): Groq, AWS Bedrock, Azure OpenAI, OpenRouter AI providers + setup wizard entries
- 6be8d0a feat(m20): LSP client + lsp_diagnostics tool for code intelligence (graceful when server absent)
- 21f2e90 feat(m20): SQLite conversation store with full-text search and JSON migration (also resolves L2)
- f7bf513 feat(m20): vim-mode TUI editor (normal/insert/visual, dd/yy/p, mode indicator), setup preference
- 8f765a1 feat(prod): Ed25519-signed release checksums, verify signature before self-update swap (H4)
- 4105e44 feat(prod): master-key derivation for all at-rest keys, legacy migration, drop cluster name from anonymous /health (audit C1)
- 0610658 feat(upgrade): SkillStore — SQLite+FTS5 store for learned agent skills
- 3664a5f feat(upgrade): SkillWriter — distils successful multi-step tasks into stored skills
- 9fcfc97 feat(upgrade): coordinator skill integration — recall proven skills into prompts, learn from completed tasks
- 4532a86 feat(upgrade): wire skill store into startup (skills store loaded)
Bug fixes
- f8bb98a fix(ci): correct LSP URI round-trip on Unix, shutdown honours loopback trust (vortex stop), mTLS integration derives store key from master key
- d280239 fix(ci): homebrew cask upload conditional on HOMEBREW_TAP_TOKEN, init tap repo
- a398105 fix(ci): skip goreleaser sign step when VORTEX_SIGNING_KEY is unset (integrity-only release)
- e89763f fix(m19): integration harness waits for full startup, not just API listen
- 085dcf9 fix(prod): VORTEX_TRUST_LOOPBACK toggle, shutdown never honours loopback trust (M1)
- 8525512 fix(prod): atomic file writes for key/secret/session stores, persist API keys on issue (M3)
- 77580fc fix(prod): bound agent session/memory caches and rate-limiter maps with TTL+cap+sweep (H5)
- f624991 fix(prod): management server read/write/idle timeouts (I4), /ready aggregates agent-plane health (I3)
- fc7e983 fix(prod): orchestrator validates DependsOn IDs and fails unknown-dep tasks instead of stranding them (M6)
- 5a9e4e5 fix(prod): rebinding-safe SSRF dialer with redirect re-validation for research fetcher and http_get tool (H2)
- 46d9416 fix(prod): validate session_id against path traversal (H1), cap+builder agent response (L1)
Other
- 07bd702 chore(m20): release prep — Homebrew cask + deb/rpm/apk packages in goreleaser, ignore agent scratch output, commit rekey/migration tests
- e640e9c ci(prod): run unit suite under race detector on every push/PR
- a974816 docs(m20): production README rewrite + full docs (install, config, agents, api, telegram, development, security)
- f454a3d perf(prod): reuse secret adapter and cache set/unset snapshot for /api/secrets/status (L4)
- 12bab02 test(m14): SLO tracker
- 8ab87da test(m14): health monitor
- 956f22b test(m14): process watchdog
- 9963d7a test(m14): recovery manager
- cc992c0 test(m14): watchdog command + healing API + integration
- b5a4fe8 test(m15): AI summarizer
- f2e14e0 test(m15): URL fetcher
- 970684a test(m15): report generator
- 01a769d test(m15): research agent
- a39aee2 test(m15): research routing + integration
- d65c787 test(m15): web searcher
- 4302ee1 test(m16): DevOps agent
- 4be8fff test(m16): DevOps routing + integration
- 31ce5b2 test(m16): Docker management
- 46776c4 test(m16): Nginx management
- 166e5a1 test(m16): SSH client
- 730d403 test(m16): VPS server management
- d67239a test(m17): SVG chart renderer
- 53f5f09 test(m17): data pipeline agent
- 3e30ac8 test(m17): data processor
- 1e92490 test(m17): data reader
- 29e0358 test(m17): pipeline routing + integration
- 30d99d2 test(m17): pipeline scheduler
- 3a9122c test(m18): orchestrate routing + integration
- 21e7197 test(m18): orchestration agent
- 166a684 test(m18): orchestrator
- 3d7f5fb test(m18): planner
- 9f6178e test(m18): shared memory
- eec63a4 test(m18): task queue
- 13928ca test(m19): API key, global, and burst rate limiter coverage
- ad04fd2 test(m19): compliance report and audit archival coverage
- 1289d69 test(m19): secret expiry tracking and rotation alert coverage
- 0bc3779 test(m19): security headers middleware coverage
- 6240965 test(upgrade): SkillStore coverage — FTS find, MarkUsed rate math, stats, concurrency
- ce6fbdb test(upgrade): SkillWriter coverage — skip short/failed/duplicate, learn complex success, AI errors
- 1629c73 test(upgrade): coordinator skill integration — prompt injection, rate gating, learn-on-completion
VORTEX v0.2.0
Changelog
New features
- f3fb49f feat(agent): --cwd flag + working-dir wiring + top-bar display
- d386922 feat(agent): POST /api/agents/approve endpoint
- 5a53572 feat(agent): TUI approval UI + slash commands
- 16b7e76 feat(agent): auto-detect project context on first message, include in AI system prompt
- ce1ccbf feat(agent): conversation memory persisted to disk, context passed to AI
- f32c9bc feat(agent): coordinator local-tool execution + approval routing
- 9ba6545 feat(agent): forge progress streaming to TUI
- 1f7bb27 feat(agent): git tools — status/diff/commit/add with approval gate
- 1bbde1a feat(agent): local filesystem + terminal tools
- dac9a9c feat(agent): search_files and find_files tools with slash commands
- 4e3edbf feat(agent): undo last file write, backup before overwrite
- 3dad4ca feat(forge): structured ClarifyingQuestion with options (File 1/3)
- 49e693a feat(m10): wire agent runtime into start + API
- 143d148 feat(m10.1): agent core types + lifecycle state machine
- 090d271 feat(m10.2,m10.3): tool registry + sandboxed execution
- ba0f6e0 feat(m10.4): inter-agent message bus
- 782c633 feat(m10.5): coordinator agent + intent routing
- 2be2bb2 feat(m10.6): persistent agent runtime supervisor
- 0acf2c3 feat(m11.1): Telegram bot engine via stdlib net/http
- 5f5fe65 feat(m11.2): WhatsApp Business (Meta Cloud API) via stdlib
- 4c99a7a feat(m11.3): Slack webhook + slash commands via stdlib
- 74a8a83 feat(m11.5): AI provider gateway implementing agents.AIGateway
- af530f6 feat(m11.6): wire messaging into start + API
- 40e0651 feat(m11.7): unified notification router
- c5a00b5 feat(m12.1): code-server lifecycle manager
- 47f5a47 feat(m12.3): browser terminal over WebSocket
- 87899dc feat(m12.4): browser DB studio
- 16b5249 feat(m12.5): Git panel via git binary
- 497959d feat(m12.6): wire VORTEX Studio into start + API
- c144424 feat(m13): wire Forge into coordinator + API
- 4136e81 feat(m13.1): Forge intent parser
- ff3abba feat(m13.3): Forge dependency agent (C2-aware)
- 7d670c1 feat(m13.4): Forge code generation agent
- cfddcb1 feat(m13.5): Forge build agent
- 84857df feat(m13.6): Forge QA gate
- 3b9dd30 feat(m13.7): Forge delivery agent
- 80a7fb8 feat(m13.8): Forge orchestrator
- 8713b1d feat(m2-wiring): add routes array to /health response
- 1866904 feat(m2-wiring): proxy manager starts listeners per route
- bceef9c feat(m2-wiring): wire proxy manager into vortex start
- e33b259 feat(m2.1): TCP connection pool
- 3104d4c feat(m2.1): TCP listener — accept loop, pool, tunnel dispatch
- a6555cc feat(m2.1): TCP tunnel bidirectional copy engine
- 57b9c43 feat(m2.1): smooth weighted round-robin backend selector
- 694f82d feat(m2.2): HTTP balancer interface, round-robin, least-conn
- 229da3c feat(m2.2): HTTP reverse proxy handler with retry
- 1ba5800 feat(m2.2): HTTP router with 6-tier priority matching
- dad02d3 feat(m2.2): HTTP server with graceful shutdown and stats
- 8c87796 feat(m2.2): pooled HTTP round-tripper with header injection
- f4a4c8f feat(m2.3): QUIC/HTTP3 transport via quic-go
- 5e3c8a9 feat(m2.3): dual-stack QUIC+TCP server with Alt-Svc header
- 6f4b46b feat(m2.4): ACME certificate manager (vtls)
- c69755e feat(m2.4): encrypted certificate store (vtls)
- 512eb09 feat(m2.4): local CA for dev/staging TLS (vtls)
- e1d1ca8 feat(m2.4): unified TLS manager (vtls)
- ee284ec feat(m2.5): UDP listener with session table and rate limit
- e362e05 feat(m2.5): UDP session table with TTL cleanup
- 08d97ed feat(m2.5): per-IP token bucket rate limiter for UDP
- 05b55cc feat(m2.6): WebSocket proxy with sticky session support
- 3655f79 feat(m2.6): protocol gateway — WS, gRPC, HTTP dispatcher
- cc2301f feat(m2.6): transparent gRPC reverse proxy
- 65dd138 feat(m3.1): SPIFFE node identity for mTLS mesh
- 5ed27df feat(m3.1): cluster CA + node cert rotation manager
- 939aa14 feat(m3.1): mTLS server and client TLS configs
- cb4de66 feat(m3.1): wire mTLS into TCP routes and proxy manager
- db70c8e feat(m3.2): ChaCha20-Poly1305 encrypted secret store
- 4350a86 feat(m3.2): secret resolution and env injection
- 07ba634 feat(m3.2): vortex secret set/get/list/delete subcommands
- 49079da feat(m3.2): wire secret store into vortex start
- b98e437 feat(m3.3): AWS SSM Parameter Store secret adapter
- 257dc57 feat(m3.3): GCP Secret Manager secret adapter
- 3409980 feat(m3.3): HashiCorp Vault KV v2 secret adapter
- 26274d5 feat(m3.3): secret adapter interface and local adapter
- 3fa23ff feat(m3.3): wire secret adapters into start and secret CLI
- 1e0eab4 feat(m3.4): OPA policy enforcement HTTP middleware
- a48f6b9 feat(m3.4): OPA policy engine with hot-reload
- 481cc6f feat(m3.4): wire OPA policy engine into HTTP proxy
- 23f0f7e feat(m3.5): API key issuance, verification, persistence
- 3c8b3ae feat(m3.5): OIDC/SSO login provider and bearer middleware
- 8493b50 feat(m3.5): RBAC role model and permission checks
- 0717897 feat(m3.5): combined API key + OIDC auth middleware
- 81fbb90 feat(m3.5): wire auth into management API
- d226906 feat(m3.6): HMAC-SHA256 chained append-only audit log
- dd2b6a8 feat(m3.6): audit log export formats
- 9b3c9bf feat(m3.6): vortex audit verify/export CLI
- 5d5676e feat(m3.6): wire audit log into VORTEX events
- 97bb43a feat(m3.7): HTTP edge token-bucket rate limiter
- 72c3dbe feat(m3.7): IP allowlist/blocklist with Tor and auto-ban
- 56b1dbe feat(m3.7): edge middleware composing blocklist + rate limit
- 4bfb1b3 feat(m3.7): wire security edge into proxy and start
- 39aed38 feat(m4): Raft consensus for config replication
- dadbd96 feat(m4): SWIM gossip membership via memberlist
- cce3cf3 feat(m4): cluster Manager orchestrating gossip + raft
- 78227f5 feat(m4): cluster node identity
- 61f140d feat(m4): wire cluster into start and add cluster CLI
- 3fdb0b2 feat(m5): OpenTelemetry trace provider
- f6fbb13 feat(m5): Prometheus metrics registry
- 9a354a5 feat(m5): SLO tracking with error budget
- d064da5 feat(m5): localhost pprof profiler
- df22179 feat(m5): observability HTTP middleware
- 7e0c46e feat(m5): wire observability into proxy, API, and start
- 798a533 feat(m6): WASM-backed hook implementation
- 3576a0c feat(m6): plugin hook chain
- 84b5032 feat(m6): plugin registry
- 10dcdbb feat(m6): sandboxed WASM plugin runtime
- 0e10eb3 feat(m6): vortex plugin CLI
- 07da39f feat(m6): wire plugins into HTTP proxy
- 35dddfb feat(m7.1): React + Vite + TS dashboard scaffold
- b26b3a3...
VORTEX v0.1.0
Changelog
New features
- b8b9c9e feat(m1.1): mono-repo scaffold — single binary, logger, lifecycle, CI
- 42176bd feat(m1.2): CUE config engine — schema, loader, env overrides, hot-reload
- b2aee71 feat(m1.3): internal reload and shutdown API endpoints
- 55e0739 feat(m1.3): pidfile package
- 9942bef feat(m1.3): vortex check subcommand
- a4d516a feat(m1.3): vortex reload subcommand
- a70f454 feat(m1.3): vortex start subcommand
- 1d7373c feat(m1.3): vortex status subcommand
- abc5edc feat(m1.3): vortex stop subcommand
- 79eeefe feat(m1.3): vortex version subcommand
- 7b8a889 feat(m1.4): OpenRC init script generator
- 40b38fc feat(m1.4): harden pidfile with atomic write and file locking
- a41cb27 feat(m1.4): one-line installer script
- 4310396 feat(m1.4): service install/uninstall logic
- 69568aa feat(m1.4): systemd unit file generator
- 5e55c4c feat(m1.4): vortex service subcommand
- c43984a feat(m1.5): correlation ID context helpers
- 5ebb0c0 feat(m1.5): journal-native logging for systemd deployments
- 5f1d214 feat(m1.5): logrotate config generator for OpenRC deployments
- fe8539e feat(m1.5): sampling log handler for high-volume paths
- b26bda0 feat(m1.5): size and time based log rotation writer
- 78c0e68 feat(m1.5): wire log config into observability schema and main
- a2a76e2 feat(m1.6): goreleaser config for multi-platform releases
- 7769228 feat(m1.6): release workflow triggered on v* tags
- 10b48da feat(m1.7): download, extract, atomic replace in internal/update
- 318cf23 feat(m1.7): harden install.sh — flags, progress, checksums.txt
- 3797015 feat(m1.7): vortex self-update command
Bug fixes
- 474ce6e fix(m1.3): unblock Run() on programmatic Shutdown()
- cee8354 fix(m1.4): make pidfile Write race-safe across concurrent callers
- e69cde8 fix(m1.5): wire correlation ID middleware into API server
- 0ad7e8f fix(m1.7): friendly message when no releases exist
Other
- 248f93e Initial commit
- ff2bbb0 chore(m1.3): add start/stop/status/reload/check to Taskfile
- ad2d8a6 chore(m1.4): add service and install tasks to Taskfile
- 4398d55 chore(m1.6): add snapshot, release:check, tag tasks to Taskfile
- 63c6bbb chore(m1.7): add update:check and update tasks to Taskfile
- a88a9da chore(m1.8): add integration test tasks to Taskfile
- b62fb04 ci: add integration test job to CI pipeline
- 453bc88 ci: build golangci-lint from source to match Go 1.26 toolchain
- 51c3b91 ci: fix concurrency — every commit runs to completion
- 50df142 refactor(m1.3): move entrypoint into internal/cmd root command
- eb45349 refactor(m1.7): extract GitHub release API into internal/update
- 71d9deb test(m1.8): API integration tests
- e23d10d test(m1.8): boot integration tests
- 5b7b3eb test(m1.8): lifecycle integration tests
- 22f9609 test(m1.8): test config helpers
- b3418dd test(m1.8): testutil package for integration tests