Skip to content

Runwire 3.0: unified asynchronous runtime, consolidated roadmap and detailed trackers - #9

Draft
abmmhasan wants to merge 868 commits into
mainfrom
plan/runwire-independent-ecosystem-roadmaps
Draft

abmmhasan wants to merge 868 commits into
mainfrom
plan/runwire-independent-ecosystem-roadmaps

Conversation

@abmmhasan

@abmmhasan abmmhasan commented Oct 19, 2026 •

Copy link
Copy Markdown
Member

Runwire 3.0 — Unified Asynchronous Runtime (Draft)

W216 current GitHub-only QA (2026-10-27): Source 27a1ec87. 159/167 tasks QA-accepted, 8 OPEN (95.2%): C4 10/11, C5 2/9. External-only U16.02/U16.16 retired rather than falsely accepted; optional downstream Read the Docs configuration retained but not a release gate. U17.01 accepted from Source Audit #40542104606, 20/20 historical task mapping and revised 167-task acceptance. U17.04 accepted from exact GitHub Sphinx #40542561935 with a source-stamped 41-page HTML/search artifact #12751068496, plus Source Audit #40542561492 and migration behavior #40542561731. Portable Native #40542561709, Real Hosted #40542561470, Swoole #40542561501, Release Candidate #40542561842 passed; PHPForge Security native QUIC/benchmarks still need final conclusions. Corrected mixed 1800s #40538869349 and immutable release-certification #40542262696 continue independently. No merge, tag, package publishing or threshold relaxation; PR remains draft.

W215 — current GitHub-worker-only scope (2026-10-27): 86527800, existing draft PR #9. 158/167 QA-accepted, 9 OPEN (94.6%): C1 11/11, C2 5/5, C3 9/9, C4 10/11, C5 1/9. U16.02 and U16.16 retired from active plan (not falsely accepted) because external hosted Read the Docs project and preview/version handling are unavailable through GitHub-worker-only execution. Strict 41-page source-stamped Sphinx HTML/search and API remain GitHub QA-gated under revised U17.04; external Read the Docs publishing is neither claimed nor required. U17.01 ACCEPTED from Source Audit #40542104606 proving 20/20 old 2.2 carry-forward mappings, revised 167-item scope and excluded external IDs; other U17 checks remain open. Corrected real PHP8.4/8.5 mixed 1800s #40538869349 still requires final conclusions. Immutable 2.1.2 comparison/soak Release Certification #40542262696 running as nonpublishing source-pinned evidence. Frozen final source QA and U17.02–09 still required. No tag, merge, published package or waived performance gate. Earlier W213 and older summaries below are archival.

W213 current rolling QA (2026-10-27): df79c566 on existing branch. Canonical 157/169 QA-accepted, 12 OPEN; C4 10/13 (U15.10, U16.02, U16.16 OPEN); C5 0/9. C4 source audit found full mixed 1800s benchmark started with GC/OPcache diagnostic endpoint disabled; fixed at 90653d1. Both PHP8.4 and PHP8.5 real HTTP/GC/OPcache preflight steps PASSED in GitHub C4 Qualification #40538586399; whole qualification and actual new 1800s mixed soak #40538869349 still require final conclusions and raw evidence. Do not count the defective old soak #40533856692 as U15.10. Strict 41-page local Sphinx/search and SHA stamp are green, but real hosted Read the Docs project / RUNWIRE_RTD_PREVIEW_URL remains unconfigured: U16.02/.16 still OPEN. C5 source-only carry-forward source audit and preliminary risk register ready, no maintainer signoff. All three trackers synced W213; PR stays draft, unmerged, untagged, unpublished. W212/W208 notes below are historical checkpoints.

W212 — C4 QA recovery and C5 preflight, 2026-10-27 (current status): Current source d9473d77 on the existing branch. Canonical 157/169 QA-accepted, 12 OPEN; C4 10/13, C5 0/9. C4 hosted Read the Docs U16.02/.16 still has no configured RTD preview, and U15.10 genuine native mixed 1800s #40533856692 is IN PROGRESS on immutable 953af837 (no production source/benchmark code changes since). First 41-page Sphinx inventory attempt red due incorrectly excluding dotted RST filenames; corrected 950e2718 passed strict Sphinx #40537306873. Docs are source-revision stamped and hosted validation is fail-closed on mismatched commits and incomplete page/search coverage. Historical 20-task 2.2 carry-forward has 15 QA-backed accepted 3.0 mappings and 5 mapping to OPEN U17 tasks; live-checking source audit tool passed on Source Audit #40537460382, without marking U17.01 complete. Pre-signoff C5 risk register remains pending maintainer review. Latest exact-head QA is still executing; no early promotion, no merge, no release. Historical W208/W197 checkpoints below are superseded by this note.

Current C4/C5 checkpoint (2026-10-27, W208): Branch plan/runwire-independent-ecosystem-roadmaps at e761d59b. Canonical 169-task ledger: 157 QA-accepted, 12 OPEN (92.9%). C1 11/11, C2 5/5, C3 9/9 complete; C4 10/13 (U15.10, U16.02 and U16.16 pending), C5 0/9. W208 reconciles public H2/H3/WSS feature acceptance and tracker text, without accepting additional tasks. The prior exact-head security workflow passed; current commit needs independent CI. Full mixed 1800-second soak must pass with source-pinned artifacts; Read the Docs requires real hosted URL/preview checks (local Sphinx does not qualify). Draft and unmerged; no tag/release. Historical W197 and older notes below are retained as archival evidence.

Scope decision — 27 October 2026 (current and authoritative). WebTransport has been removed entirely from Runwire 3.0 by maintainer instruction: no client/server feature, protocol API, design document, release check, or unaccepted WebTransport task remains in the 3.0 scope. The current native PHP QUIC extension (ext-quic/OpenSSL) does not provide the required RFC 9221 QUIC DATAGRAM interface at this release; unsupported streams must never masquerade as WebTransport. See the published Sphinx feature limitations. HTTP/1.1/2/3, QUIC streams, native UDP datagrams and WebSocket remain in scope.

