- Add backend/events/cmd/genevents/main.go using go/ast for deterministic output - Add //go:generate directive to backend/events/events.go - Generate frontend/src/events.ts with all 21 constants including LibraryConfigChanged - Atomic file writes via temp file + rename - Comment groups preserved with trailing period stripping