739ffafedd
fixes
2026-05-23 06:42:44 +02:00
f95de1482d
Fix CSRF 403 on all POSTs behind traefik
...
prod.py never read the CSRF_TRUSTED_ORIGINS env var the deployment already
injects, so Django's setting stayed empty. Behind traefik's TLS termination
Django saw requests as HTTP and rejected the browser's https:// Origin on
every POST with a CSRF failure (403) — forms could not be saved and the DB
stayed empty.
- Read CSRF_TRUSTED_ORIGINS from env (filtering empties).
- Set SECURE_PROXY_SSL_HEADER so Django recognizes HTTPS via X-Forwarded-Proto.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-22 02:02:42 +02:00
e28739f8f1
Fix Tailwind asset build dropping all utility classes in Docker
...
The Dockerfile asset stage copied only static/src + vite.config.js, never
the HTML templates. Tailwind v4 generates CSS by scanning source files for
class usage, so with no templates present it emitted a stripped CSS with
zero utility classes — breaking layout and ballooning SVG icons (w-5/h-5
no longer applied) on deployed builds.
- main.css: add explicit @source directive for the templates dir so content
detection no longer depends on the build CWD.
- Dockerfile: copy vergabe_teilnahme/templates into the assets stage so the
@source path resolves at build time.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-21 00:37:07 +02:00
483a4dfd3b
Add multi-stage Dockerfile for container deployment
...
Three-stage build:
- assets: Node 22 + Vite + Tailwind CSS 4 → static/dist/main.css
- python-deps: uv sync --frozen --no-dev against pyproject + uv.lock,
with the issue-core path dependency satisfied via a BuildKit
named context (--build-context issue-core=...)
- runtime: python:3.12-slim-bookworm + libpq5 + curl, non-root 'app'
user, collectstatic at build time, gunicorn on :8000,
/health/ HEALTHCHECK every 30s
Adds gunicorn>=22 to project dependencies (was missing).
Build:
docker build --build-context issue-core=/home/worsch/issue-core \
-t gitea.coulomb.social/coulomb/vergabe-teilnahme:<tag> .
Smoke-verified: container reports (healthy) and /health/ returns
{"status": "ok"} without a database connection.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-18 23:32:51 +02:00
17f511fbcd
Rewire issue tracker integration from issue-facade to issue-core
...
issue-facade was renamed to issue-core. Update the dependency
declaration and the three Python imports it touched. Model field
names (issue_facade_backend, issue_facade_id) and the Django setting
ISSUE_FACADE_LOCAL_DB stay as-is — they are persisted/semantic
identifiers, not part of the package wiring.
All 20 aufgaben tests pass after the rewire.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-18 22:33:28 +02:00
341c718511
Refresh agent instruction files
2026-05-18 16:55:54 +02:00
a32ebb9e12
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-16 06:10:43 +02:00
746b035feb
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-16 05:53:23 +02:00
eaddaa1b2f
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-16 05:36:09 +02:00
c7c2e8472b
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-16 05:18:53 +02:00
6436fc5faf
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-16 05:01:42 +02:00
1ad7674532
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-16 04:44:52 +02:00
3285026c0a
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-16 03:53:08 +02:00
bb70f36068
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-16 03:53:02 +02:00
99b0974732
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-16 03:36:06 +02:00
00e6a9ae6f
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-16 03:36:01 +02:00
1f39d6ad85
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-16 03:18:52 +02:00
c9cf3bab87
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-16 03:18:48 +02:00
07a831632b
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-16:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-16 02:26:59 +02:00
963997f410
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 22:16:32 +02:00
19118dc534
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 20:08:27 +02:00
0a7f1de5e4
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 19:51:54 +02:00
91ab70710e
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 19:51:49 +02:00
33b6f2ecaf
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 19:35:42 +02:00
656276dda1
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 19:35:36 +02:00
9677cb50fb
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 19:19:47 +02:00
67693d9f61
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 19:19:42 +02:00
e55a619bce
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 19:03:35 +02:00
5d0d63fd89
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 19:03:29 +02:00
ff79a4bd57
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 17:58:48 +02:00
ec8aca19c1
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 17:41:55 +02:00
07f8a2659d
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 17:41:51 +02:00
a9299e37b6
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 16:53:20 +02:00
649f524979
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 14:25:18 +02:00
c103c0d057
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 14:25:13 +02:00
69c7f3eee1
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 14:09:07 +02:00
b5b5c6c29b
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 13:52:38 +02:00
0ae841b362
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 13:18:56 +02:00
ae32ba4ba6
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 13:02:19 +02:00
b4451ea161
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 10:48:29 +02:00
87e0a557b0
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 10:48:15 +02:00
78a27793c1
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 10:31:25 +02:00
34cf25483d
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 10:31:13 +02:00
aa940fafe5
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 10:14:37 +02:00
fdccb41fcd
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 09:59:01 +02:00
30c44edb18
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 03:36:23 +02:00
10c6252931
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 03:36:08 +02:00
c1fe26c36b
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 03:21:32 +02:00
7568c85acc
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe-teilnahme
2026-05-15 03:06:43 +02:00
58ee79ef2f
chore(consistency): sync task status from DB [auto]
...
Updated by fix-consistency on 2026-05-15:
- update .custodian-brief.md for vergabe_teilnahme
2026-05-15 02:51:58 +02:00