Skip to content

v1.10.0

Latest

Choose a tag to compare

@inureyes inureyes released this 07 Jul 07:31

Backend.AI GO 1.10.0: AIGO Remote for iOS, a revived App Plugins runtime with a companion buddy, persistent multi-turn cowork sessions, a cross-squad fleet dashboard, and air-gapped enterprise mode.

Backend.AI GO 1.10.0

78 commits since v1.9.1. (45261 lines added, 3535 lines deleted)

New Features

  • GO Mobile (AIGO Remote, iOS, epic): The iOS build is restored end to end and ships as "AIGO Remote", a companion app that enrolls and manages remote Backend.AI GO nodes over the mesh with aigo:// deep-link enrollment . A first-run remote-provider onboarding and chat flow removes the previous "No model selected" dead end , provider API keys are stored in the iOS Keychain with explicit, fail-closed selection , and mobile-first runtime feature gates keep desktop-only capabilities off the mobile build .
  • App Plugins runtime revival (epic): Bundled plugins load and render end to end. Bare react imports resolve through the host module registry , the Tauri asset protocol and CSP are extended for plugin bundles , plugin CSS is emitted at build and injected at runtime , the permission registry is synced across the Rust host and TypeScript SDK , builtin plugins are seeded in headless mode and embedded in the server binary , and the App Plugins page and sidebar/toolbar slots are mounted in production . Plugin i18n runs on the host instance .
  • Companion buddy widget: A companion buddy adds a mood-driven avatar expression system inferred from model-tagged reply sentiment , with greeting, model-availability, unread, and proactive UX and a verified memory loop .
  • Cowork multi-turn sessions (epic): A cowork session is modeled as a ChatSession with per-turn seeded agent runs, rendered through the shared ChatInterface transcript . An all-steps resolver splices the full ReAct interior (thinking, tool calls, tool results) into the transcript instead of only the final answer .
  • Squad Overview fleet dashboard (epic): The Overview tab subscribes every active squad and adds a cross-squad agent table, an attention strip, and a task-progress rollup that buckets every squad's tasks into the shared Kanban columns .
  • Go Enterprise air-gapped deployment: A single air-gapped master switch puts the whole app into air-gapped mode , an offline signed license and entitlement gate verifies entitlements without network access , and provisioning adds aigo:// device enrollment and installer wiring , with administrator deployment and policy guides .
  • Local model display alias : A user-editable display alias shows wherever the model name appears and falls back to the derived name when unset. The real inference identifier and the /v1/models entry are unchanged, and the alias survives a full metadata rescan.
  • Agent multi-message context seeding : Agent runs accept multi-message structured context seeding, so a caller can seed a run with a full conversation instead of a single prompt string.

Improvements

None

