Sprint 13 - Parameters and runtime configuration¶
Objective. Add lifecycle-aware parameter management when a concrete use case requires it.
Deliverable. Parameters can be managed as lifecycle-aware component concerns without turning the library into a config system.
—
Decisions already made¶
Parameter support must remain lifecycle-aware.
- This sprint does not introduce config-file parsing, schemas, or Pydantic
models.
Parameter ownership and cleanup must follow the component lifecycle contract.
Possible component responsibilities:
declare parameters during configure
read initial values during configure
gate updates according to component lifecycle state
clean local tracking during cleanup
Update policy candidates:
read-only
update any time
active-only
inactive-only
To decide during sprint planning¶
Whether this is a component base class, helper mixin, or plain utility.
Exact validation-hook shape.
Parameter namespace convention.
Which update policies are needed for the first implementation.
—
Validation¶
[ ] Parameters are declared during configure.
[ ] Values can be retrieved through a documented API.
[ ] Validation blocks invalid updates.
[ ] Update policy is enforced across lifecycle states.
[ ] Cleanup clears component-owned parameter tracking.
—
Risks and mitigation¶
Risk: namespace collisions. Scope parameter names by component or document the exact naming contract.
Risk: config-system creep. Do not add schema models, spec loaders, or file parsing in this sprint.
—
Dependencies¶
Requires: stable component lifecycle semantics.
Requires: Sprint 8 concurrency rules for update callbacks.
Benefits from: Sprint 9 observability for rejected updates.
—
Scope boundaries¶
In scope:
lifecycle-aware parameter declaration and validation
update policy enforcement
focused examples and tests
Out of scope:
config file parsing
Pydantic specs
parameter persistence beyond ROS 2 native behavior
—
Success signal¶
[ ] Parameter behavior follows component lifecycle state.
[ ] The API does not become a general application configuration layer.