2026-04-28 - CoreML E5 Bridge Operation Handles Recovered

Intent: Advance the private ANE/CoreML E5 bridge from program-library discovery toward operation-level chaining, following the validation-first notes Dragon Book call-hoisting/strength-reduction discipline to remove host materialization between validated shards.

Setup: Added local artifacts to dump live CoreML E5 classes. Updated local artifacts to reach MLE5StaticShapeExecutionStreamOperationPool, call prepareWithInitialPoolSize:error:, _takeOut an MLE5ExecutionStreamOperation, and dump operation plus port handles on Phi layer30_32 and layer16_24 shards.

Result: Discovered MLE5ProgramLibrary.createOperationForFunctionName returns raw e5rt_execution_stream_operation*, not an ObjC object. Recovered e5rt_program_library*, e5rt_execution_stream_operation*, and named e5rt_io_port* handles for x input, hidden output, masks, and KV state on both tested shards.

Surprise / hurdle: The useful bridge surface is partly ObjC (MLE5StaticShapeExecutionStreamOperationPool / MLE5ExecutionStreamOperation) and partly raw E5RT pointers, so object introspection alone misses the operation contract.

Lesson: Public CoreML-loaded E5 models expose enough live operation and port handles to make ANE-side shard binding a concrete next experiment.

Next: Construct or borrow an MLE5ExecutionStream containing two operations and bind stage A hidden output directly to stage B x input without MLMultiArray host materialization; keep public residency and golden gates as acceptance checks before any performance claim.

Refs: research/ANE_CHAIN_SCHEMA.md