From 87f584b1fa25f329ff84fbfbd73ce8c62a70d381 Mon Sep 17 00:00:00 2001 From: Marek Lenczewski Date: Mon, 20 Apr 2026 08:15:42 +0200 Subject: [PATCH] update --- doc/core/authentication/features.md | 6 ------ doc/core/authentication/specs.md | 1 - doc/core/authorization/features.md | 4 ---- doc/core/authorization/specs.md | 1 - doc/core/cache/features.md | 9 ++++----- doc/core/cache/specs.md | 4 +++- doc/core/config/features.md | 3 +-- doc/core/config/specs.md | 2 +- doc/core/db/features.md | 7 +++---- doc/core/db/specs.md | 2 ++ doc/core/di/features.md | 5 ++--- doc/core/events/features.md | 5 ----- doc/core/events/specs.md | 1 - doc/core/i18n/features.md | 2 -- doc/core/i18n/specs.md | 1 - doc/core/loader/features.md | 9 +++------ doc/core/main/features.md | 8 +++----- doc/core/main/specs.md | 2 +- doc/core/middleware/features.md | 4 ---- doc/core/middleware/specs.md | 1 - doc/core/migrations/features.md | 5 ----- doc/core/migrations/specs.md | 2 -- doc/core/seed/features.md | 2 -- doc/core/seed/specs.md | 1 - doc/core/settings/features.md | 6 ------ doc/core/settings/specs.md | 1 - doc/systems/event/features.md | 3 +++ doc/systems/event/specs.md | 1 + doc/systems/subscriber/features.md | 1 + doc/systems/subscriber/specs.md | 1 + 30 files changed, 29 insertions(+), 71 deletions(-) delete mode 100644 doc/core/authentication/features.md delete mode 100644 doc/core/authentication/specs.md delete mode 100644 doc/core/authorization/features.md delete mode 100644 doc/core/authorization/specs.md delete mode 100644 doc/core/events/features.md delete mode 100644 doc/core/events/specs.md delete mode 100644 doc/core/i18n/features.md delete mode 100644 doc/core/i18n/specs.md delete mode 100644 doc/core/middleware/features.md delete mode 100644 doc/core/middleware/specs.md delete mode 100644 doc/core/migrations/features.md delete mode 100644 doc/core/migrations/specs.md delete mode 100644 doc/core/seed/features.md delete mode 100644 doc/core/seed/specs.md delete mode 100644 doc/core/settings/features.md delete mode 100644 doc/core/settings/specs.md create mode 100644 doc/systems/event/features.md create mode 100644 doc/systems/event/specs.md create mode 100644 doc/systems/subscriber/features.md create mode 100644 doc/systems/subscriber/specs.md diff --git a/doc/core/authentication/features.md b/doc/core/authentication/features.md deleted file mode 100644 index bdae93b..0000000 --- a/doc/core/authentication/features.md +++ /dev/null @@ -1,6 +0,0 @@ -- authentication - - "who are you?" - - password hashing with argon2 - - JWT (15 min access) with refresh (30 days) - - identity dependencies (current_user_claims, optional_user, get_current_user_id, oauth2_scheme) - - room for growth: OAuth/SSO, API-tokens for third-party apps, 2FA, refresh-token rotation, impersonation \ No newline at end of file diff --git a/doc/core/authentication/specs.md b/doc/core/authentication/specs.md deleted file mode 100644 index a12f0bb..0000000 --- a/doc/core/authentication/specs.md +++ /dev/null @@ -1 +0,0 @@ -- authentication.py diff --git a/doc/core/authorization/features.md b/doc/core/authorization/features.md deleted file mode 100644 index b4c4836..0000000 --- a/doc/core/authorization/features.md +++ /dev/null @@ -1,4 +0,0 @@ -- authorization - - "what are you allowed to do?" - - role checks (require_admin today) - - room for growth: require_role, require_permission, per-resource checks (owner-of), B2B approval workflows, per-app permissions for marketplace apps \ No newline at end of file diff --git a/doc/core/authorization/specs.md b/doc/core/authorization/specs.md deleted file mode 100644 index 1b4d348..0000000 --- a/doc/core/authorization/specs.md +++ /dev/null @@ -1 +0,0 @@ -- authorization.py diff --git a/doc/core/cache/features.md b/doc/core/cache/features.md index b9c3777..fdb3b9f 100644 --- a/doc/core/cache/features.md +++ b/doc/core/cache/features.md @@ -1,5 +1,4 @@ -- cache - - shared read-store / cache client (Redis today) - - backend writes, frontend reads - - apps keep the cache in sync via event handlers (projectors), not the core client - - room for growth: CacheProvider abstraction so the read-store becomes swappable \ No newline at end of file +- client für redis +- kopie der datenbank +- anfragen gehen wenn möglich immer an redis, nie an datenbank +- änderungen in datenbank ändern auch immer redis diff --git a/doc/core/cache/specs.md b/doc/core/cache/specs.md index b96b5fe..a4500ea 100644 --- a/doc/core/cache/specs.md +++ b/doc/core/cache/specs.md @@ -1 +1,3 @@ -- cache.py +- redis_client.py + - verbindung zu redis + - CRUD für redis diff --git a/doc/core/config/features.md b/doc/core/config/features.md index daa10c4..a3f9ada 100644 --- a/doc/core/config/features.md +++ b/doc/core/config/features.md @@ -1,2 +1 @@ -- config - - read .env into Settings object \ No newline at end of file +- liest die env diff --git a/doc/core/config/specs.md b/doc/core/config/specs.md index 1846e19..7bb8833 100644 --- a/doc/core/config/specs.md +++ b/doc/core/config/specs.md @@ -1 +1 @@ -- config.py +- config.py - sicherheitskritische daten einlesen diff --git a/doc/core/db/features.md b/doc/core/db/features.md index 2563feb..eb34cd9 100644 --- a/doc/core/db/features.md +++ b/doc/core/db/features.md @@ -1,4 +1,3 @@ -- db - - base setup for ORM - - use SQLAlchemy - - provide get_db() dependency \ No newline at end of file +- verbindung zur datenbank herstellen +- session aufbauen +- Base definieren diff --git a/doc/core/db/specs.md b/doc/core/db/specs.md index 20c984d..4330b35 100644 --- a/doc/core/db/specs.md +++ b/doc/core/db/specs.md @@ -1 +1,3 @@ - db.py + - verwendet SQLAlchemy + - ORM diff --git a/doc/core/di/features.md b/doc/core/di/features.md index 5bf1bb1..8fcaf85 100644 --- a/doc/core/di/features.md +++ b/doc/core/di/features.md @@ -1,3 +1,2 @@ -- di - - global register for services - - no direct service import between apps \ No newline at end of file +- services registrieren +- services abrufen diff --git a/doc/core/events/features.md b/doc/core/events/features.md deleted file mode 100644 index 0fa5625..0000000 --- a/doc/core/events/features.md +++ /dev/null @@ -1,5 +0,0 @@ -- events - - apps can react on events - - apps can emit events - - events persist in db (audit/replay) - - allow wildcard subscribe (e.g. product.*) \ No newline at end of file diff --git a/doc/core/events/specs.md b/doc/core/events/specs.md deleted file mode 100644 index 61f66d8..0000000 --- a/doc/core/events/specs.md +++ /dev/null @@ -1 +0,0 @@ -- events.py diff --git a/doc/core/i18n/features.md b/doc/core/i18n/features.md deleted file mode 100644 index 1327da2..0000000 --- a/doc/core/i18n/features.md +++ /dev/null @@ -1,2 +0,0 @@ -- i18n - - internationalisation helper for DE/EN text fields \ No newline at end of file diff --git a/doc/core/i18n/specs.md b/doc/core/i18n/specs.md deleted file mode 100644 index 7042fe6..0000000 --- a/doc/core/i18n/specs.md +++ /dev/null @@ -1 +0,0 @@ -- i18n.py diff --git a/doc/core/loader/features.md b/doc/core/loader/features.md index 93cd46c..ce80fd2 100644 --- a/doc/core/loader/features.md +++ b/doc/core/loader/features.md @@ -1,6 +1,3 @@ -- loader - - load apps as python module - - discover apps/*/manifest.yaml - - order by app dependency (topological sort), circles not allowed - - check for conflicts - - mount each app router under /api/ \ No newline at end of file +- apps finden +- reihenfolge nach abhängigkeit anpassen +- apps laden diff --git a/doc/core/main/features.md b/doc/core/main/features.md index 7e7c510..62734d3 100644 --- a/doc/core/main/features.md +++ b/doc/core/main/features.md @@ -1,5 +1,3 @@ -- main - - entrypoint for backend - - build fastAPI - - run loader on lifespan startup - - expose /health and core settings routes \ No newline at end of file +- einstiegspunkt +- fastAPI bauen +- loader aufrufen diff --git a/doc/core/main/specs.md b/doc/core/main/specs.md index c854023..a729132 100644 --- a/doc/core/main/specs.md +++ b/doc/core/main/specs.md @@ -1 +1 @@ -- main.py +- event.py diff --git a/doc/core/middleware/features.md b/doc/core/middleware/features.md deleted file mode 100644 index 596c630..0000000 --- a/doc/core/middleware/features.md +++ /dev/null @@ -1,4 +0,0 @@ -- middleware - - central place to install FastAPI middlewares (install_middlewares(app)) - - today: CORS (allowed origins from .env) - - room for growth: request-id, access logging, rate-limit, security headers (HSTS/CSP), compression \ No newline at end of file diff --git a/doc/core/middleware/specs.md b/doc/core/middleware/specs.md deleted file mode 100644 index 8fd640b..0000000 --- a/doc/core/middleware/specs.md +++ /dev/null @@ -1 +0,0 @@ -- middleware.py diff --git a/doc/core/migrations/features.md b/doc/core/migrations/features.md deleted file mode 100644 index ef4adec..0000000 --- a/doc/core/migrations/features.md +++ /dev/null @@ -1,5 +0,0 @@ -- migrations - - orchestrator (migrations.py): discover per-app migration folders (apps//migrations/), configure alembic version_locations dynamically, coordinate multi-head merging - - startup check: fail fast if schema is not up to date - - migrations/ directory: alembic version store (today still holds all migrations centrally; per-app folders are the target state) - - use alembic \ No newline at end of file diff --git a/doc/core/migrations/specs.md b/doc/core/migrations/specs.md deleted file mode 100644 index 26be887..0000000 --- a/doc/core/migrations/specs.md +++ /dev/null @@ -1,2 +0,0 @@ -- migrations.py -- migrations/ (Alembic version store) diff --git a/doc/core/seed/features.md b/doc/core/seed/features.md deleted file mode 100644 index f7089d5..0000000 --- a/doc/core/seed/features.md +++ /dev/null @@ -1,2 +0,0 @@ -- seed - - demo data (admin, demo customer, categories, products) \ No newline at end of file diff --git a/doc/core/seed/specs.md b/doc/core/seed/specs.md deleted file mode 100644 index 35172fa..0000000 --- a/doc/core/seed/specs.md +++ /dev/null @@ -1 +0,0 @@ -- seed.py diff --git a/doc/core/settings/features.md b/doc/core/settings/features.md deleted file mode 100644 index 1341a82..0000000 --- a/doc/core/settings/features.md +++ /dev/null @@ -1,6 +0,0 @@ -- settings - - key-value store for shop settings (runtime-changeable, e.g. shop_name, currency) - - postgres is source of truth - - mirrored to redis on write - - emits core.settings_updated event - - distinct from config (which only reads .env infrastructure values) \ No newline at end of file diff --git a/doc/core/settings/specs.md b/doc/core/settings/specs.md deleted file mode 100644 index 96d6154..0000000 --- a/doc/core/settings/specs.md +++ /dev/null @@ -1 +0,0 @@ -- settings.py diff --git a/doc/systems/event/features.md b/doc/systems/event/features.md new file mode 100644 index 0000000..36f5016 --- /dev/null +++ b/doc/systems/event/features.md @@ -0,0 +1,3 @@ +- custom events aus den apps sammeln +- events persistieren +- helper methoden für events diff --git a/doc/systems/event/specs.md b/doc/systems/event/specs.md new file mode 100644 index 0000000..a729132 --- /dev/null +++ b/doc/systems/event/specs.md @@ -0,0 +1 @@ +- event.py diff --git a/doc/systems/subscriber/features.md b/doc/systems/subscriber/features.md new file mode 100644 index 0000000..3351b83 --- /dev/null +++ b/doc/systems/subscriber/features.md @@ -0,0 +1 @@ +- subscriber registrieren diff --git a/doc/systems/subscriber/specs.md b/doc/systems/subscriber/specs.md new file mode 100644 index 0000000..b4b4d6a --- /dev/null +++ b/doc/systems/subscriber/specs.md @@ -0,0 +1 @@ +- subscriber.py \ No newline at end of file