W197 tracker reconciliation (2026-10-27): e32dea31 synchronized all three active planning files (canonical 169-task development checklist, unified runtime roadmap, C4 detailed documentation delivery plan) with PR #9. Fixed stale C3 active 2/9, C4 paused, and historical C1-first execution instructions; preserved historical milestone narratives explicitly as superseded. True counters from 169 canonical checkboxes: 147 accepted, 22 open (87.0%); C1 11/11 DONE, C2 5/5 DONE, C3 9/9 DONE, C4 0/13 ACTIVE, C5 0/9 QUEUED. The immutable previous head 8565d415 passed all 10/10 PR workflows, including Security #40501019287, Benchmarks #40501018864 and strict Sphinx #40501018773. The new tracker-only SHA must pass its own CI; do not claim it green prematurely. C4 U15.01–10 and U16.02/.12/.16 remain individually OPEN. No merge, release, external repo edit or QA bypass.\n\nC4 W193 source documentation QA accepted (2026-10-27): strict Sphinx #40499541538 PASSED the complete 20-chapter source-aligned RST developer and operations manual on immutable b6d9bcf4. Tracker-only 3b27d004 records exact immutable documentation evidence in both canonical plans and the C4 delivery checklist. Full C4 remains 0/13, 147/169 accepted overall, 22 open: U15.01–U15.10 real performance qualification, U16.02/.16 externally hosted RTD preview/search/versioning, and U16.12 final migration behavioral review require independent proof. This is a documentation milestone, not C4 release signoff.\n\nC4 W192 exact-head documentation correction: b6d9bcf4 corrects the one-character Sphinx heading underline from Docs #40499360022, preserving the actual matched-release benchmark instructions, full source-linked API, 20 indexed handbook chapters and feature-limit truth. The corrected head must complete new strict RST and PHPForge CI before claiming full QA green. C4 remains 0/13, 147/169 accepted; U15.01–10 and U16.02/.12/.16 pending.\n\nC4 W190–W191 detailed documentation delivery (2026-10-27; current): 2a66059c adds three deep public RST lab/protocol/performance chapters; c84cef8b adds operating and compatibility audit chapters; e1518c05 fixes strict RST headings and indexes all 20 chapters, expands root README and synchronizes C4 documentation plan and canonical trackers. Strict Sphinx #40499078612 PASSED the 20-chapter handbook. 0ded43d9 documents the existing actual frozen 2.1.2-vs-3.0 five-pair 180-second release comparator with worktree/CPU-affinity/OPcache/correctness/variance criteria. This is an implemented documentation tranche, not completed U15 benchmarks or a verified external hosted Read the Docs preview. Canonical remains 147/169 accepted (87.0%), 22 OPEN; C4 0/13; C5 queued. No QA waiver, WebTransport reintroduction, merge or release.\n\nC4 W189 substantial 3.0 documentation delivery (2026-10-27; exact-head QA pending): 41cfda95 adds 15 new source-aligned, Sphinx-native handbook chapters (~102k chars) on concepts, runtime ownership, full configuration, inbound/outbound H1/H2/H3/WS/TCP/Unix/UDP, Fiber concurrency, real C3-accepted supervision/autoscale, bounded off-loop files, TLS/proxy/SSRF, deployment, observability, benchmarks and QA provenance, detailed 2.1.2→3.0 migration, troubleshooting and authoring rules. Refreshes root navigation, published/development status, architecture/host-feature claims, RTD v2 build configuration and C4 documentation delivery plan. No skipped limitations or fictional WebTransport/native filesystem/TLS-over-TLS. No C4 acceptance inflation: 147/169 accepted, 22 open, C4 0/13 and C5 0/9; hosted RTD preview, final API migration audit and U15 benchmarks remain required. Exact-head Sphinx/PHPForge/host/interop checks being verified.\n\nC3 W188 final handoff QA fixture stabilization (2026-10-27): 65c2da7e fixes the intermittent JSON parse failure in PHPForge QA caused by an independent Python CONNECT test proxy exiting on the expected TCP reset after wrong-origin certificate rejection. The origin verifier's actual SNI and received-byte JSON remains mandatory; the live Runwire TLS verification policy and positive/negative security assertions are unchanged. The baseline implementation had all ten workflows green; new exact-head revalidation underway. C3 9/9 accepted, total 147/169, 22 OPEN; C4 next.

C3 DONE — 9/9 QA ACCEPTED (27 October 2026). Handoff 37dd0167 updates both canonical trackers and adds C3 acceptance evidence. All ten routine/independent C3 workflows passed against unchanged implementation f3dd0ced, including Security & Standards, Benchmarks and PHP 8.4/8.5 C3 Native Smoke. Newly accepted U11.03, U12.02, U12.04, U12.05, U12.06, U12.08, U12.09 join pre-accepted U11.10 and U14.04. 147/169 accepted (87.0%); 22 open (C4 13, C5 9). C4 is next; no merge/tag/release. Documentation-only handoff commit 37dd016 is receiving its own exact-head CI; do not mistake that pending CI for failed implementation QA.

Historical C3 work checkpoints (superseded by the verified closeout above)

C3 W186 independent H2 GOAWAY-flow accounting: f3dd0ced preserves strict 8/8 admitted H2 header + complete-body + END_STREAM checks even when the terminating peer refuses a late advisory WINDOW_UPDATE. Only that client-side control-frame write failure is nonfatal; actual missing response, premature EOF, resets and incorrect body still fail. Previous exact-head Security #40490276036 red at client writer.drain(). New exact-head QA pending; C3 2/9 and 140/169 unchanged.

C3 W185 H2 SIGTERM QA correction: 6fea04d3 avoids an unnecessary client-side HTTP/2 flow-control write only after all eight real admitted streams have been body-verified and ended. The exact-head Security #40488045807 failure was at a final client writer.drain() on a connection already retiring. Every premature reset, incomplete accepted stream, missing/incorrect body still fails. All new source CI must run green before acceptance; canonical 140/169, C3 2/9 unchanged.

W196 — EXACT-HEAD QA GREEN (2026-10-27): Immutable source 8565d415 has all 10/10 standard workflows completed SUCCESS: Security & Standards #40501019287, Benchmarks #40501018864, HTTP/2 Independent Reference #40501018745, Real Hosted Runtime Acceptance #40501018725, Portable Native #40501018912, Swoole/OpenSwoole #40501018769, C3 Native Supervisor #40501018715, Release Candidate #40501018741, Source Audit #40501018770, Sphinx #40501018773. Security includes native H3 (PHP8.4/8.5), real admitted H2 post-GOAWAY mixed lifecycle, four stable/lowest PHPForge QA combinations, two analyzer lanes, Composer secure clean install and PHPForge benchmark gates. The branch remains draft; C4 release performance/hosted RTD task-specific acceptance is not implied. Canonical 147/169 accepted, 22 OPEN, C4 0/13. W194-W195 tracker journals capture their original pending QA checkpoint; this W196 records the verified completion without a new code commit/restarting the exact-head matrix.\n\nW194-W195 QA remediation (2026-10-27; latest exact-head QA running): 2849b560 repairs the Sphinx navigation fixture's outdated caption. 8565d415 addresses hyper-h2 4.3.0's inability to receive valid DATA after a graceful GOAWAY by independently validating that control frame at strict wire boundaries and feeding all remaining original frames to hyper-h2. Four strict independent regression tests run before the native mixed H1/H2/H3/TCP/UDP test on PHP 8.5; no accepted-response check is disabled. Last source 3b27d00 showed 1078/1079 Pest passing, static analysis and Sphinx green, but Security & Standards failed. C4 remains 0/13 accepted, overall 147/169 accepted, pending new full CI.\n\nW194 C4 QA repair (2026-10-27; exact-head CI pending): 2849b560 resolves the stale published toctree-caption Pest assertion (1078/1079 passed on #40499712758) and corrects the independent H2 stop-during-traffic test's treatment of graceful GOAWAY(NO_ERROR). It continues to require all eight accepted H2 streams' exact bodies and rejects resets/EOF/timeout/invalid GOAWAY. All docs/roadmap synced, no acceptance promotion; 147/169 accepted, C4 0/13, full CI outstanding.\n\nC3 W184 H2 admission-proof fault regression (2026-10-27; QA pending): 43c84061 corrects a false admission assumption in the strengthened SIGTERM test. The prior H3 Security #40487356983 exposed an H2 shutdown before all client-submitted streams completed. The test now waits for eight actual server-issued H2 response headers before signalling termination, then holds flow control 250ms while requiring all eight byte-exact bodies and peer correctness. No relaxation of accepted-response correctness or runtime behavior. C3 2/9, 140/169 accepted until complete new QA.

