{
"$schema": "../../node_modules/nx/schemas/project-schema.json",
"name": "onetaskgraph-plugin-api",
"projectType": "library",
"tags": ["lang:rust", "layer:contract"],
"//": "implicitDependencies mirror this crate's Cargo dependencies. Nx cannot read a Cargo manifest, so without them affected selection silently under-runs; scripts/check-nx-graph.sh fails, naming the pair, when the two disagree. llmlint: ignore-file[expensive_tests_stay_behind_their_own_edge] JSON has no comment to scope this to `coverage`: the line floor is one report over every crate's instrumented run, so workspace:coverage runs this crate's whether or not the change reached it. `test` still selects by the graph.",
"implicitDependencies": [],
"targets": {
"bootstrap": {
"executor": "nx:run-commands",
"options": {
"command": "cargo fetch --locked"
},
"//": "Uncached: it reaches the network and writes to the shared cargo registry outside the workspace, so no input in the tree describes its result."
},
"check": {
"executor": "nx:noop"
},
"format": {
"executor": "nx:run-commands",
"options": {
"command": "cargo fmt -p onetaskgraph-plugin-api"
},
"cache": false,
"//": "Uncached: it rewrites the tree in place, so replaying a cached result would be a no-op that silently leaves the tree unformatted."
},
"format-check": {
"executor": "nx:run-commands",
"options": {
"command": "cargo fmt -p onetaskgraph-plugin-api -- --check"
}
},
"lint": {
"executor": "nx:run-commands",
"options": {
"command": "cargo clippy --quiet -p onetaskgraph-plugin-api --all-targets --all-features --locked -- -D warnings"
}
},
"typecheck": {
"executor": "nx:run-commands",
"options": {
"command": "cargo check --quiet -p onetaskgraph-plugin-api --all-targets --all-features --locked"
}
},
"test": {
"executor": "nx:run-commands",
"options": {
"command": "cargo test --quiet -p onetaskgraph-plugin-api --all-features --locked"
}
},
"coverage": {
"executor": "nx:run-commands",
"dependsOn": ["workspace:coverage-clear"],
"options": {
"command": "bash scripts/rust-coverage.sh onetaskgraph-plugin-api"
},
"outputs": ["{workspaceRoot}/target/llvm-cov-target/*.profraw"],
"cache": false,
"//": "Uncached: cargo-llvm-cov names every raw profile after the workspace, not the crate, so a cache hit would restore a sibling's stale profiles beside its own. workspace:coverage enforces the floor over every crate's run."
}
}
}