This document defines how developers should work in this repository, especially around the default branch, pull requests, and contribution quality standards.
developis the active collaboration and daily integration branchmasteris the stable release branch, updated by maintainers fromdevelop- Routine feature and fix work should start from the latest
develop - Short-lived feature branches are encouraged for non-trivial changes
- Update your local repository.
- Switch to
develop. - Pull the latest changes from
develop. - Create an optional feature branch from
developfor your work. - Implement and validate your changes locally.
- Open a PR back into
develop. - Merge after review and passing checks.
git checkout develop
git pull origin developgit checkout develop
git pull origin develop
git checkout -b feat/short-descriptiongit push origin feat/short-descriptionDefault target branch:
develop
Typical PR path:
- Develop on a short-lived feature branch created from
develop - Push the branch to the remote
- Open a PR into
develop - Address review feedback
- Merge after approval and passing checks
At minimum, run:
npm run typecheck
npm run build
npm run testIf your change affects runtime behavior or UI, also run:
npm run devManually verify the affected workflow before opening the PR.
Code is easy. Good taste is rare. Review should protect the product experience, not only the implementation.
A PR should be:
- focused on one main purpose
- easy to review
- supported by validation results
- documented when behavior changes
Your PR description should include:
- what changed
- why it changed
- how you verified it
- a video or GIF if UI behavior changed
- unit tests added or updated if project logic changed
Prefer:
- one topic per PR
- minimal unrelated formatting churn
- no opportunistic refactors unless they are necessary for the change
Avoid:
- mixing docs, refactors, and feature work without explanation
- large undocumented behavior changes
- bypassing normal review for risky changes
If you change user-facing text:
- update English and Chinese strings together when possible
- keep wording consistent across docs and UI
Update documentation when changes affect:
- setup
- commands
- runtime requirements
- branch strategy
- release behavior
- contributor workflow
Merge contribution changes into develop only after:
- review feedback is addressed
- checks pass
- the change is considered stable enough for the daily integration branch
master is reserved for stable releases. After maintainers decide the current develop state is ready to publish, they merge develop into master.
Examples:
feat/runtime-settingsfix/connection-probedocs/bilingual-readmerefactor/chat-store
If maintainers later adjust protected branches, required reviewers, or stricter automated gates, this document should be updated to match the repository rules.