Konrad du Plessis 503eff67a0 docs(claude): update CLAUDE.md for session's features + newly-learnt gotchas
Audit revealed several stale / missing items:

1. Wrong CSS selector for light theme — said `:root.light`, actual is
   `[data-theme="light"]`. Task 2 of Adjustments caught this in the
   implementer's self-review; the doc didn't get updated. Now correct.

2. `_report_config_modal (partial)` removed from templates list — the
   file was deleted in commit 1d00a3a (retire modal).

3. `_adjustment_row.html` added to templates list — new partial, shared
   by flat + grouped views on the Adjustments tab.

4. `format_tags.py` now lists all 5 filters: money, money_abs, type_slug,
   url_replace, dictlookup (was just 'money').

5. New narrative paragraphs for:
   - Inline Filters on /report/ (pill popovers, cross-filter, JSON gotcha)
   - Adjustments tab (filter pills, badge palette, group-by, bulk delete)
   - _delete_adjustment_with_cascade helper (shared by single+bulk)
   - Pill-popover filter pattern (.adj-hidden-inputs + OK-rewrites-inputs)

6. Two new schema name-drifts: PayrollRecord.amount_paid (not total_amount
   / days_worked); Loan.principal_amount (not principal). Both bit an
   implementer this session when writing test fixtures.

7. Two new Coding Style rules in the top section:
   - Multi-line {# #} template comments are INVALID — use {% comment %}
     (bit us 4× in this session). With caveat that literal {# or #} can't
     appear inside a {% comment %} block either.
   - Duplicate id= attributes silently steal event handlers — grep before
     assigning (caught adjSelectAll collision between table header + modal).

Now 707 lines, 24 sections. Future sessions should have the context to
avoid the mistakes this session made.
2026-04-24 00:00:07 +02:00
2026-02-22 12:14:54 +00:00
2026-02-22 12:14:54 +00:00
2026-02-22 12:14:54 +00:00
2026-02-22 12:14:54 +00:00
2026-02-22 12:14:54 +00:00
2026-02-22 12:14:54 +00:00
2026-02-22 12:14:54 +00:00
2026-02-22 12:14:54 +00:00

Flatlogic Python Template Workspace

This workspace houses the Django application scaffold used for Python-based templates.

Requirements

  • Python 3.11+
  • MariaDB (or MySQL-compatible server) with the credentials prepared by setup_mariadb_project.sh
  • System packages: pkg-config, libmariadb-dev (already installed on golden images)

Getting Started

python3 -m pip install --break-system-packages -r requirements.txt
python3 manage.py migrate
python3 manage.py runserver 0.0.0.0:8000

Environment variables are loaded from ../.env (the executor root). See .env.example if you need to populate values manually.

Project Structure

  • config/ Django project settings, URLs, WSGI entrypoint.
  • core/ Default app with a basic health-check route.
  • manage.py Django management entrypoint.

Next Steps

  • Create additional apps and views according to the generated project requirements.
  • Configure serving via Apache + mod_wsgi or gunicorn (instructions to be added).
  • Run python3 manage.py collectstatic before serving through Apache.
Description
No description provided
Readme 7.6 MiB
Languages
JavaScript 42.5%
SCSS 41.7%
CSS 11.9%
Python 3.2%
HTML 0.6%