Bug Fixes

  • Packaged desktop plugin widgets render with their styles again: plugin CSS is injected through a <link> tag instead of fetch(asset://), which failed silently on WebKitGTK . Built-in plugins are included in the desktop resources so they ship with the packaged app , plugin runtime paths are hardened , and post-merge hardening closes correctness gaps in the epic runtime .
  • Companion fixes: the conversation persists on any collapse with de-duplicated memory namespaces , bubble sizing/header/input/memory-extraction/avatar-position polish , model-picker dropdown and cloud model availability , a settings write loop, header clipping, and model fallback , and widget bring-up .
  • The cowork runtime enforces permitted folders in its path sandbox , autosave is hardened against lost turns , and AgentStartOptions.system_prompt is plumbed into the agent loop instead of being dropped .
  • Squad discussions no longer stall after the first brainstorming speaker , stop committing empty brainstorm turns , stream round-0 turns for tool-enabled agents , stay auto-scrolled during streaming , auto-resume when an exhausted turn budget is raised , and harden the Autonomous strategy gate and discussion room .
  • The enrollment trust flow for enterprise provisioning is hardened , the node inference proxy caps upstream response body buffering , the Models tab directory field no longer flickers while typing , iOS OOBE and app-link fixes land , and sidebar devOnly tests are repaired .

CI/CD Improvements

  • A real-bundle CI gate exercises the plugin runtime against an actual plugin bundle .

Technical Details

  • This stable release consolidates the 1.10.0-beta.1, 1.10.0-beta.2, 1.10.0-rc.1, and 1.10.0-rc.2 pre-releases.
  • Primary epics: GO Mobile , App Plugins runtime revival , Cowork multi-turn sessions , Squad Overview fleet dashboard , and Go Enterprise air-gapped deployment.
  • A plugin authoring guide and the dependency-resolution contract are added .

Dependencies

  • continuum-router updated to v1.12.0.
  • mlxcel at v0.3.2.

Breaking Changes

None

Known Issues

None

What's Changed

  • feat(enterprise): air-gapped master switch by @inureyes
  • feat(enterprise): offline signed license / entitlement gate by @inureyes
  • feat(enterprise): provisioning and enrollment UX (aigo:// enroll, installer wiring) by @inureyes
  • docs(enterprise): add administrator deployment and policy guides by @inureyes
  • fix: harden epic 3425 enrollment trust flow by @inureyes
  • fix(squad): auto-resume budget-exhausted discussion on budget raise by @inureyes
  • feat: user-editable display alias for local models by @inureyes
  • fix(squad): follow-up hardening for discussion room by @inureyes
  • fix(squad): harden Autonomous discussion strategy gate by @inureyes
  • docs: add technical reports for and by @inureyes
  • fix(mobile): restore iOS Rust and Tauri buildability by @inureyes
  • chore(mobile): repair iOS config, project metadata, and CI by @inureyes
  • fix(mobile): enforce mobile-first runtime feature gates by @inureyes
  • feat(mobile): wire iOS native integrations and secure credentials by @inureyes
  • feat(mobile): make remote provider onboarding and chat usable by @inureyes
  • feat(mobile): add a real mesh connection experience by @inureyes
  • docs: add technical reports for epic by @inureyes
  • fix(mobile): gate whoami off the iOS build to fix the app link by @inureyes
  • fix(mobile): name the iOS app "AIGO Remote" to fix the archive rename by @inureyes
  • fix(mobile): prevent iOS OOBE auto-zoom on input focus by @inureyes
  • fix(mobile): keep the aigo:// scheme on iOS builds and fix the ios:dev:sim script by @inureyes
  • chore(rust): apply cargo fmt to commands/security.rs by @rapsealk
  • fix(settings): stop Model directory field flicker on the Models tab by @rapsealk
  • fix(node): cap inference proxy upstream body buffering by @inureyes
  • fix(squad): Brainstorming discussion stalls after the first speaker by @inureyes
  • feat(squad): cross-squad subscription fan-out for the Overview dashboard by @inureyes
  • feat(squad): add cross-squad agent table and attention strip to Overview by @inureyes
  • feat(squad): add cross-squad task-progress rollup to Overview by @inureyes
  • fix: harden squad overview fleet dashboard by @inureyes
  • docs: add technical reports for epic by @inureyes
  • fix(squad): stream round-0 discussion turns for tool-enabled agents by @inureyes
  • fix(squad): stabilize discussion room auto-scroll during streaming by @inureyes
  • fix(agent): plumb AgentStartOptions.system_prompt into the agent loop by @inureyes
  • feat(agent): multi-message structured context seeding for agent runs by @inureyes
  • fix(squad): stop brainstorm discussions committing empty agent turns by @inureyes
  • fix(cowork): enforce permitted folders in the runtime path sandbox by @inureyes
  • feat(cowork): model a session as a ChatSession with per-turn seeded agent runs by @inureyes
  • feat(cowork): all-steps resolver to splice the full ReAct interior into the transcript by @inureyes
  • feat(cowork): ChatInterface-based transcript and persistent multi-turn UI by @inureyes
  • docs: add technical reports for epic by @inureyes
  • fix: harden epic 3586 cowork autosave by @inureyes
  • fix: resolve plugin bare react specifiers via host module registry by @inureyes
  • fix: enable Tauri asset protocol and extend CSP for plugin bundles by @inureyes
  • fix: sync plugin permission registry across Rust and TS SDK by @inureyes
  • feat: expose App Plugins page in production, disambiguate naming by @inureyes
  • feat: seed builtin plugins in headless mode by @inureyes
  • fix: emit plugin CSS at build and inject it at runtime by @inureyes
  • feat: mount the sidebar and toolbar plugin slots by @inureyes
  • feat: verify plugin i18n runs on the host instance by @inureyes
  • fix: companion widget bring-up (settings deps, cancel UX) by @inureyes
  • test: add real-bundle CI gate for the plugin runtime by @inureyes
  • docs: add plugin authoring guide and dependency-resolution contract by @inureyes
  • feat: companion avatar expression system driven by chat state by @inureyes
  • feat: verify companion memory loop and label plugin namespaces by @inureyes
  • feat: companion buddy UX (greeting, model-availability, unread, proactive) by @inureyes
  • fix: harden epic plugin runtime post-merge by @inureyes
  • fix: companion runtime issues (settings loop, header clip, model fallback) by @inureyes
  • fix: companion model picker dropdown + cloud model availability by @inureyes
  • fix: companion polish (bubble sizing, header, input, memory extraction, avatar position) by @inureyes
  • fix: companion persists conversation on collapse + de-dup memory namespaces by @inureyes
  • feat: embed built-in plugins into the headless server binary by @inureyes
  • feat: mood-driven avatar expressions from model-tagged reply sentiment by @inureyes
  • fix: inject plugin CSS via so packaged desktop styles apply by @inureyes
  • chore: harden plugin runtime paths by @inureyes
  • fix: include built-in plugins in desktop resources by @inureyes
  • fix: repair sidebar devOnly tests + stale build-deb.sh feature comment by @inureyes

New Contributors