Weekly Progress

Elements Channels

A new Elements build comes out every week. Pick the channel that matches how close to the edge you want to work.

Core

  • E27715: C#/Echoes: Initializer-less local in a goto-target block is re-defaulted, clobbering a value assigned before the goto
  • E27694: RTL2 Char extensions don't work on .NET
  • E27716: Toffee/Oxygene: block destroy helper omits captured block/object slot when nested callback block captures method context plus byref callback holder
  • Debugger: DebugHost parsing error on function bp with ":" in name
  • Debugger: Support delegate variables (Cooper)
  • Merged EBuild
  • Merged InternetPack
  • Merged RTL2

Fire & Water

  • Water: add posibillity to delete recent and favorite projects from main menu and welcome window
  • Add assembly reference diagnostics option for Echoes (fixes)
  • New menu command to only copy all build error messages
  • CodeBot: Add prompt send-lock controls
  • Breakpoints Manager: Could not delete first breakpoint in list
  • Breakpoints Manager: Auto-layout fix for Fire
  • CodeBot Avatar: A standalone macOS companion character for Fire, Campfire, CodeBot CLI and GitBrowser, with animated UI, status bubbles, approval prompts and more
  • CodeBot: Add Beads backlog tool support
  • CodeBot: Add Kling account and image/video generation support
  • CodeBot: Support for prompt queuing
  • CodeBot: New and improved prompt action controls (send, queue, steer, cancel) in Fire
  • CodeBot: Model Stratgies: Use "gpt-5.4-mini" as simple-task model in default OpenAI strategy
  • CodeBot: solution-file:// links for unknown files should not bubble outside of the app.
  • CodeBot: Support for prompt steering
  • CodeBot: Model Stratgies: Update Claude latest strategy to use Sonnet 4.6 by default and route review/deep reasoning to Opus 4.8
  • Editor: Add build message action menus and richer fix-it labels (tweaks)
  • Fire: Hopefully final/good fix for Navigation Pane sometimes going wild after a debug session
  • GitBrowser: add CodeBot Avatar support (only if running)
  • GitBrowser: add Git operation timeout support
  • GitBrowser: add repository tree worktree nodes
  • GitBrowser: add worktree selection and cleanup actions
  • GitBrowser: build fix
  • GitBrowser: detect worktree inventory changes and refresh worktree icons for popup updates
  • GitBrowser: Expand worktree context actions and cross-worktree analysis
  • GitBrowser: Fix macOS bundle identifier capitalization
  • GitBrowser: GitNavigationPanelViewController should be the ITreeControllerDelegate
  • GitBrowser: Guard against null repository during branch popup loading and author highlighting
  • GitBrowser: Improve worktree tree selection and labels
  • GitBrowser: make remote branch popup selection more robust
  • GitBrowser: Preserve the actual folder when dispatching Git operations asynchronously
  • GitBrowser: Refresh status by directly updating the repository instead of triggering the status changed handler
  • GitBrowser: repository folder dragging from tree
  • GitBrowser: route worktree comparison action through a reusable comparison handler
  • GitBrowser: Use the actual worktree path for context menu actions, script discovery, solution scanning, and shell execution to correctly target active worktree folders instead of the repository root.
  • GitBrowser: Windows: drop unneccessary settings
  • GitBrowser: Windows: Enable and refresh repository menu actions based on repository
  • GitBrowser: Windows: Improve menu labels for repository groups and IDE-specific solution opening
  • GitBrowser: Windows: Prefix commit tags with pin markers
  • GitBrowser: Windows: use navigation panel controller
  • Internal: Rename question event enum cases in status mapping
  • NRE proofing
  • Refresh CodeBot models when account settings change
  • Return social post create results with completed status and published ID side effect
  • Reverted "Water: workaround for Account loading on .NET Core"
  • Sort provider model choices case-insensitively for consistent UI ordering
  • Type in Accountmanager created wrong account type for Perplexity
  • Unternal: default uses clause fix?
  • Update video generation model mapping to grok-imagine-video-1.5
  • Water: image tweaks for codebot tab and in-editor actions
  • Water: workaround for Account loading on .NET Core

EBuild

  • Add remote/local LLD path support for Toffee builds

