Repository navigation
Expose physical-channel QA after a pipeline narrows the raw workspace inventory #445
Description
Physical-channel QA is unreachable after a named-source workspace narrows the raw inventory
Owner: parent integration; Singer investigates the existing BioFormats/inspection boundary.
Planck retains the live retinal viewer and scientific files. Root retains PR394 shared source
binding/projection/metadata owners; any crossing needs direct release, not a competing patch.
Reproducer
Installed438-08054 public MCP, development-only R0010, original native process closed.
Persistent receipt:
/home/ts/wt/openhcs-issue-batch-20260929/rbpms-r0010-development-434-20261002/output/CANDIDATE05-C3-READONLY-QA.rst
Exact calls/replies: mcp-continuation03.stdin/stdout/timing and
CANDIDATE05-C3-READONLY-EVIDENCE.json in that output directory.
- openhcs_inspect_plate_path with original input path, microscope_type=bioformats,
max_sample_files1/max_component_values3/max_parse_failure_samples1/max_files_to_parse4.
Reports physical C1 AF647-T1, C2 AF488-T2, C3 H3258-T3, same site1/Z1/T1. - openhcs_query_plate_files on the same input, both auto and explicit bioformats.
Returns only R0010.czi_s001_w1_z001_t001.tif, channel1/source_aliasRBPMS.
C2/C3 are declared_in_metadata=true, observed_in_filenames=false. - openhcs_sample_plate_image with physical image_path R0010.czi,
microscope_type=bioformats,resolution_index0,y684,x104,height16,width16,
include_array_values=true,max_array_elements256.
Success resolves the same C1 record (values15..42), NOT C3. - Reflected sample and stream requests have no physical-channel/source-binding
selection; no original C3 record/source receipt is exposed for ordinary QA.
The C1 pipeline projection can be intentional. The defect is the missing safe read-only
physical-channel QA route: channel metadata alone is not C3 pixel evidence. This is not
yet a demonstrated channel swap, and no guessed w3 filename/private decoder, workspace
metadata change, native restart, science rerun or UNKNOWN request replay was attempted.
Current rawC1+savedROI viewer :89/VNC5989 stays open and unchanged.
Required behavior
Expose the original acquisition's exact C3 candidate through existing nominal source
discovery/selection and public bounded read/stream contracts without widening/changing
the persisted pipeline's selected source domain. Return authoritative physical component
identity H3258-T3, site/Z/time, provenance and native geometry/units. Reuse original
handler, SourceCandidate/SourcePixelRef/typed selection owners; no second inventory
authority, name-roster switch, viewer relabel, hand-authored fake source receipt or copied
decoder. Check active PR394 ownership before any shared hunk.
Acceptance
A new source-qualified fixture exercises a container with multiple channels after a
C1-only persisted pipeline projection. Public inventory/select/sample can obtain the
actual C3 pixels, while pipeline C1 declarations and old results remain untouched.
Then use the actual installed local entrypoint for distributed same-coordinate C1/C3
raw/composite QA, bounded per-image contrast samples and personally opened MCP PNGs.
No one-nucleus/one-cell assumption or held-out/reference lookup. Keep prior missing-C3
receipts and distinguish source tests from installed/native evidence.
Related merged442/443 correct calibration and MCP idle progress respectively; neither
adds this channel-selection contract. Issues440/441 retain separate installed acceptance.
Activity
trissim commentedon Oct 2, 2026
Implementation ownership: Singer owns initial read-only BioFormats/inspection RCA and a source reproducer; parent owns integration/installed channel QA. Planck retains the protected current science/viewer. PR394 shared source binding/projection owners remain Root-owned; source changes crossing that boundary require coordination first. Both source-qualified calibration442 and stream progress443 are merged/private installed, but neither establishes this route. We will first check whether an existing public typed source-selection contract can satisfy the workflow; no guessed channel filenames or competing inventory store.
Let read-only acquisition inventory expose exact source planes (#445)
trissim commentedon Oct 2, 2026
Singer source checkpoint is now visible in draft #446 at bfbfd21 (qualified production 1075123). This confirms missing acquisition-plane QA access, not a channel swap. Read-only inspection now uses the selected metadata owner's exact dataset; auto/workspace and generic pipeline inventory retain persisted C1 precedence. Existing requests suffice: explicit original handler query -> select actual returned channel record/virtual_path -> exact bounded sample/stream. Ambiguous physical-container paths remain rejected.
5 source journey/new-case tests PASS under 1CPU/512MiB/no-swap/60s; original unchanged full changed-production R0 PASS with no positive deltas (service excess -13). Original red, harness corrections and first failed R0 are preserved byte-exact in docs/validation/physical-source-inspection-445-source-20261002.tar.gz; receipt docs/validation/physical-source-inspection-445.rst.
Only plate_image_inventory.py and plate_inspection_service.py production paths changed. Root #394 ownership checked/coordinated; no shared hunk/foreign WT, new selector mode/registry/decoder, installed package, native/science run or Planck viewer touched. Parent installed original-C1/C3 receiving/native QA remains required; issue stays OPEN. #404 graph receiving and #440/#441 acceptance remain separate.
Merge pull request #446 from OpenHCSDev/fix/physical-source-inspectio…
trissim commentedon Oct 2, 2026
PR446 is merged on main58ee773 and its ordinary installed public entrypoint has passed the original physical-source fixture: auto keeps the persisted C1-only workspace (count1), explicit bioformats exposes physical C1/C2/C3(count3), returned C3 samples exact declared pixels, ambiguous container selection refuses to guess, and the persisted workspace hash remains unchanged after streaming. Fresh native Napari on isolated :92 mounts C1/C3 with actual semantic channel values1/3, exact respective pixel samples and .5 XY scale. Parent personally opened independently windowed C1/C3 PNGs. Planck is now checking actual retinal physical C1/C3 through a separate source-only private viewer while preserving the old saved analysis and its live viewer. No claim yet about retinal biological segmentation acceptance.
trissim commentedon Oct 2, 2026
Actual installed446 retinal C1/C3 individual-channel QA is now complete: authoritative physical records, bounded exact samples, unchanged original acquisition/metadata, correct0.123530549um XY and12 matched native MCP captures personally opened by both worker and parent. Reopening/pipeline projection remains untouched. Explicit acceptance also asks for simultaneous composite: current disjoint channel translations cannot provide it through exposed controls. That remaining first-class native presentation defect is451, source owner Schrodinger. Keeping445 open until that final composite acceptance is live, rather than presenting separate visible routes as a composite. Original cold inventory observation timeout remains preserved, not replayed or erased by warm reads.
trissim commentedon Oct 6, 2026
Closing after checking current main and the subsequent owning-source history, not merely the associated PR.
PlateImageInventory.from_read_only_handlerinventories the acquisition metadata owner through its exact source dataset, while the orchestrator retains its persisted workspace projection. Source sampling follows the record’s SourcePixelRef rather than substituting the projected C1 image. The physical inventory fix is retained on current main, including later inventory-scope changes. Installed same-coordinate C1/C3 sampling, streaming and the composite path were exercised; the later installed/native composite acceptance is recorded here: #454 (comment) . This resolves the original physical-channel QA access defect without requiring a biological rerun. Separate viewer/late-WM defects are not claimed fixed by this closure.