Automate UX Forum post-session schedule update and issue creation

Summary

After each UX Forum session, the host must manually (handbook reference):

  1. Remove the completed session row from the UX Forum schedule in gitlab-com/content-sites/handbook
  2. Create a tracking issue from the UX Forum template in gitlab-org/gitlab-design for the next scheduled session, populated with the host and speakers

This is predictable, repetitive work that is easy to forget. We should automate it.

Proposal

Build a scheduled CI pipeline in gitlab-com/designops that:

  1. Runs daily at 9am PDT and parses the schedule table in assets/includes/product/ux-forum-schedule.md
  2. Compares today's date against the schedule rows. If today matches a completed forum date (or is the first business day after), it proceeds. Otherwise it exits as a no-op.
  3. Opens an MR in gitlab-com/content-sites/handbook removing the completed session row from the schedule
  4. Creates a tracking issue in gitlab-org/gitlab-design using the UX Forum template, pre-filled with:
    • Title: UX Forum - {formatted date}
    • Date, host handle, and speaker handles from the next row in the schedule

A manual trigger should also be available as a fallback for re-runs or edge cases.

Additionally, the automation depends on parsing a hand-edited markdown table. If formatting changes, the parser breaks. We should add a CI lint check on the schedule file to catch malformed rows early

Why the schedule file is the source of truth for timing

The UX Forum does not follow a fixed cron cadence — dates are explicitly set and alternate timezone slots. Rather than hardcoding a biweekly cron that drifts, the pipeline runs daily and reads the schedule file to determine whether a forum just occurred. This means:

  • If a forum is rescheduled and the markdown is updated, the automation follows automatically
  • No cron maintenance or multiple scheduled pipelines needed
  • The cost is a daily no-op pipeline, which is cheap

Scope

In scope:

  • Schedule row removal (via MR)
  • Next-session issue creation (pre-filled from schedule)
  • Manual trigger fallback

Out of scope:

  • Video upload or Slack notifications
  • Schedule generation (the rotation is still managed by Design Managers)

DRI

DesignOps owns creating and maintaining this automation. The UX Forum itself and its schedule remain owned by the Product Design Managers.

References

Edited by Taurie Davis