Render Nexus service-call history events in timelines - #488
Conversation
|
Local qualification: PHP 8.4 unit cases 8/8 (56 assertions); persisted SQLite reload/projection 1/1 (3 assertions); PHPStan src reports no errors; focused ECS applied. Server HTTP regression with the candidate timeline overlaid now passes (1 test, 14 assertions), including target dispatch, durable ServiceCallStarted and completed caller task. This is candidate-source evidence; published-package verification is still required. |
|
The existing corpus guard classified added HistoryEventType match arms as replay behavior solely because the diff contained History. This fix changes timeline projection, not replay interpretation. Tightened the existing content heuristic to replay and actual history access/mutation patterns; explicit guards on the bridge, executor, fiber runner and replay classes remain unchanged. No new exemption mechanism or unrelated fixture. The focused persisted regression and eight before/after cases directly cover this failure. |
|
Corpus validation now passes against origin/main and all 62 policy tests pass in a PHP/Python container. Content heuristics can be corrected in review; fixture selectors and unconditional core-code guards remain append-only. The local unit, persisted-history and PHPStan results are unchanged. Awaiting the normal public CI suite before merge. |
Addresses #487 and the real worker HTTP completion regression in durable-workflow/server#140.
Adds explicit summaries and source identity for ServiceCallStarted, ServiceCallCompleted, ServiceCallFailed and ServiceCallCancelled. Request/results and caller credentials are not interpolated into summaries. Adds eight complete/sparse projection cases and a persisted-history reload test.
Local PHP 8.4: all eight unit cases pass (56 assertions). With the unchanged main HistoryTimeline mounted instead, all eight reproduce UnhandledMatchError. Focused ECS applied. Broader checks and persisted test qualification are in progress; no release yet.