[codex] Propose reviewed-state pattern reuse points - #104
Closed
fgilio wants to merge 1 commit into
Closed
Conversation
Add targeted in-code proposal comments at the sections most likely to reuse the reviewed-state approach: queued root bridges, server-owned state snapshots, and explicit islands for small stale-prone UI surfaces. Co-authored-by: Codex CLI <fgilio+codex-cli@publica.la>
ScreenshotsUpdated for |
fgilio
added a commit
that referenced
this pull request
Jul 3, 2026
* Settle divergence banners through islands instead of page morphs A HEAD-divergence transition from the poller re-rendered the whole review page, re-hydrating every diff-file child (the 1+N cost the page avoids everywhere else) even when only banner chrome changed. The header marker and the missing-target bar now live in explicit islands that checkHeadDivergence refreshes under skipRender. The page still morphs when auto-follow rehydrates the file list, or when the list is empty: the divergence empty-state message lives outside the islands and that morph has no children to re-hydrate. Comment writes re-check divergence through a variant that leaves the render decision to the mutation's flags. That fixes two latent defects: a transition caught mid-write painted nothing (the poller then saw the state as already applied and stranded a stale banner), and the unchanged-divergence path latched skipRender over mutations that declared a render. The deleted/cleared/restored mutations now declare skipsRender: true, matching their tested and shipped behavior; their previous false flag was always overridden by that latch. Implements the one presently actionable proposal from #104. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G5BYb5cTR149b9ahJFYNTm * Bridge divergence banner actions through the page root The divergence marker and missing-target bar now live inside islands, where a wire:click scopes its render to that island. Their buttons (switch review, keep reviewing, dismiss) all settle more than the banner they were clicked in: switchReviewToHead rehydrates the file list, and keep/dismiss can swap the divergence empty-state message. The buttons now $dispatch bubbling rfa-* window events that the page-root Alpine forwards to $wire, matching the existing reviewed-state bridge pattern. Addresses the Codex review finding on PR #132. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G5BYb5cTR149b9ahJFYNTm --------- Co-authored-by: Claude <noreply@anthropic.com>
Owner
Author
|
Closing: superseded by #132 (merged), which implements the divergence-islands proposal from this PR and documents in its description why the other five proposals aren't actionable until their trigger conditions exist. Generated by Claude Code |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Summary
Validation
vendor/bin/pint --dirty --format agentcomposer test:lintnpm test -- tests/Js/branch-explorer.test.js