Workflow and Pipeline Governance Framework
Canonical reference for the Livepeer Docs workflow and pipeline architecture. 8 decisions locked (D-ACT-01 through D-ACT-08).
Full specification: .github/workspace/framework-canonical.md
Decisions log: .github/workspace/decisions-log.mdx
Purpose
This repo is ownerless and self-governed. It must self-repair and self-document through automated pipelines. This framework defines how those pipelines are built, what they must do, and how they are governed.
What the product needs to do:
- Protect itself - detect breaks, auto-fix what it can, raise issues for what it cannot, block bad changes
- Keep itself current - pull fresh external data, regenerate derived files, detect drift
- Maintain its own standards - enforce voice, grammar, spelling, terminology, visual identity
- Make itself findable - keep AI/search surfaces regenerated on every change
- Document itself - catalogues, indexes, registries auto-regenerate
- Govern itself - rules enforced, issues managed, drift self-healed
Pipeline Architecture (D-ACT-08)
The dispatcher model
All workflow YAML files are dispatchers. They handle when, where, permissions, and orchestration. The typed work lives in scripts. The type classification comes from what the script does, not the workflow.
Pipeline patterns
Generate/verify pairs
Every generator (Pattern B) must have a matching verifier (Pattern C) that runs on PR with --check flag.
Taxonomy
Types (7 values, D-ACT-01, D-ACT-07)
Concerns (7 values, D-ACT-05)
Workflow file naming (D-ACT-04)
Pattern: type-concern-verb-name.yml
Example: integrator-maintenance-update-contract-addresses.yml
Segments:
- type: one of the 7 type values
- concern: one of the 7 concern values
- function (11 verbs, closed enum):
update, generate, check, scan, repair, dispatch, label, index, intake, close, assign
- name: descriptive kebab-case slug
Naming quality rule: The name must describe what the workflow does, not how it is implemented. If someone unfamiliar with the repo cannot guess the purpose from the filename alone, the name is bad.
Canonical sources
- Full specification:
.github/workspace/framework-canonical.md
- Decisions:
.github/workspace/decisions-log.mdx
- Per-action docs:
.github/workspace/actions-library/
Last modified on May 31, 2026