Repository navigation
settings_from: a part keeps the defaults its parent declares (fits from scripts and chains came out in pixels); 0.3.1 - #8
Merged
Conversation
…Source live_view asks its source for idle blocks, as the GUI's Fit plugin does since the last commit, and LiveFit skips pushing the empty ones but still checks its flush timer -- so what was buffered before a pause is fitted and shown during it rather than at the next frame. QueueSource.watch takes idle_blocks too, since live_view accepts one. LiveFit keeps its own loop rather than drive's, for its stop event. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
GaussianFitSettings declares fit = FitSettings(output_unit="nm"), and the form honours it (param_specs); settings_from built the part from its own class instead, so a script, a chain step or smappy.gui.live_session.fit_settings that did not name the unit fitted in pixels. Found by the MicroClaw worker, whose output had no xy_err_nm. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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
settings_frombuilt each part of a settings dataclass from the part's own class, so a default the parent declares for it was lost.GaussianFitSettings(and the other fitters) declarefit = FitSettings(output_unit="nm"); built from a map that did not name the unit, the fit came out in pixels. The GUI form was never affected --param_specsalready carries the parent's defaults down -- so the form and a script made different settings from the same values.Now
settings_frombuilds from the same resolved specsparam_specsgives the form (_from_specs): a part starts from its parent's declared default, and the given values go on top.Who sees a difference: anything that builds a fitter's settings from a partial map -- a chain or batch step that does not name
fit.output_unit, a script callingsettings_from, andsmappy.gui.live_session.fit_settings. Those fits now come out in nm, as each fitter declares. Settings restored from a workspace or a log name every field and are unchanged.Found by the MicroClaw worker (
ries-lab/smappy-microclaw), whose fits had noxy_err_nm; the released package namesfit.output_unititself, so it does not depend on this.Also: version 0.3.1, which includes the
smappy-livepause flush already onmain(d4299ed).Tests
test_a_part_keeps_the_default_its_parent_declares_for_it(tests/test_batch_foundations.py) -- fails without the fix, passes with it.--slow -n auto: 1365 passed, 5 skipped🤖 Generated with Claude Code