0.10.56 (2026-09-03)
0.10.55 (2026-09-02)
- web: split feed into one-shot runs and persistent sessions (#411) (8a09d1b)
- web: surface interactive sessions at top of Harnesses page (#413) (5a53be6)
0.10.54 (2026-09-02)
- harness: add persistent Hermes default (6f0a45b)
- harness: track activity and enforce idle timeout (f1de44c)
- ci: allow explicit image fleet rebuilds (567564a)
- ci: evaluate manual build after skipped detection (39efce6)
- ci: preserve required image builds (9da627d)
- harness: auto-start persistent agent sessions (4f8c538)
- harness: pin corrected Hermes session image (1d281a4)
- harness: retain idle timeout condition (8cd7eb8)
0.10.53 (2026-09-01)
- harness: persist session state across restarts (#407) (c3bab88)
- harness: separate persistent sessions from one-shot runs (#404) (776dcc4)
- support keyless local harness inference (#406) (f61e861)
0.10.52 (2026-09-01)
- add persistent HarnessSession lifecycle (#395) (4019702)
- cli: add dashboard token command (#388) (fb8eeea)
- harness: install maintained adapter catalog (093d0ff)
- harness: install maintained adapter catalog (ace6e60)
- install Pi persistent session runtime by default (#398) (945ec14)
- make harness execution a first-class Agent flow (#391) (2bb0fd7)
- make persistent harness chat agent-first (#399) (718ccf5)
- make persistent harness chat resumable (#400) (4a27062)
- stream persistent harness chat responses (#403) (5a4c832)
0.10.51 (2026-08-31)
- celln: enable labelled KVM hosts by default (#385) (af3f0bb)
- harness: select runtime while creating an agent (#384) (bb9baf7)
0.10.50 (2026-08-31)
- harness: expose runtime selection in new run flow (#369) (2745414)
- harness: manage agent runtime from UI (#376) (5b9c67d)
- harness: show runtime provenance and reject unsupported settings (#371) (8c2e8e6)
- web: add approved harness registry (9eedf0c)
- web: add harness trust detail view (43d7625)
- web: organize agent detail around harness and ensemble (a6b4c64)
- api: retain harness prompt for runtime runs (#373) (efe766e)
- harness: allow default use context setting (#374) (4b6733f)
- harness: preserve inherited runtime provenance (#380) (f79f2f1)
- harness: probe loopback skill tool server in-container (#381) (e87ae07)
0.10.49 (2026-08-30)
- accelerator power draw from a discovered energy collector (e5aa1e4)
- collector+apiserver: discover energy collectors, expose accelerator power (a1bcbc2)
- harness: add the admin-owned AgentRuntime resource (155c36f)
- harness: add the admin-owned AgentRuntime resource (c05fd7e)
- harness: inherit an Agent runtime across all run entrypoints (480c719)
- harness: reference an approved AgentRuntime from a run (0e563f1)
- harness: reference an approved AgentRuntime from a run (9abf37d)
- security: isolate Kubernetes identity per agent run (f9229d4)
- security: isolate Kubernetes identity per AgentRun (5cd37a7)
- security: restrict harness NATS access (925e6d9)
- security: restrict harness NATS access (c63a2e5)
- web: live accelerator power on density and topology node views (52c77a6)
- web: simulated accelerator power in the topology demo (409eceb)
- eventbus: bound core NATS publish flushes (#365) (2c90d1b)
- harness: inherit agent runtimes on normal runs (058ec37)
- harness: require digest-pinned adapter images (8636cf9)
- harness: require digest-pinned adapter images and record the digest (9a9ce81)
- harness: require explicit policy opt-in (1326b1f)
- harness: restrict model credentials to agent allowlist (44ef22a)
- harness: restrict model credentials to Agent allowlist (a8d9ff5)
- ipc: reconcile pre-existing result files on watch registration (6e08fd9)
- memory: reconcile managed server image (ee1c92f)
- memory: reconcile managed server image (00c3ac7)
- nats: authenticate density subscriber (9b0c6fa)
- rbac: grant controller and apiserver access to agentruntimes (94ed965)
0.10.48 (2026-08-18)
- allow unauthenticated custom providers in wizard (db1036d)
- allow unauthenticated custom providers in wizard (bccce53)
0.10.47 (2026-08-09)
- Celln hermetic-action backend for AgentRun (da364c4)
- Celln hermetic-action backend for AgentRun (abea691)
- deploy celln installer + router via Helm (bda32eb)
- enable Celln backend by default in Helm chart (e92e58a)
- gate Celln behind explicit opt-in, add live status banner (2d0c2ef)
- migrate Celln dispatch to /v1/executions (forge mode) (6b8b200)
- opt out for automatic memories (8b74fa0)
- router DaemonSet with downward API, zero IP config (348cd3c)
- celln: remove unused celln-dispatcher-token Secret (183b8a5)
- derive Celln action IDs from AgentRun name+UID, not name alone (7d8f85c)
- enforce a controller-side deadline for wedged Celln backends (d4f46d7)
- manually construct Azure OpenAI deployment URL (58dbcb1)
- manually construct Azure OpenAI deployment URL to work around SDK middleware bug (ac9cdb5)
- provider-agnostic API key secret (openaiApiKey, anthropicApiKey, deepseekApiKey) (1321032)
- reject AgentRuns with both backend=celln and agentSandbox.enabled (2de81c8)
- retry Celln router-unreachable errors on a fixed 10s cadence (eff0d03)
- router port 8788 (dispatcher uses 8787), TCP probes (8165c72)
0.10.46 (2026-08-06)
0.10.45 (2026-08-06)
0.10.44 (2026-08-06)
- agent-runner: add opt-in detailed JSONL file logging with per-run directories (#238) (6d52537)
- apiserver: reload SYMPOZIUM_UI_TOKEN from a mounted file (#315) (28cb1b7)
- compact old tool results (#316) (460798d)
- crd: gate ensemble auto-start with stimulus.trigger and schedule.firstTick (b5ea9d3)
- sidecar-driven: polymorphic task + TaskModeHandler registry (#302) (c3038ea)
- stimulus trigger gating, workstation topology demo, and buildable demo hardware (4d39487)
- web: draw demo topology nodes as workstations with accelerator bays (129cdba)
- web: let the ensemble builder choose the stimulus trigger mode (bc5a8cb)
- controller: make sequential handoff truncation legible (bae9701)
- crd: accept both string-form and object-form spec.task at admission (#312) (a29016c)
- examples: give the research demo a brief that actually directs research (de77fda)
- web: make demo topology hardware physically buildable (eaedf1d)
0.10.43 (2026-07-15)
- AgentRun dollar cost estimation with simulated pricing overlay (798aa3f)
- AgentRun dollar cost estimation with simulated pricing overlay (dfe8fdf)
- controller: opt-in controller-side delegation executor with guardrails + telemetry (0179b44)
- implement allow/deny tool policy semantics (dfb12dd)
- ToolPolicy allow/deny propagation and runner-side filtering (ebcdafe)
- web: show estimated spend inline in the conversation panel (87f4435)
- web: single effective spend value with totals per page and conversation (46e6537)
- wire ToolPolicy.Deny to agent-runner tool filtering (VEL-1084) (6bd88e4)
- controller: reject forged token metrics from agent result markers (8227556)
- propagate Ensemble toolPolicy to AgentRun pods (67b9161)
0.10.42 (2026-07-09)
- web+apiserver: decorate topology nodes with llmfit-dra accelerator inventory (4bcaeef)
- web: accelerator tree leaves on density nodes and topology cards (2bebd1a)
- web: stack and group topology accelerator chips (77f63b3)
0.10.41 (2026-07-08)
- serve: auto-login web UI via token in the URL fragment (5aa40ba)
- serve: URL auto-login; standalone agent topology nodes (f19d0be)
- web: render standalone agents on the topology with model edges (ba22b3e)
- web: repair type errors that broke npm run build (20ce832)
0.10.40 (2026-07-08)
- install: make uninstall aware of the bundled llmfit-dra subchart (92cbef8)
- install: make uninstall aware of the bundled llmfit-dra subchart (576b7b6)
0.10.39 (2026-07-08)
- Add skipped as AgentRun status - reachable via IPC similar to dry runs (#228) (056421c)
- channels: wire per-agent display name for Slack sender attribution (#263) (1f52056)
- placement: claim-based model placement via bundled llmfit-dra (07e2524)
- placement: claim-based model placement via bundled llmfit-dra (21532a2)
- placement: claim-based model placement via bundled llmfit-dra (4d70a1f)
- placement: surface pending-pod scheduler verdicts; ensure claims on the deployment path (d4e7132)
- slack: per-message sender attribution for multi-agent Ensembles (#245) (5239b4d)
- web: waiting reasons on topology model nodes; consolidate Models nav (8813105)
- web: waiting reasons on topology model nodes; consolidate Models nav (ad5e566)
- agent-runner: serialize Bedrock tool schemas as JSON objects (#259) (f0f22c7), closes #255
- align Ensemble update path with create path for all Agent fields (#264) (e33be9f)
- controller: propagate runTimeout and wire agentEnv into pod spec (#240) (d9f584e)
- controller: propagate sidecar tools from source SkillPack (#250) (46b2cdc)
- eventbus: recover NATS subscriptions after restart/recreate (#253) (#254) (f341b37)
- install: vendor the bundled llmfit-dra chart for the embedded installer (def0522)
- security: tier-1 hardening for delegation, channels, and API auth (#265) (6fd740d)
0.10.38 (2026-06-28)
- controller: honor SYMPOZIUM_IMAGE_TAG for run pods + memory sidecar (ISI-1406/ISI-1417) (#244) (604dd57)
- controller: replace LastRunName check with List to prevent TOCTOU race (#239) (a419afe)
- make subagent fanout limits and names reliable (#247) (f156807)
0.10.37 (2026-06-25)
- agent-runner: log LLM round progress during agent runs (#225) (c222b8e)
- native sidecar tools declared on SkillPack CRD (#241) (32a5acc)
- Persist AgentRun.spec.Timeout and expose runTimeout via Ensemble config (#230) (897c5f0)
- enforce sequential ordering in pipeline ensembles (a86bcc6)
- preserve namespace for subagent spawning (#234) (5c7bd03)
- remove finish_reason gate for tool call extraction (#227) (14cea32)
0.10.36 (2026-06-15)
- don't hijack canvas zoom/pan keys while typing in inputs (#221) (39940e0)
- guard against unreachable cron expressions in schedule controller (#220) (a776f4d)
- scope TUI resource lists to the active namespace (#217) (6479fe5), closes #215
0.10.35 (2026-06-03)
- support custom headers for model provider requests (#210) (8412662)
- topology keyboard navigation and demo gif (2d8b417)
- tui: add search/filter, log improvements, status colors, and run table enhancements (#209) (d70da82)
- add watch verb to apiserver secrets RBAC (3037f65)
- ci: disable fail-fast on release image matrix (50661f8)
- clear stale baseURL when switching to a cloud provider (6345d1f)
- pass baseURL as wizard default when re-enabling ensemble (3e8b98d)
- preserve ensemble auth config on disable and clean up stale runs (00ac9e4)
0.10.34 (2026-05-18)
- tui: update TUI colors to neo-industrial palette (8402a5e)
- update TUI, topology, and ensemble canvas to industrial palette (f7a3bc7)
- replace remaining gradient buttons with theme-aware primary and update README demo image (#203) (e85c1cf)
0.10.33 (2026-05-17)
0.10.32 (2026-05-14)
0.10.31 (2026-05-13)
- ci: add llmfit-daemon to build and release image matrices (df3f7e1)
0.10.30 (2026-05-13)
0.10.29 (2026-05-13)
- update TUI terminology from Personas/Instances to Ensembles/Agents (#182) (7e48fe5)
- web: resolve ReactFlow render loop and Cypress test failures (#184) (ad06e12)
0.10.28 (2026-05-09)
- correct CHANGELOG header to match actual version 0.10.27 (3e5ee70)
0.10.27 (2026-05-09)
- This is a full ontology rename that affects CRDs, API routes, Go types, controllers, frontend, Helm charts, docs, and tests.
- Ensemble CRD replaces PersonaPack (see commit 432355b).
- The PersonaPack CRD has been renamed to Ensemble. All API endpoints, labels, controllers, and UI references updated.
- add apiKey support for provider models fetching (369fab3)
- add apiKey support for provider models fetching (fb4bb53)
- add apiKey support for provider models fetching (f9b69a9)
- add automated demo walkthrough recording for README GIF (0945630)
- add channel access control with sender/chat allowlists and denylists (b6310ec), closes #43
- add Concepts modal explaining Sympozium ontology (9d4bef3)
- add Cypress UX tests for instance creation and persona packs (2ffb502)
- add Cypress UX tests for instance creation and persona packs (55e5590)
- add edit capability for schedule cron expressions (7abd745)
- add edit capability for schedule cron expressions (8f5c0b4), closes #110
- add ensemble delete button + auto-derive permeability from relationships (93a8ec1)
- add envtest-based system tests for API server + controllers (2344132)
- add Helm chart repository via GitHub Pages (a589e82)
- Add image pull secret propagation for agent run container (51858a3)
- Add image pull secret propagation for agentrun sidecar container (d5f4852)
- add inline editing for PersonaPack personas (system prompt & skills) (6a46163)
- add llama-server as a first-class AI provider (86ec4ae)
- add LM Studio support for local inference (53cc0f4)
- add Local Model as provider option in ensemble builder (83f032a)
- add node probe discovery to ensemble builder provider setup (0576c7e)
- add Open Graph and Twitter Card meta tags for link previews (3f17f3b)
- add persona relationships schema and workflow canvas (ace2bcf)
- Add Provider button on builder and detail workflow canvases (a962f69)
- add provider icons to wizard dropdown and llama-server docs (25fca6d)
- add RBAC permissions for metrics access on pods and nodes (013b02e)
- add RBAC permissions for metrics access on pods and nodes (d94ed79)
- add research-team PersonaPack with relationships and Cypress tests (9357e0a)
- add Settings page with Agent Sandbox CRD install/uninstall, MCP server auth & defaults (833bbdc)
- add shared workflow memory for cross-persona knowledge sharing (3a163dc)
- add SQLite-backed persistent memory with FTS5 search (#45) (28013b7)
- add Stimulus node type for auto-triggered workflow prompts (59fc3be)
- add structured health check matrix to canary UI (73d54c1)
- add subagent ensemble examples to install defaults (ddb8b0d)
- add subagents skill for ad-hoc sub-agent spawning (#171) (2929a80)
- add synthetic membrane layer for shared workflow memory (5a30192)
- add System Canary — built-in synthetic health testing ensemble (fef2742)
- add tool-call circuit breaker and configurable run timeout (b5a3b94)
- add topology page to demo walkthrough recording (ae6d8fc)
- add workflow relationships to developer-team ensemble (49d8e85)
- add workflows to all default ensembles (6ad01b9)
- add YAML export button to ensemble detail page (f970d44)
- adding actions update (a26187d)
- adding bedrock (9359ab1)
- adding mcp docs (9c8955d)
- agentsandboxing (25c0bb2)
- auto node placement via llmfit, namespace-aware models, and ModelPolicy groundwork (2c13faf)
- auto-detect Agent Sandbox CRDs and surface toggle in UI (47d56ee)
- auto-detect node probe providers and allow changing ensemble provider (e79310f)
- auto-inject delegation/supervision context from ensemble relationships (e38e93e)
- AwaitingDelegate phase, Cypress workflow tests, hooks fix (8fee27b)
- channel pod CSI compatibility and dedicated service account (1aa9a99)
- cypress: parameterize test model via CYPRESS_TEST_MODEL env var (b4f68ea)
- cypress: parameterize test model via CYPRESS_TEST_MODEL env var (af6310b)
- declarative local model inference via Model CRD (1a6da42)
- declarative local model inference via Model CRD (4095ea8)
- delegate_to_persona tool and dashboard team canvas widget (5b25b59)
- doc colors (54178f7)
- enforce ExposeTags and MaxTokensPerRun membrane fields (b6aa66c)
- enhanced dashboard with OTEL observability panels and draggable layout (c839f33)
- envtest-based system tests + Cypress fixes (e173d95)
- expand default MCP server catalog (ab27fac)
- expand default MCP server catalog with grafana, kubernetes, argocd, and postgres (b620dbf)
- expose run timeout in web UI and CLI TUI (3bca472)
- fixed token auth (93cd905)
- fmt code (f6f61c3)
- fmt code (fee9454)
- gate: add response gate hooks with manual approval flow (0e5ad97)
- global persona canvas and live run status highlighting (5e69827)
- implement blocking delegation between ensemble personas (dc2c7a6)
- implement sequential workflow trigger in controller (c5b9e45)
- improving test quality (ccecf51)
- improving UX + whatsapp (1483d2a)
- installed status for lm studio (1e55013)
- interactive canvas editing and persona-targeted spawning (c3af2ea)
- lifecycle hooks — preRun and postRun containers for agent runs (a29a8c9)
- lifecycle hooks — preRun and postRun containers for agent runs (#67) (46250af)
- makefile: add ux-tests-serve target for running Cypress against sympozium serve (e9c3202)
- multi-provider inference (vLLM, TGI) and cluster topology page (c434df4)
- node-probe reverse proxy and keyless provider support (0a08529)
- promote Team Canvas to prominent dashboard position (958600a)
- provider nodes on canvas + per-persona provider overrides (4bf004a)
- provider nodes on dashboard canvas, fix provider-to-agent wiring (7350791)
- providers: add Unsloth as a supported local LLM provider (9c246c1)
- real-time workflow canvas updates via WebSocket (e3fe61f)
- rebase MCP bridge sidecar onto upstream/main (5d1f215)
- recover qwen-native tool_calls from reasoning_content (f807de1)
- rename Instance→Agent, Persona→AgentConfig across entire codebase (df230ee)
- rename PersonaPack to Ensemble + canvas-first builder (432355b)
- replace LLM-based canary with deterministic health checks (2e25fd1)
- reworked memory implementation (81fdd0c)
- shared stimulus view/edit/retrigger dialog across all canvases (#165) (196f219)
- show local model node on ensemble workflow canvas (13b08e5)
- show model node on global ensemble canvas (3f00fef)
- stimulus node support in builder, unified canvas primitives, and UX fixes (#162) (a57c8f1)
- subagents skill for ad-hoc sub-agent spawning (#175) (3b6e354)
- synthetic membrane layer for shared workflow memory (a582317)
- topology dagre layout, synthetic membrane page, and UX improvements (4cef6a2)
- updated logo (2ed44ff)
- updated logo in docs (a614c20)
- updated logo in docs (9014708)
- updated tests (92255c7)
- updated UX data (3841ecc)
- web: add run notifications, unseen watermark, and polling (42bb00b)
- web: improve sidebar hierarchy, breadcrumbs, and detail page UX (0a622d1)
- add build tag to system tests so go test ./... skips them (50052f0)
- add mcp-bridge to release image matrix (0575e8c)
- add metrics.k8s.io RBAC to config/rbac/role.yaml for sympozium install (0c1a51c)
- add missing DryRun field and supporting changes omitted from dc2c7a6 (7f0a4aa)
- add missing MCP server resources to ClusterRole (0f0786b)
- add missing MCP server resources to ClusterRole (6a4c744)
- add missing nodes RBAC for apiserver — restores topology and cluster status (58ad746)
- add missing observability-mcp-team persona pack to Helm chart (fc0105c)
- add namespace selection to onboard wizard (a153585)
- add namespace selection to onboard wizard (0349276), closes #24
- add namespace to default PersonaPack manifests (25b490a)
- add new guides and agent-sandbox to mkdocs nav (efebd3b)
- add part-of label to agent pods so OTEL network policy applies (eebaf9d)
- adding network policy issues (c925d19)
- AgentRun status concurrency update (87dbb22)
- align Agent Sandbox with upstream agents.x-k8s.io API group (0cd4d69)
- auto-store task/response in memory server after each agent run (8f475fb)
- canary first run never triggers after duplicate-prevention change (0bbf126)
- canary first run never triggers after duplicate-prevention change (2e1caeb)
- canary NetworkPolicy, RBAC, provider resolution, and node-probe routing (5be1db0)
- canvas empty state — use controlled ReactFlow props for read-only canvases (58697be)
- cascade-delete scheduled AgentRuns when their Schedule is removed (eb1ad6a)
- chain release workflow from release-please via workflow_call (22c9e1e)
- channel status never persisted, always shown as "Unknown" (#25) (065a9bb)
- correct MCP server configs after local testing (6d56e57)
- CRD detection false negatives and missing provider in instances list (0ca8398)
- create namespace before Helm config init to fix fresh installs (e49fa50)
- crop gray borders from demo GIF recording (c300672)
- default MCP server catalog to disabled (opt-in) (d164dc0)
- docs (c5a5bdb)
- fail AgentRun when skill RBAC creation fails instead of silently continuing (99ddb4d)
- fixing otel/memory (26624aa)
- format files (82c867b)
- generate human-readable random agent names instead of persona-1 (6c53dd3)
- gofmt formatting for inference backend files (8d837bd)
- guard stale Job-not-found reconcile during postRun transition (8d2ff41)
- heredoc syntax error in ux-test preflight script (abd0f5d)
- hide system canary from ensembles list (f7c051c)
- include node-probe in release manifests and use localhost for probe targets (b45749d)
- include SympoziumConfig in CLI uninstall resource cleanup (4d296e4)
- infer local model provider from agent model fields (6393251)
- install: disable chart namespace template to avoid collision (e0aae1c)
- install: recover from failed releases and simplify ns creation (4c84612)
- missing image (8a8c05b)
- model detail page namespace resolution (894f808)
- multi-arch Docker builds and IPv4 port-forward binding (c25d378)
- nil pointer dereference in admission webhook decoder (538c6a0)
- nil pointer dereference in admission webhook decoder (bc90f2c), closes #29
- node-probe crashloop caused by circular logger reference (b3068da)
- node-probe host detection, verbose logging, and LM Studio model listing (deb19a3)
- node-probe issues (41c13af)
- ollama specific test (89290f6)
- otel/memory write timeout (2c0f848)
- per-persona Discord channel routing and truncated run results (9407420)
- per-persona Discord channel routing and truncated run results (822f9ab), closes #106 #107
- persist baseURL from TUI persona wizard to PersonaPack spec (186b1f8), closes #39
- personas: harden platform-team prompts + propagate systemPrompt edits (079986d)
- populate default baseURL for local providers (Ollama, LM Studio) (e9cd653), closes #39
- prevent apiserver image build timeout on multi-arch builds (830329d), closes #60
- prevent canary agent from looping on empty memory (23e9088)
- prevent canvas crash when model data hasn't loaded yet (ddb5410)
- prevent duplicate canary runs on first schedule trigger (1f5e286)
- prevent duplicate canary runs on first schedule trigger (1428d68)
- prevent panic when AgentRun has nil Labels map (#170) (6f0792f)
- prevent port-forward reconnect loop when port is already bound (c39199e)
- prevent reconcile race from overriding Succeeded AgentRuns as Failed (d681a33)
- prevent UI token mismatch after helm upgrade (32bd78c)
- prevent UI token mismatch after helm upgrade (dac1e87), closes #113
- propagate baseURL through personapack pipeline for local providers (5025077)
- propagate Memory.SystemPrompt to AgentRuns (#169) (bc20d3d)
- propagate skill changes to existing Agents on ensemble update (2a498c7)
- publish TopicAgentRunFailed from controller so web proxy unblocks on failure (b98841f)
- recover from stuck Terminating namespace during install (#173) (30d59a8)
- regenerate deepcopy and sync CRDs/Helm (5703c23)
- regenerate PersonaPack CRD to include baseURL field (0650240)
- remove conflicting namespace pre-creation in helm install (9930ba4)
- remove duplicate YamlButton import in ensemble-detail (a82a493)
- remove explicit host from node-probe targets to restore auto-detection (f91229a)
- remove hardcoded dark fills from architecture diagrams (328827b)
- remove redundant lock button from topology zoom controls (2e07dc9)
- rename Add Persona→Add Agent, hide GPT models for local model, sort skills (827f695)
- rename personas→agentConfigs in default ensemble YAML files (95c4453)
- render markdown in feed task messages (7275510)
- replace all remaining Instance→Agent in user-facing UI strings (b3ceb3d)
- resolve all Cypress TypeScript errors (008266e)
- resolve Docker build TS errors for provider nodes (91147fb)
- resolve Docker build TS errors from Instance→Agent rename (926b5d7)
- resolve flaky Cypress tests for run-delete and run-notifications (74bab5a)
- resolve integration test hang and flaky secret-not-found error (2fb431f)
- resolve remaining TypeScript index signature errors in yaml-panel (8cea011)
- resolve TypeScript errors in ensemble canvas model node types (b0fa56f)
- resolve TypeScript index signature errors in yaml-panel (4a576a1)
- restore node-probe-daemonset.yaml removed during rebase (1b3f81f)
- restrict WhatsApp channel to self-chat messages only (3425eb8)
- restrict WhatsApp channel to self-chat messages only (6af4dca), closes #138
- run make generate for new policy and model types (2449644)
- run only smoke tests in CI integration workflow (bf1c293)
- scale down controller before stripping finalizers on uninstall (ef8381f)
- scheduler picks next free run-number suffix to avoid ghost runs (205829a)
- security hardening for Model, AgentRun, and Ensemble features (21fc58d)
- show API key input for all credential-based providers (e0bcf58), closes #37
- skip global namespace filter on model API endpoints (454c872)
- skip Helm CreateNamespace when sympozium-system already exists (e40b157)
- skip mcp-bridge skill in projected volume to prevent FailedMount (7ad48f6)
- sort runs list by creation date descending (fixes #151) (bed055c)
- split architecture diagram into readable sections and fix middot entity (bc2be59)
- stabilize workflow canvas layout across data refreshes (b83378a)
- stimulus save, canvas sync, agentrun cleanup, and default MCP servers (ad6752f)
- stop Helm template from overriding node-probe host auto-detection (4f0e5f4)
- strip directory prefix from CRD names when writing to temp dir (1906327)
- surface reasoning-model responses when terminal turn is empty (045f7d7)
- tighten canary system prompt to prevent command retries (c226a02)
- topology page TypeScript build errors (8a9b712)
- trigger docs rebuild after Helm chart publish (9b0e03c)
- unify canary connection test and fix agent-run NetworkPolicy (3909012)
- update all stale Persona Pack UI strings to Ensemble (12fdaec)
- update API key retrieval to use header instead of query parameter (e320e8d)
- update API key retrieval to use header instead of query parameter (ba6281a)
- update cypress tests for stimulus relationship in research-team pack (e21dff9)
- update expected default Ensemble count from 5 to 6 (e2aedf3)
- update RBAC rules to include metrics.k8s.io permissions for skill sidecars (cad5b4a)
- update RBAC rules to include metrics.k8s.io permissions for skill sidecars (3f90317)
- use correct installedPersonas field in ensemble detail page (b62eea4)
- use namespace dropdown in model deploy dialog (e2eef80)
- use sentinel value for run timeout Select to avoid Radix crash (1553b75)
- validate instance name as RFC 1123 subdomain in wizard (714a405)
- web-proxy: close subscribe-before-find race and skip terminal runs (71786b7)
- web-proxy: close subscribe-before-find race and skip terminal runs (77c1267)
- web-proxy: dedupe retried chat requests (bec7af2)
- web-proxy: dedupe retried chat requests (d4233f3)
- web: prevent gateway toggle from disconnecting UI (9ededbd)
- web: prevent gateway toggle from disconnecting UI (3ef4772)
- wire modelRef into ensemble creation and fix persona default model (85a504a)
- wiring a local model provider updates agent config panel and node (05b8f28)
- release 0.8.13 (8a6fa7b)
0.10.25 (2026-05-08)
- use correct installedPersonas field in ensemble detail page (b62eea4)
0.10.24 (2026-05-08)
0.10.23 (2026-05-08)
0.10.22 (2026-05-07)
- prevent port-forward reconnect loop when port is already bound (c39199e)
- propagate Memory.SystemPrompt to AgentRuns (#169) (bc20d3d)
0.10.21 (2026-05-07)
- update cypress tests for stimulus relationship in research-team pack (e21dff9)
0.10.20 (2026-05-07)
- topology dagre layout, synthetic membrane page, and UX improvements (4cef6a2)
0.10.19 (2026-05-06)
- add envtest-based system tests for API server + controllers (2344132)
- channel pod CSI compatibility and dedicated service account (1aa9a99)
- envtest-based system tests + Cypress fixes (e173d95)
- stimulus node support in builder, unified canvas primitives, and UX fixes (#162) (a57c8f1)
- add build tag to system tests so go test ./... skips them (50052f0)
- propagate skill changes to existing Agents on ensemble update (2a498c7)
- resolve flaky Cypress tests for run-delete and run-notifications (74bab5a)
0.10.18 (2026-05-05)
- add Stimulus node type for auto-triggered workflow prompts (59fc3be)
0.10.17 (2026-05-03)
- cypress: parameterize test model via CYPRESS_TEST_MODEL env var (b4f68ea)
- cypress: parameterize test model via CYPRESS_TEST_MODEL env var (af6310b)
- restrict WhatsApp channel to self-chat messages only (3425eb8)
- restrict WhatsApp channel to self-chat messages only (6af4dca), closes #138
- web-proxy: close subscribe-before-find race and skip terminal runs (71786b7)
- web-proxy: close subscribe-before-find race and skip terminal runs (77c1267)
- web-proxy: dedupe retried chat requests (bec7af2)
- web-proxy: dedupe retried chat requests (d4233f3)
- web: prevent gateway toggle from disconnecting UI (9ededbd)
- web: prevent gateway toggle from disconnecting UI (3ef4772)
0.10.16 (2026-05-01)
- auto-inject delegation/supervision context from ensemble relationships (e38e93e)
- canary first run never triggers after duplicate-prevention change (0bbf126)
- canary first run never triggers after duplicate-prevention change (2e1caeb)
0.10.15 (2026-05-01)
- expand default MCP server catalog (ab27fac)
- expand default MCP server catalog with grafana, kubernetes, argocd, and postgres (b620dbf)
- correct MCP server configs after local testing (6d56e57)
- default MCP server catalog to disabled (opt-in) (d164dc0)
- prevent duplicate canary runs on first schedule trigger (1f5e286)
- prevent duplicate canary runs on first schedule trigger (1428d68)
0.10.14 (2026-05-01)
- add structured health check matrix to canary UI (73d54c1)
- replace LLM-based canary with deterministic health checks (2e25fd1)
- canary NetworkPolicy, RBAC, provider resolution, and node-probe routing (5be1db0)
- hide system canary from ensembles list (f7c051c)
- tighten canary system prompt to prevent command retries (c226a02)
0.10.13 (2026-04-30)
- include SympoziumConfig in CLI uninstall resource cleanup (4d296e4)
- prevent canary agent from looping on empty memory (23e9088)
0.10.12 (2026-04-30)
- add System Canary — built-in synthetic health testing ensemble (fef2742)
- render markdown in feed task messages (7275510)
- unify canary connection test and fix agent-run NetworkPolicy (3909012)
0.10.11 (2026-04-29)
- enforce ExposeTags and MaxTokensPerRun membrane fields (b6aa66c)
- add missing nodes RBAC for apiserver — restores topology and cluster status (58ad746)
0.10.10 (2026-04-29)
- run make generate for new policy and model types (2449644)
0.10.9 (2026-04-29)
- security hardening for Model, AgentRun, and Ensemble features (21fc58d)
0.10.8 (2026-04-28)
- add ensemble delete button + auto-derive permeability from relationships (93a8ec1)
- add synthetic membrane layer for shared workflow memory (5a30192)
- synthetic membrane layer for shared workflow memory (a582317)
- update expected default Ensemble count from 5 to 6 (e2aedf3)
0.10.7 (2026-04-28)
- add missing DryRun field and supporting changes omitted from dc2c7a6 (7f0a4aa)
0.10.6 (2026-04-27)
- add topology page to demo walkthrough recording (ae6d8fc)
- implement blocking delegation between ensemble personas (dc2c7a6)
0.10.5 (2026-04-27)
- topology page TypeScript build errors (8a9b712)
0.10.4 (2026-04-27)
- multi-provider inference (vLLM, TGI) and cluster topology page (c434df4)
- gofmt formatting for inference backend files (8d837bd)
- remove redundant lock button from topology zoom controls (2e07dc9)
0.10.3 (2026-04-26)
- add automated demo walkthrough recording for README GIF (0945630)
- crop gray borders from demo GIF recording (c300672)
0.10.2 (2026-04-26)
- add YAML export button to ensemble detail page (f970d44)
- remove duplicate YamlButton import in ensemble-detail (a82a493)
0.10.1 (2026-04-26)
- infer local model provider from agent model fields (6393251)
0.10.0 (2026-04-26)
- This is a full ontology rename that affects CRDs, API routes, Go types, controllers, frontend, Helm charts, docs, and tests.
- add Concepts modal explaining Sympozium ontology (9d4bef3)
- add Local Model as provider option in ensemble builder (83f032a)
- Add Provider button on builder and detail workflow canvases (a962f69)
- add workflows to all default ensembles (6ad01b9)
- provider nodes on canvas + per-persona provider overrides (4bf004a)
- provider nodes on dashboard canvas, fix provider-to-agent wiring (7350791)
- rename Instance→Agent, Persona→AgentConfig across entire codebase (df230ee)
- generate human-readable random agent names instead of persona-1 (6c53dd3)
- model detail page namespace resolution (894f808)
- prevent canvas crash when model data hasn't loaded yet (ddb5410)
- rename Add Persona→Add Agent, hide GPT models for local model, sort skills (827f695)
- rename personas→agentConfigs in default ensemble YAML files (95c4453)
- replace all remaining Instance→Agent in user-facing UI strings (b3ceb3d)
- resolve Docker build TS errors for provider nodes (91147fb)
- resolve Docker build TS errors from Instance→Agent rename (926b5d7)
- wire modelRef into ensemble creation and fix persona default model (85a504a)
- wiring a local model provider updates agent config panel and node (05b8f28)
0.9.5 (2026-04-25)
- show local model node on ensemble workflow canvas (13b08e5)
- show model node on global ensemble canvas (3f00fef)
- resolve TypeScript errors in ensemble canvas model node types (b0fa56f)
- skip global namespace filter on model API endpoints (454c872)
- use namespace dropdown in model deploy dialog (e2eef80)
0.9.4 (2026-04-25)
- auto node placement via llmfit, namespace-aware models, and ModelPolicy groundwork (2c13faf)
0.9.3 (2026-04-25)
- declarative local model inference via Model CRD (1a6da42)
- declarative local model inference via Model CRD (4095ea8)
- prevent UI token mismatch after helm upgrade (32bd78c)
- prevent UI token mismatch after helm upgrade (dac1e87), closes #113
0.9.2 (2026-04-22)
- per-persona Discord channel routing and truncated run results (9407420)
- per-persona Discord channel routing and truncated run results (822f9ab), closes #106 #107
0.9.1 (2026-04-19)
- add node probe discovery to ensemble builder provider setup (0576c7e)
- add workflow relationships to developer-team ensemble (49d8e85)
- auto-detect node probe providers and allow changing ensemble provider (e79310f)
- heredoc syntax error in ux-test preflight script (abd0f5d)
- stabilize workflow canvas layout across data refreshes (b83378a)
0.9.0 (2026-04-19)
- Ensemble CRD replaces PersonaPack (see commit 432355b).
- The PersonaPack CRD has been renamed to Ensemble. All API endpoints, labels, controllers, and UI references updated.
- add shared workflow memory for cross-persona knowledge sharing (3a163dc)
- implement sequential workflow trigger in controller (c5b9e45)
- real-time workflow canvas updates via WebSocket (e3fe61f)
- rename PersonaPack to Ensemble + canvas-first builder (432355b)
- resolve all Cypress TypeScript errors (008266e)
- update all stale Persona Pack UI strings to Ensemble (12fdaec)
0.8.28 (2026-04-16)
- promote Team Canvas to prominent dashboard position (958600a)
0.8.27 (2026-04-16)
- add persona relationships schema and workflow canvas (ace2bcf)
- add research-team PersonaPack with relationships and Cypress tests (9357e0a)
- AwaitingDelegate phase, Cypress workflow tests, hooks fix (8fee27b)
- delegate_to_persona tool and dashboard team canvas widget (5b25b59)
- global persona canvas and live run status highlighting (5e69827)
- interactive canvas editing and persona-targeted spawning (c3af2ea)
- canvas empty state — use controlled ReactFlow props for read-only canvases (58697be)
0.8.26 (2026-04-16)
- add Settings page with Agent Sandbox CRD install/uninstall, MCP server auth & defaults (833bbdc)
- validate instance name as RFC 1123 subdomain in wizard (714a405)
0.8.25 (2026-04-12)
- add provider icons to wizard dropdown and llama-server docs (25fca6d)
0.8.24 (2026-04-12)
0.8.23 (2026-04-11)
- install: disable chart namespace template to avoid collision (e0aae1c)
- install: recover from failed releases and simplify ns creation (4c84612)
0.8.22 (2026-04-10)
- fmt code (fee9454)
0.8.21 (2026-04-10)
- gate: add response gate hooks with manual approval flow (0e5ad97)
0.8.20 (2026-04-07)
- web: add run notifications, unseen watermark, and polling (42bb00b)
0.8.19 (2026-04-07)
- providers: add Unsloth as a supported local LLM provider (9c246c1)
- web: improve sidebar hierarchy, breadcrumbs, and detail page UX (0a622d1)
- personas: harden platform-team prompts + propagate systemPrompt edits (079986d)
0.8.18 (2026-04-05)
- cascade-delete scheduled AgentRuns when their Schedule is removed (eb1ad6a)
- scheduler picks next free run-number suffix to avoid ghost runs (205829a)
0.8.17 (2026-04-05)
- makefile: add ux-tests-serve target for running Cypress against sympozium serve (e9c3202)
- prevent reconcile race from overriding Succeeded AgentRuns as Failed (d681a33)
0.8.16 (2026-04-04)
- recover qwen-native tool_calls from reasoning_content (f807de1)
0.8.15 (2026-04-04)
- surface reasoning-model responses when terminal turn is empty (045f7d7)
0.8.14 (2026-04-04)
- skip Helm CreateNamespace when sympozium-system already exists (e40b157)
0.8.13 (2026-04-04)
- release 0.8.13 (8a6fa7b)
0.8.12 (2026-04-04)
- publish TopicAgentRunFailed from controller so web proxy unblocks on failure (b98841f)
0.8.11 (2026-04-04)
- add Cypress UX tests for instance creation and persona packs (2ffb502)
- add Cypress UX tests for instance creation and persona packs (55e5590)
- add tool-call circuit breaker and configurable run timeout (b5a3b94)
- expose run timeout in web UI and CLI TUI (3bca472)
- resolve integration test hang and flaky secret-not-found error (2fb431f)
- use sentinel value for run timeout Select to avoid Radix crash (1553b75)
0.8.10 (2026-04-04)
- remove conflicting namespace pre-creation in helm install (9930ba4)
0.8.9 (2026-04-02)
- auto-store task/response in memory server after each agent run (8f475fb)
- guard stale Job-not-found reconcile during postRun transition (8d2ff41)
0.8.8 (2026-04-01)
- reworked memory implementation (81fdd0c)
- add missing observability-mcp-team persona pack to Helm chart (fc0105c)
0.8.7 (2026-03-31)
- stop Helm template from overriding node-probe host auto-detection (4f0e5f4)
0.8.6 (2026-03-31)
- create namespace before Helm config init to fix fresh installs (e49fa50)
0.8.5 (2026-03-31)
- remove explicit host from node-probe targets to restore auto-detection (f91229a)
0.8.4 (2026-03-31)
- strip directory prefix from CRD names when writing to temp dir (1906327)
0.8.3 (2026-03-31)
- add metrics.k8s.io RBAC to config/rbac/role.yaml for sympozium install (0c1a51c)
0.8.2 (2026-03-31)
- resolve remaining TypeScript index signature errors in yaml-panel (8cea011)
0.8.1 (2026-03-31)
- fail AgentRun when skill RBAC creation fails instead of silently continuing (99ddb4d)
- resolve TypeScript index signature errors in yaml-panel (4a576a1)
0.8.0 (2026-03-30)
- lifecycle hooks — preRun and postRun containers for agent runs (a29a8c9)
- lifecycle hooks — preRun and postRun containers for agent runs (#67) (46250af)
- update API key retrieval to use header instead of query parameter (e320e8d)
- update API key retrieval to use header instead of query parameter (ba6281a)
- update RBAC rules to include metrics.k8s.io permissions for skill sidecars (cad5b4a)
- update RBAC rules to include metrics.k8s.io permissions for skill sidecars (3f90317)
0.7.0 (2026-03-29)
- add apiKey support for provider models fetching (369fab3)
- add apiKey support for provider models fetching (fb4bb53)
- AgentRun status concurrency update (87dbb22)
- prevent apiserver image build timeout on multi-arch builds (830329d), closes #60
0.6.1 (2026-03-28)
- chain release workflow from release-please via workflow_call (22c9e1e)