> For the complete documentation index, see [llms.txt](https://framework.aic.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://framework.aic.io/technical-guidelines-code-standards-and-tech-stack/devops-repository-and-release-standards/branching-and-pull-request-model.md).

# Branching and Pull Request Model

## AIC Standard

AIC uses trunk-based or lightweight GitFlow depending on customer governance.

Default for most projects:

```
main
feature/{ticket}-{short-description}
hotfix/{ticket}-{short-description}
release/{version}
```

## Main Branch Rules

The main branch must:

* always build
* always pass tests
* be protected
* require pull request review
* require CI status checks
* block force pushes
* block direct commits unless emergency break-glass is approved

## Pull Request Requirements

Every PR should include:

* purpose
* linked work item
* summary of changes
* test evidence
* security impact
* migration impact
* screenshots for UI changes
* breaking change statement
* deployment notes where relevant

## PR Size

Prefer small PRs.

A PR is too large when reviewers cannot understand it in one sitting. Split by behaviour, vertical slice or refactoring step.

## Review Rules

Reviewers check:

* correctness
* design
* security
* tests
* maintainability
* readability
* performance risk
* operational impact
* documentation

## Emergency Change

Emergency changes must still produce evidence after the event:

* reason
* approver
* risk
* diff
* test performed
* release record
* follow-up review
