From b3d4ae0318333c6759735205a66ed79cc371eefe Mon Sep 17 00:00:00 2001 From: Tim Waugh Date: Sun, 23 Nov 2025 09:43:05 +0000 Subject: [PATCH 1/2] chore: remove outdated TODOs and stub code in Phase 2 Remove two outdated items from content_editing.py: - Outdated TODO comment for Phase 1 transition (already implemented) - Stub _page_indexing_worker method (page indexing runs in Phase 1 only) The page indexing functionality is fully implemented in block_selection.py:770 (Phase 1) where it runs with proper dependency coordination. Phase 2's _rag_search_worker correctly waits for the Phase 1 indexing task to complete. Assisted-by: Claude Code --- src/logsqueak/tui/screens/content_editing.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/logsqueak/tui/screens/content_editing.py b/src/logsqueak/tui/screens/content_editing.py index b4531f0..91bc224 100644 --- a/src/logsqueak/tui/screens/content_editing.py +++ b/src/logsqueak/tui/screens/content_editing.py @@ -488,7 +488,6 @@ def action_back(self) -> None: self._save_current_content() logger.info("user_action_back_to_phase1") - # TODO: Transition back to Phase 1 self.app.pop_screen() def _save_current_content(self) -> None: @@ -840,11 +839,6 @@ def deduplicate_decisions(new_decisions: list, existing_decisions: list) -> list exc_info=True ) - async def _page_indexing_worker(self) -> None: - """Worker: Build page index with progress.""" - # TODO: Implement page indexing - pass - async def _rag_search_worker(self) -> None: """Worker: Perform RAG search for candidate pages and load page contents. From 48bda1f2d85ec24a57a5f946613175c07b461865 Mon Sep 17 00:00:00 2001 From: Tim Waugh Date: Sun, 23 Nov 2025 09:46:14 +0000 Subject: [PATCH 2/2] feat(phase3): add notification when navigation blocked by pending decisions Show a toast notification when user tries to advance to the next block but integration decisions are still being generated by the LLM worker. This provides clear feedback instead of silently ignoring the navigation key press, improving user experience during the opportunistic worker execution pattern where decisions may still be streaming. Resolves the TODO at integration_review.py:829. Assisted-by: Claude Code --- src/logsqueak/tui/screens/integration_review.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/logsqueak/tui/screens/integration_review.py b/src/logsqueak/tui/screens/integration_review.py index 7fbd5d8..d3acc6c 100644 --- a/src/logsqueak/tui/screens/integration_review.py +++ b/src/logsqueak/tui/screens/integration_review.py @@ -826,7 +826,11 @@ def action_next_block(self) -> None: "navigation_blocked_decisions_pending", next_block_id=next_block_id ) - # TODO: Show user feedback about waiting for decisions + self.app.notify( + "Next block's integration decisions are still being generated. Please wait...", + severity="information", + timeout=3 + ) return # Navigate to next block