Provides V2 background job-board state for task output and injected completion messages so the
orchestrator can track active jobs and reuse only completed, reconciled child
sessions by short aliases (exp-1, ora-2).
createTaskSessionManagerHook(ctx, options) returns handlers for:
tool.execute.beforetool.execute.afterexperimental.chat.messages.transformeventBackgroundJobBoard from src/utils/background-job-board.ts as the
single source of truth for active jobs, terminal unreconciled jobs, reusable
completed sessions, aliases, read context, and LRU caps.description/prompt via
deriveTaskSessionLabel and stored on job-board records.callID in a capped ordered map
(MAX_PENDING_TASK_CALLS) to correlate launch output safely.tool.execute.before receives task calls.task.task_id aliases resolve only to completed/reconciled jobs for the same
specialist; misses remove task_id to force fresh task creation.tool.execute.after registers launches and status transitions from native V2
output; bare task IDs without state do not create reusable jobs.experimental.chat.messages.transform injects one ### Background Job Board
section with Active / Unreconciled and Reusable Sessions subsections.session.deleted drops a child job or clears all parent jobs and pending call
records.src/index.ts for before/after tool hooks, message transforms, and
lifecycle events.BackgroundJobBoard, task-output parsing utilities, plugin
configuration (backgroundJobs caps), and runtime session filtering from
src/index.ts (shouldManageSession).