Repository navigation
Conversation
Part of durable-workflow/.github#216 (safe signal/update retries after a lost response). Work in progress; see the draft PR body for the remaining steps. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
Exact-head review of
A synthetic PHP 8.4 command harness against this head confirmed, without printing the hazardous bytes themselves:
This is not evidence that the CLI executed the shell syntax, and the draft is unreleased. It is a terminal/log spoofing and unsafe copy-paste guidance defect. The same repository already has an appropriate pattern in Please sanitize and formatter-escape request IDs and retained-receipt fields in every human-output path. Do not render an arbitrary key as an unquoted shell fragment; either provide platform-safe quoting or present the exact key separately without executable-looking syntax. Structured JSON should continue preserving the exact key bytes through JSON escaping. Add focused newline, ESC/OSC, console-markup and shell-metacharacter regressions for success, conflict and uncertain transport errors. Minor documentation correction in the same slice: |
|
Focused correction boundary for the existing exact-head finding on Keep the wire and structured-output contract byte-exact. Apply terminal-safe rendering only at the human boundary:
Do not sanitize the request body, Focused regressions should cover signal and update success, request-ID conflict, and uncertain transport failure with newline, ESC/OSC, console markup, quotes/whitespace and shell metacharacters. Human output must contain no raw terminal controls, forged line, active markup or executable-looking retry fragment; JSON must decode back to the exact original values. Also correct |
…d-output-20261101
|
General pushed the corrected head The full local suite completes 977 tests / 18,071 assertions with one live-Server smoke skip and 11 existing PHPUnit deprecations. Focused command/output coverage completes 254 tests / 1,961 assertions. Controls include newline/C1/OSC/markup/shell characters, decorated and plain human output, signal/update success/conflict/uncertainty, exact wire/JSON values and pre-POST validation. All 16 current-head hosted checks succeeded, including PHP 8.2/8.3/8.4/8.5, PHAR smoke, reproducible PHAR build, required qualification, Sonar and CodeQL. Build evidence. The prior human-output finding needs source review on this corrected head. The PR remains draft with auto-merge off; this does not claim #216's backend or published lossy-response acceptance, and makes no release/version change. |
|
The three Sonar maintainability findings in Repeated full suite: 977 tests / 18,071 assertions, one existing live-Server smoke skip, 11 existing PHPUnit deprecations; PHP 8.3.36, PHPunit 11.5.55, Docker task sandbox. PHP syntax and diff checks pass. Fresh hosted analysis is pending; no threshold or finding was suppressed. This remains draft with auto-merge off until the broader #216 acceptance work qualifies. |
|
|
Security focused rereview accepts current exact head Reviewed
The regression matrix covers signal/update success, conflict and uncertain transport paths; C0/C1/newline/OSC, formatter markup and shell characters; decorated/plain human output; and exact structured round trips. This clears only the output finding. The PR correctly remains draft/auto-merge off until the broader #216 native #934 contract and published lost-response/concurrent-cohort acceptance are complete. No Security release claim or additional hold. |



Part of shared #216. Signal and update commands accept or generate a command key, retain it across uncertain responses, show receipt flags and expose retained-command conflicts. Keys follow the Server's 255 Unicode-character limit and preserve exact valid bytes.
Human output removes terminal controls and escapes Console markup in request IDs, errors and conflict details. Uncertain-outcome advice explains how to reuse the key without interpolating it into a shell command. JSON/JSONL writes bypass Console formatting so structured values remain exact. Invalid UTF-8 refuses before POST with a valid JSON error; local validation keeps its existing INVALID exit code.
Source qualification at
fbede8f6d8066143cf38c7be6232884b55b0b6e4: the full suite completes 977 tests / 18,071 assertions with one live-Server smoke skip and 11 existing PHPUnit deprecations. Focused output/command coverage at parentd02b31ecompletes 254 tests / 1,961 assertions. The final helper-only refactor is covered by the repeated full suite. The original output matrix has 28 expected failures; the correction also fixes Console formatting of JSON/JSONL and preserves legacy validator exit codes. Main was integrated by a normal merge.Keep this PR draft with auto-merge off while fresh hosted checks, source review and the remaining #216 qualification run. No version bump or retry-safe release is claimed. The published lossy-response CLI/SDK cohort, qualified backend receipt/intent/retention behavior, CHANGELOGs and all eight documentation locales remain acceptance work in #216.