Skip to content

#20 known defects: unbounded ZIP processing and EXIF geometry #142

Description

@SamGu-NRX

These defects remain in the reconstruction worker at 74f7a98. The worker is a draft handoff to Hunter's team, and neither the app nor the demo uses it. The manager accepted documentation and follow-up ownership instead of another repair round.

Unbounded ZIP processing

recon/recon/capture.py:118-130 reads the whole archive to hash it, constructs all ZIP metadata, then extracts members without resource bounds. A large archive can exhaust memory, and a highly compressed member can consume the available disk before manifest validation.

A repair needs bounded archive hashing, metadata and expanded-data limits, and extraction that stops at those limits. Verify rejection with small or mocked inputs, not a large archive on the shared Mac.

Review: #20 (comment)

EXIF rotation without matching camera geometry

recon/recon/depth.py:98-105 loads keyframes with OpenCV's default orientation behavior. An EXIF orientation of 3 rotates pixels 180 degrees but preserves width and height, so the current dimension check passes while pose and intrinsics still describe the sensor image.

A tiny 24x16 JPEG reproduced this with the actual _image helper. A repair needs orientation ignored for sensor-aligned packets, or the image and camera geometry transformed together. Add a dimension-preserving orientation regression.

Review: #20 (comment)

The earlier geometry and clearance defects remain documented in HANDOFF.md section 6. This issue does not claim any defect is fixed or approve production use.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions