# ClientFlow v4928.1.5.24 — Contact-person greeting for follow-up drafts

Incremental update over v4928.1.5.23.

## Changes

- Adds deterministic recipient resolution for follow-up drafts from personal email addresses.
- Example: `nuno.silva@verifone.com` resolves to `Nuno Silva`, first name `Nuno`, high confidence.
- Generic mailboxes such as `info@`, `geral@`, `comercial@`, `vendas@`, `escritorio@` are not treated as people.
- Dedicated OpenAI follow-up prompt now receives:
  - contact person full name,
  - first name,
  - confidence,
  - source of the inference,
  - preferred greeting.
- Generated follow-up drafts are post-processed to preserve the preferred greeting.
- Safe fallback templates also receive the same preferred greeting when OpenAI is disabled/unavailable.
- Task detail UI now shows a small contact-person card when a person was safely resolved.

## Example

For a follow-up task with:

- Company: Verifone Portugal, Lda
- Email: nuno.silva@verifone.com

The greeting becomes:

```text
Bom dia Sr. Nuno,
```

For generic emails such as `escritorio@eficen.pt`, the greeting remains neutral:

```text
Bom dia,
```

## Validation

```text
python -m compileall -q app tests scripts
pytest -q
292 passed
```
