Repository navigation
fix(retirement): give new journals an independent field owner - #5045
Conversation
Validated head: The complete guarded entrypoint checks that the writer names its own field manager. An anonymous loopback API then exercises the real kubectl PATCH, checks the dedicated manager query parameter, and rejects a changed namespace UID/resource-version test or journal binding. Removing the new manager flag reproduced a failure against that native request control; restoring it passed. Go 1.26.9 affected-package race tests passed in 48.272s; the focused native and entrypoint controls passed in 2.437s. Affected-package vet, formatting and diff checks passed. The native kubectl transport ran locally. The existing required hosted job supplies the pinned Helm 4.2 full-controller control; that optional local test was skipped because this host has a different Helm version. Correctness and simplification review: the production change is one explicit manager option on the existing JSON Patch. No journal value, UID/resource-version precondition, deletion scope, policy, replay gate or retained-data path changes. The added transport fixture preserves the prune-protection annotation as well as the journal. This writer fix does not migrate an existing journal. Current terminal maintenance remains with #5042/#5044. This author review satisfies no external review gate. Keep the PR draft until #5040 is merged, then bind current-head hosted checks and a substantive review before promotion. |
Integrated reviewed main Validation at this integrated tree: Go 1.26.9 affected-package race suite passed in 46.383 seconds, including the native kubectl journal transport; affected-package vet, diff checks and the existing PR-body contract passed. The separately pinned native Helm controller control is left to the required hosted job; the local run does not prove that controller path or production acceptance. The PR remains draft, with no auto-merge or queue entry. New-head hosted checks and ordered semantic review are still required. This fixes ownership for future journals; it does not clear the existing journal or resolve the production recovery tracked in #5042. |
Hosted validation is now verified at The Detect Changes job completed the full Go helper suite, native retirement result classification, and stateless retirement preservation. Its preserved log shows checksum-pinned Helm 4.2.0, the mandatory native-control flag enabled, and the affected retirement race suite passing in 63.925 seconds. This closes the hosted native-controller validation gap recorded in the prior integration receipt. This verifies the offline native control at this head. Current-head semantic review remains required; it does not establish production recovery or acceptance of a live journal change. The PR stays draft. |
@coderabbitai full review |
✅ Action performedFull review finished. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📜 Recent review details
📝 Walkthrough
Priority: ➖ Normal Severity of issue fixed: Medium Merge Risk: ⚪ Minimal · up to
|
Addressed the current-head CodeRabbit docstring warning in signed commit At this tree, the affected retirement package race suite passed in 84.440 seconds with a five-minute test deadline. Formatting and diff checks passed. A Go parser audit confirmed attached doc comments on all three named declarations changed by this PR, including the existing native kubectl regression. Fresh hosted checks and semantic review are required for this new head. The PR stays draft; the earlier hosted controller evidence and review remain bound to the previous head. This does not clear an existing retirement journal or authorize a production replay. Recovery remains tracked in #5042. |
@coderabbitai full review |
✅ Action performedFull review finished. |
Hosted validation is verified at The Detect Changes job exercised the retirement race suite with checksum-verified Helm 4.2.0 and mandatory native controls enabled; it passed in 43.243 seconds. The complete current-head check collection contains 19 successes, 15 skips and no failed or pending checks. The complete four-file diff preserves the journal identity checks and adds its independent field manager with native kubectl coverage. No further correctness or simplification change was identified in the author review. This receipt verifies offline behavior at the documentation-fix head; it does not establish production recovery. Current-head semantic review has been requested, and the PR remains draft. |
Resolved by refutation: the Docstring Coverage warning in this review at A Go parser comparison of the complete base and head source finds exactly three changed named function declarations: The reported fourth-function denominator does not establish a missing documentation change in this diff. This resolves that specific coverage warning; no file or check configuration was changed. The ordered review loop restarts at this same head, and the PR stays draft until the new review gate is satisfied. The completed CodeRabbit summary reports zero included reviews remaining, so its current allowance is retained as service state rather than spent on a redundant request. |
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. 🎉 Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Readiness verified at I independently read CI run 39094906604 and its successful Detect Changes job: checksum-pinned Helm 4.2.0 and mandatory native controls exercised the retirement race suite in 43.243 seconds. The complete four-file diff gives new journals their own field manager while retaining the UID, resource-version and journal-binding checks. No correctness or simplification issue was found in this handoff review. The prerequisite #5040 is merged. This is ready for the normal merge queue at the evaluated head, behind the existing recovery entry. Existing-journal maintenance and production recovery remain #5042; this offline proof does not certify either. |
Why
A retirement journal can inherit the application reconciler's ownership and block later deployments when that reconciler tries to remove it. Future operations need their own journal ownership.
What
Give future retirement journals a dedicated owner while preserving their existing identity checks and protections. Existing journal cleanup stays with the separate terminal-maintenance proposal in #5044.
Fixes #5043