## @workglow/task-graph
### Features
#### task-graph
- implement runId-scoped ref readers on FsFolder
- add optional *ForRun ref methods to TaskOutputRepository
- allow async getOutputStreamByRef for non-filesystem backings
- stream the run-private cache tier over an FsFolder backing
- backpressure gate on the no-accumulation passthrough edge
- cache-hit replay parity for non-binary refs (Task 6)
- no-accumulation passthrough — skip the materialize drain
- exempt stream-wired input ports from whole-value validation
- thread noAccumulation run flag to the streaming seam
- generalize stream sinks to all modes (per-port refs)
- per-mode stream codecs + port-aware repo stream sink
- add optional port/mode axis to CacheRef
- FsFolderTaskOutputRepository with streaming blob sidecar files
- hydrate cache refs in task inputs before execute
- cache-hit replay and hydration of binary cache refs
- expose binary stream-consumer detection for cache-hit replay
- resolveJobOutputStream for streaming job results from cache
- streaming read helpers for cache refs
- binary-streaming framework + result-as-reference
#### test
- Supabase streaming cache backing
#### ai
- add a uniform usage telemetry channel
### Bug Fixes
- restore branch-final content drifted during the rebase onto main
#### task-graph,util
- close storage and worker review findings
#### job-queue
- close stream-channel review findings
- harden the cross-process stream channel
#### task-graph
- close streaming engine review findings
- fail passthrough edge gates on abort and enforce watchdog liveness
- make BinaryStreamRouter push/end race-safe
- restrict portless outputStream discovery to declared streamable ports
- reject same-backing CacheRegistry misconfiguration at run start
- netstring-encode runScopePrefix to close sanitize collision
- route RunPrivateCacheRepo by-ref through *ForRun to prevent cross-run leak
- correctness fixes from branch-wide streaming review
- replace-mode streams must carry a value, else error
- stamp FsFolder blobs with unique suffix to prevent orphan-cleanup races
- fsync blobs directory after rename to survive crashes between rename and dir-metadata flush
- treat all class instances as opaque in ref walker
- document single-tenant assumption of FsFolderTaskOutputRepository deterministic tier
- clean up orphan blobs when stream-write succeeds but row commit fails
- fsync blob temp handle before rename in FsFolderTaskOutputRepository
- treat Error and URL as opaque leaves in ref walker
- guard resolveOutput walker against cycles and shared subtrees
- default blob/binary port codecs for JSON-row cache backings
- cache rows store refs, not inline binary; enforce single-binary-port streaming
- blob lifecycle hardening in FsFolderTaskOutputRepository
- byte-bounded backpressure in binary stream router (default 8 MiB)
- canonicalize binary stream format vocabulary to "blob"|"binary"
- brand CacheRef with literal kind to prevent shape-only collisions
### Refactors
#### task-graph
- extract BackpressureGate from BinaryStreamRouter
- remove dead pipeBinaryToCache; detach edge-stream listeners on abort/error
### Documentation
#### task-graph
- document live cross-process stream transport
- document tabular SQL streaming cache backings
- document IndexedDB streaming cache backing
- document binary cache stream-out in EXECUTION_MODEL
## @workglow/ai
### Features
#### ai
- add a uniform usage telemetry channel
### Bug Fixes
#### task-graph
- correctness fixes from branch-wide streaming review
#### ai
- record usage telemetry for the multi-turn chat tasks
- sum every chat turn's usage onto the outer finish
- record usage telemetry when a stream consumer stops early
- record usage telemetry on the streaming path too
## workglow
### Bug Fixes
#### build
- declare the meta-package's runtime dependency on its deps' JS
## @workglow/util
### Features
#### util
- transfer binary stream chunks across the worker boundary
#### task-graph
- binary-streaming framework + result-as-reference
### Bug Fixes
#### task-graph,util
- close storage and worker review findings
#### util
- transfer only fully-owned buffers for worker stream chunks
## @workglow/test
### Features
#### job-queue
- storage-only client reassembles the stream channel into onStream
- InMemory stream-channel reference carrier
- stream-channel contract + StreamReassembler
- capability-gated JobHandle.outputStream for cached binary results
- in-process stream observability via JobHandle.onStream
#### util
- transfer binary stream chunks across the worker boundary
#### test
- Supabase streaming cache backing
- tabular streaming cache backings (Postgres + SQLite)
- durable IndexedDB streaming task-output repository
- raw-IndexedDB chunked blob store for streaming cache
#### task-graph
- allow async getOutputStreamByRef for non-filesystem backings
- stream the run-private cache tier over an FsFolder backing
- backpressure gate on the no-accumulation passthrough edge
- cache-hit replay parity for non-binary refs (Task 6)
- no-accumulation passthrough — skip the materialize drain
- exempt stream-wired input ports from whole-value validation
- generalize stream sinks to all modes (per-port refs)
- per-mode stream codecs + port-aware repo stream sink
- add optional port/mode axis to CacheRef
- FsFolderTaskOutputRepository with streaming blob sidecar files
- hydrate cache refs in task inputs before execute
- cache-hit replay and hydration of binary cache refs
- expose binary stream-consumer detection for cache-hit replay
- resolveJobOutputStream for streaming job results from cache
- streaming read helpers for cache refs
- binary-streaming framework + result-as-reference
#### ai
- add a uniform usage telemetry channel
### Bug Fixes
- restore branch-final content drifted during the rebase onto main
#### task-graph,util
- close storage and worker review findings
#### job-queue
- close stream-channel review findings
- harden the cross-process stream channel
- stream-channel code-review fixes
#### task-graph
- close streaming engine review findings
- fail passthrough edge gates on abort and enforce watchdog liveness
- make BinaryStreamRouter push/end race-safe
- restrict portless outputStream discovery to declared streamable ports
- reject same-backing CacheRegistry misconfiguration at run start
- netstring-encode runScopePrefix to close sanitize collision
- route RunPrivateCacheRepo by-ref through *ForRun to prevent cross-run leak
- correctness fixes from branch-wide streaming review
- replace-mode streams must carry a value, else error
- stamp FsFolder blobs with unique suffix to prevent orphan-cleanup races
- fsync blobs directory after rename to survive crashes between rename and dir-metadata flush
- treat all class instances as opaque in ref walker
- clean up orphan blobs when stream-write succeeds but row commit fails
- treat Error and URL as opaque leaves in ref walker
- guard resolveOutput walker against cycles and shared subtrees
- default blob/binary port codecs for JSON-row cache backings
- cache rows store refs, not inline binary; enforce single-binary-port streaming
- blob lifecycle hardening in FsFolderTaskOutputRepository
- byte-bounded backpressure in binary stream router (default 8 MiB)
- canonicalize binary stream format vocabulary to "blob"|"binary"
- brand CacheRef with literal kind to prevent shape-only collisions
#### util
- transfer only fully-owned buffers for worker stream chunks
#### test
- cast Uint8Array to BlobPart in streaming-port test repos
#### ai
- record usage telemetry for the multi-turn chat tasks
- sum every chat turn's usage onto the outer finish
- record usage telemetry when a stream consumer stops early
#### mlx
- report the stub provider as unavailable and skip registration
### Refactors
#### task-graph
- extract BackpressureGate from BinaryStreamRouter
- remove dead pipeBinaryToCache; detach edge-stream listeners on abort/error
### Tests
#### task-graph
- await streaming reader in stream-out contract suites
- widen Uint8Array to ArrayBuffer-backed for Blob construction
- lock delta-wins on the StreamProcessor path
## @workglow/job-queue
### Features
#### job-queue
- storage-only client reassembles the stream channel into onStream
- worker publishes stream chunks to the queue channel
- forward stream-channel capability through WrappedMessageQueue
- InMemory stream-channel reference carrier
- stream-channel contract + StreamReassembler
- capability-gated JobHandle.outputStream for cached binary results
- in-process stream observability via JobHandle.onStream
### Bug Fixes
- restore branch-final content drifted during the rebase onto main
#### job-queue
- close stream-channel review findings
- harden the cross-process stream channel
- stream-channel code-review fixes
- drop stale classToStorage import in JobQueueWorker
## @workglow/mlx
### Bug Fixes
#### mlx
- report the stub provider as unavailable and skip registration
## @workglow/postgres
### Bug Fixes
#### postgres
- quote the PK column list in CREATE TABLE
## @workglow/supabase
### Bug Fixes
#### supabase
- quote the PK column list in CREATE TABLE bootstrap