mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-19 11:14:47 +00:00
Summary: - Default active-run queueing to steer while preserving explicit followup/collect modes. - Keep `/steer` fallback behavior and migrate retired queue steering config. - Await Codex app-server steering acceptance so rejected/aborted steering can fall back safely. - Route active subagent announcements through intentional acceptance-aware steering, with legacy queue helpers deprecated for delivery decisions. Verification: - git diff --check - rg -n "^(<<<<<<<|=======|>>>>>>>|\|\|\|\|\|\|\|)" CHANGELOG.md docs src extensions || true - pnpm test src/agents/subagent-announce-dispatch.test.ts src/agents/subagent-announce-delivery.test.ts src/agents/pi-embedded-runner/runs.test.ts src/agents/subagent-announce.format.e2e.test.ts src/agents/subagent-announce.test.ts - pnpm test src/auto-reply/reply/commands-steer.test.ts src/auto-reply/reply/queue/settings.test.ts src/auto-reply/reply/queue-policy.test.ts src/auto-reply/reply/agent-runner.runreplyagent.e2e.test.ts src/auto-reply/reply/get-reply-run.media-only.test.ts extensions/codex/src/app-server/run-attempt.test.ts -- -t "queued steering|explicit all-mode steering|flushes pending default queued steering|rejects queued steering|resolveActiveRunQueueAction|resolveQueueSettings|handleSteerCommand" Co-authored-by: fuller-stack-dev <263060202+fuller-stack-dev@users.noreply.github.com>
26 lines
592 B
TypeScript
26 lines
592 B
TypeScript
import type { QueueSettings } from "./queue.js";
|
|
|
|
export type ActiveRunQueueAction = "run-now" | "enqueue-followup" | "drop";
|
|
|
|
export function resolveActiveRunQueueAction(params: {
|
|
isActive: boolean;
|
|
isHeartbeat: boolean;
|
|
shouldFollowup: boolean;
|
|
queueMode: QueueSettings["mode"];
|
|
resetTriggered?: boolean;
|
|
}): ActiveRunQueueAction {
|
|
if (!params.isActive) {
|
|
return "run-now";
|
|
}
|
|
if (params.isHeartbeat) {
|
|
return "drop";
|
|
}
|
|
if (params.resetTriggered) {
|
|
return "run-now";
|
|
}
|
|
if (params.shouldFollowup) {
|
|
return "enqueue-followup";
|
|
}
|
|
return "run-now";
|
|
}
|