Skip to content

Add hourly Luma event sync workflow + Vercel cron#18

Merged
andrelandgraf merged 2 commits intomainfrom
codex/luma-sync-workflow-cron
Feb 23, 2026
Merged

Add hourly Luma event sync workflow + Vercel cron#18
andrelandgraf merged 2 commits intomainfrom
codex/luma-sync-workflow-cron

Conversation

@andrelandgraf
Copy link
Contributor

@andrelandgraf andrelandgraf commented Feb 22, 2026

Summary

  • add Workflow Development Kit integration (workflow + @workflow/ai) and wrap Next config with withWorkflow
  • add hourly Vercel cron config at app/vercel.json for /api/cron/luma-sync
  • add cron route that starts syncLumaEventsWorkflow via workflow/api
  • implement durable workflow steps to:
    • fetch latest 10 Luma events (calendar handle default: allthingswebcalendar)
    • skip events whose lumaEventId already exists in events table
    • derive ATW event fields from Luma payload
    • call Vercel AI Gateway with model openai/gpt-5.3-medium for structured JSON refinement
    • insert new events with unique slug resolution and private Luma events mapped to isDraft=true
  • update Luma client to support current calendar/list-events response shape and add reusable getCalendarEvents
  • allow optional calendar targeting overrides via LUMA_CALENDAR_API_ID / LUMA_CALENDAR_HANDLE

Validation

  • bun run fmt
  • bun run typecheck
  • bun run build (includes workflow directive discovery + manifest generation)

Notes

  • cron auth uses CRON_SECRET when present
  • AI step requires one of AI_GATEWAY_API_KEY or VERCEL_OIDC_TOKEN; if missing, workflow records an error and falls back to deterministic field mapping

@vercel
Copy link

vercel bot commented Feb 22, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
allthingsweb Ready Ready Preview, Comment Feb 22, 2026 0:14am

Request Review

@coderabbitai
Copy link

coderabbitai bot commented Feb 22, 2026

Warning

Rate limit exceeded

@andrelandgraf has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 18 minutes and 21 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch codex/luma-sync-workflow-cron

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@andrelandgraf andrelandgraf merged commit d21387b into main Feb 23, 2026
4 checks passed
@andrelandgraf andrelandgraf deleted the codex/luma-sync-workflow-cron branch February 23, 2026 00:00
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