-
Notifications
You must be signed in to change notification settings - Fork 4
Code of Conduct
Haoxiang Xu edited this page Mar 12, 2026
·
2 revisions
Home | To Developer | Setup | Deployment | Architecture
This page is a lightweight contribution norm for PuPu engineering work. It is not a formal standalone community governance policy. The purpose is to keep collaboration direct, respectful, and technically disciplined.
- Review the code, not the person
- Be specific about behavior changes, regressions, or contract risk
- Prefer concrete evidence such as failing flows, missing tests, or broken invariants
- If you disagree, explain the tradeoff and propose a better path
- If you ask for changes, make it clear whether they are blocking or optional
- Describe the behavior change, not just the files touched
- Call out user-visible changes, runtime contract changes, and migration risk
- Keep unrelated refactors out of the same PR
- If you change setup, deployment, or runtime assumptions, update the relevant docs in the same change
- If you change a shared primitive, mention Mini UI impact explicitly
- Behavior changes need targeted tests when a meaningful test surface exists
- Prefer targeted verification over broad hand-waving
- If a change crosses renderer, preload, main, and sidecar boundaries, verify the end-to-end path rather than only the local helper you edited
- If you skip tests, say why
Do not take shortcuts around the app boundary model:
- Do not call
window.*APIdirectly from page or feature code whensrc/SERVICEs/api.jsor a bridge helper already owns the contract - Do not add raw sidecar
fetch(...)calls from product components - Do not turn internal implementation details into accidental public APIs
- Do not rewrite workspace, memory, or stream payload contracts without updating both sides of the boundary
- Never commit secrets, API keys, or private signing material
- Treat provider keys as runtime configuration, not source code
- Be careful with logs and screenshots when they may expose local file paths, tokens, or private prompt content
- PuPu is a desktop app for macOS, Windows, and Linux
- Packaging, runtime paths, and window behavior are platform-sensitive
- Do not assume a fix tested on one host is correct everywhere
- For release-impacting work, verify the target OS path specifically
The repo currently enforces a merge policy in GitHub Actions:
-
mainonly accepts pull requests whose source branch isdev
Plan your branch and release workflow accordingly. Do not rely on direct feature branch merges into main.
- Assume good intent
- Raise the technical bar without being hostile
- Keep changes small enough to review honestly
- Prefer clarity over cleverness
- Leave the repo more understandable than you found it