Skip to content

Clean up the web frontend and split app.js - #26

Merged
dgsienko merged 12 commits into
mainfrom
slop-web-split
Oct 23, 2026
Merged

dgsienko merged 12 commits into
mainfrom
slop-web-split

Conversation

@dgsienko

Copy link
Copy Markdown
Owner

Fixes from a full-repo slop audit, web half.

  • Dead code: the never-set showIgnored state, the Diff Stats Bar CSS block, settings close transitions, the unused warn colors, and guards for states callers never produce
  • Keybinding defaults are defined once in lib/keys.js (they were in four places)
  • sendJson and commentUrl helpers replace seven hand-built JSON fetches
  • DiffViewer and SplitDiffViewer share the comment thread, comment box and selection button through components/CommentThread.js
  • One latest-value mechanism (mirror refs), not two
  • app.js goes from 1188 to 637 lines. The split moves its hooks into lib/ (live events, comments, keyboard, agent, scroll, copy, search, appearance, session save) and the empty and loading states into a component.

Two behavior changes, both intended. The r key could refetch the file list for a stale view, and now uses the current one. Settings changes apply right away, before the save returns.

Checked in a browser against a scratch repo: file switching, all three diff views, comments, search, the palette, the shortcut overlay, rebinding a key, and mark reviewed. There were no console errors.

@dgsienko
dgsienko merged commit dffd861 into main Oct 23, 2026
7 of 8 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