mirror of
https://github.com/zoriya/v10.git
synced 2026-08-16 02:45:09 +00:00
2.5 KiB
2.5 KiB
Pull Requests
Conventions for PR titles and descriptions.
PR Title
Same as commit message format:
type(scope): lowercase description
Exceptions:
| Prefix | Use for |
|---|---|
[RFC] |
Request for comments / proposals |
Discovery: |
Exploration / research / prototyping |
Note: RFC PRs use [RFC] Title format while open. When merged, the squash commit uses docs(rfc): title.
PR Body Template
Refs #123
Closes #456
## Summary
[1-3 sentences: what changed and why]
## Changes
[Bullet points of meaningful changes — describe behavior, NOT file list]
<details>
<summary>Implementation details</summary>
[Only if complex: architecture decisions, tradeoffs, notable patterns]
</details>
## Testing
[How to verify: manual steps, test commands, or "covered by existing tests"]
Issue Linking
| Keyword | Effect |
|---|---|
Refs |
Links to related issue (stays open) |
Closes |
Closes issue when PR merges |
Fixes |
Closes issue when PR merges |
Place issue references at the top of the body, before Summary.
Description Principles
- Progressive disclosure — summary visible, details collapsed
- Why over what — explain motivation, not mechanics
- Human-readable — no file lists or auto-generated noise
- Concise — reviewers should understand in 30 seconds
What NOT to Include
- File lists (reviewers see the diff)
- Auto-generated changelogs
- Excessive implementation details (use
<details>if needed) - Screenshots unless UI change (prefer before/after if included)
Examples
Feature PR
Closes #42
## Summary
Add volume slider component with keyboard support and ARIA labels.
## Changes
- Volume slider with drag and click interactions
- Keyboard control: arrow keys adjust by 5%, Page Up/Down by 10%
- Muted state toggle via slider or M key
- ARIA: `slider` role with proper labeling
## Testing
1. `pnpm -F @videojs/html test`
2. Manual: drag slider, use keyboard, verify screen reader announces changes
Bug Fix PR
Fixes #89
## Summary
Fix race condition where rapid play/pause could leave player in inconsistent state.
## Changes
- Add guard to debounce rapid play/pause calls
- Prevent redundant state transitions
## Testing
Covered by new test in `media-feature.test.ts`. Manual: rapidly click play/pause.