leocrm-bot
|
6bf0746b94
|
T02: companies + contacts + import/export + N:M + soft-delete + GDPR + FTS
- Company CRUD with soft-delete, FTS search (tsvector + GIN), filter, pagination
- Contact CRUD with N:M company linking via company_contacts
- CSV/XLSX export, CSV import with dry-run preview
- GDPR hard-delete with deletion_log
- Audit log on all mutations
- 27 new tests (24 ACs), 56 total tests pass
- Migration 0002: contacts, company_contacts, FTS search_tsv
- Fixed T01 tests: POST→201, PATCH→PUT compatibility
|
2026-06-29 00:44:34 +02:00 |
|
leocrm-bot
|
7a7daf8100
|
T01: core infrastructure + auth + multi-tenant + RLS
- 10 models: tenants, users, user_tenants, roles, sessions, audit_log, deletion_log, notifications, password_reset_tokens, api_tokens
- Session-based auth (Redis + PostgreSQL audit trail)
- Multi-tenant with ORM-level filtering + PostgreSQL RLS (set_config)
- RBAC with roles/permissions + field-level permissions
- CSRF protection via Origin header validation
- Auth rate limiting (Redis counters with TTL)
- CORS with explicit origins (no wildcard)
- Health endpoint (no auth required)
- Notification service + audit log middleware
- 29 tests, 26 ACs, all passing
- Coverage: 62% (infrastructure modules pending coverage in later tasks)
|
2026-06-29 00:10:10 +02:00 |
|
Agent Zero
|
aec40d03ac
|
chore(quality): apply ruff autofixes and formatting (223 fixes, regression-free: 118/118 tests pass)
|
2026-06-10 21:24:24 +00:00 |
|
Leopoldadmin
|
92bed01b7b
|
Upload tests/test_tags.py
|
2026-06-03 23:52:08 +00:00 |
|
Leopoldadmin
|
db7d87a6d8
|
Upload tests/__init__.py
|
2026-06-03 23:52:07 +00:00 |
|
Leopoldadmin
|
43382b2698
|
Upload tests/test_frontend_assets.py
|
2026-06-03 23:52:07 +00:00 |
|
Leopoldadmin
|
8c4d9d4fd8
|
Upload tests/test_contacts.py
|
2026-06-03 23:52:07 +00:00 |
|
Leopoldadmin
|
0ddfe92b3e
|
Upload tests/conftest.py
|
2026-06-03 23:52:06 +00:00 |
|
Leopoldadmin
|
37734d895b
|
Upload tests/test_deals.py
|
2026-06-03 23:52:06 +00:00 |
|
Leopoldadmin
|
b4005ab1fe
|
Upload tests/test_health.py
|
2026-06-03 23:52:05 +00:00 |
|
Leopoldadmin
|
0d9fbc7668
|
Upload tests/test_users_me.py
|
2026-06-03 23:52:05 +00:00 |
|
Leopoldadmin
|
49dfa86e0f
|
Upload tests/test_auth.py
|
2026-06-03 23:52:05 +00:00 |
|
Leopoldadmin
|
ab0c21bb64
|
Upload tests/test_dashboard.py
|
2026-06-03 23:52:04 +00:00 |
|
Leopoldadmin
|
663a0c9295
|
Upload tests/test_notes.py
|
2026-06-03 23:52:04 +00:00 |
|
Leopoldadmin
|
2494eeec62
|
Upload tests/test_frontend_security.py
|
2026-06-03 23:52:04 +00:00 |
|
Leopoldadmin
|
980e65136a
|
Upload tests/test_accounts.py
|
2026-06-03 23:52:03 +00:00 |
|
Leopoldadmin
|
1dd1ee57ed
|
Upload tests/test_activities.py
|
2026-06-03 23:52:03 +00:00 |
|
Leopoldadmin
|
5e63a8f13b
|
Upload tests/test_frontend_pages.py
|
2026-06-03 23:52:02 +00:00 |
|
Leopoldadmin
|
7f26fc3cdf
|
Upload tests/test_soft_delete_isolation.py
|
2026-06-03 23:52:02 +00:00 |
|