docs(l0): parameterize hard gates on the project's integration trunk
ci/woodpecker/pr/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
Per Jason's Option-A ruling on #1216: the constitution supplies the general framework; the project declares its own flow. Defines the integration trunk once in CONSTITUTION.md Hard Gates — declared by exactly one 'Integration trunk: <branch>' line in the project's root AGENTS.md, default 'main', value bound by git check-ref-format --branch semantics, malformed or multiple declarations are a hard stop, one trunk only, no gate relaxation — and binds gates 5/15, E2E-DELIVERY, CODE-REVIEW, ORCHESTRATOR(-PROTOCOL), BOOTSTRAP provisioning, and the defaults AGENTS session closure to that term. CI-CD-PIPELINES YAML examples stay on the default trunk with a substitution note. Known mechanized consumer left as tracked follow-up on #1216: pr-merge.sh:133 hardcodes a {main,next} base allowlist — fail-closed (refuses exotic trunks, cannot misroute), to be parameterized with red-first tests separately. Refs #1216 Co-Authored-By: Claude Fable 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01WYgWocp36goy8hj2ui6ps1
This commit is contained in:
co-authored by
Claude Fable 5
parent
7a6fb024b4
commit
18f960d3e1
@@ -10,9 +10,10 @@ If implementation diverges from `docs/PRD.md` or `docs/PRD.json` without PRD upd
|
||||
|
||||
Merge strategy enforcement (HARD RULE):
|
||||
|
||||
- PR target for delivery is `main`.
|
||||
- Direct pushes to `main` are prohibited.
|
||||
- Merge to `main` MUST be squash-only.
|
||||
- The integration trunk is the branch the project's root `AGENTS.md` declares (default: `main`) — see `CONSTITUTION.md` Hard Gates.
|
||||
- PR target for delivery is the integration trunk.
|
||||
- Direct pushes to the integration trunk are prohibited.
|
||||
- Merge to the integration trunk MUST be squash-only.
|
||||
- Use `~/.config/mosaic/tools/git/pr-merge.sh -n {PR_NUMBER} -m squash --expect-head {approved_full_sha}` (or PowerShell equivalent).
|
||||
|
||||
## Review Checklist
|
||||
@@ -114,8 +115,8 @@ Use `~/.config/mosaic/templates/docs/DOCUMENTATION-CHECKLIST.md` whenever code/A
|
||||
# List the issue being addressed
|
||||
~/.config/mosaic/tools/git/issue-list.sh -i {issue-number}
|
||||
|
||||
# View the changes
|
||||
git diff main...HEAD
|
||||
# View the changes (diff against the integration trunk; default: main)
|
||||
git diff {integration_trunk}...HEAD
|
||||
```
|
||||
|
||||
### Providing Feedback
|
||||
@@ -151,4 +152,4 @@ This pattern appears in 3 places. A shared helper would reduce duplication.
|
||||
2. If changes requested, assign back to author
|
||||
3. If approved, note approval in issue comments
|
||||
4. For merges, ensure CI passes first
|
||||
5. Merge PR to `main` with squash strategy only
|
||||
5. Merge PR to the integration trunk with squash strategy only
|
||||
|
||||
Reference in New Issue
Block a user