C3 W183 real protocol stop-during-traffic QA (2026-10-27; pending): 39770605 adds a real SIGTERM while eight H2 multiplex streams and H3 siblings are in flight alongside H1/TCP/UDP. It requires full independent response correctness and bounded master termination, and narrows nonblocking accept() warnings to recognized transient kernel errors. Earlier C3 native #40486393653 PASSED PHP8.4/8.5 including 120-second CPU/RSS/p99 sampling, concurrent SIGKILL/reload/scale/recycle and 136/136 H1 responses. New exact-head ten-lane CI is pending, so C3 2/9, 140/169 remain QA accepted; no acceptance inflation.

C3 W181-W182 active QA recovery and sustained acceptance (2026-10-27; current, QA in progress): 46c931c1 is the PHPForge-checked Pint formatting commit; the formatter run #40485687797 completed with real pre-commit Pest/Pint/PHPCS/PHPStan/Psalm green. 3f04ca73 adds explicit no-loss HTTP autoscale accounting and cooldown check, concurrent SIGKILL/reload/recycle and native 120-second process-tree CPU/RSS/p99 soak in PHP8.4/8.5 C3 CI. The latest ten full workflows are running; no C3 acceptance inflation: 2/9, 140/169 accepted, 29 OPEN until task-specific quality gates confirm. Only Runwire changed.

C3 W179 analyzer closeout (2026-10-27, exact-head QA pending): 8253681b fixes the last four PHPStan findings observed in Security #40482615326 by explicit non-null recycle ownership and extracting the post-reap slot-restoration predicate into ChildSet; strengthens lint coverage for new internals. C3 2/9, total 140/169 remain unchanged until PHPForge, native C3, H2/H3 and remaining matrix verification.

C3 W177-W178 PHPForge analyzer remediation (2026-10-27; native smoke PASS, analyzers pending): 5fbf1e83 repairs Happy Eyeballs completion typing, validated listener PID and worker cleanup callbacks; typed worker-owned resource retirement preserves shutdown while reducing class complexity. a50bfc09 extracts native autoscale sample/timer/resize into a focused internal coordinator and reuses ChildReaper/ReadinessChannel/ChildSet. This directly addresses the 12 PHPStan errors in Security #40481628259, C3 Native Supervisor Smoke #40482614771 is GREEN on both PHP 8.4 and 8.5, including real fork, autoscale, mixed HTTP1/TCP/UDP fault scenarios, shutdown fault injection and native soak. Full PHPForge analyzer/QA is still pending. No PHPForge rules disabled. C3 2/9 and 140/169 accepted remain unchanged; green exact-head security, native QA and interop are prerequisites.

C3 W175 cleanup fault isolation (2026-10-27; native QA green, broader QA in progress): 20004a84 makes periodic timer cancellation retryable, preserves stop wake and worker-owned executor/socket/coroutine cleanup after failures, and adds composer-independent fault injection to the PHP8.4/8.5 C3 workflow. Scope is partial U12.06; no accepted task claimed. C3 native supervisor smoke #40481627708 PASSED both PHP 8.4 and PHP 8.5, including injected periodic cancellation and whole existing native smoke chain. The earlier 596da26f restored PHPForge dev-main with secure Composer resolution; the other standard exact-head QA gates are still completing. C3 remains 2/9, canonical 140/169.

C3 W173 secure QA dependency investigation (pending verification): cda66a27 tests a pinned PHPForge Dependabot compatibility revision using ParaTest ^7.27.3 through Runwire's development-only Composer VCS configuration. No advisory bypass, outside-repository edit or task acceptance. Existing C3 native fork smoke was independently green on PHP 8.4/8.5; full routine QA pending.

C3 W172 implementation checkpoint (2026-10-27; QA pending): 02fbe528 blocks inherited active TCP listener connection shutdown/accept lifecycle, extends the real fork regression, adds a PHP 8.4/8.5 Composer-independent listener smoke gate, and reconciles current tracker counters. Partial U12.02 only. Full exact-head nine-workflow QA and H2/H3 mixed lifecycle remain required; program stays 140/169, C3 2/9, 29 OPEN. No task promoted or release authorized.

Canonical 3.0 status (27 October 2026): 147/169 QA-accepted (87.0%), 22 OPEN; U09 WebSocket 4/4 DONE. Six previously planned WebTransport IDs were retired, not counted as completed. C1 11/11 DONE; C2 5/5 DONE in the supported proxy/TLS scope; C3 9/9 COMPLETE, C4 0/13 NEXT, C5 0/9 QUEUED. HTTP/3/native QUIC remains unchanged. U10.06 verifies original-target TLS over cleartext CONNECT, rejects mismatched origin identities and fails closed on unsupported TLS-over-TLS. Successful HTTPS-proxy→HTTPS-origin nested TLS is explicitly excluded, not implemented.

C2 CLOSEOUT (2026-10-27; supported scope only, immutable implementation QA nine-green): New hardening commits 4072006e and bbacd760 close unsupported TLS-over-TLS proxy sockets instead of permitting mistaken origin identity reuse. New unit and real independently verified HTTPS proxy tests cover that refusal and no double completion. e4c01eb2 corrects proxy limitations and guides; 1f2b7b1a synchronized development plan and roadmap, with counters unchanged. Already qualified cleartext CONNECT→verified origin TLS remains supported. U10.06 is accepted only for independently verified origin TLS through cleartext CONNECT and fail-closed rejection of encrypted-proxy nesting; positive nested TLS is excluded, not claimed. All nine routine workflows passed on immutable 7d71b589. The handoff and tracker source passed its own nine-green latest-head CI at 3e5b96b0.

C3 W170 verified native acceptance: #40464286037 passed PHP8.4/8.5: forked autoscale, live H1/TCP/UDP across completed reload/fault, correct sustained HTTP peers, soak, file IPC, fork-safe native sessions/pools/dialers and owned pending cancellation. Six standard CI workflows still fail at Composer dependency resolution; H2/H3 full mix and production-equivalent fairness pending. Do not promote any U12 checklist or claim C3 DONE; 140/169 QA accepted, 29 OPEN, C3 2/9.

C3 W168–169: QA #40463723362 passed 136 correct HTTP responses under real scale-in/out on each PHP8.4/8.5 lane; QA #40463939584 passed portable binary off-reactor file worker and cleanup. c4218cc, fe38db3, b4ff77c add fork-safe owned dial cancellation; native QA pending. Full Composer matrix remains red, task counts unchanged.

C3 W167 mixed-peer QA: Dual PHP native QA #40463494523 passed real HTTP/1, TCP and UDP requests across SIGKILL, restart, recycle, completed rolling reload and stop, in addition to autoscale/fault/soak. H2/H3 specific mixed-peer and original full PHPForge QA still OPEN. Canonical 140/169, C3 2/9.

