Compare commits

...

3 commits

Author SHA1 Message Date
a3b268acd7
docs(pr): allow 120-character titles
Refs: PLAT-62
2026-08-04 14:38:36 -04:00
e31dc74795
ci: add org PR policy caller
Refs: PLAT-62
2026-08-04 14:30:23 -04:00
dependabot[bot]
e4edd743f6
build(deps): bump Sea-Haven-Industries/.github/.github/workflows/callable-labeler.yaml (#29)
Some checks are pending
ci / ci / ci (push) Waiting to run
Bumps the minor-and-patch group with 1 update: [Sea-Haven-Industries/.github/.github/workflows/callable-labeler.yaml](https://github.com/sea-haven-industries/.github).


Updates `Sea-Haven-Industries/.github/.github/workflows/callable-labeler.yaml` from 1.0.2 to 1.0.3
- [Release notes](https://github.com/sea-haven-industries/.github/releases)
- [Commits](0170a57c0d...3f74677422)

---
updated-dependencies:
- dependency-name: Sea-Haven-Industries/.github/.github/workflows/callable-labeler.yaml
  dependency-version: 1.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: minor-and-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-04 11:19:35 -04:00
5 changed files with 72 additions and 2 deletions

View file

@ -4,6 +4,8 @@ updates:
directory: "/"
schedule:
interval: "weekly"
commit-message:
prefix: "chore(deps)"
groups:
minor-and-patch:
update-types:

View file

@ -10,4 +10,4 @@ permissions:
jobs:
label:
uses: Sea-Haven-Industries/.github/.github/workflows/callable-labeler.yaml@0170a57c0d99b542cfafd1f3e1d369c32643f486 # v1.0.2
uses: Sea-Haven-Industries/.github/.github/workflows/callable-labeler.yaml@3f746774229d41770727e2e4fd63ed5f5555a8b3 # v1.0.3

22
.github/workflows/policy.yaml vendored Normal file
View file

@ -0,0 +1,22 @@
name: PR Policy
on:
pull_request:
types: [opened, reopened, synchronize, edited, labeled, unlabeled, ready_for_review]
concurrency:
group: "policy-${{ github.event.pull_request.number }}"
cancel-in-progress: true
permissions:
contents: read
issues: read
pull-requests: read
jobs:
policy:
uses: Sea-Haven-Industries/.github/.github/workflows/callable-pr-policy.yaml@9c1ecf942894b19aba5c71b85b41906c6c83b749 # v1.0.5
secrets:
JIRA_CLOUD_ID: ${{ secrets.JIRA_CLOUD_ID }}
JIRA_SERVICE_ACCOUNT_EMAIL: ${{ secrets.JIRA_SERVICE_ACCOUNT_EMAIL }}
JIRA_API_TOKEN: ${{ secrets.JIRA_API_TOKEN }}

46
AGENTS.md Normal file
View file

@ -0,0 +1,46 @@
# Sea Haven Governance
**Standards authority:** engineering-handbook · **Status authority:** Jira
## Routing
- Product / feature work → DEV
- Infrastructure and platform → PLAT
- Security → SEC
## Branches
`feature/`, `fix/`, `hotfix/`, `chore/`, `docs/`, `refactor/`, `release/` + kebab-case description.
No Jira keys in branch names.
## Pull Requests
**Title:** `type(scope): description (DEV-123)` — every non-exempt PR ends with its Jira key.
**Body sections (in order):** Summary · Validation · Tests · Notes — use "None." when a section is empty.
State verifiable facts only. Do not cite the handbook to justify changes.
Allowed types: `feat` `fix` `docs` `style` `refactor` `perf` `test` `build` `ci` `chore` `revert` `release`.
## Security Gates
Changes touching payment flows, authentication, secrets, IaC/IAM, or untrusted user input require
a security review. IAM role, policy, or resource-permission changes require cross-family review.
Lambda handler-signature changes alone do not trigger cross-family review.
## CI and SHA Pins
Pin every GitHub Actions ref to a full commit SHA with an inline version comment:
```yaml
uses: actions/checkout@abc123def456 # v4.1.0
```
The deterministic global pre-push security hook must not be bypassed (`--no-verify` requires
explicit approval). Linting stays in CI; do not gate on it locally.
## Repository Note
**Docs-only repository.** CI runs markdownlint and lychee; no build or test artifacts are produced.
The required check context for branch protection is `ci / ci` — the job must be named literally
`ci / ci` to emit that exact context string. Do not rename the job without updating the ruleset.

View file

@ -15,7 +15,7 @@ Each PR should represent a single logical change. If you find yourself writing "
- Use the Conventional Commit format with a required Jira key suffix: `type(scope): description (KEY-123)`
- `scope` is optional; omit it when the change is broad or no single scope applies
- Active keys are `DEV`, `PLAT`, and `SEC`
- Keep the full title under 72 characters
- Keep the full title at or below 120 characters
- Describe the change, not the ticket
| Good | Bad |