Files
wwelsh 3da3504152 Add GitHub commit polling for new commit detection
Implements local polling-based commit detection without requiring webhooks or public endpoints. Perfect for local development workflow.

Backend Changes:
- Added commit tracking columns to projects table:
  * latest_commit_sha: SHA of latest commit on branch
  * latest_commit_message: Commit message preview
  * latest_commit_author: Commit author name
  * latest_commit_date: Commit timestamp
  * last_commit_check: Last time commits were checked
- Created commitPoller service that:
  * Polls all projects every 60 seconds (configurable)
  * Uses GitHub API to check for new commits on tracked branch
  * Compares latest remote commit with deployed commit
  * Updates project with latest commit information
- Integrated poller into server lifecycle (start/stop)

Frontend Changes:
- Enhanced pipeline to detect new commits:
  * Compares project.latest_commit_sha with deployment.commit_sha
  * Shows yellow warning in GitHub stage when new commit detected
  * Displays commit message preview (first 50 chars)
  * Action button: "Deploy new?" for one-click deployment
- New commit detection shown when deployment is running or stopped
- Does not interfere with active builds/deployments

Benefits:
- Works entirely locally without exposing ports
- No webhook configuration required
- Uses existing GitHub access tokens
- Real-time commit awareness within 60 seconds
- Helps catch commits before pushing to production
- Perfect for intermediate testing step before Railway deployment
2025-11-13 07:06:27 +00:00
..