Skip to content

Address expert review findings#7

Merged
NewGraphEnvironment merged 1 commit intomainfrom
fix/review-findings
Feb 24, 2026
Merged

Address expert review findings#7
NewGraphEnvironment merged 1 commit intomainfrom
fix/review-findings

Conversation

@NewGraphEnvironment
Copy link
Owner

Summary

  • Send log + notifications — scheduled sends now log to ~/.mc/send_log.txt and fire macOS desktop notifications on success, skip, or failure
  • Configurable sendergetOption("mc.from") / MC_FROM env var replaces hardcoded email default
  • Error on missing .mdmc_compose() now errors on non-existent .md paths instead of silently treating them as HTML
  • DRY header stripping — shared strip_md_header() used by both mc_md_render() and mc_compose()
  • Mocked MIME tests — 9 new unit tests for draft/send/cc/bcc/thread_id/test mode/send_log/default_from (125 total, 0 lints)

Closes #2
Closes #3
Closes #4
Closes #5
Closes #6
Relates to NewGraphEnvironment/sred-2025-2026#4

Test plan

  • devtools::test() — 125 passing
  • lintr::lint_package() — 0 lints
  • Live test: mc_send(html = ..., send_at = 1, test = TRUE) — check ~/.mc/send_log.txt and desktop notification
  • Verify options(mc.from = ...) picks up in fresh R session

🤖 Generated with Claude Code

- Add send_log() and send_notify() for scheduled send outcomes (#2)
- Replace hardcoded email default with getOption/env var pattern (#3)
- Error on non-existent .md file paths in mc_compose (#4)
- Extract shared strip_md_header() helper (#5)
- Add mocked unit tests for MIME building, send_log, default_from (#6)
- Update README with setup section and send log docs
- Update vignette with send log notification docs

Closes #2
Closes #3
Closes #4
Closes #5
Closes #6
Relates to NewGraphEnvironment/sred-2025-2026#4

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@NewGraphEnvironment NewGraphEnvironment merged commit 0c3333b into main Feb 24, 2026
1 check passed
@NewGraphEnvironment NewGraphEnvironment deleted the fix/review-findings branch February 24, 2026 17:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant