Repository navigation
Preserve outcome export paths after worker cleanup - #157
Conversation
Derive contract-owned export paths before worker cleanup, retain those lightweight paths with execution results, and let the ZMQ server observe them even when outcome-only retention releases full parent values. Refs #145.
|
Integration coordination: I own the explicit materialized-result inventory/reopening work in #153 / #134. Your worker_execution, runtime_exports and function_artifact_materialization changes overlap the writer/outcome boundary we traced. I will not start a competing writer patch. Please keep successful export-path retention coherent with artifact identity/location provenance; I will build the public bounded inspection route against the reviewed ownership path and coordinate any extension. Native POINT codec prerequisite has merged in OpenHCSDev/PolyStore#13 and is selected in #153. Global NRA memory repair is separately tracked and does not gate this native delivery checkpoint. |
|
Issue #179 implementation is owned by the blind-analysis coordinator in /home/ts/wt/openhcs-compile-observation-identity-20260929. Scope: typed compilation signature separate from complete request identity, and compatibility validation before artifact consumption. Shared zmq_execution_server.py edits only add compilation_signature projection and switch _resolve_compilation/_store_compile_artifact to that identity. _export_runtime_observation is unchanged; your outcome-export path ownership remains separate. |
Outcome-only retention released full parent values after successful worker execution, but the ZMQ server still queried those values to discover exported artifact paths. A run could therefore finish every step and then fail while assembling its response.
Workers now derive the exact contract-owned export paths before cleanup and retain only those lightweight paths with the execution result. The server observes those paths directly and still combines parent-backed outputs when a contract separately requires them.
The fix was exercised through all four benchmark execution modes, including the official 120/120 successful scaling observations. The isolated branch also passes 109 focused tests, Black, and
git diff --check.Closes #145