Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/CODE_REVIEW.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ CODEOWNERS auto-requests the owning reviewer when a risk path changes; with bran
| `iqiglobal-site` | `app/Http/Integrations/**` (ERP/Paynet/Meta) · auth & middleware · `database/migrations/**` · `config/**` · deploy workflows |
| `feed-engine` / `dagster-pipelines` | `@repository` factory files (a `raise` there crashes prod) · any DDL / migration / AUTO_INCREMENT-touching code |

Per-repo CODEOWNERS files are seeded from [`templates/codeowners/`](../templates/codeowners/) in `juwai/standards`.
Per-repo CODEOWNERS files are seeded from the `templates/codeowners/` directory of `juwai/standards` (maintainer setup step — the templates are not synced here), then owned by each repo.

## CI gates & flaky tests

Expand Down
13 changes: 13 additions & 0 deletions docs/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Contributing

How code gets merged around here, in five lines:

1. **Small PRs that do one thing**, with tests, tied to a Linear ticket with clear acceptance criteria.
2. **Self-review before you request review** — you own correctness, especially for agent-written code. See the pre-PR SOP in [CODE_REVIEW.md](CODE_REVIEW.md#author-guide).
3. **Gates must be green** (tests · types · lint) before anyone reads anything. The AI first pass comments; humans are routed by risk via CODEOWNERS.
4. **Review comments use [Conventional Comments](CONVENTIONAL_COMMENTS.md)** — `label (decorations): subject`. Non-blocking means non-blocking; every thread is resolved before merge.
5. **Pick your lane honestly** (trivial-self-merge / announce-then-merge / standard / touches-risk-surface) in the PR template. Risk surfaces always get a full human read.

The full standard lives in [CODE_REVIEW.md](CODE_REVIEW.md). The comment cheat-sheet is [CONVENTIONAL_COMMENTS.md](CONVENTIONAL_COMMENTS.md).

> These files are synced from [`juwai/standards`](https://github.com/juwai/standards) — propose changes there, not here.