Skip to content
Draft
Show file tree
Hide file tree
Changes from 99 commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
2a58dc3
Phase 3: pausable command lifecycle (pause/resume/cancel)
aboimpinto Jun 3, 2026
3b49de0
fix: correct UiTheme field names in sidebar pause indicator
aboimpinto Jun 3, 2026
9813852
fix: keep pausable flag across TurnStarted, handle cancel-while-pause…
aboimpinto Jun 3, 2026
4b91ae1
fix: use shared Arc<StdMutex<bool>> for paused flag (bypasses Op chan…
aboimpinto Jun 3, 2026
878d981
fix: keep paused/paused_cancelled visible after turn ends, show 'Paus…
aboimpinto Jun 3, 2026
d3819b2
debug: add tracing::debug! at pause key points (set_paused, pause gat…
aboimpinto Jun 3, 2026
2625d71
fix: show (Pausing) in WorkBench during transition, let 'continue' me…
aboimpinto Jun 3, 2026
372a0d9
fix: any message while paused unpauses and sends, instead of blocking…
aboimpinto Jun 3, 2026
f79814e
fix: cancel old turn when unpausing with a new message to prevent com…
aboimpinto Jun 3, 2026
2b28bc8
fix: when paused and user types, cancel old turn; consume message so …
aboimpinto Jun 3, 2026
7f33a04
fix: pause gate cancels turn instead of returning tool error (prevent…
aboimpinto Jun 3, 2026
580e7d7
fix: mark hunt as Hunted on successful turn completion (green checkma…
aboimpinto Jun 3, 2026
2dd228f
feat: play icon ▶ while running (yellow), green checkmark ✓ on comple…
aboimpinto Jun 3, 2026
687c3a8
fix: cancel-while-paused now also calls engine_handle.cancel() — actu…
aboimpinto Jun 3, 2026
8692935
fix: merge pause indicator into the goal line (replaces icon instead …
aboimpinto Jun 3, 2026
e7439ef
fix: 'continue'/'resume' unpauses and lets message through (one keyst…
aboimpinto Jun 3, 2026
6420195
fix: clear todos and plan state when a new slash command starts (no s…
aboimpinto Jun 3, 2026
b5265e8
fix: second ESC while paused returns CancelRequest even after turn en…
aboimpinto Jun 3, 2026
5f39234
fix: cancel-while-paused clears flag directly (not via set_paused) to…
aboimpinto Jun 3, 2026
24e10ef
fix: new slash command clears pause state (app + engine flag); safety…
aboimpinto Jun 3, 2026
079b62e
fix: safety sync clears engine flag when app.paused is false, even if…
aboimpinto Jun 3, 2026
b9f4a42
test: add 8 pause lifecycle tests (indicator states, goal icons) + fi…
aboimpinto Jun 3, 2026
0d8981c
fix: standardised status messages — Request is Pausing / Request was …
aboimpinto Jun 3, 2026
6f3557c
fix: remove redundant Op::SetPaused try_send from set_paused() — avoi…
aboimpinto Jun 3, 2026
ca6845d
test: verify new slash command after cancel clears all pause state
aboimpinto Jun 3, 2026
c5871c9
fix: remove unused Op::SetPaused variant and handler (dead code warning)
aboimpinto Jun 3, 2026
d676a9c
fix: clear hunt.quarry on cancel so model doesn't resume old command …
aboimpinto Jun 3, 2026
1e7f988
fix: clear hunt.quarry on successful completion so model stops being …
aboimpinto Jun 3, 2026
4c04baa
feat: pause now lets messages through (no cancel); quarry saved/resto…
aboimpinto Jun 3, 2026
8905e25
fix: set pause message as quarry so model knows command is on hold in…
aboimpinto Jun 3, 2026
edcb4fb
test: add pause_sets_pause_message_as_quarry; strengthen pause instru…
aboimpinto Jun 3, 2026
9729951
fix: clear hunt.quarry on pause so goal system doesn't prompt model t…
aboimpinto Jun 3, 2026
c8b5ba4
test: add lifecycle workflow tests (pause->continue->complete, pause-…
aboimpinto Jun 3, 2026
6863211
fix: keep quarry on cancel so WorkBench shows ✘ with the original goa…
aboimpinto Jun 3, 2026
06f86f4
fix: display paused_quarry in WorkBench when hunt.quarry is None duri…
aboimpinto Jun 3, 2026
15f9206
fix: non-continue message while paused cancels old turn + clears hunt…
aboimpinto Jun 3, 2026
6ac0f90
fix: detect 'continue the scan' / 'resume the paused command' as resu…
aboimpinto Jun 3, 2026
ed524e3
fix: keep pause indicator visible while paused_quarry exists, even af…
aboimpinto Jun 3, 2026
3760c9c
test: non_continue_while_paused_clears_system_prompt_goal — proves hu…
aboimpinto Jun 3, 2026
38301f2
test: workbench_visible_through_pause_ask_resume — proves WorkBench p…
aboimpinto Jun 3, 2026
a93c311
fix: inject cancellation notice into message when non-continue sent w…
aboimpinto Jun 3, 2026
e2f19a9
test: resume_switches_icon_from_pause_to_play — verifies icon changes…
aboimpinto Jun 3, 2026
6b15315
debug: add tracing::debug! for pause state in sidebar_work_summary
aboimpinto Jun 3, 2026
1647862
fix: intercept resume in submit_or_steer_message (catches Steer path …
aboimpinto Jun 3, 2026
21e67df
chore: remove unused mut on message in submit_or_steer_message
aboimpinto Jun 3, 2026
54e8165
debug: add tracing at submit_or_steer interception point
aboimpinto Jun 3, 2026
f9f86e9
fix: add resume interception in steer_user_message (belt-and-suspenders)
aboimpinto Jun 3, 2026
e8b8482
fix: detect 'please continue' / 'resume the command' at any word posi…
aboimpinto Jun 3, 2026
aaaa684
cleanup: remove debug eprintln traces
aboimpinto Jun 3, 2026
e7695d5
cleanup: remove debug traces, run cargo fmt
aboimpinto Jun 4, 2026
655fd8e
fix: resolve all clippy warnings (collapsible_if, unnecessary_map_or,…
aboimpinto Jun 4, 2026
5de8254
fix: use set_paused in CancelRequest; use match on try_lock with warn…
aboimpinto Jun 4, 2026
922c1c3
feat: use LLM evaluation for resume detection (replace fragile keywor…
aboimpinto Jun 4, 2026
516f302
fix: LLM-evaluation approach — keep paused_quarry for WorkBench, rest…
aboimpinto Jun 4, 2026
11bf824
feat: remove keyword interception entirely — pure LLM evaluation for …
aboimpinto Jun 4, 2026
3c3ee94
feat: separate icon logic from pause_indicator, fix TurnCompleted ver…
aboimpinto Jun 4, 2026
f2a4179
refactor: extract add_paused_evaluation_note helper, remove duplicate…
aboimpinto Jun 4, 2026
0049780
fix: restore quarry.is_some() guard on TurnCompleted — prevents check…
aboimpinto Jun 4, 2026
b6e4e10
fix: workflow_paused includes paused_quarry — icon stays ⏸ after typi…
aboimpinto Jun 4, 2026
8c690a3
fix: add keyword detection back for icon/checkmark — LLM note still h…
aboimpinto Jun 4, 2026
365a6f7
chore: final cleanup before PR — format, centralize LLM eval note, ve…
aboimpinto Jun 4, 2026
4f67d63
fix: steer_user_message now clears pause state (engine flag + app.pau…
aboimpinto Jun 4, 2026
fb5d6ba
fix(tui): resolve Windows shell commands via PowerShell
Hmbown May 27, 2026
c3c6b66
fix(tui): tighten Windows shell dispatch fallback
aboimpinto May 27, 2026
9e19f2e
fix(tui): refine shell prompt and powershell invocation
aboimpinto May 27, 2026
8f086f0
fix(tui): align dev shell dispatcher fallback
aboimpinto May 28, 2026
dfc8b58
chore(tui): add local turn dispatch diagnostics
aboimpinto Jun 1, 2026
d6d9253
Merge branch 'feat/allowed-tools-phase3-fresh' of ..\..\CodeWhale int…
aboimpinto Jun 4, 2026
0502635
fix(tui): restore LLM resume evaluation flow
aboimpinto Jun 5, 2026
2621704
refactor(commands): replace monolithic match dispatch with strategy p…
aboimpinto Jun 5, 2026
6b8e0e9
refactor(commands): move implementation backends into back/ subdirectory
aboimpinto Jun 5, 2026
755c5f1
chore(commands): remove dead code from strategy-pattern refactor
aboimpinto Jun 5, 2026
adb2655
chore(commands): remove dead code from mod.rs
aboimpinto Jun 5, 2026
cd82add
refactor(commands): remove get_command_info from mod.rs
aboimpinto Jun 5, 2026
c71d750
refactor(commands): strip mod.rs to pure dispatch, move functions to …
aboimpinto Jun 5, 2026
9e9a1f0
test(commands): add focused dispatch tests to mod.rs
aboimpinto Jun 5, 2026
f4ad314
refactor(commands): move registry init from traits.rs to mod.rs, drop…
aboimpinto Jun 5, 2026
4def7fa
chore: remove temp files from accidental commit
aboimpinto Jun 5, 2026
903d997
refactor(commands): move group modules into groups/ subdirectory
aboimpinto Jun 5, 2026
6a5f311
refactor(commands): iterate groups via all_command_groups() instead o…
aboimpinto Jun 5, 2026
55e11ed
refactor(commands): make group modules private in groups/mod.rs
aboimpinto Jun 5, 2026
f82f190
refactor(commands): split core group into one file per command
aboimpinto Jun 5, 2026
238d75b
refactor(commands): move helper functions from core/mod.rs into comma…
aboimpinto Jun 5, 2026
829087b
chore: remove temp script
aboimpinto Jun 5, 2026
d29bba7
test(commands): add focused per-command tests for all 14 core commands
aboimpinto Jun 5, 2026
7578195
chore: remove committed temp script
aboimpinto Jun 5, 2026
ad0c440
fix(tests): isolate IsolatedHome from Windows dirs crate, ignore 2 Wi…
aboimpinto Jun 5, 2026
580c858
chore: remove committed temp scripts
aboimpinto Jun 5, 2026
414a740
refactor(commands): split remaining 7 groups into one-file-per-command
aboimpinto Jun 5, 2026
4503673
chore: remove temp scripts
aboimpinto Jun 5, 2026
dc40e6b
refactor(commands): split 21 commands into handler/impl sub-folders
aboimpinto Jun 5, 2026
a232fdb
chore: remove temp scripts
aboimpinto Jun 5, 2026
a903cb9
refactor(config): extract 10 functions from back/config.rs into comma…
aboimpinto Jun 5, 2026
da1f0b5
refactor: rename back/ to shared/, remove 14 test-only functions
aboimpinto Jun 5, 2026
3e01b7c
chore: remove temp scripts
aboimpinto Jun 5, 2026
5f84d64
refactor(config): Strategy pattern for set_config_value, handler fram…
aboimpinto Jun 5, 2026
c172854
chore: remove temp file
aboimpinto Jun 5, 2026
833211b
refactor(model): extract auto-route logic from shared/config.rs into …
aboimpinto Jun 5, 2026
974ccbb
refactor(tui): localize command implementations
aboimpinto Jun 6, 2026
71b98e6
fix(tui): address command refactor lint failures
aboimpinto Jun 6, 2026
23a0c4e
fix(tui): normalize auto-route reasoning tiers
aboimpinto Jun 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions crates/tui/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@ tar = "0.4"
flate2 = "1.1"
sha2 = "0.10"


[dev-dependencies]
wiremock = "0.6"
pretty_assertions = "1.4"
Expand Down
Loading
Loading