Skip to main content

Module contributors

Module contributors 

Source
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

  1. CUE evaluation produces Projects with Tasks (initial DAG)
  2. ContributorEngine applies contributors:
    • Evaluates when conditions (workspaceMember, command patterns)
    • Injects contributor tasks with cuenv:contributor:* prefix
    • Auto-associates user tasks with contributor setup tasks
    • Loops until no changes (stable DAG)
  3. 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§

AutoAssociate
Auto-association rules for contributors
Contributor
Contributor definition
ContributorActivation
Activation condition for contributors
ContributorContext
Context provided to contributors for activation condition evaluation
ContributorEngine
Engine that applies contributors to modify the task DAG
ContributorResult
Result of applying contributors
ContributorTask
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