Skip to content

Docs: record Phase 1 complete with the measured compliance numbers - #24701

Merged
PurHur merged 1 commit into
masterfrom
docs/phase1-complete
Jul 29, 2026
Merged

PurHur merged 1 commit into
masterfrom
docs/phase1-complete

Conversation

@PurHur

@PurHur PurHur commented Jul 29, 2026

Copy link
Copy Markdown
Owner

Phase 1 — "make correctness observable" — is done. This records it with numbers rather than
adjectives.

What the suite now does

script/shard-compliance.sh --suite=VMTest --shards=24 --shard=N   # ~320s per shard
script/compliance-baseline.sh --diff --suite=VMTest               # set difference by NAME

Measured over two complete independent runs of one commit, 2.1 h each, zero timeouts:

cases executed 8,023 of 8,844
failing, stable in both runs 422
flaky (flipped between runs) 9, quarantined with direction
determinism 422 of 431 distinct names — 98%

The finding that justifies the two-run protocol

A single-run baseline was wrong in 9 places and looked authoritative. Five of those were absent
from it but failing intermittently — they would have surfaced as phantom regressions, sending
someone bisecting a change that did nothing.

The validation that matters is not that the baseline exists, but that it is stable: the 422-name
baseline diffs clean against both runs, including the one it was not built from. Two runs that
disagreed on 9 cases now both report no regressions.

The debt is concentrated (#24697)

gmp fails 6/6 and intl 56/63 — 62 of 422 in two extensions — while spl (121 executed),
mbstring (45), phar (21), openssl (21) and xmlwriter (20) are perfectly clean. stdlib and
language carry the largest absolute counts at the lowest rates (~5%).

That reframes the total: it is a release-scoping decision about what the release claims to support,
not a diffuse quality problem.

Docs only.

The compliance suite is now a gate rather than merely runnable. Records what two complete
independent 24-shard runs of one commit measured:

  executed          8,023 of 8,844 (rest withheld by host-library policies)
  failing (stable)  422
  flaky             9, quarantined with direction (#24672)
  determinism       422 of 431 distinct names identical = 98%

Marks P1.3 and P1.4 done, and states the finding that justifies the two-run protocol: the single-run
baseline was wrong in 9 places while looking authoritative, 5 of them in the phantom-regression
direction. The 422-name baseline diffs clean against BOTH runs, including the one it was not built
from — two runs that disagreed on 9 cases now both report no regressions.

Also records the concentration result (#24697): gmp 6/6 and intl 56/63 failing, together 62 of 422,
while spl/mbstring/phar/openssl/xmlwriter are perfectly clean and stdlib/language carry the largest
counts at the lowest rates (~5%). That makes the debt a release-scoping decision rather than a
quality verdict.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@PurHur
PurHur merged commit 020b8cd into master Jul 29, 2026
@PurHur
PurHur deleted the docs/phase1-complete branch July 29, 2026 12:22
@PurHur

PurHur commented Jul 29, 2026

Copy link
Copy Markdown
Owner Author

Cleanup: deleted leftover head branch docs/phase1-complete (PR merged; content on master; no open PR).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants