Release validation and private website previews
The release candidate strengthens route validation and makes private website previews use supported search-engine exclusion metadata, without changing access or publishing permissions.
# Release validation and private website previews This repair corrects a release-check gap: a clean checkout could pass ordinary TypeScript checks without checking the route definitions generated by Next.js. CI now generates those definitions before its existing TypeScript gate, and a small regression suite checks unsupported exports without needing a build. Scheduled job logic now lives outside the HTTP route files. Both the protected HTTP endpoints and the internal dispatcher still use those same jobs. No job schedule, permission, notification preference, charge, retry or cleanup rule is changed by this move. The admin bulk-edit validation schema is likewise shared from an ordinary module without changing its request format. Private website and design-sketch previews now place their existing no-index/no-follow instructions in metadata that Next.js recognizes. Access checks and publishing remain separate; this does not publish or expose a draft. These are source changes awaiting the normal staging and production gates, not proof of a live purchase, notification delivery or installed-app acceptance.
Register payment recovery stays tied to the correct membership
After card confirmation, the register now waits for that exact payment's membership and receipt records. An older pass or payment cannot stand in for a membership that is still being activated. Retrying a completed request returns its existing receipt only when the venue, member and pass still agree. An incomplete projection remains a processing result; staff should retry the same attempt, not cre