Skip to content

Releases: charcoal-dev/cli

Console 0.2.16

09 Apr 17:38

Choose a tag to compare

Release Notes: Modular Process Orchestration

This release shifts to a modular, event-driven architecture for more robust child process management and system stability.

🚀 Enhanced Process Orchestration

  • New Hooks: Introduced prepareChildProcess() for resource isolation and childProcessExitedHook() for reactive exit handling.
  • Flexible Scaling: SupervisorConfig now defaults to unlimited children (maxChildren = 0).

🛡️ Unified State & Events

  • Single Source of Truth: Replaced RuntimeStatus with a consolidated ExecutionState (Initializing to Finished).
  • Observability: The changeState() helper ensures all transitions automatically dispatch RuntimeStatusChange events with full context.

🛠️ Structural Refinement

  • Enforced Patterns: exec() is now protected, requiring the state-aware burn() pattern for execution.
  • Plugin Architecture: Features like CrashRecoverableTrait are now decoupled and strictly opt-in.
  • Loop Tracking: AbstractCliProcess now maintains currentTickNum for easy interval-based logic.

📟 IPC & Protocol

  • Hardened IPC: Improved binary framing and configurable socket blocking modes.
  • Message Reliability: MessageFrame protocol now supports robust encoding and clear sender identification.