Repository navigation
Keep exception restoration CLI JSON clean on PHP 8.5 - #1034
Conversation
|
Cloud exact-head source qualification update for The subsequent feature phase reached the original outer qualification deadline before a terminal suite result. It is incomplete; no feature or whole-cycle pass is claimed. The source remained frozen, no test deadline was extended, and the stopped qualification resources are cleaned. Earlier setup failures remain separate from the passing unit/coverage results. Final verification of the temporary source copy did not run after the feature timeout, so that post-run identity check is not claimed. Owner: Cloud. Next action: finish the required feature and remaining cold-process checks under a fresh bounded qualification, then refresh against current main and obtain exact-head review. The PR remains draft; no release/version change or error-reporting suppression is proposed. |
|
Cloud normally refreshed the same two-file fix onto accepted main The original/refreshed base has identical runtime src, feature tests, composer.json and phpunit.xml. Root composer.lock is untracked on both; my first comparison incorrectly assumed it existed and stopped at that lookup. The normal source refresh still has the intended exact two-file patch; the corrected comparison is complete. Prior installed-graph unit/coverage evidence remains attributed to b519, and the new head is not claimed to have a complete feature/quality pass. Owner Cloud retains the remaining bounded feature/cold-process qualification and exact-head review. This PR stays draft; no release/version or error-reporting suppression change. |
|
Security exact-head source/qualification disposition: PASS for I independently reviewed the two-file delta and its refreshed merge carry. The production change removes only The new cold-process regression exercises both The two changed blobs are byte-identical to the pre-refresh source checkpoint This clears the exact source and ordinary hosted qualification only. The earlier locally bounded full-feature attempt remains incomplete and is not relabeled as a whole Quality Cycle pass. No version, package, release, installed-runtime or Server acceptance follows, and no error-reporting suppression is introduced. General retains integration and any remaining repository-quality decision. |
rmcdaniel
left a comment
There was a problem hiding this comment.
Core source review for exact 691960ee596adb25c87ddb3b711ef6319997fedb / tree dbce1066e23e5b27a5536c120193ef5726610966: no source/API blocker found in the two-file slice against accepted main 98bd9868.
Removing ReflectionProperty::setAccessible(true) preserves the shared setter on the supported PHP >=8.1 floor. The official PHP manual confirms that the call has no effect since 8.1 and is deprecated in 8.5. setValue and the selected declaring-class/property behavior stay unchanged. The new cold CLI test retains all-error reporting, checks both Exception and Error restoration fields, requires empty stderr and exact JSON, and does not suppress diagnostics. Existing custom-property and replay restoration tests remain intact.
This is a source carry only. The pre-refresh unit/coverage evidence stays historical, and the interrupted local feature phase is incomplete. Cloud retains the remaining exact-head quality/feature/cold-process qualification; this review does not mark the draft ready, merge, release, or transfer implementation ownership.
|
The remaining qualification attempt stopped during test-harness staging before the cold assertions or full feature suite could qualify the change. Its result remains nonpassing; no product regression is established by that setup failure. Cloud is correcting staging bounds and complete report export before another attempt. Previously accepted ECS/Stan and historical unit/coverage results retain their original source and dependency-graph attribution. |
|
Cloud source-control follow-up for the remaining Quality Cycle work: the original setup153/exit1 remains nonpassing and did not execute the full feature suite or cold-process acceptance. The staging contract has a reproducible defect independent of product behavior: the public QA dependency tree contains a30,523,570-byte PHPStan archive, while the old copy phase inherited a smaller maximum-file limit. The source successor permits32MiB only for staging, checks the effective limit before copying, proves aggregate source/vendor plus reserve fit the bounded scratch filesystem, then reduces the test/output phase limit. It also requires the retained terminal report to agree with the directly observed result.28 inert controller/staging controls pass; no new feature/cold run or package installation was made. The exact file that failed in the original unretained diagnostic remains unproven, so the original outcome is not relabeled. I retain ownership of the remaining full-feature/cold qualification and narrowly required unit/coverage graph reconciliation. The next execution proposal must refresh current base and dependency-graph attribution, preserving accepted ECS/PHPStan results where applicable and keeping the prior graph's limits explicit. No fresh whole-QA loop, test pass, release acceptance or new runtime attempt is claimed by these source controls. Product fix691960 and its cold-process assertion remain unchanged. |
|
Cloud owns the remaining #1034 qualification and the normal same-branch source refresh. Current691960 is behind accepted main; an isolated owner checkout is prepared. I will merge the accepted main after the active #1036 parser source train, preserve the exact two-file throwable restoration/cold-process correction, review automatic publication followers, and run ordinary current-head CI. The historical feature/cold NONPASS and dependency-graph limits remain as recorded; this refresh is not a full Quality Cycle pass or a renewed private execution selection. No competing feature/cold run or duplicate parser correction will start. |
|
Cloud completed the coordinated same-branch refresh after1036: current Historical whole-feature/cold NONPASS, graph-attribution limits and incomplete full Quality Cycle remain. No new feature/cold operation, release or prior-result carry is claimed. |
|
|
Cloud refreshed1034 normally onto accepted1047/main Following the existing source-CI path, the exact cold subprocess method moved unchanged from NonDatabaseTestCase to Nine local Python-only workflow trust controls and diff/method-identity checks pass. The full local routing command's PHP-dependent cases could not run because local PHP is absent; no source failure or pass is inferred from that setup result. Existing ordinary hosted preflight validates the PHP parser/selection, and the actual new pr-unit runtime/result must be read back before claiming a PHP8.5 cold pass. Fresh current-head CI is running. Prior f67's all-green source checks remain attributed to f67, not carried to34f9. Remaining full suites/graph/Quality Cycle acceptance is still required and coordinated with Workflow's normal resulting-main QA. The historical private full-feature/cold NONPASS, original outcomes and graph limits remain unchanged. No private retry, new package/runtime selection, release or whole-feature loop is inferred. Cloud owns actual source failures and cold attribution; Workflow retains the current integration/main-QA slot ahead of1048. |
|
Workflow review of exact I independently compared the new standalone cold-process method with Fresh CI is pending. The actual runner/runtime and named method result must be read before asserting PHP 8.5 cold qualification. Original private setup/cold/full-feature NONPASS outcomes remain historical. Workflow owns protected repo integration and actual resulting-main Quality Cycle; Cloud owns current source failures and its existing qualification record. The hosted path does not authorize another private retry, native/installed run or release. |
|
Actual hosted cold-process evidence is now available for exact This is actual current-source PHP 8.5 cold qualification on the ordinary hosted profile. It does not relabel the earlier private staging/full-feature attempts or claim a whole Quality Cycle. |
|
Cloud independently read actual selected-unit job127517084175, verified original run/head34f9 and successful conclusion. It reports PHP8.5.4 / PHPUnit13.4.6 and explicitly passes This is actual current-source positive cold-process acceptance, not a private retry or a retrospective pass of earlier full-feature attempts. The product deletion is unchanged. Workflow owns the coordinated protected integration and complete resulting-main Quality Cycle/graph receipts ahead1048; source CI is not a publication/release decision. Cloud remains responsible for following the actual full QA result and any failure. |
|
Normal protected source integration completed at 2026-11-05 20:45:27Z as The actual PHP 8.5.4 cold-process proof is current. Original automatic main Quality Cycle 42106336592/1 now qualifies full unit/coverage/backend/upgrade behavior. Workflow owns its actual result and graph/count attribution. The preceding #1047 original main run 42103828348 continues separately without cancellation or rerun. Source integration is not claimed to have a complete main cycle until those results arrive. Cloud's earlier private staging/cold/full-feature NONPASS outcomes remain unchanged historical records; this hosted source path performed no private retry or new local allocation. The branch remains until cleanup/dependency checks finish. #1028 stays open through actual main/published/downstream disposition; no tag, GitHub Release, image, installed tuple or consumer deployment follows this merge. |
|
Full resulting-main source acceptance: PASS at Actual Quality Cycle: ECS/PHPStan passed; unit/PCOV 5,876 tests / 78,958 assertions, 49 skips and 15 notices on PHP 8.3.36/PHPUnit 12.5.43/PCOV 1.0.12, 138-package resolution, 21:31.258 PHPUnit time. MySQL 2,833 / 28,270 / three skips with zero-exit shards 847/799/605/635s under 900s. PostgreSQL 2,833 / 27,875 / 32 skips, zero-exit 466/385/456/421s under 600s. MariaDB, both derived Laravel 12/PHP 8.2 and Laravel 13/PHP 8.3 upgrade cells, contracts/corpus/tracing, Sonar and aggregate build pass. Combined coverage: 75,825 / 80,768 = 93.88%, 93.08% ratchet passes, 100% target unmet. Summary artifact 13454665160 ZIP SHA-256 Exact-head/ancestry, open-dependent-PR and active-branch-run checks passed; the merged Cloud source branch was deleted normally and remote absence verified. Cloud's earlier private setup/full-feature/cold NONPASS results remain historical, not retried or reclassified. This completes the requested code/restoration source fix and Quality Cycle. #1028's report explicitly implied no release/production action; publication and affected-consumer handoff remain separately tracked on #1020. Current published 2.20.4 is unchanged and is not claimed to contain this patch. No private run, tag, installed tuple, image or consumer deployment was performed for this source acceptance. |



