docs: add contribution guide and PR template (#163)

This commit is contained in:
Jinjing 2026-03-28 10:44:02 -07:00 committed by GitHub
parent a748c644ee
commit ecec55aca4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 93 additions and 0 deletions

29
.github/pull_request_template.md vendored Normal file
View file

@ -0,0 +1,29 @@
## Summary
Describe the user-visible change.
## Screenshots
- Add screenshots or a screen recording for any new or changed UI behavior.
- If there is no visual change, say `No visual change`.
## Testing
- [ ] `pnpm lint`
- [ ] `pnpm typecheck`
- [ ] `pnpm test`
- [ ] `pnpm build`
- [ ] Added or updated high-quality tests that would catch regressions, or explained why tests were not needed
## AI Review Report
Summarize the code review you ran with your AI coding agent. Include the main risks it checked, what it flagged, and what you changed or verified as a result.
Confirm that the review explicitly checked cross-platform compatibility for macOS, Linux, and Windows, including shortcuts, labels, paths, shell behavior, and any Electron-specific platform differences touched by this PR.
## Security Audit
Provide a basic security audit summary from your AI coding agent. Call out any input handling, command execution, path handling, auth, secrets, dependency, or IPC risks that were reviewed, plus any follow-up needed.
## Notes
Call out any platform-specific behavior, risks, or follow-up work.

62
CONTRIBUTING.md Normal file
View file

@ -0,0 +1,62 @@
# Contributing to Orca
Thanks for contributing to Orca.
## Before You Start
- Keep changes scoped to a clear user-facing improvement, bug fix, or refactor.
- Orca targets macOS, Linux, and Windows. Avoid platform-specific assumptions in shortcuts, labels, and file paths.
- For keyboard shortcuts, use runtime platform checks in renderer code and `CmdOrCtrl` in Electron menu accelerators.
- For shortcut labels, show `⌘` and `⇧` on macOS, and `Ctrl+` and `Shift+` on Linux and Windows.
- For file paths, use Node or Electron path utilities such as `path.join`.
## Local Setup
```bash
pnpm install
pnpm dev
```
## Branch Naming
Use a clear, descriptive branch name that reflects the change.
Good examples:
- `fix/ctrl-backspace-delete-word`
- `feat/shift-enter-newline`
- `chore/update-contributor-guide`
Avoid vague names like `test`, `misc`, or `changes`.
## Before Opening a PR
Run the same checks that CI runs:
```bash
pnpm lint
pnpm typecheck
pnpm test
pnpm build
```
Add high-quality tests for behavior changes and bug fixes. Prefer tests that would actually catch a regression, not shallow coverage that only exercises the happy path.
If your change affects UI or interaction behavior, verify it on the platforms it could impact.
## Pull Requests
Each pull request should:
- explain the user-visible change
- stay focused on a single topic when possible
- include screenshots or screen recordings for new UI or behavior changes
- include high-quality tests when behavior changes or bug fixes warrant them
- include a brief code review summary from your AI coding agent that explicitly checks cross-platform compatibility, plus a basic security audit summary
- mention any platform-specific behavior or testing notes
If there is no visual change, say that explicitly in the PR description.
## Release Process
Version bumps, tags, and releases are maintainer-managed. Do not include release version changes in a normal contribution unless a maintainer asks for them.

View file

@ -28,6 +28,8 @@ Grab a release from https://www.orcabuild.ai/ or download from the GH release pa
## Developing
See [CONTRIBUTING.md](CONTRIBUTING.md) for branch naming, PR expectations, and required checks.
### Install
```bash