Skip to content

Fix bundled note decisions around LaTeX environment edits - #107

Merged
cu1ch3n merged 2 commits into
mainfrom
fix/note-option-preview
Nov 9, 2026
Merged

cu1ch3n merged 2 commits into
mainfrom
fix/note-option-preview

Conversation

@cu1ch3n

@cu1ch3n cu1ch3n commented Nov 9, 2026 •

Copy link
Copy Markdown
Member

Editing a display formula or removing a list could merge every change in its LaTeX file into one review unit. Independent notes then shared badges, accepting one applied unrelated edits, and alternatives all opened at the same earlier passage.

Group edits only within the environment whose delimiters change, scanning both revisions and ignoring comments/literal examples. Balanced nested displays remain atomic without absorbing surrounding prose. Resolve repeated short PDF quotes using original manuscript lines; ambiguous and older-review quotes still fail closed.

A second review using the affected document found that independent units can still share a large PDF group. Alternative previews now use per-unit marks to select the relevant strips and crop to nearby complete lines, including the focused units in source view. Older comparisons without attribution retain their existing context. The main review remains intact.

Validation:

  • 76 engine tests covering subset application/reversion, boundaries, note options and acceptance.
  • Note/result/option and crop regressions, including nested displays, removed lists, and notes far apart in one shared PDF group.
  • Real multi-chapter PDF alternative compilation, focused preview scope and restart cache checks.
  • Browser checks for switching alternatives, focused crop geometry, source view, language changes and mobile layout.
  • App/desktop/engine typechecks, both production builds, and activation of the desktop update layer with the installed Node 24 runtime.
  • Read-only replay of the affected manuscript: notes 3, 7, 8 and 9 have disjoint units; applying all units reproduces the proposal exactly.

Existing published rounds retain their recorded units and decisions and need a fresh comparison to use the new segmentation. Alternatives that edit outside a note's separated units remain rejected by the existing scope checks.

@cu1ch3n

cu1ch3n commented Nov 9, 2026

Copy link
Copy Markdown
Member Author

Reviewed commit 8c445c1.

No blocking code findings after checking both sides of environment insertion/removal/rename, nested display boundaries, comment/literal masking, quote ambiguity, and the acceptance/option paths. The regression suite verifies every subset of independent changes, including reversion, and a real multi-chapter PDF check confirms distinct alternative content and a focused drawer. Local desktop activation of the update layer also passes with the installed Node 24 runtime.

The affected saved round predates this fix. Its existing decisions must stay intact; the local recovery is creating a new comparison of only the pending proposal and retains paragraph boundaries for the author's already prepared options.

Node 24 CI and CodeQL pass. macOS and Windows packaging both hit an external HTTP 504 while downloading build dependencies; those jobs will be retried after the current workflow finishes.

@cu1ch3n

cu1ch3n commented Nov 9, 2026

Copy link
Copy Markdown
Member Author

Follow-up review found and fixed a second issue in 72dd53a: independent notes could still share a large PDF crop, so an alternative initially displayed unrelated leading text. The drawer now uses attributed marks to select and crop the relevant strips, preserves complete intersecting lines, and retains the legacy fallback when attribution is absent. A browser fixture now places the note far down a shared strip and checks the visible crop geometry as well as option switching.

Re-review: no further blocking code findings. All nine existing alternatives for the affected notes have now been compiled and checked against their intended units, with distinct content and focused PDF crops. The installed desktop is running 0.9.4-dev.72dd53a, and its native interface has been checked. The original review actions and manuscript diff remain byte-for-byte unchanged; recovery created a separate round for pending edits and kept the existing choices.

Latest Node 24, Windows desktop, Linux desktop and CodeQL checks pass. The macOS packaging failure is again an upstream dependency download returning HTTP 504; it will be retried after the current run finishes. No failing checks will be bypassed.

@cu1ch3n
cu1ch3n enabled auto-merge (squash) November 9, 2026 05:37
@cu1ch3n
cu1ch3n merged commit 87126f6 into main Nov 9, 2026
19 of 22 checks passed
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