<!--
Before submitting this PR, please read:
- docs/dev/contribute.md
- docs/dev/philosophy.md
- AGENTS.md if you used an AI coding agent or AI-assisted workflow
- docs/dev/documentation.md if this PR changes user-facing or developer-facing documentation
-->

## Summary

<!--
What does this PR change? Keep it short and specific.
For bug fixes, link the related issue and/or include exact reproduction steps.
For new features, explain how the feature works and what use case it supports.
-->

Fixes #<!-- issue number -->

## Scope

- [ ] This PR addresses one clear issue or change.
- [ ] I reviewed the full diff myself before submitting.
- [ ] I removed unrelated local changes.
- [ ] I kept refactoring separate unless it is required for this change.

## Testing

- [ ] Code builds without errors locally.
- [ ] I tested this change locally.
- [ ] I described the testing performed below.

<!-- Describe what you tested, commands run, and results -->
_Testing details:_

## Documentation

<!-- Select ONE of the following -->

- [ ] Documentation is not affected by this change.
- [ ] Documentation is affected and has been updated.
- [ ] Documentation is affected but will be handled in a separate PR or issue.

## Breaking Changes

- [ ] This PR introduces breaking changes.
- [ ] This PR does not introduce breaking changes.

<!-- If breaking changes, describe them and migration path -->

## AI-assisted contribution

Please select one:

- [ ] I used AI tools for this PR.
- [ ] I did not use AI tools for this PR.

If AI tools were used:

<!-- Only complete this section if you checked "I used AI tools for this PR" above -->

- [ ] I verified that I understand the changes.
- [ ] I checked for hallucinated APIs, unrelated changes, and incorrect assumptions.
