Job execution runtime and shared services for @metreeca/gear.
A consumer sets up an executor, binding the services a job relies on to the implementations chosen for the run. The executor runs the job, whose tasks resolve each service through a locator, naming it by its default factory rather than importing a concrete implementation.
Binding a different implementation leaves the job unchanged: the same job runs against the live process surroundings, against stubs, or against any custom service honouring the same contracts.
Bound implementations are constructed as the execution opens, unbound defaults on first use; either way the instance is shared across the job and, where it implements a disposal protocol, disposed as the job ends, so concurrent or repeated runs share nothing.
npm install @metreeca/gear
Node.js 22 or later is required.
TypeScript consumers must use "moduleResolution": "nodenext"/"node16"/"bundler" in tsconfig.json.
The legacy "node" resolver is not supported.
| Module | Description |
|---|---|
| @metreeca/gear | Job executor and service locator |
| @metreeca/gear/space | Working space access |
| @metreeca/gear/vault | Sensitive parameter lookup |
| @metreeca/gear/cache | Bulk content caching |
This project is licensed under the Apache 2.0 License – see LICENSE file for details.
Job executor and service locator.