C3 W166 sustained QA: Native QA #40463116876 passed PHP8.4/8.5 real SIGKILL, bounded crash restart and 23s autoscale/process-resource soak (six count transitions, zero remaining workers, max 12 parent FDs). Telemetry interruption now resets hysteresis votes 2fa5fd5, independently gated at d1f93de. Full QA/mixed-transports unresolved, task counts unchanged.

C3 W165 native QA: Real autoscale passed independently on PHP 8.4/8.5 at #40462814810, following false-start regression fixes. Live SIGKILL restart and crash-loop boundedness added in 9fe4c66, CI QA pending. The Composer/PHPForge safety blocker persists in main workflows; U12.04/.08 unaccepted and canonical totals unchanged.

C3 W164 live autoscale: 4853a94 wires hysteresis/cooldown to real supervisor child spawn and graceful retirement with f3977eb real forked-worker regression. U12.04 still QA pending, not fully accepted. C3 2/9.

C3 W163 active TCP drain: aaa4a9f enables explicit worker ownership of active sockets; 8eb07e3 adds live accepted TCP drain regression. Still unaccepted pending complete U12.06 coverage and secure green QA. Canonical counts unchanged.

C3 W162 implementation: c78c83b makes worker-owned pools and QUIC sessions explicit stop/close resources with regression 053d0b2. U12.06 partial, QA blocked by PHPForge dependency resolution, counters unchanged.

C3 W161 source-style recovery: PID helper member-order and spacing fixes de48441, d4d4794. PHPForge/Composer advisory unresolved; no task promotion. C3 2/9; 140/169.

C3 W160 fork-state snapshot guard: Inherited pool active/idle/waiter/metric snapshots now reject cross-PID observation 890e870, 98af154, with 11-case real fork test 819d448. QA/security dependency blocker unchanged; no task promotion.

C3 W159 fork-ownership implementation: Active/idle pools now refuse inherited cross-fork operations d2a593b, f251ef7, and native QUIC sessions refuse cross-fork use 538b85c, with real-fork tests. Listener sharing contract and QA remain open. No counters promoted.

C3 W158 security QA blocker: Compatibility pin ec9c586 was reverted in a77ec31: PHPUnit versions permitted by the currently pinned PHPForge/ParaTest dependency set are rejected by Composer security advisory PKSA-qhjm-rpqc-qkn6. Keep advisory protection enabled and reject unsupported QA PASS claims. C3 remains 2/9, total 140/169.

C3 W157 CI recovery: Earlier real-host and H2 workflows failed at Composer dependency resolution, not source assertions. ec9c586 constrains only Runwire development Pest/PHPUnit for the existing PHPForge ParaTest 7.26.0 pin. QA confirmation pending; no tracker promotion.

C3 W156 candidate: 4bbcb89 and df4e1b5 ensure a throwing application completion observer cannot skip remaining executor shutdown; 11e3b8e proves multiple owned executors clean up. Partial U12.06; QA pending; program counters unchanged.

C3 W155 candidate: c54098c also forbids inherited onDrained callbacks; real-fork test extended in 080fd22. Pending QA, C3 totals unchanged.

C3 W154 candidate: defac448 adds PID-bound executor ownership with live fork refusal/parent-continuation regression 9b516b9. Partial U12.02; unaccepted pending full QA and other inherited resource categories. Program remains 140/169, C3 2/9.

C3 W153 candidate: 6940706 adds explicit worker-owned process-executor shutdown and targeted once-only cancellation/FD-watcher cleanup regression 3d742fa. Partial U12.06 only; live drain and QA remain open. Canonical 140/169, C3 2/9 unchanged.

C3 W152 candidate: U11.03 process-backed filesystem backend guard and native capability limitation added in 62d6717 and 3a7ee99. QA pending; no U11.03 acceptance or global count change. Tracker receipts synced, further exact-head CI required.

C3 W151 checkpoint — 27 October 2026: U14.04 WebSocket hostile-frame, fragmentation, slow-peer and cancellation-budgets acceptance was verified on immutable nine-green 3e5b96b. Development plan and roadmap synchronized at 374f13d and c7e4f60; no acceptance claimed for these tracker commits before their own QA. C3 2/9, seven open (U11.03, U12.02/.04/.05/.06/.08/.09); canonical 140/169, 29 OPEN. No WebTransport. The remaining C3 group is not complete.

Latest C2 handoff source QA — 27 October 2026: 3e5b96b0 passed all nine routine PR workflows, including Security & Standards #40457097152, Benchmarks #40457096778, native QUIC PHP8.4/8.5, PHPForge four QA variants, both analyzers, independent H2, Sphinx, audit, host, native and RC checks. C2 handoff is green at the exact source; C3 is next. Final U16/U17 release certification remains separate and open. No merge/tag/release.

Implementation and tracker source: latest PR commits, canonical development plan, unified roadmap. The release-certification preflight and regression tests now require exactly 169 in-scope tasks. The routine exact-head Actions QA will be reported independently; green QA is not assumed for pending checks.

Scope of repository changes: Runwire only. No Foundation, Infbyte, Runwire-Core, or Runwire-Cells modification. No merge, tag, release or publication without explicit maintainer authorization.


Historical checkpoints (superseded by the 27 October 2026 scope decision; old 175-task and WebTransport language is archival only)

Current C2 development checkpoint — 26 October 2026

C1 COMPLETE: 11/11 QA-accepted. Program: 136/175 accepted (77.7%), 39 open. C2 ACTIVE: 1/10 accepted, nine pending (U09.06–U09.10, U10.03/U10.04/U10.06/U10.09). C3/C4 paused, C5 queued. Latest C1 tracker-only head a420cbc passed Security & Standards exact-head after its synchronization fix; C1 implementation d5c6436 had nine green routine workflows.

In development, not yet accepted: 125d2dc adds H3 FIFO multiplex stream admission, per-session slot budgets, GOAWAY draining and regression tests. First PHPForge feedback led to e1b00b2 (typed list<int> admissions, bounded lifecycle ordering, moved monotonic peer GOAWAY validation to the control stream, added malformed GOAWAY tests). Latest C2 candidate 6789dae includes the consolidated PHPForge parser/type fixes and closing-class formatting repair; exact-head Security & Standards and Benchmarks CI are pending. No C2 checkbox promoted: H2 live multiplex admission, authenticated CONNECT destination TLS and peer benchmark acceptance remain necessary. ext-quic upstream advertises no RFC9221 datagrams, which blocks real WebTransport client/server/datagram interop absent another qualified native backend; streams must not masquerade as datagrams. Strict Runwire-only scope; no merge/tag/release.

Latest verified closure checkpoint — C1 COMPLETE (26 October 2026)

C1 accepted 11/11, zero open. Program: 136/175 QA-accepted (77.7%), 39 OPEN. Exact implementation source d5c6436 passed all nine routine PR workflows: Security & Standards #40334382707, including PHP8.4/8.5 native QUIC/H3, four PHPForge QA variants and two analyzers, and Benchmarks #40334381793, including core PHP8.4/8.5 and adaptive H1/H2; all seven remaining workflows green. Three U07 tasks moved from OPEN to accepted together: U07.06 independent H3 control/QPACK/native wire-stream ownership, U07.07 shared-session sibling dynamic QPACK block/release and cancellation/reset isolation, and U07.11 real matched H1/H2/H3 outbound p99/RPS/CPU/RSS (24 correct responses per protocol for both PHP versions). This measured one-shot H3 slower than H1/H2; final U15/U17 long saturation and resource certification remain open.

