docs(smtp): fix fictional launcher.Register/health.Register in doc examples (#2)

The package-doc examples showed a fictional launcher.Register / health.Register
API (and launcher.Append as a package func). Corrected to the real wiring:
lc.Append + web/health.NewHandler(...).ServeHTTP.

Documentation-only. No code, API, or dependency changes; version stays v1.1.0
(the v1.1.0 tag is moved to include this fix). Verified by compiling the
corrected pattern against the real API.

Reviewed-on: #2
Co-authored-by: Rene Nochebuena Guerrero <rene@nochebuena.dev>
Co-committed-by: Rene Nochebuena Guerrero <rene@nochebuena.dev>
This commit was merged in pull request #2.
This commit is contained in:
2026-08-07 22:19:52 -06:00
committed by NOCHEBUENADEV
parent e1cd1d2674
commit af6f5ab9e6
2 changed files with 9 additions and 4 deletions
+3 -2
View File
@@ -19,8 +19,9 @@
import "code.nochebuena.dev/einherjar/smtp"
mailer := smtp.New(logger, smtp.DefaultConfig())
launcher.Append(mailer) // OnInit verifies credentials; OnStop is a no-op
health.Register(mailer) // dial check; LevelDegraded
lc.Append(mailer) // OnInit verifies credentials; OnStop is a no-op
// mailer is observability.Checkable (dial check, LevelDegraded):
srv.Get("/health", health.NewHandler(logger, mailer).ServeHTTP)
```
When `cfg.Host` is empty, `New` returns a no-op that logs every `Send` call at debug level and always returns nil. No code changes are needed between environments.
+6 -2
View File
@@ -12,8 +12,12 @@
// # Lifecycle Registration
//
// client := smtp.New(logger, cfg)
// launcher.Register(client)
// health.Register(client)
// lc.Append(client) // lifecycle: OnInit → OnStop
//
// client satisfies [observability.Checkable], so it can back a health endpoint via
// web/health.NewHandler:
//
// srv.Get("/health", health.NewHandler(logger, client).ServeHTTP)
//
// # Sending
//