Repository navigation
v0.6.0
In-process fan-out for derived work execution
Summary
Quarry v0.6.0 introduces the fan-out operator, enabling scripts to spawn child runs via emit.enqueue() without external orchestration. The runtime intercepts enqueue events and executes them as bounded, deduplicated child runs — replacing custom process pools for homogeneous derived work patterns.
Highlights
- Fan-out operator —
--depth,--max-runs,--parallelCLI flags activate in-process derived work execution fromemit.enqueue()events - SHA-256 deduplication — identical
(target, params)pairs are executed once per invocation - Bounded concurrency — semaphore-based worker pool with configurable parallelism
- Fan-out chain example — runnable listing → detail pattern demonstrating two-level fan-out with local fixtures
- Lode decoupling —
lodepackage no longer depends oncli/reader(#113) - Documentation — fan-out flags documented across guides, contracts, and CLI reference; version bumps from v0.5.x
Known Limitations
ctx.storage.put()is not available in child runs (FileWriter plumbing deferred)targetresolution uses file paths relative to CWD (may support config-based names in future)- Child runs inherit the root run's
--category; no per-child override
References
Full Changelog: v0.5.1...v0.6.0
What's Changed
- refactor(lode): ♻️ decouple lode from cli/reader dependency by @justapithecus in #113
- docs(adapter): 📝 document Temporal orchestration integration and module split by @justapithecus in #114
- docs(design): 📝 add ingress models exploration document by @justapithecus in #115
- docs(design): 📝 replace crawl mode with derived work execution via fan-out flags by @justapithecus in #116
- feat(runtime): ✨ add fan-out operator for derived work execution by @justapithecus in #117
- chore(release): 🔖 prepare v0.6.0 release by @justapithecus in #118
- docs(runtime): 📝 add fan-out documentation and v0.6.0 version bumps by @justapithecus in #119
- docs(runtime): 📝 add fan-out-chain example for derived work execution by @justapithecus in #120
Full Changelog: v0.5.1...v0.6.0