Expand description
Contributor engine for task DAG injection
Contributors are CUE-defined task injectors that modify the task DAG before execution. The engine evaluates activation conditions and injects tasks with proper naming.
§Data Flow
- CUE evaluation produces Projects with Tasks (initial DAG)
- ContributorEngine applies contributors:
- Evaluates
whenconditions (workspaceMember, command patterns) - Injects contributor tasks with
cuenv:contributor:*prefix - Auto-associates user tasks with contributor setup tasks
- Loops until no changes (stable DAG)
- Evaluates
- Final DAG passed to executor (CLI or CI)
§Task Naming Convention
Contributor tasks use the format: cuenv:contributor:{contributor}.{task}
Example: cuenv:contributor:bun.workspace.install
Structs§
- Auto
Associate - Auto-association rules for contributors
- Contributor
- Contributor definition
- Contributor
Activation - Activation condition for contributors
- Contributor
Context - Context provided to contributors for activation condition evaluation
- Contributor
Engine - Engine that applies contributors to modify the task DAG
- Contributor
Result - Result of applying contributors
- Contributor
Task - A task contributed by a contributor
Constants§
- CONTRIBUTOR_
TASK_ PREFIX - Prefix for all contributor-injected tasks
Functions§
- build_
expected_ dag - Build a map of expected task dependencies for DAG verification
- builtin_
workspace_ contributors - Returns all built-in workspace contributors
- bun_
workspace_ contributor - Create the built-in bun workspace contributor
- npm_
workspace_ contributor - Create the built-in npm workspace contributor
- pnpm_
workspace_ contributor - Create the built-in pnpm workspace contributor
- yarn_
workspace_ contributor - Create the built-in yarn workspace contributor