# `email.health_problem`

Email's template fails a check of the mail health score.

Area 16, [Built-in services](../topics/built-in-services.md); declinable; the next step is usually the agent's.

The mail health score's checks, run on a template as written wherever its
own text answers them: an `.html` with no `.txt` beside it, a link written
out that isn't absolute HTTPS or goes through a shortener, HTML that
doesn't parse cleanly, images with no text, a subject worded in capitals,
or a template over Gmail's 102 KB clip. What a template writes from its
fields is scored once it is rendered, in the dev inbox. The score is an
early indication, so a `decline` line above the email's or partial's type
keeps a mail that breaks a rule on purpose:




```jadpo
<p>Hello, {{ name }}.</p>
<p><a href="http://notes.example/start">Start writing</a></p>
```

```jadpo
/// Sent once someone signs up.
type WelcomeEmail = EmailMessage {
    name: Text
}
```

```text
error: `WelcomeEmail` has a link that isn't absolute HTTPS
 --> domains/accounts/emails/welcome_email.jadpo:2:6
  |
2 | type WelcomeEmail = EmailMessage {
  |      ^^^^^^^^^^^^ link in welcome_email.html
  reason: `welcome_email.html` links to `http://notes.example/start`; filters distrust plain `http://`, and the reader's click goes unencrypted.
  next: Link to a full `https://` address, or write `decline email.health_problem: "<why>"` above it if this is deliberate (agent)
  rule: email.health_problem
  help: https://jadpo.dev/docs/errors/email.health_problem

check failed: 1 error, 3 files
```
