ci: add branch-policy workflow and gitlint config #1

Merged
pappi merged 1 commit from agent/add-branch-policy-workflow into main 2026-05-09 02:03:14 +00:00
Owner

What

Adds the B3 git commit & merge policy artifacts to this repo:

  • .forgejo/workflows/branch-policy.yml — CI workflow validating
    branch name regex, commit messages, PR title, and PR body
    structure on every pull request.
  • .gitlint — client-side commit-message linting config matching
    what the CI workflow enforces.
  • .forgejo/PULL_REQUEST_TEMPLATE.md — skeleton with the three
    required sections (## What / ## Why / ## How verified).

Why

Implements B3 Decisions D1-D13 (platform/docs/wip/B3-git-policy.md,
reproduced as D19-D31 in
automation/forgejo/docs/decisions.md). This is the first per-repo
PR that lands the workflow file itself; per B3 §3 chicken-and-egg
note, this PR is not gated by the workflow (it doesn't exist on
origin/main yet). Every subsequent PR against this repo will be
gated by the workflow installed here.

How verified

  • YAML lint clean on branch-policy.yml; loads under PyYAML.
  • gitlint config parses (gitlint --config .gitlint --debug).
  • PR template renders as valid markdown with three required H2
    headings.
  • Files are byte-identical across all 6 repos, sourced from
    automation/forgejo/templates/branch-policy/ via
    automation/forgejo/scripts/distribute-branch-policy.sh.

Refs: B3 (platform/docs/wip/B3-git-policy.md), in-tree decisions
D19-D31 in automation/forgejo/docs/decisions.md.

## What Adds the B3 git commit & merge policy artifacts to this repo: - `.forgejo/workflows/branch-policy.yml` — CI workflow validating branch name regex, commit messages, PR title, and PR body structure on every pull request. - `.gitlint` — client-side commit-message linting config matching what the CI workflow enforces. - `.forgejo/PULL_REQUEST_TEMPLATE.md` — skeleton with the three required sections (`## What` / `## Why` / `## How verified`). ## Why Implements B3 Decisions D1-D13 (`platform/docs/wip/B3-git-policy.md`, reproduced as D19-D31 in `automation/forgejo/docs/decisions.md`). This is the first per-repo PR that lands the workflow file itself; per B3 §3 chicken-and-egg note, this PR is **not** gated by the workflow (it doesn't exist on `origin/main` yet). Every subsequent PR against this repo will be gated by the workflow installed here. ## How verified - YAML lint clean on `branch-policy.yml`; loads under PyYAML. - gitlint config parses (`gitlint --config .gitlint --debug`). - PR template renders as valid markdown with three required H2 headings. - Files are byte-identical across all 6 repos, sourced from `automation/forgejo/templates/branch-policy/` via `automation/forgejo/scripts/distribute-branch-policy.sh`. --- Refs: B3 (`platform/docs/wip/B3-git-policy.md`), in-tree decisions D19-D31 in `automation/forgejo/docs/decisions.md`.
ci: add branch-policy workflow and gitlint config
Some checks failed
Branch policy / branch-policy (pull_request) Failing after 1s
d02cb09017
pappi merged commit 62f551a1f1 into main 2026-05-09 02:03:14 +00:00
pappi deleted branch agent/add-branch-policy-workflow 2026-05-09 02:03:21 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
hanuman/portal-operations!1
No description provided.