Review follow-ups (Greptile, Codex):
- The settings sections read form values in their templates (selected
theme and cover size, epgField.value, form().value.player), and the
parent changes the form outside their events: Discard and backup import
patch it, the store hydrates it, the EPG file picker sets a control
after an await. Under OnPush the section kept the old selection or EPG
status. Each section now marks itself on its form's events
(markSectionForCheckOnFormEvents).
- The value-only patch test no longer forces detectChanges(); with the
fixture rendering on its own it fails without the marking, and so does
a new test for a control set outside the EPG section.
- The zoneless guard counts only changeDetection metadata outside
comments, so a comment naming the strategy is not an Eager component.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>