Repository navigation
ReviewOps v0.2.2 — consistent evidence and keyboard recovery
ReviewOps is a local experiment-review prototype with retained evidence, assignments, decisions, and a traceable public audit walkthrough. This release fixes evidence consistency and keyboard navigation. Researcher pilot pending.
- Detail, queue, and audit exports now hold one database read snapshot while a separate CLI import commits a revision. Old metadata cannot be mixed with a newer evidence list or export label.
- Evidence preview text and its integrity label now come from the same opened file. Replacing a file between reads cannot show replacement text as verified. Changes beyond the displayed prefix are still detected, and oversized files are refused.
- Keyboard selection moves into the chosen experiment. Delayed responses preserve a different control the reviewer has moved to.
- Removing evidence files preserves keyboard position. Submission errors scroll into view and receive focus while keeping the draft and selected files.
Download the ZIP, extract it, and run python3 app.py --port 8787 from its directory. Python 3.9 or later is sufficient; no third-party runtime packages or cloud service are required. The SHA-256 file identifies the downloadable ZIP.
Validation: 60 Python tests and 15 frontend regressions pass from the extracted release ZIP. The exact release commit passed all four Linux/macOS and Python 3.9/3.13 hosted jobs. The keyboard, file-removal, error-recovery, restart, and evidence-preview paths were also checked in the browser. Tests cover software behavior, not researcher adoption or scientific validity.
Existing workspace schemas are unchanged. Stop the old server before launching the update against the same data directory. To back up a workspace, stop the app and copy that complete directory; the JSON audit export does not contain evidence file bodies. Consistent database reads and preview labels do not prevent later outside edits to stored files.