Skip to content

OR-231: Safe live file refresh - #286

Merged
sox8502 merged 4 commits into
mainfrom
daniel/or-231
Sep 5, 2026
Merged

OR-231: Safe live file refresh#286
sox8502 merged 4 commits into
mainfrom
daniel/or-231

Conversation

@sox8502

@sox8502 sox8502 commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Automatically refresh open file/artifact previews while the page is visible, with focus/reconnect checks and no Reload toolbar button. Keep dirty drafts and reject stale saves using exact SHA-256 versions.
  • Finish OR-231's file pane: 40% default panel, bounded 280px explorer, responsive artifact previews, compact file/artifact context menus, and a minimal filename/action header.
  • Move Overleaf failures into a focused popover with recovery actions and collapsed settings; skip sync without a token. Remove the temporary error demo.

Verification

  • UI production build, typecheck, localization and style checks
  • 73 UI tests, including compact-menu sizing and discard/undo regressions
  • 9 dev-slot helper tests
  • Rust formatting, clippy and locked debug build
  • 730 locked Rust tests (2 ignored), release build and telemetry-safety checks
  • Live dev-slot API: exact versions, same-size rewrites, stale-save rejection, conditional overwrite, deletion conflicts and HEAD changes
  • Four independent Claude reviews with no blockers after the fixes
  • Browser smoke: paper preview, no file Reload button, token-free Overleaf setup
  • External rewrite/delete/replace of open clean files and artifacts; confirm polling/focus/reconnect updates and unchanged media stays stable
  • Dirty-file conflict, conditional overwrite, cancel/discard tab close in Chrome and Safari
  • Confirm responsive pane sizing, title truncation and file/artifact context menus at narrow widths
  • Authenticated Overleaf sync/retry against a real project

Preview detection uses size/mtime validators (size-only on older servers); save conflict detection uses exact byte hashes. No filesystem watcher or browser-reload draft persistence. Reopening a tab during an in-flight save can conservatively show a conflict; it does not bypass conditional-save protection.

Tracks OR-231. No version bump or release trigger.

@sox8502
sox8502 merged commit 95b2d96 into main Sep 5, 2026
9 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