Canonical development tracker and five-batch roadmap synchronized at 3a347fa. The tracker-only commit's own workflows are subsequent QA and are not misrepresented as already green. C2 next active: 1/10, 9 OPEN; C3 1/9, C4 0/13 paused; C5 0/9 queued. PR stays draft, unmerged and untagged; Runwire-only scope.

Historical checkpoints below — superseded by C1 closure

C1 native peer / matched-profile verification (2026-10-26; exact-head QA pending)

At fe11edd Security & Standards #40327748471, the PHP 8.4 native QUIC/H3 job PASSED, including four same-session concurrent request streams, an admitted canceled sibling and correct surviving replies, verified TLS/ALPN, 16/16 H3 transport requests, and 24 correct matched H1/H2/H3 requests each. The independent H2 reference server now omits forbidden SETTINGS_ENABLE_PUSH, and the QUIC worker no longer issues an illegal send-side RESET_STREAM after FIN. This does not complete C1: PHP 8.5 and full quality QA require exact-head acceptance and separate adverse QPACK proof.

Corrected the resource accounting in 3d8f460: prior parent and child CPU values were accidentally identical because getrusage(-1) sampled self instead of children; the new candidate uses getrusage(1) and must re-measure. Canonical counters remain 133/175, 42 OPEN, C1 8/11. No checkboxes or release claims promoted yet.

C1 latest QA checkpoint — 26 October 2026

Canonical unchanged: 133/175 accepted, 42 OPEN; C1 8/11 (U07.06, U07.07, U07.11 still OPEN). Both trackers synchronized at d72dc08. The last fully observed code head ddbe46c passed both native PHP8.4/PHP8.5 QUIC/H3 peer jobs and both static analyses, but Security & Standards #40329734600 remained red across four QA lanes for one PHPForge Pint PHPDoc warning. Corrective 91ffd09 is pending exact-head QA. No further task acceptance yet. C2–C4 paused, C5 queued. No merge/tag/release.

Latest C1 implementation checkpoint — 26 October 2026

Canonical checklist unchanged: 133/175 QA-accepted (76.0%), 42 OPEN. C1 8/11 accepted, 3 pending: U07.06, U07.07 and U07.11. C1 is the sole active closure batch; C2 1/10, C3 1/9, C4 0/13 paused; C5 0/9 queued. No merge/tag/release.

Tracker synchronization b43b1e2 updates both canonical detailed plan and roadmap to the latest evidence. Native H3 evidence at 75da987 showed four concurrent request streams on one independent aioquic QUIC peer and a 16/16 real H3 serial profile for both PHP 8.4 and 8.5; native matrix subsequently failed at the newly added H1 matched profile and strict PHPForge Pint source formatting on an earlier candidate. Cross-protocol matched metrics and adversarial QPACK cancel/reset are still not accepted. Profile stderr capture 5b6af2f and format fixes f2794ad are QA candidates, not accepted tasks. Exact-head quality green is mandatory before C1 11/11 and moving to C2.

Previous verified checkpoint (historical; not the current head)

Current checkpoint (26 October 2026)

Canonical QA-accepted: 133/175 (76.0%); 42 OPEN. Both the development plan and roadmap share the authoritative checklist; latest verified C1 source 6a0cd4420c3d (all nine routine PR workflows GREEN, including four PHPForge QA lanes, two analyzers and native H3/QUIC PHP 8.4/8.5). Tracker-only synchronizing commit 5317165a1c7b is the current head; its own CI must complete before claiming exact-head green again. No C1 acceptance was promoted from routine CI alone.

Closure batch QA-accepted Open Current decision
C1 — transport / HTTP/3 / QUIC 8/11 3 SOLE ACTIVE CLOSURE BATCH
C2 — WebTransport / proxy / pooling 1/10 9 Paused until C1 closure
C3 — filesystem / supervision / security 1/9 8 Paused until C1 closure
C4 — performance / full documentation 0/13 13 Paused until C1 closure
C5 — frozen release acceptance 0/9 9 Queued

Three blocking C1 task IDs: U07.06 independent server conformance for outbound HTTP/3 critical control/QPACK and QUIC stream ownership; U07.07 live sibling requests with QPACK blocking/unblocking, resets and cancellation isolation; U07.11 matched real H1/H2/H3 outbound client RPS, p99, CPU and RSS. A partial task fix or routine green QA alone does not close C1. C1 closes only at 11/11 QA-accepted and complete whole-batch evidence.

Current C1 work: 388220a handles fragmented peer QUIC stream types, bounded QPACK critical-stream ownership and zero-capacity feedback; ead2f9f corrects admission looping; 71e6d48 adds negative conformance tests; e95ad95 isolates the critical-stream registry and repairs the PHPForge cognitive-complexity violation. After 6a0cd44 moved the critical-stream registry into the correct property order, all nine routine workflows passed: Security & Standards #40278381181, Benchmarks #40278380643, HTTP/2 reference #40278380543, hosted #40278380665, native #40278380679, Swoole #40278380546, RC #40278380502, Source Audit #40278380751 and Sphinx #40278381173. U07.06/U07.07/U07.11 remain OPEN pending independent H3 sibling/QPACK conformance and matched real H1/H2/H3 performance evidence.

Previously accepted U08.09 H1 plaintext/TLS, varied body/reuse/concurrency and socket-syscall evidence is preserved in the checklist. It is already accepted and must not be represented as open. All final cross-protocol release saturation and 1800s soak remain separate C4/C5 release gates.

Closure order locked: Complete C1 11/11 with task-specific acceptance and full QA before resuming C2/C3/C4. Earlier parallel development authorization is superseded. A commit is not a completed batch; C5 remains queued. Both canonical tracker files and PR #9 now agree on 133/175 accepted, 42 OPEN.

Repository boundary: Runwire only; keep PR #9 draft, unmerged, untagged and unpublished. No Foundation, Infbyte, Runwire-Core or Runwire-Cells changes.


Historical snapshot (25 October 2026; superseded)

125/175 QA-accepted (71.4%), 50 OPEN. Latest source head: d923713556e8efde92e433ceefa8487b8b7f2117. The previous e3a0a40 passed all seven non-Security/Benchmark regular workflows and both PHP 8.4/8.5 native HTTP/3 outbound peer tests; Security & Standards #40198492713 identified PHPForge formatting plus eight PHPStan findings and was RED. Current new source adds independent real stalled QUIC sibling-reset acceptance and one-shot immutable 5x180-second matched TLS verification, both QA PENDING.

Five exact disjoint completion batches: C1 Transport/TLS/QUIC/HTTP (11 assigned, 2 accepted, 9 open); C2 WebTransport/networking/proxy/pooling (10); C3 filesystem/supervisor/security (9); C4 performance/docs (13); C5 final frozen certification/handoff (9). 11+10+9+13+9=52 originally assigned, 50 still OPEN, mapped by task ID in detailed plan and roadmap. Canonical U00–U17 checkboxes and 18 division counters remain the one accepted-task source of truth.

