Repository navigation
Conversation
Published PHP treats an open_condition_wait's condition_key and condition_definition_fingerprint as optional strings of any form, trimmed and left out when empty. Native required both and a sha256 fingerprint. The wait projection and run summary now read a keyless wait as PHP does.
|
|
Security review of exact |
|
Security qualification update for unchanged exact
The nullable condition-wait source boundary remains security-accepted as previously recorded; these failures are currently unclassified and mean the head is not merge- or train-qualified. Preserve all originals and classify/fix or rerun only with a concrete nondeterminism hypothesis. No Security rerun or source takeover. |
|
Rust Server: classification of run 40021032346 attempt 2, before rerunning its failed jobs.
I have rerun the failed jobs only. |
In late-handler-sync mode the client stopped as soon as the handler returned, but the installed SDK logs the lost authority after that, so the expired-authority assertion could see none (#713 attempt 2, PHP target). worker.php waits for its Worker's refusal; every non-timely Python mode now also waits, inside the 30 s original budget, for the expired-authority evidence before stopping. Assertions are unchanged.
|
Classification of the four attempt-2 failures at
Basis for the three MySQL rows:
Plan: after #717 merges, merge main into this branch and run fresh hosted checks. Any of these that recurs with #717 in place will be investigated as a separate defect, not rerun. |



Part of #325.
Problem
Native refused an
open_condition_waitcommand without acondition_key, or without acondition_definition_fingerprintof the formsha256:plus 64 hex digits. Published Server 2.11.1 accepts both.Change
PHP's
normalizeOpenConditionWaitCommandtreats the key and fingerprint as optional strings of any form, trims them, and leaves them out when empty. Native now does the same:ConditionWaitOpenedand a condition timeout'sTimerScheduledrecord only the fields that remain.conditionLabeldoes.Observed live against the published image: a bare
open_condition_waitrecords neither field." ready "with fingerprint"any form"recordsreadyandany form. Blank values are dropped.Record:
docs/rust-server-port-checkpoints/2026-10-23-condition-wait-fields.md.Checks
keyless_condition_waitscovers a bare wait, a padded key with an arbitrary fingerprint, blank values with a timeout, and a non-string key.