fix: #3607228 Keep every resource photograph distinct within its sector
Found by installing the merged 1.0.x from the published package, not from the working tree.
The updates band at the foot of a resource is filtered by sector, so it lists other resources from the same sector. Two of those shared a hero photograph, and the same photograph appeared twice in one slider — on a page that had otherwise passed the no-repeats check, because the earlier check only compared the hero against the body.
Photographs are now assigned so that:
- every resource inside a sector has a distinct hero, so the sector-filtered slider can never repeat one;
- the body photograph is drawn from outside its own sector's hero set, so it can clash neither with the hero above it nor with any card in the slider below;
- only real photographs are used — 26 are available once the programme shots are counted, which is enough.
Checked on the fresh install by walking all 26 resources and executing the slider's own query for each: 0 pages carry a repeated photograph.
Also verified on that same install, from the published package: 70 nodes, 25 terms, 74 media, 7 pages, program.full 60 components, blog.full 13, event.full 22, country.full 30, all 26 resources under /resources with a full article and a body photograph, 5 programmes fully populated, 12 countries carrying a map code.
AI-Generated: Yes
Checkpoints:
- File an issue
- Addition/Change/Update/Fix
- Testing to ensure no regression
- Automated unit testing coverage
- Automated functional testing coverage
- UX/UI designer responsibilities
- Readability
- Accessibility
- Performance
- Security
- Developer Documentation
- User Guide Documentation
- Reviewed by human
- Code review by maintainers
- Full testing and approval
- Credit contributors
- Review with the product owner
- Release notes snippet
- Release