Repository navigation
Preserve grouped coordinates in scalar artifact publication (#621) - #623
Conversation
|
Final source checkpoint 0c9b585 normally integrates current main47debb48e (#619 median-only delivery). Determining main delta changes six median/build files, not the scope or descriptor family. Both changed production modules remain byte-identical to the ordinary installed ac63d8 receiving target; 78-pass/export strength remains exact and does not claim a new whole-main bundle. Singer shared-family review approved the final physical-source/logical-group distinction. No unrelated rebuild or hosted CI hold. |
|
Additional affected-path receiving after merge, without any new product edit or source checkout borrow: same qualified ac63d8 ordinary target, four real 5x7 uint16 TIFF Sites1..4, literal ChannelGFP, variableSITE/groupCHANNEL. Registered PURE_3D callable returns image passthrough + declared generic Measurements + Special tables. Original compile/execute/export and all four exact saved TIFF readbacks PASS: BOTH CSVs contain actual sum9730/count140; filenames retain ChannelGFP/Z1/T1 and omit representative Site. Measurement row declares slice_index0 and retains that source-plane row context; no per-Site row coverage claim. Original standalone terminal0/8.56s/376040KiB/no swaps. Frozen fixture/log/addendum: engineering-grouped-scalar-scope-621-20261004/SITE-GFP-QUALIFICATION.rst + SITE-GFP-FREEZE.sha256. No live5032 scientific failure replay, native RPC, overlay, rebuild, new fix or biological/MCP claim. |
Owner repair
Fixes #621.
RuntimeExecutionAxisScope.source_component_valuesalready ownsthe complete axis/fixed/grouped identity. Its metadata projection now consumes
that complete identity, retaining axis/fixed conflict rejection and the explicit
physical measurement source independently of an object's logical group. The sole descriptor
consumer delegates once instead of fixed-if/group-elif, which discarded Channel
when fixed Site/Time also existed. The superseded fixed-only method and consumer
branch are deleted; no mirror, invented coordinate, metadata fallback or guard
relaxation is added.
Active ownership was checked: closed #394 is not treated as an active repair;
Singer owns #620 and explicitly released these scope/descriptor hunks. His
writer/source-projection investigation remains separate. The finished isolated
UI checkout is temporarily released for this patch; eight dirty foreign
gitlinks and retained untracked history remain untouched.
Source evidence and receiving
Existing refactor-audit
Packageparses all 700 production modules at base0ab87c0 without omissions. The complete attribute/declaration/import inventory
confirms one fixed_component_metadata declaration, one consumer; complete
source-component projection already exists on the scope owner. Syntax evidence
does not claim dynamic receiver resolution. Shared source metadata helpers were
read semantically; no dependency behavior or codec is changed. BOUND-2: use the
existing complete typed owner instead of reconstructing part of its identity.
Ordinary installed receiving PASS: 78 controls at ac63d8e, including the
real four-plane PURE_3D scalar integration for both fixed and grouped Channel.
Each saved CSV contains actual sum9730/count140, preserves Channel and collapses
only Z. Four pass-through TIFFs per case read back exactly; input hashes are
unchanged. Complete/scalar-incomplete/aggregate filename guards, coordinate
absence, axis/fixed contradictions, actual group-coordinate contradictions,
and physical-source/logical-group separation pass. The original distinct-source
regression was not changed or weakened.
Whole tracked-wheel/target comparison: 722 packaged tracked files byte-equal;
actual OpenHCS/dependency import origins point to receiving02/target. Existing
offline wheels and paired interpreter only. Original build terminal0/9.02s/
146448KiB RSS; installed controls terminal0/12.94s/446960KiB RSS/no swaps.
This is real installed headless compile/execute/export acceptance, not an
MCP-native, GUI or biological claim. The original failed installed fixture
and all #609 evidence remain immutable.
Evidence root:
/home/ts/wt/openhcs-issue-batch-20260929/engineering-grouped-scalar-scope-621-20261004.No scientific replay, live installed patch, new environment/worktree, SCI slot
or native server is used. No hosted CI wait.
The first installed batch passed74 controls and both real scalar integrations,
but exposed an invalid conflation in the initial patch: logical group2 may
legitimately measure physical image Channel1. The original distinct-source
regression stays unchanged. The scope hook now retains an explicit physical
group coordinate, supplies only an absent one from its declared scope, and keeps
axis/fixed and actual logical-group conflicts strict. Another pre-existing
PathPlanner mock lacked its current session.pipeline contract; that fixture
was migrated without changing the production validator or its assertions.
The original failed batch is retained; the separate coherent revised installed
batch passed78. No scope fact is overwritten to hide a failure.