Skip to content

Fix: Fast Ortho #716 #714#730

Merged
spwoodcock merged 37 commits intodevfrom
fix/partial-ortho
Feb 25, 2026
Merged

Fix: Fast Ortho #716 #714#730
spwoodcock merged 37 commits intodevfrom
fix/partial-ortho

Conversation

@FeezyHendrix
Copy link
Collaborator

@FeezyHendrix FeezyHendrix commented Feb 23, 2026

What type of PR is this? (check all applicable)

  • 🍕 Feature
  • 🐛 Bug Fix
  • 📝 Documentation
  • 🧑‍💻 Refactor
  • ✅ Test
  • 🤖 Build or CI
  • ❓ Other (please specify)

Related Issue

Fixes #714 Fixes #716

Describe this PR

This PR adds a Processing Status Dialog and enhances the drone image processing workflow to address UX issues with partial imagery uploads and task processing.

Key Changes:

Processing Status Dialog:

  • New dialog to view processing status for each task in a project
  • Color-coded task state indicators (uploaded, processing, finished, failed)
  • Selective task processing - choose specific tasks to process
  • "Process All" functionality for entire project processing
  • Shows image counts per task

Drone Image Processing Workflow:

  • Multi-step workflow: Upload → Classification → Review → Processing
  • Abort confirmation when canceling mid-upload (deletes batch from DB)
  • Visual step switcher for progress tracking

Backend Image Processing (src/backend/app/images/):

  • Flight gap identification
  • Flight tail removal algorithms
  • Image classification system

Frontend Services:

  • New classification.ts service for image classification API
  • Enhanced task asset management

Screenshots

Please provide screenshots of the change.

Alternative Approaches Considered

  • Considered auto-refreshing the page after processing, but opted for a dedicated dialog for better user control
  • Evaluated hiding upload flow for already-uploaded images, but chose to display a clear message with direct access to processing

Review Guide

  1. Test Processing Status Dialog: Open from individual project page with uploaded imagery
  2. Test abort workflow: Start upload, cancel, verify batch is deleted
  3. Test selective processing: Select specific tasks, verify only those are submitted
  4. Test full project processing: Use "Process All" button

Checklist before requesting a review

  • 📖 Read the HOT Code of Conduct: https://docs.hotosm.org/code-of-conduct
  • 👷‍♀️ Create small PRs. In most cases, this will be possible.
  • ✅ Provide tests for your changes.
  • 📝 Use descriptive commit messages.
  • 📗 Update any related documentation and include any relevant screenshots.

kaditya97 and others added 30 commits September 29, 2025 10:57
Update with develop branch with fix for terrain flowing
Update with develop for profile section
* feat: add otel settings to config

* feat: update sentry's otel integration and register sentry tracer with the application. update documents and example env around new environmental variables that are needed

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* feat: move sentry initialization logic to lifespan

* feat: tweaks to config.py to get rid of unrelated code

* docs: add note about log level, and provide a default for SENTRY_DSN

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* build: define an optional INSTALL_MONITORING argument that can be uncommented in dev environments to enable Sentry logging

* fix: address PR comment

* feat: add psycopg instrumentor and update psycopg instrumentation library

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* build: bring other OTEL integration versions in line with psycopg's

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
…oring (#680)

* docs: make it clearer to the reader about how to set up monitoring

* feat: better guarding against missing dependencies when monitoring is enabled

* docs: fix location of file with the relevant variabe

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* refactor: remove INSTALL_MONITORING as it doesn't belong in compose.yaml and update setup accordingly

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* feat/refactor: remove INSTALL_MONITORING var and instead use docker-entrypoint.sh to chck for MONITORING value

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* feat/refactor: revert changes to docker entry point, supply MONITORING arg to Dockerfile and github action

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* feat/refactor: revert changes to docker entry point, supply MONITORING arg to Dockerfile and github action

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* revert: restore line in github action

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
@github-actions github-actions bot added bug Something isn't working docs Improvements or additions to documentation backend Related to backend code frontend labels Feb 23, 2026
@spwoodcock
Copy link
Member

Nice, thank you! Will review today 😃

@spwoodcock spwoodcock merged commit 0940e9c into dev Feb 25, 2026
3 checks passed
@spwoodcock spwoodcock deleted the fix/partial-ortho branch February 25, 2026 16:29
@spwoodcock
Copy link
Member

Thanks! Its running on dev.dronetm.org now 😃

We are very close to the full release! 🙌

konishon pushed a commit to konishon/drone-tm that referenced this pull request Feb 26, 2026
* feat(backend): add Sentry OTEL traces to prod (hotosm#675)

* feat: add otel settings to config

* feat: update sentry's otel integration and register sentry tracer with the application. update documents and example env around new environmental variables that are needed

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* feat: move sentry initialization logic to lifespan

* feat: tweaks to config.py to get rid of unrelated code

* docs: add note about log level, and provide a default for SENTRY_DSN

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* build: define an optional INSTALL_MONITORING argument that can be uncommented in dev environments to enable Sentry logging

* fix: address PR comment

* feat: add psycopg instrumentor and update psycopg instrumentation library

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* build: bring other OTEL integration versions in line with psycopg's

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Remove Monitoring ENV defaults + improve exception handling for monitoring (hotosm#680)

* docs: make it clearer to the reader about how to set up monitoring

* feat: better guarding against missing dependencies when monitoring is enabled

* docs: fix location of file with the relevant variabe

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(backend): OTEL follow up part 2 (hotosm#681)

* refactor: remove INSTALL_MONITORING as it doesn't belong in compose.yaml and update setup accordingly

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* feat/refactor: remove INSTALL_MONITORING var and instead use docker-entrypoint.sh to chck for MONITORING value

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* feat/refactor: revert changes to docker entry point, supply MONITORING arg to Dockerfile and github action

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* feat/refactor: revert changes to docker entry point, supply MONITORING arg to Dockerfile and github action

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* revert: restore line in github action

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* fix(frontend): add osm raster tile fallback on vector tile failure

* ci: remove MONITORING extra_build_args as already hardcoded downstream

* fix(frontend): revert to maplibre demotiles for basemap

* build: bump version 2025.4.0 --> 2025.5.0

* fix(image-upload-workflow): add processing status dialog and enhance task asset management

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* feat(image-upload): add onCancel prop and handle upload cancellation

* build: fix build by relocking uv deps

* fix(backend): remove added SITE_NAME param merged from de

---------

Co-authored-by: Aditya Kushwaha <50064160+kaditya97@users.noreply.github.com>
Co-authored-by: spwoodcock <sam.woodcock@protonmail.com>
Co-authored-by: Stanley Liu <53650048+stanleypliu@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend Related to backend code bug Something isn't working docs Improvements or additions to documentation frontend

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Better handling for when the user aborts the photo upload process by accident Issues with task area fast orthophoto process triggering

4 participants