Skip to content

Bug fix: Run GitHub-triggered builds asynchronously so pull feedback isn't blocked by the build#67

Draft
jmsunseri wants to merge 2 commits into
coredevices:mainfrom
jmsunseri:github-performance
Draft

Bug fix: Run GitHub-triggered builds asynchronously so pull feedback isn't blocked by the build#67
jmsunseri wants to merge 2 commits into
coredevices:mainfrom
jmsunseri:github-performance

Conversation

@jmsunseri

Copy link
Copy Markdown
Contributor

Fix GitHub pull success feedback to appear when pull completes, not when build finishes

Fixes the pull UX so the green "Pulled successfully" alert and disabled controls are released as soon as the GitHub pull finishes. Previously the Celery task blocked on the optional auto-build, so the frontend didn't get a response until the build completed too.

  • Dispatches run_compile.delay(build.id) from do_github_pull and hooked_commit so the build runs as a separate async task.
  • The pull task returns immediately after pull_complete, letting poll_pull_status/enable_all() fire right away.
  • Build progress is still reported independently via the existing build_start/build_complete SSE events.
  • Updates test_sse.py assertions and fixes a merge-conflict regression in test_git.py.

Running run_compile synchronously blocked the Celery task
until the build finished, delaying the pull_complete UI
feedback. Dispatching via .delay returns immediately so the
frontend can respond to the pull before the build reports
progress independently.
@jmsunseri jmsunseri force-pushed the github-performance branch from a68a20e to c446628 Compare June 17, 2026 12:23
Catch GithubException on hook creation to prevent a 500 error
when the user lacks write access. Roll back the hook UUID and
update the UI message to clarify that write access is required.
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.

1 participant