-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Description
Overview
The MapPhase step now produces data using Polars LazyFrames, but the PatchPhase step still uses the legacy implementation and cannot process this new output. To keep the pipeline consistent and efficient, the PatchPhase phase must be updated to use the Polars version. This will keep existing behaviour while modernising the underlying process.
Tech Approach
- Update digital_land/phase/PatchPhase.py so it delegates to the Polars PatchPhase implementation.
- Implement the full PatchPhase logic inside digital_land/phase_polars/transform/PatchPhase.py.
- Convert existing PatchPhase rules into Polars lazy transformations.
- Ensure the PatchPhase phase accepts the LazyFrame produced by the new PatchPhase step.
- Keep the same public interface so no downstream code needs changing.
Acceptance Criteria/Tests
- PatchPhase phase accepts the PatchPhase phase LazyFrame without errors.
- Legacy PatchPhase behaviour is reproduced using Polars.
- Outputs match the legacy PatchPhase phase (apart from expected improvements).
- No Pandas or row‑based Python operations are used.
- Add test cases
- Refactored code complies with project formatting and style standards (black/flake8/pep)
Resourcing & Dependencies
Depends on MapPhase, no external teams.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
In Review / QA 🔎