feat: fast talks auto mode#85104
Conversation
|
ClawSweeper review: did not complete due to Codex infrastructure failure. Reviewed June 17, 2026, 4:09 AM ET / 08:09 UTC. Summary Reproducibility: unclear. The review failed before ClawSweeper could establish a reproduction path. Review metrics: none identified. Stored data model Merge readiness This is a ClawSweeper/Codex infrastructure failure, not a PR readiness or patch-quality verdict. Risk before merge
Maintainer options:
Next step before merge
Review detailsBest possible solution: Retry the Codex review after fixing the execution failure. Do we have a high-confidence way to reproduce the issue? Unclear. The review failed before ClawSweeper could establish a reproduction path. Is this the best way to solve the issue? Unclear. Retry the review first so ClawSweeper can evaluate the actual issue and fix direction. AGENTS.md: unclear because the file could not be read completely. Codex review notes: model internal, reasoning high; reviewed against d1923085e307. Label changesLabel changes:
Evidence reviewedWhat I checked:
Likely related people:
How this review workflow works
|
|
ClawSweeper PR egg 🎁 Pass real behavior proof to wake the egg and unlock a hatchable treat. Where did the egg go?
|
6394800 to
017e94b
Compare
017e94b to
8262c23
Compare
|
@clawsweeper re-review Updated after the latest rebase and proof cleanup:
|
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
8c3cb70 to
d00e72a
Compare
|
This assigned pull request has been automatically marked as stale after being open for 27 days. |
|
/landpr Head: Maintainer fixes pushed on top of the contributor branch:
Local / delegated proof after the final head:
Current GitHub state at handoff: no failing checks on |
|
Land-ready after maintainer fix pass.
Verification:
|
Fixes #85087
Summary
fast: autoalongsidefast: on/off, with the default 60s cutoff and configurablefast_seconds💨Fast: auto-off(...)at the next tool-execution boundary after the cutoff, then💨Fast: auto-onat turn reset/fast, including the configured auto threshold in status text and the native menu buttonVerification
git diff --checkOPENCLAW_VITEST_MAX_WORKERS=1 node scripts/run-vitest.mjs extensions/telegram/src/bot-message-dispatch.test.ts extensions/telegram/src/config-schema.test.ts src/plugin-sdk/channel-streaming.test.ts src/auto-reply/reply/dispatch-from-config.test.ts src/auto-reply/reply/agent-runner-execution.test.ts src/auto-reply/reply/agent-runner.runreplyagent.e2e.test.ts src/agents/fast-mode.test.ts src/agents/pi-embedded-runner/run.fast-mode-auto.test.ts src/auto-reply/reply/commands-session-usage.test.ts ui/src/ui/chat/slash-commands.browser-import.test.tspnpm --config.verify-deps-before-run=false test:bundledpnpm --config.verify-deps-before-run=false protocol:checkpnpm --config.verify-deps-before-run=false ui:i18n:checkpnpm --config.verify-deps-before-run=false check:architecturepnpm --config.verify-deps-before-run=false buildpnpm --config.verify-deps-before-run=false openclaw gateway restartpnpm --config.verify-deps-before-run=false openclaw gateway statusPATH="/tmp/openclaw-swiftlint:$PATH" pnpm --config.verify-deps-before-run=false check:changedpassed through conflict markers, changelog attributions, dependency/package guards, core/core-test/extension/extension-test typecheck, core/extensions/scripts lint; locallint appsfailed because portable SwiftLint cannot load SourceKit without full Xcode on this hostReal behavior proof
Behavior addressed:
fast: autostarts with effective fast mode enabled, disables fast mode for later model calls after the configured threshold, reports the cutoff in channel progress, resets with💨Fast: auto-on, and shows current fast status in Telegram/fastwithout requiring/fast status.Real environment tested: local managed Gateway LaunchAgent, CLI/Gateway
2026.5.21, Telegram plugin in a real Telegram Desktop DM, configfastMode: autowithfast_seconds: 15, real provideropenai-codex/gpt-5.5, and shell tool calls around an ~18s sleep.Exact steps or command run after this patch:
Telegram mixed-order prompt used after restart:
Evidence after fix: Telegram Desktop showed one progress draft containing normal shell tool lines before
💨Fast: auto-off(32s>=15s), then more normal shell tool lines before💨Fast: auto-on. The final Telegram reply reportedtool_a_before,sleep_duration_ms=18003, andtool_b_after. Screenshots are intentionally not attached here because the live Telegram window contains PII; reviewer/maintainer can attach a redacted screenshot separately.Observed result after fix: gateway status probe was ok on port
18789, the managed LaunchAgent command pointed at this checkout'sdist/index.js, the progress draft kept the fast events in the tool list, and the final reply arrived after all tool results.What was not tested: local SwiftLint app lint, because portable SwiftLint on this host fails to load
sourcekitdInProc.frameworkwithout full Xcode. CI macOS should cover that lane. Config hot reload for normal Telegram reply dispatch remains future work; per reviewer/user direction, this PR does not add per-message config rereads. In a real provider turn,💨Fast: auto-onis the end-of-turn reset event, so it is not expected to have a later tool line in the same turn; the Telegram renderer unit test covers the synthetic mixed-draft order where both fast callbacks are surrounded by ordinary tool lines.