Skip to content

[codex] Validate plugin output before backprojection#81

Open
den-sq wants to merge 2 commits into
mainfrom
codex/auto-5-plugin-backproject
Open

[codex] Validate plugin output before backprojection#81
den-sq wants to merge 2 commits into
mainfrom
codex/auto-5-plugin-backproject

Conversation

@den-sq

@den-sq den-sq commented Jun 22, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add a TIFF preflight for plugin segmentation outputs before backprojection starts.
  • Validate straightened-volume D/V/U shape against the matching slice rects and reject unsupported mask dtypes with distinct messages.
  • Fix directory-of-TIFF preflight/memmap handling by using the first sorted TIFF file rather than treating the sorted list as an iterator.
  • Document plugin output shape, dtype, and compression expectations on the backprojection guide.
  • Stabilize an existing float normalization assertion in test_files.py with assert_allclose.

Verification

PYTHONPATH=python /home/dnorthover/miniconda3/envs/lftomo/bin/python -m pytest python/test/helpers/test_files.py
PYTHONPATH=python /home/dnorthover/miniconda3/envs/lftomo/bin/python -m py_compile python/ouroboros/helpers/files.py python/ouroboros/pipeline/backproject_pipeline.py python/test/helpers/test_files.py

The requested combined helper command could not collect python/test/helpers/test_slice.py in this environment because neither system Python nor the lftomo env has cloudvolume installed:

ModuleNotFoundError: No module named 'cloudvolume'

Refs #80.

@den-sq den-sq self-assigned this Jun 22, 2026
@den-sq den-sq marked this pull request as ready for review June 23, 2026 02:04
@tavateva

Copy link
Copy Markdown

Draft Promotion Review ❌ BLOCKED

Reviewed against Draft Promotion Criteria.

Criterion Assessment

  1. CI and mergeability: ⚠️ AMBIGUOUS → FAIL — Mergeable, but 0 CI checks
  2. Issue Acceptance Criteria: ❌ INCOMPLETE — Issue verification requires both test_slice.py and test_files.py; only test_files.py ran
  3. PR body Test Plan checkboxes: ⚠️ INCOMPLETE — test_slice.py not run
  4. Tests run: ❌ INCOMPLETE — Missing cloudvolume blocked test_slice.py execution
  5. Scope: ✅ PASS
  6. Regressions: ⚠️ CANNOT VERIFY — Partial test coverage
  7. Judgement calls: ⚠️ CONCERNING — Dependency issue explained but not resolved

VERDICT: ❌ BLOCKED

Blocking Concerns

Remediation

Install cloudvolume, run test_slice.py, and report results in PR body before promoting from draft.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants