You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Expand runtime concurrency handling beyond ConcurrencyDrop and ConcurrencyQueue to the remaining strategies specified in ADR 0012.
Motivation
Under deferred dispatch (DispatchDeferred, ADR 0002), long-running LLM/tool work needs richer concurrency control than drop/queue: debouncing rapid human message bursts, batching, lock-free concurrent reads, channel-scoped locking, and preemption of in-flight handlers.
Acceptance
ConcurrencyDebounce, ConcurrencyBurst, ConcurrencyConcurrent implemented in the runtime per ADR 0012.
Status update — partial delivery via a maintainer-directed split of #38:
Merging via #38 (reduced):ConcurrencyDebounce, ConcurrencyConcurrent, configurable LockScope (thread default / channel opt-in), and universal lease-loss cancellation for deferred handlers (chat.ErrPreempted cause, preempted outcome), with hardening test suites for each lifecycle, race-detector-clean across all workspace modules.
Staged (not merging yet):ConcurrencyBurst and the OnLockConflict force/steerability hook (plus the LockForcer State capability). Nine codex review rounds converged everywhere except these two areas, whose remaining P1s (atomic remote-force validation, stallable burst refresh, mixed sync/deferred fencing) are structural consequences of key-only force-release and unbounded deferred admission. They live on draft PR #53 and re-enter after the design pass tracked in #44 (admission bound) and #50 (fenced coordination: cross-instance coalescing + token-bound force).
This issue stays open until the staged surface lands.
Generated with mux • Model: anthropic:claude-fable-5 • Thinking: xhigh
Activity
feat(runtime): expand concurrency strategies per ADR 0012
feat(runtime): expand concurrency strategies per ADR 0012
ThomasK33 commentedon Aug 27, 2026
Status update — partial delivery via a maintainer-directed split of #38:
Merging via #38 (reduced):
ConcurrencyDebounce,ConcurrencyConcurrent, configurableLockScope(thread default / channel opt-in), and universal lease-loss cancellation for deferred handlers (chat.ErrPreemptedcause,preemptedoutcome), with hardening test suites for each lifecycle, race-detector-clean across all workspace modules.Staged (not merging yet):
ConcurrencyBurstand theOnLockConflictforce/steerability hook (plus theLockForcerState capability). Nine codex review rounds converged everywhere except these two areas, whose remaining P1s (atomic remote-force validation, stallable burst refresh, mixed sync/deferred fencing) are structural consequences of key-only force-release and unbounded deferred admission. They live on draft PR #53 and re-enter after the design pass tracked in #44 (admission bound) and #50 (fenced coordination: cross-instance coalescing + token-bound force).This issue stays open until the staged surface lands.
Generated with
mux• Model:anthropic:claude-fable-5• Thinking:xhigh