Files
hermes-skills/skills/email/email-sender-formatting/references/data-cleanup-for-email.md
T

43 lines
2.1 KiB
Markdown

# Data Cleanup & Formatting Consistency for Email Delivery
## Formatting Consistency Rule (Jul 10, 2026) — CRITICAL
**Once the user approves a format, all subsequent versions of the same email MUST use that format.** Do not regress from HTML tables to plain text between iterations.
**Violation pattern:** First Apex registration preview used an HTML table with zebra rows, green checkmarks (✓), and red X marks (✗). User said "Looks perfect. Please now send to contact@." Subsequent previews fell back to plain-text ASCII tables. User tried multiple times to get the HTML table back and couldn't — called out as frustrating.
**Rule:** When iterating on an email based on user feedback:
1. Start with HTML tables for structured data (registration lists, status reports, comparison tables)
2. Use visual indicators: green checkmarks (✓) for completed/signed, red X (✗) for missing
3. Use zebra striping (alternating row colors) for readability
4. After each correction, re-send using the SAME HTML format — never downgrade
5. The user's approval of a format is a contract — don't change it
## Data Normalization Rules (from raw database to email)
When pulling structured data from databases (WordPress WPForms, MariaDB) for email summaries:
## Normalize names
- Apply proper case: `name.title()` or `' '.join(w.capitalize() for w in name.split())`
- Never send all-lowercase or all-uppercase names from raw database entries
## Simplify labels
- Convert raw package names to human-readable labels:
- "NASA Registration w/ Upgraded Photo/Video Package - $2,332.00" → "Photo/Video"
- "NASA Registration w/ Photo Package - $2,230.00" → "Photo"
- "NASA Registration - $1,973.00" → "Basic"
- Decode HTML entities: `$``$`
## Consistent ASCII formatting
- Fixed-width columns with ` | ` separators
- `=` or `-` for section borders
- Right-pad names to consistent widths for alignment
## Filter test data
- Exclude test transactions ($1.00 amounts, known test emails)
- Filter by payment amount threshold ($1,973+ is real)
## Preview before send
- Always show Germaine the formatted preview
- Let him correct formatting/columns/labels before the email goes out