Repository navigation
A live fit another program controls: MicroClaw support (smappy 0.3.0) - #7
Merged
Merged
Conversation
… the GUI opened on a running fit The watch takes a finished event that replaces the idle timeout (a pause is not the end of an acquisition), and sends empty blocks while idle so the timed flush still runs. Context carries stop and writer_finished; the Fit plugin honours both and skips the finishing steps when stopped. smappy.gui.live_session opens the ordinary GUI with the fit running, reports its outcome once, and protects the fit's file from Save. For the MicroClaw package (ries-lab/smappy-microclaw). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…es it Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch was successfully deployed
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.
What changed
For the MicroClaw skill package (
ries-lab/smappy-microclaw): SMAPpy's own GUI opened on a fit that MicroClaw starts while it acquires, so the reconstruction builds up on screen during the acquisition.watch_stack/NDTiffSource.watchtake afinishedevent that replaces the 30 s idle timeout: a pause (refocus, laser change, time-lapse interval) no longer ends a live fit. MicroClaw's protocol (itsdesign/84) requires exactly this.idle_blocks=Truethe watch yields empty blocks while it waits, andpipeline.drive(flush_seconds=...)fits what is buffered on them -- before, a live fit showed nothing buffered before a pause until frames arrived again. The GUI's live fit flushes every 5 s (LIVE_FLUSH_SECONDS).Context.stopandContext.writer_finished(threading.Events). The Fit plugins honour both; a stopped fit closes its file, skips the finishing steps (MicroClaw allows 10 s) and saysdata["stopped"].smappy.gui.live_session:LiveSessionopens the usual two windows, fills the Localize tab's fitter, starts the run without its preflight question, reports oneLiveOutcome(succeeded / cancelled / failed, input complete or not); closing the windows mid-fit is a cancellation.fit_settingsbuilds a fitter's settings strictly (a misspelt setting is an error, not a default).Session.protected: Save / Ctrl+S refuse to overwrite the fit's file (MicroClaw records its digest while the window stays open); Save as offers..._edited.hdf5.Full resolution/is found from the folder above, as MicroClaw writes datasets.PluginPanel.start_run(ask=False, **context)and anendedsignal; version 0.3.0 (already taggedv0.3.0from this branch and published to PyPI).For the reviewer
v0.3.0points at this branch's tip, somainmatches PyPI once this is merged.smappy-live(smappy.live.LiveFit) still has its own loop and does not send idle blocks yet: a separate task.--slow -n auto: 1362 passed, 5 skipped🤖 Generated with Claude Code