Elements RTL

  • Account decoding issue
  • Add Cancel support to HTTP requests
  • Add Echoes.Core target and rename classic Echoes.Full configuration
  • Add HTTP upload/download progress callbacks (Cocoa)
  • Add proxy support (none, system, custom)
  • Build fixes for Isalnd & ToffeV2
  • Consolidate platform-specific RTL projects into a unified cross-platform build and add a separate legacy solution preserving the previous split project layout.
  • DateTime.ToUnixDate
  • Don’t recycle json value nices when making a unique copy, for somw reason we started getting overrelease issues
  • Echoes: HTTP: unwrap to show original, and do not crash on an unexpected exception type
  • Echoes: Use UTF-8 encoding for redirected process stdout and stderr
  • Expse Pid on Process (Echoes and Cocoa)
  • Expse Pid on Process (Island)
  • Forgot= Island WebAssembly target configuration 🙂
  • Harden HTTP response streaming and Cocoa callback error handling
  • Improved Convert.MillisecondsToTimeString to handle says too
  • Json: Allow nil filename for .TryFromFile
  • Locking fix
  • Make process output handling nullable-safe and guard event signaling
  • Parse JSON integers directly to Int64 with overflow fallback to floats, and replace locale-based Toffee Int64 parsing with strict digit validation to avoid misclassifying numeric tokens.
  • Potential Cocoa thread safety issue for Convert with Current/Invariant formatter
  • Potential thread safety issue for Locale.Current/Invariant
  • Process: Guard process output parsing against nil UTF-8 string conversion results
  • Process: more thouroigh quoiting and unquoting of command line parameters for all platforms
  • Process: more thourough quoting and unquoting of command line parameters for all platforms
  • Process: Prevent async process completion from hanging by signaling output handlers reliably and closing stalled output pipes after a timeout before invoking the finished callback.
  • Read stdout and stderr asynchronously during process execution to prevent blocking and ensure both streams are fully captured before converting and closing the handles.
  • Request cancelation: locking not required (according to docs); solves compile error locking on Darwin
  • Reuse JSON string escaping for property names by adding a shared render helper and applying it during serialization, ensuring names are quoted and escaped consistently with string values.
  • Serialization: Allow registering decoder types explicitly and fall back to the registry when the lookup misses
  • Simplify configuration-specific build settings for Debug and Release
  • String.Split(array of char)
  • String.Split(array of char) [disdabled because it fails to link]
  • Tests for CollapseSpace

Internet Pack

  • Remove AllowPartiallyTrustedCallers assembly attribute from non-Compact Framework builds

RemObjects Infrastructure

  • Add fallback single-model strategy selection when configured strategy is missing
  • Add Kling AI client for image and video generation with task polling, model support, and JWT bearer auth via access/secret keys, plus configuration support for new credentials.
  • Add runtime tests ensuring tool-result success checks allow non-tool method mentions and suggested action examples without blocking completed assistant responses.
  • Add steering-message support (wip)
  • Add tests for child side-effect success and stale lease recovery
  • Adopt Codable-based agent event and approval JSON serialization
  • Bad model type filters for Gemini client
  • Clamp model output tokens and stop exposing server ISE details
  • Clarify run recovery behavior after interruptions and model requests
  • ComfyUI: Adjust fallback queue progress to report queued state
  • Delay remote tool dispatch until run is waiting
  • Expose usage tracking helper as public
  • Honor background routing for child runs and skip conversation history on isolated background threads
  • Log agent prompt size breakdowns
  • Normalize provider-prefixed media model names for resolved clients by stripping matching provider prefixes before creating model references and assigning the client model.
  • NRE and cast fix
  • Prefer structured progress callbacks over byte progress when available (also mitigatibg possible AV)
  • Record notice events for unverified tool-backed success claims instead of failing runs
  • Refactor runtime initialization to lazily ensure and reuse the agent runtime during settings updates, reset runtime/worker when starting a new chat, and guard model strategy access when no runtime is active.
  • Remove unused session-memory overview summaries
  • Remove useless cjustom JSON conversion helpers
  • Restored missing Memory classes
  • Revert bad rename for question event types to asked/response across AI session handling
  • Subagent titles have much better descriptions of what child tasks do and why
  • Support media model aliases when resolving AI clients by falling back from suffixed model names to their base model before lookup.
  • Track tool side-effect metadata in function results and events, and use completed side effects to verify tool-backed success claims with more precise final-response detection.
  • Track usage request lifecycle events
  • Use typed side-effect status enums with wire-format conversion and validation, replacing raw string handling in serialization and runtime checks.