C1 currently in progress (2/11 accepted): U07.08 secure fallback/TLS/ALPN identity accepted on immutable af98a8ba after all nine required routine workflows passed. Native QUIC peer stream ownership plus new one-shot verified outbound HTTP/3 client, static QPACK response streaming and independent aioquic PHP8.4/8.5 tests implemented; full H3 multi-request/QPACK blocking, mixed protocol pressure, TLS baseline-matched performance and HTTP client/server benchmarks still OPEN. Every one of the 11 C1 task IDs must have task-specific evidence and exact-head green QA before C2 starts. Intermediate commits are not sub-batches; no unproven U acceptance.

Mandatory release acceptance

  • PHP 8.4/8.5 QA/analysis/security, optional extension capability, independent real protocol peers and host runtime tests.
  • Verified TLS/ALPN identities, full H1/H2/H3/WS/WT and QUIC cancellation/flow/concurrency, secure proxy and nested TLS, native autoscale and file I/O.
  • Frozen published 2.1.2 versus 3.0 comparison: five paired 180-second successful-throughput samples, both CV <2.5%, p99/RSS/RPS/correctness budgets, generator headroom and 1800-second monitored process-tree GC/OPcache/FD soak.
  • Sphinx/Read the Docs native RST-only complete feature/API/migration documentation and hosted preview.
  • Task proof, batch counts, roadmap and PR synchronized on each cohesive push. A skipped/cancelled check is never QA PASS.
  • Collect exact-source opt-in certification evidence while U15/U17 tasks remain open. Final aggregate must fail if any U task is OPEN or any required gate is not successful.

Historical workflow (superseded by current checkpoint): C1 is one complete 11-task execution batch, not multiple independent sub-batches. Current implementation allows C1–C4 overlapping development, retaining separate task-specific acceptance and green QA for every complete closure batch. Sync canonical plan, roadmap and PR; do not merge/tag/release.

PR remains DRAFT, unmerged, untagged and unpublished. Maintainer owns merge/tag/release.

C1 ongoing (2026-10-25): 3175e10 introduced bounded one-shot native H3 upload DATA and request-trailer validation with independent aioquic POST fixture. 474c236 synced plan/roadmap. Full U07.06, dynamic QPACK, multiplexing and C1's other ten open tasks remain unaccepted. 124/175 QA-accepted; 51 OPEN; C1 1/11. Exact-head QA on 474c236 is pending; superseded 3175e10 CI cancellations do not count as pass. C2-C5 remain queued. No merge, tag or release.

C1 TLS task acceptance and latest implementation (2026-10-25): Immutable C1 matched verified-TLS #40202656645 ran five alternating 180-second trials per population on a single pinned PHP8.4 runner: baseline/candidate successful RPS 390.374/390.362, p99 41.12/41.14 ms, RSS 120197120/127311872 bytes, both CV 0.009%; comparator budgets PASS, nine routine workflows green at d923713. U04.08 accepted on that TLS-specific evidence only. Current code extends one-shot H3 native uploads and partial-write handling; CI on latest exact source remains mandatory. Canonical 125/175 QA-accepted, 50 OPEN; C1 2/11 accepted, 9 OPEN. No C2 work until all 11 pass exact-head QA. Final frozen performance/soak remains open.

C1 exact-head QUIC milestone (2026-10-25): aa09a568 all nine routine workflows GREEN: Security #40212536140 (two native QUIC PHP versions, four PHPForge QA lanes, both analyzers) and Benchmarks #40212535821. Real independent 24 native resets, impaired-UDP drop/delay/reorder, stalled sibling recovery and uni-FIN were verified. U05.05 and U05.09 accepted as native backend scoped checks. 127/175 accepted, 48 OPEN; C1 4/11 accepted, 7 OPEN. U05.10, U07.06/.07/.11 and U08.05/.08/.09 remain incomplete. C2-C5 queued; no merge/tag/release.

C1 native outbound H3 trailer implementation staged (2026-10-25; QA PENDING): 359a590d00a6 extends one-shot verified QUIC/H3 client to accept bounded static-QPACK response trailers with an opt-in callback, rejects duplicate trailers, forbidden pseudo/framing/routing fields and DATA after trailers; independent aioquic upload server now sends response trailers verified end-to-end by PHP fixture, plus focused parser regression. Both canonical plan files preserve 127/175 QA accepted, 48 OPEN; C1 4/11 accepted, 7 OPEN because U07.06/.07 require dynamic QPACK, multiplexing and complete conformance. Exact-head QA #40213831783 pending; no C2, merge, tag or release.

C1 H3 trailer formatting correction (2026-10-25): 390f0b2 addresses the exact prior PHPForge Pint class-method separation failure from 359a590 without behavior changes. Prior H3 PHP8.4 native-peer test and Pest were green but previous head was not fully QA green. All acceptance counters remain 127/175 and C1 4/11 until new exact-head checks finish.

C1 scoped benchmark acceptance (2026-10-25): Exact a4a2d6b passed Security #40215640638, Benchmarks #40215640344 and all seven other default workflows. U05.10 now accepts measured independent 16-request H3 serial p99/RPS/CPU/RSS, 38 native worker poll calls / 1,392,236 ns and 5 native writes / 362,521 ns, 4.83 ms worker CPU/33,420 KiB peak RSS, plus separate independent-peer UDP drops/delays. U08.05 accepts pinned 2.1.2/current QPACK block/unblock/ack+varint source profiles in PHP8.4/8.5 and independent real-H3 QPACK pressure. Neither acceptance implies peak/sustained H3 release certification, multiplexed outbound H3 or syscall accounting. 129/175 accepted, 46 open, C1 6/11 accepted, five open. Canonical plan/roadmap synced at 3eda8a3. Subsequent transport write/read accounting awaits exact-head QA; C2 remains queued.

C1 end-to-end stress / syscall measurement attempt (2026-10-25): Current source f129554 adds 3-pair H1 plaintext-vs-verified-TLS size/stream-IO/whole-server-process syscall comparisons and 8 H2 + 8 H3 concurrent independent peer streams per lifecycle wave with H2+H3 client resets and slow receiver through live crash/reload/recycle. The initial H1 pair CI caught ephemeral-port re-use; fixed simultaneous port reservation, visible diagnostics and Linux syscall semantics. U08.08 and U08.09 remain OPEN until complete exact-head green native pressure/benchmark QA; the latest source is not accepted. Canonical 129/175, 46 open, C1 6/11 accepted (5 open), C2-C5 QUEUED. No merge, tags or release.

User-authorized concurrent C1+C2 execution (2026-10-26): C1 native H3/outbound certification and H1 verified-TLS benchmarks continue independently. C2 is now IN DEVELOPMENT (not QA-accepted) with opt-in default-off BoundedConnectionPool::metrics() for tenant-safe reuse hit/miss, dial-slot admissions, FIFO waiters, overflow, release and validated idle storage; real-socket regression added. Source 778fe151; exact-head QA pending. Canonical 129/175 accepted, 46 OPEN; C1 6/11, C2 0/10; C3-C5 QUEUED. No acceptance on metrics alone, no merge/tag/release.

