mirror of
https://github.com/catlog22/Claude-Code-Workflow.git
synced 2026-03-07 16:41:06 +08:00
feat: add orchestrator execution engine, observability panel, and LSP document caching
Wire FlowExecutor into orchestrator routes for actual flow execution with
pause/resume/stop lifecycle management. Add CLI session audit system with
audit-routes backend and Observability tab in IssueHub frontend. Introduce
cli-session-mux for cross-workspace session routing and QueueSendToOrchestrator
UI component. Normalize frontend API response handling for { data: ... }
wrapper format and propagate projectPath through flow hooks.
In codex-lens, add per-server opened-document cache in StandaloneLspManager
to avoid redundant didOpen notifications (using didChange for updates), and
skip warmup delay for already-warmed LSP server instances in ChainSearchEngine.
This commit is contained in:
24
ccw/src/core/services/cli-session-mux.ts
Normal file
24
ccw/src/core/services/cli-session-mux.ts
Normal file
@@ -0,0 +1,24 @@
|
||||
/**
|
||||
* CliSessionMux
|
||||
*
|
||||
* A tiny indirection layer used by FlowExecutor (and potentially others) to
|
||||
* route commands to existing PTY sessions in a testable way.
|
||||
*
|
||||
* Why this exists:
|
||||
* - ESM module namespace exports are immutable, which makes it hard to mock
|
||||
* named exports in node:test without special loaders.
|
||||
* - Exporting a mutable object lets tests override behavior by swapping
|
||||
* functions on the object.
|
||||
*/
|
||||
|
||||
import type { CliSessionManager } from './cli-session-manager.js';
|
||||
import { findCliSessionManager, getCliSessionManager } from './cli-session-manager.js';
|
||||
|
||||
export const cliSessionMux: {
|
||||
findCliSessionManager: (sessionKey: string) => CliSessionManager | null;
|
||||
getCliSessionManager: (projectRoot?: string) => CliSessionManager;
|
||||
} = {
|
||||
findCliSessionManager,
|
||||
getCliSessionManager,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user