Repository navigation
fix: complete safe managed release upgrades - #4565
Merged
Merged
Conversation
This was referenced Oct 8, 2026
yannickmonney
force-pushed
the
fix/automation-hold-deletion-scope
branch
from
October 9, 2026 02:48
4007c11 to
d48a59d
Compare
This was referenced Oct 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Managed upgrades could discard rollback images, expose deployment-control routes or lose legacy execution evidence. Concurrent voice and automation calls could also pass project caps without reserving their pending usage. This change repairs these paths and prepares the complete v0.5.79 upgrade.
Migration 0164 adds nullable attribution and reservation fields without inventing historical data. Legacy rows retain documented fallbacks; all old writers must leave before the new admission guarantees apply. Reserved estimates are not provider invoices or provider-enforced monetary ceilings. Erasure retires automation producers before removing model-operation identities and spend. A failed or held retirement reports Partial and preserves dependent accounting for retry; late settlement uses the erased-user pseudonym.
Includes reviewed component work from #4563, #4564, #4569, #4572, #4573 and #4579. Their PRs remain open until merged inclusion is verified. Published v0.5.78 artifacts remain unchanged. Ops has separately adopted the release source contract and provisioned the comment-intake workflow repair.
Validation: the real-PostgreSQL selected run passed 111/111 records, including all 37 budget, sharing and erasure cases, plus 8/8 prior-schema upgrade checks. The first run failed one stale assertion against refusal wording; after changing it to the exact structured refusal fields, the rerun passed. This is focused database evidence, not the full platform suite. Unit runs passed 442 budget checks, 45 sharing checks, 42 erasure/spec checks and 41 catalog/receipt checks; configured semantic checks passed. Documentation checks passed 685 tests, and changed EN/DE/FR pages were rendered at desktop and mobile widths. Independent review accepted the runtime repairs. Earlier component evidence includes authorization regressions, CLI scope guards, Caddy routing tests, PostgreSQL cutover/erasure probes and isolated released-container cutover.
Affected configured lint, formatting, conflict detection, release-note validation and whitespace checks passed. Configured SAST exited successfully with no reported findings; its engine partially analyzed
lib/chat/turn.tsand the largebackend/integration-check.ts, so this is not claimed as complete static analysis of those files. Separate semantic, native and independent code review evidence covers the changed paths. The merge with current main preserves every repaired runtime byte; the 67 CI-input guards, 1,520-box manual guard and release-source contract check passed, and independent composition review accepted both conflict resolutions.Rebased onto latest main fc06dbf at the user’s explicit request to merge without waiting for CI. All 65 repaired runtime/docs/catalog files remain byte-identical; manual coverage follows main’s new per-suite files and retains every prior row. The manual and release-source contract checks passed after rebase. Hosted checks are pending and are not claimed green. Release candidate validation, immutable publication and deployment acceptance remain separate requirements.