- deploy.js: wrap logError/notification in try/catch so they never mask the original deploy error - deploy.js: use optional chaining for error.message access - logging.js: safeErrorMessage handles null/undefined error gracefully
- deploy.js: wrap logError/notification in try/catch so they never mask the original deploy error - deploy.js: use optional chaining for error.message access - logging.js: safeErrorMessage handles null/undefined error gracefully