You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs(sdk): Rewrite Code Submission spec for readability (#17015)
Rewrites the Code Submission standards page to be more human-friendly:
- Add intro paragraph explaining the purpose of these standards
- Replace rigid Rule/Enforcement/Per-SDK override template with natural
prose
- Merge PR-related sections (draft mode, description quality, focused
PRs) into one cohesive section
- Remove username prefix from branch naming convention
- Add context explaining why AI attribution matters
- Remove enforcement boilerplate and StatusBadge components
- Promote spec status to stable, bump to v1.2.0
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
These standards cover how code gets into SDK repositories — from branch names and commit messages through to PR descriptions and changelogs. The goal is consistency across SDKs so that contributors and reviewers can move between repos without friction.
The **footer** is for issue references (`Fixes SENTRY-1234`, `Refs LINEAR-ABC-123`), breaking change notices (`BREAKING CHANGE:`), and [AI attribution](#ai-attribution).
70
50
71
-
#### Per-SDK override
72
-
73
-
<StatusBadgetype="no" /> Scope values are SDK-specific.
51
+
See [Commit Messages](/engineering-practices/commit-messages/) for more examples and guidance.
- Links to relevant issues or tickets (**REQUIRED** except for typo fixes and one-line doc changes)
118
-
- Alternative approaches considered (if any)
119
-
- Additional context reviewers need
120
-
121
-
Test plan sections, checkbox lists, and boilerplate are not allowed. The tests in the diff serve as the test plan. Blank descriptions, template-only descriptions, and AI-generated filler are not acceptable. PR descriptions **MUST NOT** include any customer data or sensitive information.
Create PRs as drafts. Mark them ready for review once CI passes and the description is complete.
169
79
170
-
#### Rule
80
+
###Write a useful description
171
81
172
-
User-facing changes (`feat`, `fix`, `perf`, breaking) **REQUIRE** a changelog entry. Internal changes exempt. Override with `skip-changelog` label.
82
+
Every PR needs a description that tells reviewers:
173
83
174
-
#### Enforcement
84
+
- What the PR does and why
85
+
- Links to relevant issues or tickets (required except for typo fixes and one-line doc changes)
86
+
- Alternative approaches considered, if any
87
+
- Additional context reviewers need
175
88
176
-
- CI check
89
+
Skip boilerplate, checkbox lists, and template filler. Don't include customer data or sensitive information. The tests in the diff are the test plan — no need to restate them in the description.
177
90
178
-
#### Per-SDK override
91
+
###Keep PRs focused
179
92
180
-
<StatusBadgetype="yes" /> Format and location vary. Requirement is universal.
93
+
A PR should do one thing well. Don't mix functional changes with unrelated refactors or cleanup. If the work naturally splits into distinct categories, make separate PRs. Smaller, focused PRs are easier to review, reason about, and revert if needed.
A PR **SHOULD** do one thing — and do it well. Avoid mixing functional changes with unrelated refactors, cleanup, or reorganizations. If the work falls into distinct categories, split it into multiple PRs. Smaller, focused PRs are easier to review, reason about, and revert.
User-facing changes (`feat`, `fix`, `perf`, breaking changes) need a changelog entry. Internal changes are exempt. If a user-facing change truly doesn't warrant a changelog entry, use the `skip-changelog` label to opt out.
202
104
203
-
#### Per-SDK override
204
-
205
-
<StatusBadgetype="yes" /> Size thresholds are SDK-specific.
105
+
The format and location of changelog entries varies by SDK, but the requirement itself is universal.
AI-generated changes get `Co-Authored-By` in commit footer (e.g., `Co-Authored-By: Claude <noreply@anthropic.com>`). This is the only AI involvement indicator. "Generated by AI" or similar markers **MUST NOT** appear anywhere.
218
-
219
-
#### Enforcement
220
-
221
-
- AGENTS.md instruction
115
+
AI models improve over time, and future models will understand the shortcomings of earlier versions. Tagging commits with the model that produced them gives useful signal when debugging — if you know a commit was generated by an older model, you can focus on the kinds of mistakes that model was prone to.
222
116
223
-
#### Suggested skill(s)
117
+
When AI generates or substantially contributes to a commit, add a `Co-Authored-By` line in the commit footer:
0 commit comments