OverlayState.properties_of_interest() missing 'override-overlay'
Metadata
Current evaluation
No evaluation has been recorded for this issue yet.
Issue body
`OverlayState.properties_of_interest()` does not include `"override-overlay"`,
so `check_if_dirty()` cannot detect when the scriptlet changes between runs.
The overlay step still re-runs thanks to `LayerHash.for_part()` (which does
hash `override-overlay`), but the dirty reason is wrong/imprecise. This is a
consistency issue — every other state class tracks its `override-*` key.
## To Reproduce
1. Create a part with `override-overlay: echo original`, run to overlay.
2. Change to `override-overlay: echo changed`.
3. Call `StateManager.check_if_dirty(part, Step.OVERLAY)` — returns `None`.
## part yaml
```yaml
parts:
mypart:
plugin: nil
override-overlay: echo original
```
## Relevant log output
```
# OverlayState.properties_of_interest() returns:
# {"overlay-script": ..., "overlay": ...}
# "override-overlay" is absent from the output.
#
# check_if_dirty(part, Step.OVERLAY) returns None (should return dirty report)
```
## Fix
```python
# craft_parts/state_manager/overlay_state.py
relevant_properties = [
"overlay-script",
"overlay",
"override-overlay", # <- add this
*(extra_properties or []),
]
```
Evaluation history
No evaluation history available.