Update the automated social media publishing system to act as a queue. This ensures that all posts for a given day are published on the same day, prevents duplicate posts, and handles timing preferences (specifically, waiting for the site build and posting morning posts around 6:00am PT).
Currently, .github/workflows/publish_social.yml runs once a day at 22:00 UTC and only posts the first matching snippet for the current date. scripts/publish_social.py does not track state across runs. We want to convert this into an event-driven and scheduled queue system.
scripts/publish_social.py)_snippets/ (not just today’s) that does not contain published: true in its frontmatter..md file to inject published: true and published_at: <timestamp> into the frontmatter..github/workflows/publish_social.yml)cron: '0 13 * * *' (which corresponds to 13:00 UTC / 6:00 AM PT in PDT/PST roughly - we’ll use 14:00 UTC to be safe for 6:00 AM PST or 13:00 UTC for PDT. Let’s use 0 13 * * * and 0 14 * * * or just leave it to run on page_build only? Wait, we’ll use workflow_run on pages-build-deployment or page_build and a specific morning cron.page_build event trigger to catch ad-hoc builds during the day.git user.git add _snippets/, git commit -m "chore: mark social snippets as published", and git push.permissions: contents: write.