23-Feb-2026 — add configurable walk validation and config admin UI, enable editing of walk manager sy... #161
What Changed for Users
1. Walk Editing for Walk Manager Sync Events (closes #161)
Walk administrators can now edit walks imported from Walk Manager, not just
locally created walks. This was the primary gap blocking corrections to
imported data such as incorrect map locations.
- Editing is available for Walk Manager-sourced walks without triggering
automatic email notifications.
- Fixes, including location corrections, can be applied without re-importing.
As part of this, the correct Meetup event ID URLs are now resolved so that
related links to individual Meetup event pages are populated accurately.
2. Smarter Walk Leader Matching (secondary improvement)
Leader matching now uses stronger rules across prior mappings, email, phone, full
name, and abbreviated-name patterns. When a leader is matched, contact email, phone,
and display values are populated from member admin data automatically.
Match confidence and source are shown clearly in the rematch banner.
3. Correct Email-vs-URL Contact Link Behaviour
Leader contact links now resolve by type:
- Plain email addresses open native email compose via mailto:.
- Valid web URLs open as links.
- Invalid values are displayed as text rather than broken routes.
4. Save Robustness for Null Parent Objects
Fixed save failures where nested fields (e.g. venue/image config subfields) had
null parent objects, preventing backend errors such as:
Cannot create field ... in element ... null.
Normalisation now runs in one pass, reducing save, reopen, save again loops.
5. Walk Configuration Admin UI with Configurable Validation
A new multi-tab Walk Configuration page is available at /walks/admin/config,
replacing the previous Meetup Settings panel in the walks admin panel.
- General tab: configure default miles per hour and toggle three validation
rules (require risk assessment, require finish time, require walk leader
display name) that gate walk approval.
- Meetup tab: maintain description prefix content text items.
- Publishing Defaults tab: configure Meetup publishing defaults.
Risk assessment enforcement is set automatically on first run based on whether
any risk assessment data already exists in the database.
Verification
Targeted tests and compile checks were run for updated editing paths, leader
matching, contact action correctness, save consistency, and walk config UI.