- app.py: wrap int(cache_ttl) in try/except so a misconfigured non-integer value falls back to 3600 instead of raising ValueError - base.html: use Jinja2 tojson filter for ticket_web_url to ensure proper JS string escaping regardless of URL contents Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>