Repository navigation
GUESS_WHILE_LOADING (AC-3a), with round 12's results and the XState arm - #53
Merged
Merged
Conversation
PREREG-desk-11 (DRAFT): round 10's design again on Solid next 2789ca9c (every eval bug fixed, #4689 included) with the current guide. H11a replicates H10a; H11c compares frontier .rx with frontier React. The brief now says the detail's retry button is always present while an issue is selected, which round 10 left unclear (25 of 36 desks failed the rename-reload overlap test over it). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
A whole guess on an optimistic store (optimistic rows := rs => rs.map(...)) was written into the draft index by index, which replaces each matched row object. It is now the setter's return, which Solid diffs shallowly against the view as guesses. Clears round 10 rx-8 fuzz seed 3 on next 2789ca9c; the other 11 desks grade unchanged. Gate result recorded in PREREG-desk-11. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
…; prereg says so The overlap test 'two issues assigned at once' required the declined row to revert while the other assignment was still out. A list held whole until both settle is a legal hold, not a defect, so the test now checks that the decline leaves the other row alone and that both rows are right once everything has answered. PREREG-desk-11 states that only defects are counted and that round 10's numbers are regraded the same way (without the brief-caused retry test). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
…to claude/project-thread-t6465s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
…12 notes it Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
…ep a write from going out early The rule was listed under 'things that look like bugs and aren't' with an optional fix, so agents treated a void guess (D-34) as acceptable. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
…sed layer Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
58 of 60 round 12 apps (every arm) keep the rename editable while the detail loads, so that is fair UX; the guide lists the three fixes without ranking them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
…don't send it') Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
…s nouns Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
…wser probe and plain-Solid repro The check fires when a click starts a guess on a value that may have no answer yet, whose question reads what the click is about, and the control is neither inside that value's loading region nor disabled on it. Over round 12's .rx apps it flags 8 sites, all of which lose a change in the browser probe. Off unless RX_PROTO_GBS is set. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
… loads a new question Follows Solid's ruling on solidjs/solid#4795 (OPTIMISTIC_WRITE_WHILE_LOADING, at compile time): while x loads a new question a guess composes on the previous answer and the new answer replaces it (D-34). A handler that guesses x, where x's question reads what the click reads, must be covered as in R-8: inside x's loading region, or disabled on x (for a form's onSubmit, its submit buttons). Round 12: flags 8 handlers in 5 .rx apps; the browser probe loses the change in every one and in no unflagged app. It also fired on the eval's own references and on examples/ai/feed.rx, which now disable the control while it loads; every reference still passes its visible, hidden and overlap tests. Spec 06 AC-3a, both diagnostics tables, a diagnostics.md section, a unit test; the guide line follows the ruling. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117BoWKEv4MghW8Ns9LeUUX
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
ryansolid
pushed a commit
that referenced
this pull request
Nov 12, 2026
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.
The check
GUESS_WHILE_LOADING(spec 06 AC-3a) is Solid'sOPTIMISTIC_WRITE_WHILE_LOADING(solidjs/solid#4795, #4797) at compile time.What goes wrong. While
xloads a new question, a guess on it composes on the previous answer. When the new answer lands it replaces the guess (D-34), so the user's change disappears while its action is still out.When it fires. A handler guesses
xandx's question reads something the click reads. The guess can be in the handler, an inferred or inline action, or a named action the handler calls. What the click reads is a selection or a row, for example.When it doesn't. The handler is covered as in R-8:
x'sloadingregion; orx; oronSubmit, every submit button is disabled onx.The message offers Solid's repairs. The check follows the principle that a write must not read stale state.
Evidence from round 12:
eval/results/desk12-2026-11-11/repro/.examples/ai/feed.rx. Those now disable the control while its value loads. Every reference still passes all its visible, hidden and overlap tests.Checks run:
cargo testpasses, including the diagnostics page and a new unit test.refnpm run crate: the crate agrees with ref on all 351 programs.refnpm testpasses.refnpm run compiled: 4 fails, the same 4 as on the branch without this change.Also on this branch
Eval:
eval/results/desk12-2026-11-11. Two Solid bugs traced, #4786 and #4787. Includes the plain-Solid repro for #4795.Guide:
Generated by Claude Code