2026-10-26 C1 source-pinned acceptance and C2 overlap: U08.08 QA-accepted on immutable b372832, all nine green including Security #40218734782 and Benchmarks #40218734360, plus mixed-native recycle artifact #12609275457: concurrent 8 H2 + 8 H3, 1 canceled stream each, 20ms slow H2 receiver, exact payloads through crash/reload/recycle. 130/175 accepted (74.3%), 45 OPEN; C1 7/11 (four open), C2 independently active 0/10; C3-C5 queued. C2 opt-in BoundedConnectionPool metrics and tests are not an accepted task until a matched saturation/FD/RSS/CPU/p99 profile and QA exist. Latest combined head source CI still running. No merge, tag or release.

Copy link
Copy Markdown
Member Author

Runwire 2.2 — final-source QA checkpoint at 5b88cff2f40824526ffcd91b56e5a310a60d692f (2026-10-20)

Canonical tracker: 64/95 checked; 7 deliberately deferred R5 tasks, leaving 24 active in-scope (64/88). All prior completed tasks retain exact-SHA evidence under docs/plans/evidence/runwire-2.2.

Standard CI: Release Candidate 39379880604 passed PHP8.4/8.5 clean ZIP consumer installations; Swoole/OpenSwoole 39379881041 and Portable Native 39379880600 passed. Security/standards 39379881252 and benchmarks 39379880605 were in progress at inspection; do not count pending checks as passed.

Actual full certification: 39379880727 was deliberately triggered (label release-certification present). At inspection, matched five-trial performance, 30-minute soak, and PHPForge release guard were in progress. The Infbyte consumer failed for an external publication-order dependency:

Root composer.json requires infocyph/foundation ^3.0.1
available published versions include 2.1.1; no published matching ^3.0.1

The Runwire archive and new pure-PHP candidate install correctly in isolation. Do not change Foundation/Infbyte or use a fake published version to hide this dependency failure. R8.05 and R8.08 remain BLOCKED; exact-source performance and soak claims remain PENDING. This PR is not ready for merging/tagging/releasing. Maintainer controls those actions.

Copy link
Copy Markdown
Member Author

Runwire-only 2.2 qualification checkpoint (2026-10-20): candidate d69ddfa7b2af49a03c3b648c81348ef54ef005d7; canonical plan 69/88 in scope (78.4%), 19 open and seven R5 dialer tasks deferred. Final QA/blocker matrix. Explicit release certification run 39438778354 started for this exact source: results pending, NOT certified. Full release blocked by stable paired CV, 30m resource/GC assessment, real native multi-protocol process replacement and unavailable FrankenPHP/RoadRunner host acceptance. Foundation/Infbyte independent and untouched. No merge/tag/publish.

Copy link
Copy Markdown
Member Author

Runwire 2.2 batch QA/tracker sync (2026-10-20): 71/95 canonical tasks checked; seven R5.02–R5.08 dialer tasks deferred; 71/88 release-scope tasks complete (80.7%), 17 remain open. Source PR head 7025e4e8d207b299a96eb0e10b5c0dbd2a9c18ac. R2 is 9/9: PHP 8.4/8.5 mixed 3-tier live socket/timer/CPU benchmark artifacts from run 39441738432, worst p99 0.393ms, zero timer/watcher remainder; all four PHPForge Pest QA variants passed on 39441739912. R9.08 handoff prepared, not authorized: release-handoff.md, full QA matrix, and canonical tracker. NOT RELEASE READY: R0/R1/R3/R4 profiling/performance, R6 live native multi-protocol recycle and real FrankenPHP/RoadRunner, R7 GC/OPcache/FD/RSS long soak, R8 final exact-SHA 5×180s CV<2.5% matched A/B, sampled 30m soak and signoff, R9 final audit/risk. Prior opt-in certification run 39438778354 was still executing at last check and tests older SHA d69ddfa7; it cannot certify this newer head. Standard checks for head 7025e4e were also in progress at last check. No Foundation/Infbyte changes, merge, tag or publication.

Copy link
Copy Markdown
Member Author

Runwire-only 2.2 checkpoint (2026-10-20): canonical tracker 72/88 in-scope checked (81.8%), 16 open, 7 R5 dialer items deferred. R8.07 closes the benchmark enforcement procedure only, not successful performance certification: prior A/B evidence had baseline CV 2.984% > strict 2.5%, observed +3.593% candidate throughput not certified; the 30-minute run passed with 11,141,982 error-free responses but only root-PID RSS telemetry. New Runwire-only source 8828851 profiles supervisor+child RSS/FD/process count; 7609bed respects PHPForge no-skip; b8822cc adds opt-in worker GC/OPcache/heap snapshots. Current exact candidate SHA: 2831cb1b68837eb05bb8e554e0e56150f9aaccba. New explicit final-source Release Certification run #39451940445 and current six standard PR workflows were still in progress when recorded. All of R7.08, R8.05, R8.10, final R9 and unresolved real host/performance tasks stay OPEN until evidence passes. No Foundation/Infbyte work and no merge/tag/publication.

Copy link
Copy Markdown
Member Author

2026-10-20 additional Runwire-only QA correction: exact candidate 2831cb1 Release Certification run 39451940445 exposed a new packaging smoke failure: the standalone Composer-installed benchmarks/http1_server.php unconditionally required absent dev-only soak_runtime_telemetry.php. Fix 7b16945 makes the helper conditional on explicitly enabled localhost-only diagnostics. Release Candidate preflight 6cc2b0a now runs real isolated Composer native HTTP 200/400 smoke on PHP8.4 and PHP8.5 at every PR commit; run 39452278706 PASSED both jobs. The original failing exact-source certification is not accepted or reused. All new files and actions are strictly in infocyph/Runwire. Canonical tracker still 72/88 (81.8%), 16 active open, with CV qualification R8.05, full corrected 30m GC/OPcache+process-tree soak R7.08, real third-party hosts R6.10 and release signoff open. Other six-workflow QA lanes on the new head may still be active. No merge, tag or publish.

Copy link
Copy Markdown
Member Author

Runwire 2.2 follow-up checkpoint — 2026-10-20

  • Scope invariant: Only infocyph/Runwire was modified. No Foundation/Infbyte/Rust repos, merge, tag, or publication.
  • Canonical tracker: 72/95 checked, R5.02–R5.08 (7 tasks) explicitly deferred, 72/88 in scope (81.8%), 16 open. Updated plan.
  • Benchmarks: Previous five-pair run measured +3.593% throughput but baseline CV 2.984% > strict 2.5%, correctly failed closed. R8.07 test-procedure enforcement marked complete; passing R8.05 qualification is NOT.
  • Soak: Prior 30m run got 11,141,982 correct requests, but its external sampler covered only the supervisor PID. Corrected benchmark now records root+worker RSS/FD/process counts and separate opt-in worker PHP heap, GC and OPcache stats; final full-duration pass still required.
  • Packaging regression caught and fixed: Certification 39451940445 found mandatory missing dev-only telemetry include in clean Composer consumer. Fix 7b16945 makes it opt-in, and fast Release Candidate QA 39452278706 passed clean native HTTP 200/400 smoke on both PHP 8.4 and 8.5. A fail-fast telemetry endpoint preflight was also added to avoid wasting full 30m on misconfigured instrumentation.
  • Latest exact branch: da2aa0fd548404e02279433e2e8bec217cb05173; Release Candidate run 39453034773 succeeded. New explicit exact-head certification 39453076098 triggered and was PENDING at last check. Other standard QA on this head also not yet all complete.
  • NOT RELEASE READY: R0/R1/R3/R4 live performance attribution, R6 actual multi-protocol prefork restart + FrankenPHP/RoadRunner host evidence, R7 complete sampled long soak, R8 single-source passing performance/soak certification and R9 final signoff remain open. No performance headline without stable evidence.

