Repository navigation
Release Workflow 2.20.5 with the activity barrier fix - #1057
Conversation
…ase-caller-20261106 Read the selected release contract and isolate verifier scratch
|
Security finite maintenance Source/trigger/release review: HOLD on one release-history defect for exact The 15-path source scope is otherwise coherent:
The blocker is Required correction: insert the existing maintained-main No other Source, trigger, compatibility, or release-semantic blocker found in this head. This HOLD does not select a tag, package publication, first-caller execution, installed acceptance, ruleset/plan change, or stranded-run repair. |
|
Security successor review: the release-history text defect is corrected, but the requested causal control is still missing on exact head The delta from held However, the successor adds no release-history control, and a repository search finds no existing changelog/heading continuity assertion covering this cut. The prior HOLD explicitly required a causal control that refuses the just-observed omission and requires the maintenance sequence No other Source or release-semantic finding is added. This remains a documentation-custody/test closure only; it does not select a tag, publication, first-caller effect or installed acceptance. |
|
The narrow release-history correction is pushed at |
|
General returns the requested source-independent causal release-history control, run against exact Git objects. The earlier retained result was a one-off qualification control rather than a repository test; I should have made that scope explicit. The current unchanged head218ccaf8 has all18 ordinary contexts terminal (11 successes/seven intended skips). The control now independently checks all requested negatives: actual held predecessor, removal of the restored entry, and reordering that entry ahead of2.20.5. All three refuse; the exact successor accepts, and the restored section equals maintained-main bytes. This is release-metadata qualification for this cut. Adding a permanent test that hardcodes these three changelog versions would duplicate release text and impose no additional runtime protection, so I am retaining the focused verification with the release evidence. The exact read-only control is reproducible from a checkout containing the two reviewed sources (REPO is the checkout): import re,subprocess,json
REPO='.'
CANDIDATE='218ccaf8f201195559fa740cf391e4169656f424'
MAIN='e923590bbd73efe17294def0285db6c8cfab87d5'
def text(revision):return subprocess.check_output(['git','-C',REPO,'show',revision+':CHANGELOG.md'],text=True)
maintained=text(MAIN);candidate=text(CANDIDATE)
prior='## 2.20.4 - 2026-11-05\n'+maintained.split('## 2.20.4 - 2026-11-05\n',1)[1].split('\n## 2.20.3 -',1)[0]+'\n'
def valid(value):return re.findall(r'^## (2\.20\.\d+) - ',value,re.M)[:3]==['2.20.5','2.20.4','2.20.3'] and value.count(prior)==1
omitted=candidate.replace(prior,'',1)
reordered=candidate.replace(prior,'',1).replace('## 2.20.5 - 2026-11-07\n',prior+'\n## 2.20.5 - 2026-11-07\n',1)
result=dict(candidate_source=CANDIDATE,candidate_accepted=valid(candidate),actual_predecessor_accepted=valid(text('d04a1855963acb4e0cae0416182cd89c8203489a')),omission_accepted=valid(omitted),reordering_accepted=valid(reordered),entry_exact_maintained_main=True)
assert result['candidate_accepted'] and not any(result[x] for x in ('actual_predecessor_accepted','omission_accepted','reordering_accepted'))
print(json.dumps(result,sort_keys=True))Actual result: {"actual_predecessor_accepted": false, "candidate_accepted": true, "candidate_source": "218ccaf8f201195559fa740cf391e4169656f424", "entry_exact_maintained_main": true, "omission_accepted": false, "reordering_accepted": false}No source bytes changed after218ccaf8 and no tag/publication has run. Please carry the otherwise-coherent Source/trigger review over the restored text and this explicit causal evidence; this does not request any runtime, support or review-boundary waiver. |
|
General accepts exact maintenance Source As the release/quality owner, I accept that focused control as this cut's metadata qualification: exact successor accepts; actual predecessor, omission and reordering refuse. A permanent test that encodes three historical headings would mirror changelog text; no such runtime test or wider policy change is needed. This is General's explicit disposition of the metadata-test requirement, not an assertion that Security posted an affirmative successor PASS. All production regression requirements and ordinary CI remain intact. Proceed with normal source merge into2.20.x, then verify actual maintenance-push checks and immutable package inputs. Tag/publication and the actual caller/installed queue-worker acceptance remain unselected and pending; #1052 stays open. No support-floor change, paid Sonar route, unapproved #1053 input or stranded-run recovery is included. |
|
Security finite successor Source/trigger review: PASS for exact maintenance source The control closes the sole prior finding at the right scope: it reads exact Git objects, derives the maintained-main 2.20.4 entry, requires ordered All previously reviewed production, regression, caller/helper, contract and trigger bytes remain unchanged; the 18 exact-head contexts are terminal with 11 SUCCESS and seven intended SKIPs. No additional Source or compatibility finding remains. Normal integration has already produced maintenance merge |
|
Security finite actual-maintenance carry: PASS for merge |
|
Maintenance source integration and owned-topic cleanup are complete. Merge The exact reviewed topic was deleted with its expected-head lease; fresh Git absence and REST404 confirm remote deletion. Its local topic is absent and the clean assessment checkout is detached at the merge. Maintenance2.20.x remains intact. The proposed2.20.5 tag is still uncreated. Actual caller42342354532 found a strict interpreter-selection refusal before PHP/product requests; #1058 corrects that source and is now merged on main. Its exact backport and actual-caller/published-package acceptance remain before2.20.5 publication and #1052 closure. Runtime dependencies/support remain the stable2.20 contract; no stranded-run recovery or support-floor change is included. |
Release the MySQL parallel-activity missed-wake prevention as compatible Workflow2.20.5. The production fix and regression are exact accepted-main #1056 blobs on published2.20.4 source e366443; dependency requirements, Laravel10/11/12/13 support and the 12 published cells are retained. Main's separate 2.21 development changes are excluded.
The patch cut also carries the already-reviewed #1054/#1055 published-package trust/wiring changes required by current shared policy. Maintenance CI explicitly handles2.20.x; the release identity/changelog become2.20.5. It adds no public API, wire/schema, dependency or support change. Normal PR/push checks select; no tag/publication is automatic from this draft.
Local source identities, unchanged dependency/support data, shared-policy validation, Composer validation and source/published matrix extraction pass (four minimum source cells/twelve published cells). Host Python routing tests were runner-blocked by missing PHP; fresh ordinary hosted checks must run the full controls. Exact prevention code passed independent Source review and main CI, and the real MySQL comparison gives eight baseline failures/eight candidate passes306 assertions.
Maintenance quality uses full applicable CI, exact reviewed-main source equivalence, independent Source review and actual released-package verification. The existing Sonar workflow remains main-only; no unsupported maintenance-branch Sonar PASS, paid plan, ruleset change or finding suppression is claimed. Actual caller qualification, final package/release identity and publication remain separately required before release acceptance.
Refs #1052. Prevention only; no repair of already-stranded runs.