fix: use absolute paths for database to ensure persistence

Critical bug fix: Path(__file__).parent.parent returns a relative path,
causing the database to be created in different locations depending on
the working directory. This caused data loss on container restarts.

Changes:
- Add .resolve() to BASE_DIR in src/config.py and migrations/env.py
- Fix admin dashboard showing 0 for participant count (was hardcoded)
- Fix exchange detail page to show actual participant list
- Add startup diagnostics to entrypoint.sh for troubleshooting

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2025-12-22 20:37:11 -07:00
parent 915e77d994
commit 6e8a7186cf
5 changed files with 45 additions and 5 deletions

View File

@@ -37,8 +37,30 @@
</div>
<div class="detail-section">
<h2>Participants</h2>
<h2>Participants ({{ exchange.participants|selectattr('withdrawn_at', 'none')|list|length }} / {{ exchange.max_participants }})</h2>
{% set active_participants = exchange.participants|selectattr('withdrawn_at', 'none')|list %}
{% if active_participants %}
<table>
<thead>
<tr>
<th>Name</th>
<th>Email</th>
<th>Registered</th>
</tr>
</thead>
<tbody>
{% for participant in active_participants|sort(attribute='name') %}
<tr>
<td>{{ participant.name }}</td>
<td>{{ participant.email }}</td>
<td>{{ participant.created_at.strftime('%Y-%m-%d %H:%M') }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% else %}
<p>No participants yet.</p>
{% endif %}
</div>
<div class="actions">