Repository navigation
Notebook redesign 2: progress for every wait, progress callbacks from the readers, quick scan first - #270
Merged
Conversation
…s, quick scan first Owner test of v0.5.0 (10 November 2026), items (c) and (d). Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G3qp9AxjpGPw9xfWAUJNqc
This was referenced Nov 10, 2026
Merged
Contributor
Author
|
Gate after merging main (#267, #268) through #269: 🤖 Generated with Claude Code https://claude.ai/code/session_01G3qp9AxjpGPw9xfWAUJNqc Generated by Claude Code |
…-progress Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G3qp9AxjpGPw9xfWAUJNqc
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.
Second of four stacked pull requests (base: #269). Owner's test of v0.5.0, items (c) "a progress bar for every wait" and (d) "quick scan first". Design note:
docs/restart/designs/notebook-redesign-2026-11-10.mdon MorphoFeature branchclaude/restart-doc.Summary
notebook_progress(new, ui):Waitdraws one status line with a bar for a wait: what is done of the total, the item being read, the elapsed time and, once it can be measured (one item and one second), the time left;progress_html,time_left,clock_textare its pure parts. Redrawn at most every 0.1 s, and always at the end.discover_experiment(..., progress=)(each folder before it is listed),masks.find_masks(..., progress=)andrun.preflight.remasked(..., progress)(each mask header), andpreflight'sprogressnow also reports("folders", 0, 1, folder)and("masks", done, total, mask_path). The first and last call of each phase, and every result, are unchanged (tested against a call without a callback).notebook_quick_scan(new, ui; shipped notebook only): Scan the folders runs the folder check's own walk (no image header is read), shows every folder with its labels and image count, and one image chosen at random with its path and seed, for looking only (drawn from that file's own header by the rules of the folder pictures: only when the header names Y and X, bound to the file as read). Nothing of the scan is kept. The folder check is then the explicit click Looks right: read all image headers, disabled with a line saying why until the folders are scanned as typed now: changing the experiment, output or masks folder or the exclusions asks for a new scan.is_tiff_name,is_system_name,TIFF_SUFFIXES,SYSTEM_NAMESmoved fromdiscoverytoimage_names(still importable fromdiscovery), sodiscovery.pyis under the 600-line rule and its baseline entry is removed.Decisions
folder_step()for the bricks that embed it is unchanged: Check folder, one click (now with the progress line). The quick scan belongs tosteps().check_folder()called from code still checks without a scan, and the check does its own walk again (the folders may have changed since the scan).Notes for review
mb-wait).Tests
python tools/check.pyon04b0b9d: Ruff and the code rules pass; 5195 passed, 4 skipped (three for a case-sensitive file system, one for running with permissions that ignore file modes). New:tests/test_notebook_progress.py(17) andtests/test_notebook_quick_scan.py(10): the estimate and its threshold, the throttle, each reader's callback against the result without one, each wait's text, the scan reading exactly one header and running no check, the seed and path shown, the gate after each kind of folder change.Generated by Claude Code