template = output['html']
check('模板不含脚本、事件处理器或外部资源', not re.search(r'<script|<iframe|\bon\w+\s*=|\bsrc\s*=', template, re.I))
values = {'name': 'DEMO小禾', 'due_date': '2026-11-08'}
required = set(re.findall(r'{{\s*([a-z_]+)\s*}}', template))
check('缺少due_date的反例不能完成填充', not required <= {'name'})
for name, value in values.items():
    template = template.replace('{{' + name + '}}', html.escape(value))
check('样例填充后没有残留变量', '{{' not in template and 'DEMO小禾' in template)
(folder / 'email-preview.html').write_text('<!doctype html><meta charset="utf-8"><meta name="robots" content="noindex"><title>演示邮件预览</title>' + template)