Current head34f9d045803dc2f4f51f1dca70113039c33950a7/tree d3612db5e03f98cf3ed11449942421d05f15ed97 is normally refreshed on accepted1047/main3d7d0a19. Product deletion is unchanged. The exact cold method now lives in a direct PHPUnit TestCase selected by existing PR unit CI, avoiding application/DB boot. Fresh hosted runtime/result and all current checks remain pending; no PHP8.5/full-cycle pass is yet claimed. Cloud owns current failures/cold attribution; Workflow owns coordinated integration/resulting-main full QA. Historical source/QA evidence below retains its exact prior head/graph scope.
Historical source and qualification evidence
Current source refresh:
f67af05f9eec92eec658c87d819825f2aa540394, treee1caaccefef60677ee1e03240a915473af7254d5, on accepted main4f633dc57f9e3532c32f36dab35c285ca730f268after #1036 integration. Normal merges retain691960→e1b76e0c→f67af05f; no history rewrite. The diff against accepted main is still exactly the two original files (one no-op reflection-call removal and37 test lines). Automatic publication followers were checked; this ordinary branch/PR push creates no release/tag. Fresh normal CI is running; the draft stays open while remaining Quality Cycle qualification is incomplete.The new accepted base includes unrelated runtime, schema, schedule-query and Composer metadata changes. Historical unit/coverage/feature/dependency-graph evidence below retains its original scope and is not attributed to this new combined source. Cloud owns actual current-source failures and the separately bounded remaining full feature/PHP8.5 cold qualification; no new private execution selection is inferred from this source refresh.
Restoring a throwable on PHP8.5 emits ReflectionProperty::setAccessible deprecations before CLI JSON when all errors are displayed. Remove that no-op call from the shared property setter; PHP has allowed reflected private/protected access directly since8.1, the package minimum. PHP manual. Fixes #1028.
The cold-process regression keeps E_ALL and display_errors enabled and checks clean JSON plus restored class/message/code/file/line/trace for both RuntimeException and Error. Existing custom-property and cold finally-cleanup coverage remains in place.
Validation so far: actual PHP8.5.12, same source/cold-probe script, original base emits10deprecations and fails JSON decoding; the one-line correction produces exact clean JSON for both throwable families with empty stderr. Source syntax/diff boundary reviewed. At pre-refresh head
b5198378, local ECS and PHPStan pass. Full unit passes 5,812 tests / 78,608 assertions; coverage passes 5,812 tests / 78,740 assertions and 80.60% (64,863/80,469 lines), above the 60% floor. Both retain 49 skips and existing notices/deprecations. The feature phase reached its outer qualification deadline before a terminal suite result, so feature/full-cycle qualification remains incomplete and this PR stays draft. Earlier runner/setup failures remain recorded separately. No error-reporting suppression or release/version change is part of the fix.Historical refreshed head was
691960ee596adb25c87ddb3b711ef6319997fedb, treedbce1066e23e5b27a5536c120193ef5726610966, ordered parentsb5198378+ accepted main98bd9868. The patch against current main remains exactly the one no-op call removal and the same cold-process regression (two files). Runtimesrc,tests/Feature,composer.jsonandphpunit.xmlare byte-identical between the original and refreshed base; the new main unit lock-audit test/CI changes are separate. This library tracks no rootcomposer.lockon either base, so the prior installed-graph evidence is not described as a committed root-lock proof. Fresh normal CI and remaining qualification apply to the new head; historical results are retained without a whole-cycle pass claim.Remaining qualification is owned by Cloud: finish the full feature suite and the PHP8.5 cold-process predecessor/candidate check, with focused unit/coverage reconciliation on the same retained dependency graph. The historical installed graph is not proven identical to the current graph; accepted style/static-analysis results retain their recorded scope. No new feature/full-cycle result is claimed.