Skip to main content

Module deprecation

Module deprecation 

Source
Expand description

Deprecation-chain resolver.

Walks a CompositionNode, replacing any Stage { id } that points at a Deprecated { successor_id } stage with the final non-deprecated implementation, following successor_id links.

Paired with resolve_pinning: pinning maps signature → implementation, this maps deprecated implementation → active successor. Most call sites want both, pinning first.

Every entry point that runs this (CLI run, compose, serve, build, build_browser, scheduler, grid-broker, grid-worker) used to carry its own copy of the walker. This module is the shared implementation.

Structs§

DeprecationReport
Result of walking the graph’s stage references.
DeprecationRewrite
Single rewrite performed by resolve_deprecated_stages.

Enums§

ChainEvent
Condition that ended a successor-chain walk without finding a non-deprecated stage.

Constants§

MAX_DEPRECATION_HOPS
Upper bound on successor-chain walks. Chains longer than this (unusual in practice; indicates either a legitimate very-long deprecation history or an accidental cycle) are truncated and surface as ChainEvent::MaxHopsExceeded.

Functions§

resolve_deprecated_stages
Walk the graph, following successor_id chains to resolve references to deprecated stages. Returns a report; the caller is expected to log the events and/or present them to the user.