Skip to content

feat: smart auto-poke with guardrail, error detection, /poke status - #378

Closed
alecuba16 wants to merge 3 commits into
Kuberwastaken:mainfrom
alecuba16:feat/smart-auto-poke
Closed

feat: smart auto-poke with guardrail, error detection, /poke status#378
alecuba16 wants to merge 3 commits into
Kuberwastaken:mainfrom
alecuba16:feat/smart-auto-poke

Conversation

@alecuba16

Copy link
Copy Markdown

Changes

Independent from input flow

  • Auto-poke submits directly to model via Message::auto_poke() + run_query_loop
  • Does NOT touch prompt_input.text — user can keep typing while poke runs

Smart features

  • Guardrail circuit breaker — stops after 3 consecutive provider refusals
  • Non-retryable error detection — stops on billing/auth/payload-size errors
  • /poke on|off|status — subcommand variants with detailed status display (pokes used, budget left, incomplete todos, guardrail stops, blocked status)
  • User-visible messages — "X incomplete todos. Poking. /poke off to stop." / "All todos done." / "Provider refused N turns — stopping."
  • Distinct dim yellow color for auto-poke messages in transcript
  • Shorter prompt — "X incomplete todos. Continue." instead of verbose original

Files changed

  • crates/core/src/lib.rsis_auto_poke field on Message, auto_poke() constructor
  • crates/tui/src/app.rs — guardrail/error fields, check_auto_poke() rewrite, /poke command
  • crates/cli/src/main.rs — direct model submission path
  • crates/tui/src/messages/mod.rs — auto-poke color constants, conditional rendering
  • crates/tools/src/todo_write.rsis_non_retryable_error(), is_guardrail_error(), shorter message

Testing

  • cargo check --workspace clean, cargo fmt clean
  • 15 session browser tests, 19 todo_write tests pass

@alecuba16
alecuba16 force-pushed the feat/smart-auto-poke branch from a51c0fa to 17bdd61 Compare August 2, 2026 15:28
alecuba16 and others added 2 commits August 7, 2026 09:02
@alecuba16
alecuba16 force-pushed the feat/smart-auto-poke branch from 17bdd61 to 0cd0712 Compare August 8, 2026 14:56
@alecuba16
alecuba16 force-pushed the feat/smart-auto-poke branch from 0cd0712 to ade03c9 Compare August 8, 2026 14:57
@alecuba16

Copy link
Copy Markdown
Author

Closing in favor of consolidated group branches. The changes from this PR have been merged into a functional group branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant