Reshape Notifier into a generic port, then publish it
- Dominant language
- Go
- Stars
- 0
- Forks
- 0
- Avg merge
- 3h 1m
- Merged PRs (30d)
- 29
Description
Moved off `roadmap.md`'s *Published Contract Candidates* table, where the verdict was **Publish — but reshape first**.
The port already exists as `users/domain.Notifier`, but its methods are `SendConfirmation`/`SendAccountExistsNotice` — the users track's vocabulary, not a mailer's. A published port must be a generic `Send(ctx, Message)`, with the users track owning its own templates on top.
Resend, SMTP, Postmark and SES are all real implementations, so it clears the bar in `roadmap.md` once the shape is right.
Blocked on the Transactional Email pack (Pack B in `README.md`). Related: #26, which needs this same reshape before SMS can be a second channel.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with users/domain.Notifier, then read Pack B in README.md and the Published Contract Candidates entry in roadmap.md. Inspect the Resend, SMTP, Postmark, and SES implementations to understand the affected port shape. Done means the port exposes generic Send(ctx, Message) semantics, while the users track owns its templates and the contract is ready to publish.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- backend-api-design
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100