Copy link
Copy Markdown
Member Author

Runwire-only finalization pass (2026-10-20): Latest tracked PR head ab81101. Mandatory Security & Standards 39453035106 and prior release guard 39453076098 exposed a Pint blank_line_before_statement issue in the new soak telemetry helper, despite 605 passing Pest tests. This was corrected only in Runwire by 301027e (before try) and 88f1e74 (before break). Exact source post-fix Security & Standards 39457773144 passed PHP 8.4/8.5 stable/lowest QA and both analysis jobs; PHP8.5 QUIC still underway at evidence checkpoint. Tracker and critical-path/QA evidence synchronized at 72/95 checked; 7 R5 deferred; 72/88 in scope (81.8%); 16 open. Exact-new-head Release Certification #39458692314 triggered but PENDING at last check. NOT RELEASE-READY: validated performance CV <2.5%, full GC/OPcache+process-tree long soak, H1/H2/H3 saturation, real FrankenPHP/RoadRunner and native rolling mixed-protocol crash/restart tests remain. Neither Foundation nor Infbyte was changed. No merge, tag or publication.

Copy link
Copy Markdown
Member Author

2026-10-20 Runwire 2.2 finalization checkpoint: All changes remain only in Runwire. Fixes 301027e and 88f1e74 resolved PHPForge Pint formatting failures in telemetry; the PHP8.4/8.5 stable/lowest QA and static analysis jobs passed on corrected code Security & Standards 39457773144. New fbe0ea7 pins published 2.1.2 and candidate servers to the same physically permitted CPU core, with load generator on a separate core, emits cpu-affinity.json, and retains five ×180s / 30s warmup / strict both-population CV <2.5% without relaxing quality gates. Canonical tracker/closure/QA matrix synchronized by 3c734ab: 72/95 checked; seven R5 dialer tasks intentionally deferred; 72/88 in scope (81.8%); 16 remain OPEN. Exact-new-head Release Certification 39459564299 deliberately triggered, PENDING at last check; standard CI also pending except release-candidate package job success. NOT RELEASE READY: stable verified throughput, full long soak, H2/H3 saturation, native mixed-protocol worker recycle, real external FrankenPHP/RoadRunner, final QA and risk signoff have NOT passed. Foundation/Infbyte untouched. No merge, tag, publication.

Copy link
Copy Markdown
Member Author

Runwire 2.2 — latest batch checkpoint (2026-10-20)

Only infocyph/Runwire changed; Foundation/Infbyte untouched. PR #9 is draft/unmerged; no tag or publication.

Current candidate: 145b52b6 (145b52b6f01fa6fc6f1677737fbccaaf1e30695c). Canonical checklist: 72/95 checked; seven deliberately deferred R5.02–R5.08; 72/88 2.2-scope complete (81.8%), 16 tasks still open. Canonical tracker and final QA risk matrix are synced.

  • Last full six-workflow green 3c734ab passed all standard CI categories, but exact release certification later exposed a CPU affinity JSON serialization mistake.
  • Release Certification 39459564299 failed the matched-benchmark job before measured trials: jq emitted a boolean instead of CPU-affinity object. Archive-native PHP 8.4/8.5 consumer and ext-event release guard passed. The long soak remained active at this checkpoint; the run is NOT a certificate.
  • d081bba fixed the JSON persistence; c1ce190 added an independent CPU physical-core probe used by both matched benchmarks and fast normal Release Candidate preflight. RC 39461921946 passed on PHP 8.4 and 8.5, including real taskset validation. The 2.5% CV gate was not lowered.
  • 3c1a8e5 adds an actual prefork worker lifecycle test with concurrent inherited real HTTP/1.1, TCP and UDP bound listeners, crash/automatic restart/manual recycle, correctness and no zombies. PHPForge Security & Standards 39461923072 passed all four PHP 8.4/8.5 stable/lowest Pest QA lanes and both static analyses, plus PHP 8.4 QUIC. R6.02 remains OPEN for H2/H3 and rolling mixed-protocol lifecycle.
  • Full latest-head release certification #39462685239 queued for 145b52b6f01fa6fc6f1677737fbccaaf1e30695c; NOT YET PASSED. The six routine workflows for this docs-synced SHA are in progress. Previously red CI runs and older candidate soaks are never interchangeable with current exact-source acceptance.

Release verdict: NOT READY. Still open R0.06/.07, R1.08, R3.09, R4.01/.02/.04/.09, R6.02/.10, R7.08, R8.05/.10 and R9.06/.07/.09. In particular, new 30m process-tree RSS/FD+worker GC/OPcache leak acceptance, strict successful-RPM variance, independent H2/H3 saturation, real external FrankenPHP/RoadRunner and final risks require actual passing evidence. No fabricated completion.

Copy link
Copy Markdown
Member Author

Runwire 2.2 — next R4 protocol profiling batch (2026-10-20)

Only Runwire changed. No Foundation/Infbyte/Rust changes, merge, tag, or publication.

  • Code 561edbf: adds PHPBench subjects and Pest checks for HTTP/2+HTTP/3 request-header validation and a genuinely blocked QPACK section that unblocks on encoder instructions. No production runtime classes changed.
  • Run 39464102766: both PHP 8.4 and PHP 8.5 core benchmark jobs passed, 18 ProtocolCoreBench subjects each. Artifacts 8.4 #12283493850, 8.5 #12284460759. QPACK dynamic/blocked operations merit closer measurement, but their per-operation cost is not an end-to-end performance gain or proof that this is the real H3 bottleneck.
  • Security & Standards 39464104137: Pest and static analysis passed PHP8.4/8.5; all four QA lanes failed only ordered_class_elements formatter for the new PHPBench methods. Fix db9bfe7 alphabetically orders the methods. New standard QA on current head still pending.
  • Plan/evidence sync cd7108c4 writes actual 8.4/8.5 profile results and QA status into the canonical tracker, R3/R4 audit, critical-path register, and final QA matrix. 72/95 checked; seven R5 dialer items deferred; 72/88 in scope complete (81.8%), 16 still open.
  • R4.02 and R4.04 remain OPEN: scheduling/output buffer allocation, real H3 QUIC poll/write, blocked-stream pressure under independent clients and same-host end-to-end impact are not established by local PHPBench subjects. Prior exact-SHA certification 39462685239 was still pending at last check; its candidate differs from current head and cannot certify the latest changes.

Current PR head: cd7108c4b98f8a9283d53b4254b18f39acbc7b6e. NOT READY FOR MAINTAINER RELEASE.

@abmmhasan abmmhasan changed the title Runwire 2.2: runtime improvements and batch-by-batch certification Runwire 3.0: unified asynchronous runtime, consolidated roadmap and detailed trackers Oct 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants