API and persisted records use PowerOnModel system fields: - sysCreatedAt, sysCreatedBy, sysModifiedAt, sysModifiedBy Removed legacy JSON/DB field names: - _createdAt, _createdBy, _modifiedAt, _modifiedBy Frontend (frontend_nyla) and gateway call sites were updated accordingly. Database: - Bootstrap runs idempotent backfill (_migrateSystemFieldColumns) from old underscore columns and selected business duplicates into sys* where sys* IS NULL. - Re-run app bootstrap against each PostgreSQL database after deploy. - Optional: DROP INDEX IF EXISTS "idx_invitation_createdby" if an old index remains; new index: idx_invitation_syscreatedby on Invitation(sysCreatedBy). Tests: - RBAC integration tests aligned with current GROUP mandate filter and UserMandate-based UserConnection GROUP clause; buildRbacWhereClause(..., mandateId=...) must be passed explicitly (same as production request context). |
||
|---|---|---|
| .. | ||
| tests | ||
| __init__.py | ||
| CONCEPT.md | ||
| datamodelCommcoach.py | ||
| interfaceFeatureCommcoach.py | ||
| mainCommcoach.py | ||
| routeFeatureCommcoach.py | ||
| serviceCommcoach.py | ||
| serviceCommcoachAi.py | ||
| serviceCommcoachContextRetrieval.py | ||
| serviceCommcoachExport.py | ||
| serviceCommcoachGamification.py | ||
| serviceCommcoachPersonas.py | ||
| serviceCommcoachScheduler.py | ||