Add interaction logging and tighten model NOT NULL constraints

Log searches (article/category) and message-generation events to a new
interaction_log table, capturing IP address and User-Agent.

Also apply NOT NULL constraints to Contribution, SentMessage, FlickrUpload,
and ThumbnailCache fields that are always populated, and remove stale
continue_token references from category.html.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Edward Betts 2026-02-08 12:34:04 +00:00
parent 252a854e76
commit 08f5128e8d
5 changed files with 160 additions and 76 deletions

View file

@ -33,7 +33,7 @@
<h5>Articles without images in <a href="https://en.wikipedia.org/wiki/{{ category | replace(' ', '_') }}" target="_blank">{{ category_name }}</a></h5>
{% if articles %}
<p class="text-muted small">Found {{ articles | length }} article(s) without images{% if continue_token %} (more available){% endif %}</p>
<p class="text-muted small">Found {{ articles | length }} article(s) without images</p>
<div class="list-group">
{% for article in articles %}
@ -44,10 +44,6 @@
{% endfor %}
</div>
{% if continue_token %}
<p class="text-muted small mt-3">Note: Only showing first batch of results. More articles may be available in this category.</p>
{% endif %}
{% else %}
<div class="alert alert-success mt-3">
All articles in this category have images!