Conversation
|
| Never overwrite an immutable version in place. A failed reload records a | ||
| pending activation and restores the previous `current` and `shared-server` | ||
| versions. Keep the previous version until the replacement has started, passed | ||
| its compatibility checks, and resumed the session. |
There was a problem hiding this comment.
The guide promises that a failed reload records pending activation and restores both channels, but publication moves current before PendingActivation is durably saved. If the process stops in that interval, the new current remains active without the previous channel pair required for automatic rollback. This is a non-blocking documentation and recovery concern; either make publication and activation recording recoverable as one operation or document this interruption case.
Prompt To Fix With AI
This is a comment left during a code review.
Path: docs/SELFDEV_UPGRADE.md
Line: 30-33
Comment:
**Rollback guarantee has gap**
The guide promises that a failed reload records pending activation and restores both channels, but publication moves `current` before `PendingActivation` is durably saved. If the process stops in that interval, the new `current` remains active without the previous channel pair required for automatic rollback. This is a non-blocking documentation and recovery concern; either make publication and activation recording recoverable as one operation or document this interruption case.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.41f51e0 to
b7bace1
Compare
Summary
Expose durable build identity and upgrade-channel information so self-dev client and shared-server binaries can be diagnosed and safely rolled back after upgrades.
Changes
The external provider protocol and extension registry are separate concerns and are not part of this PR's intended review scope.
Validation
upstream/mastercompleted successfully.Closes #1257
Refs #917
Refs #799