Release evidence
The mandatory Full CI for candidate 32cc6ea surfaced three Linux parity failures that are not currently tracked in test-parity/known_failures.json:
- test_stress_promises: Perry SIGSEGV (exit 139).
- test_class_field_layout: output mismatch; both runtimes exit 0.
- test_issue_3199_3200_tls_server_tlssocket: Perry exits 1 after the initial server-address line; Node exits 0.
Full candidate run: https://github.com/PerryTS/perry/actions/runs/32898410858
Focused five-attempt controls show these predate the #8835 batch:
test_parcel_watcher_idle was also surfaced, but it is not a standalone parity program: it requires PERRY_WATCH_ROOT, PERRY_WATCH_READY, an external watcher package for Node, and an orchestrating harness. The release unblocker classifies it with a parity-skip header instead of recording a product bug here.
Acceptance criteria
- test_stress_promises runs to completion and matches Node under repeated Linux release builds.
- test_class_field_layout matches Node byte-for-byte.
- test_issue_3199_3200_tls_server_tlssocket completes with the same lifecycle/output as Node.
- Remove each corresponding known_failures.json entry in the same PR that fixes it.
Release evidence
The mandatory Full CI for candidate 32cc6ea surfaced three Linux parity failures that are not currently tracked in test-parity/known_failures.json:
Full candidate run: https://github.com/PerryTS/perry/actions/runs/32898410858
Focused five-attempt controls show these predate the #8835 batch:
test_parcel_watcher_idle was also surfaced, but it is not a standalone parity program: it requires PERRY_WATCH_ROOT, PERRY_WATCH_READY, an external watcher package for Node, and an orchestrating harness. The release unblocker classifies it with a parity-skip header instead of recording a product bug here.
Acceptance criteria