What problem does it solve?
Writing or editing GitHub Actions workflows in a large public monorepo involves many non-obvious constraints: GitHub's 500-runs-per-10s dispatch cap, concurrency grouping, fork-safe secrets, checkout performance on a 4.6 GiB repo, and required-check gate semantics. This Skill encodes PostHog's workflow-authoring conventions and the reasoning behind them so changes pass the linters and avoid known failure modes.
Core Features & Use Cases
- Dispatch budget management: Fold small PR workflows into a single
workflow_call parent and prefer trigger-level paths: filters to stay under the 500 runs/10s dispatch cap.
- Concurrency and required-check gates: Apply the canonical per-PR concurrency block, per-SHA push grouping, and fail-closed
always() gate jobs that allowlist every dependency result.
- Checkout and caching optimization: Use sparse-checkout with cone mode off, bounded
fetch-depth: 1000 plus blob:none for base diffs, and restore the master schema dump before running migrations.
- Fork-safe secrets and tokens: Guard secret-needing steps with same-repo checks, use dedicated GitHub App tokens with
|| github.token fallback, and never run untrusted fork code with secrets.
- Use Case: When adding a new CI workflow for a service, follow the new-workflow checklist covering triggers, concurrency, timeouts, SHA-pinned actions, runner choice, and fork handling, then verify with
bin/hogli lint:workflows and actionlint.
Quick Start
Ask the assistant to create a new GitHub Actions workflow for your service following the authoring-ci-workflows conventions and checklist.