Remove TraceRawVcs
What?
Remove the repository-wide TraceRawVcs trait, implementations, bounds, and derive support. Persistent-to-transient task errors now report the parent and callee names without recursively inspecting task inputs.
The existing field-assertion escape hatch is renamed from trace_ignore to unsafe_ignore. It remains available to NonLocalValue and OperationValue, making its remaining purpose explicit without retaining a connection to tracing.
The stripped release next-napi-bindings binary decreases by 307,648 bytes (0.301%), from 102,325,280 to 102,017,632 bytes.
Why?
TraceRawVcs was introduced for a garbage-collection design that is no longer being pursued. Its only remaining runtime benefit was a more detailed version of an extremely rare diagnostic, which did not justify maintaining tracing implementations across the Rust workspace.
How?
The tracing module and proc macro are removed along with generated and manual implementations. APIs that previously required tracing now keep only the bounds they actively need. The backend diagnostic retains actionable task names while dropping its recursive cause graph, and the transient-collectible coverage is updated for the simplified message.
Verification
cargo fmt --all -- --checkcargo check --workspace --all-targetscargo test -p turbo-tasks-backend --test transient_collectiblecargo test -p turbo-tasks-macros-testscargo test --doc -p turbo-tasks