Commit Graph

17 Commits

Author SHA1 Message Date
Scott Idem
0f4b4d2f51 feat: Implement V3 ID Vision and fields_to_exclude_from_db across core models
This commit refactors numerous Pydantic models to align with the V3 ID Vision standard, ensuring that primary and foreign key fields are represented as clean string IDs in the API. It also introduces and populates the  ClassVar in each model to prevent view-only fields and linked objects from being inadvertently written to the database during PATCH/POST operations.

Specifically, this includes:
- Adding  to exclude view-derived or joined fields such as , , nested objects (e.g., , ), and convenience fields (e.g., ).
- Adjusting root validators to correctly map string IDs and strip internal integer IDs for API responses.
- Resolving a KeyError by adding  to .

These changes are crucial for maintaining data integrity and consistency with the V3 API architecture.
2026-02-24 16:21:27 -05:00
Scott Idem
9715d28bd6 feat(v3-vision): implement resilient "Heal-on-Read" ID resolution
1. Hardened Event_Exhibit and Event_Exhibit_Tracking models with automatic Redis/DB fallback for missing string IDs.
2. Fully modernized Event_Person_Tracking_Base to the Vision Standard (Union IDs + Root Validator).
3. Enabled account-based search for event_person_tracking.
4. Verified all changes via e2e demo parity suite.
2026-02-07 19:27:44 -05:00
Scott Idem
8270f7ff7a fix(v3-actions): implement from_hosted_file and harden vision IDs
1. Implemented specialized 'from_hosted_file' action for Event Files.\n2. Fixed ValueError in Pydantic models by removing default/default_factory conflict.\n3. Hardened integer stripping to strictly enforce Vision Standards.\n4. Updated documentation for the new action route.
2026-02-06 16:23:18 -05:00
Scott Idem
d5e685dee8 fix(v3-vision): strict integer stripping and demo parity verification
1. Hardened all demo models to set non-string ID fields to None, ensuring full Vision Standard compliance.\n2. Added status_id_random to common field schema.\n3. Verified account_id availability in exhibit tracking.\n4. Added comprehensive E2E parity test suite for demo objects.\n5. Fixed NameError by importing root_validator.
2026-02-06 16:16:08 -05:00
Scott Idem
f3662f9462 fix(v3-vision): final hardening of demo models
Standardized Badge, Exhibit, and Tracking models to ID Vision standards. Included account_id support for exhibit tracking and removed legacy validators to ensure stable CRUD operations for the Tuesday demo.
2026-02-06 15:46:05 -05:00
Scott Idem
3d3162e4a0 Exhibits now have enable and hide. 2024-03-12 17:58:33 -04:00
Scott Idem
e48ba7e938 Add new JSON fields 2024-03-04 15:52:59 -05:00
Scott Idem
cbb5bea8c6 Exhibitor tracking, badges, and ISHLT Impexium import related. 2023-02-08 18:32:13 -05:00
Scott Idem
5066cd099d More again again again. Moving ID random generation to the SQL db instead. General clean up. 2022-06-30 17:00:17 -04:00
Scott Idem
14caad33e4 Minor clean up 2022-03-31 13:48:30 -04:00
Scott Idem
5a84119c77 Work on exhibit related 2022-02-22 18:40:05 -05:00
Scott Idem
003ffb4adf General code clean up. Work on event tracking related 2022-02-15 13:25:19 -05:00
Scott Idem
824bdd29a2 Work on event, event_session, event_presentation, event_presenter, user, and person routes, methods, and models 2021-08-21 16:04:17 -04:00
Scott Idem
d85ab35812 Working on membership stuff 2021-06-24 17:50:11 -04:00
Scott Idem
443d2bab77 A lot of general clean up of everything. 2021-05-28 03:52:31 -04:00
Scott Idem
2167c7e897 General clean up of everything. 2021-05-28 03:23:52 -04:00
Scott Idem
65fd3ebe28 Working on event_person and session proposals. Also general clean up of models and methods. 2021-05-27 16:29:27 -04:00