docs(release-process): add post-fix repro verification policy

Race-condition and concurrency fixes must include reporter-verified repro confirmation before the originating issue is closed. Adds the checklist and rationale grounded in recent incident examples.

Closes MEDIUM-12
This commit is contained in:
YeonGyu-Kim
2026-05-16 02:12:28 +09:00
parent 3435c9bef2
commit aaa215c5de
+8 -22
View File
@@ -12,33 +12,19 @@ Before publishing a release, maintainers verify:
- User-facing documentation covers new public behavior. - User-facing documentation covers new public behavior.
- Known issues are documented before the release notes are finalized. - Known issues are documented before the release notes are finalized.
CI green is required for release readiness, but CI does not replace manual CI green is required for release readiness, but CI does not replace manual verification for bugs whose reproducer depends on timing, providers, models, or external OpenCode behavior.
verification for bugs whose reproducer depends on timing, providers, models, or
external OpenCode behavior.
## Post-Fix Repro Verification ## Post-Fix Repro Verification
### Policy Race-condition and concurrency fixes must include reporter-verified repro confirmation before the originating issue is closed. CI green is necessary but not sufficient for this class of fix.
For race-condition and concurrency fixes, the original issue reporter, or a
maintainer if the reporter is unavailable, must re-run the documented
reproducer against the fix commit before the issue is closed. CI green is
necessary but not sufficient.
### Checklist ### Checklist
- [ ] Reproducer documented in the issue thread with steps, expected result, - [ ] Original issue reporter (or maintainer if reporter unavailable) re-runs the documented reproducer against the fix commit.
and actual result. - [ ] Re-run result documented in the issue thread as "Repro retested: PASS/FAIL on commit <SHA>".
- [ ] Fix commit identified. - [ ] If repro is environmental (specific OS, model, provider), repro is attempted in matching environment.
- [ ] Reproducer re-run on the fix commit. - [ ] If repro cannot be obtained, this is explicitly noted in the issue close comment AND recorded in release notes as "Fix unverified end-to-end".
- [ ] Result documented in the issue thread as
"Repro retested: PASS on <commit-sha>".
- [ ] If the repro is environmental, such as a specific OS, model, or provider,
the re-run is attempted in matching conditions.
### Escalation ### Rationale
If the repro cannot be obtained, such as a transient race that does not Race-condition fixes that pass CI but were never retested against the original reproducer have historically regressed in production. Issues #4006, #3996, #3962 are recent examples where reporter confirmation was sparse. Issue #4012 (the prompt-async-gate motivating bug) had detailed reporter analysis that drove the eventual fix, and that level of post-fix verification should be the norm for this class.
reproduce locally, the limitation must be noted in the issue close comment and
added to release notes as "Fix unverified end-to-end". Do not close the issue
as fully verified without that disclosure.