V3: Standardize Primary AE Objects and Synchronize Search Whitelists.

- Synchronized searchable_fields (V3 whitelists) across all Primary and Active AE objects (Identity, People, Events, Journals, Posts, Archives, Business).
- Standardized Pydantic models for core objects to include the 10 common fields (id, id_random, enable, hide, priority, sort, group, notes, created_on, updated_on).
- Fixed field aliases and uncommented valid database columns in User_Base and Organization_Base.
- Pruned non-existent fields from searchable lists in legacy or config-specific definitions (account_cfg, user_role, log_client_viewing).
- Added system discovery and validation tools:
    - ae_object_info.py: AE object status and metadata browser.
    - export_all_interfaces.py: E2E TypeScript interface generator.
    - Verification scripts for searchable field consistency.
- Updated Jan 8 milestone progress and platform roadmap in GEMINI.md.
This commit is contained in:
Scott Idem
2026-01-08 12:24:34 -05:00
parent 59d5b81da0
commit 802c75bad9
17 changed files with 343 additions and 81 deletions

View File

@@ -42,8 +42,9 @@ events_presentation_obj_li = {
# V3 Search Security:
'searchable_fields': [
'event_location_id_random', 'event_id_random', 'code', 'name',
'description', 'location_type', 'enable', 'hide', 'priority',
'sort', 'group', 'notes', 'created_on', 'updated_on'
'description', 'location_type', 'internal_use', 'enable', 'hide',
'public', 'public_hide', 'hide_event_launcher', 'priority', 'sort',
'group', 'notes', 'created_on', 'updated_on'
],
},
'event_presentation': {
@@ -65,8 +66,9 @@ events_presentation_obj_li = {
'event_presentation_id_random', 'event_id_random',
'event_abstract_id_random', 'event_location_id_random',
'event_session_id_random', 'event_track_id_random', 'code', 'name',
'description', 'type_code', 'enable', 'hide', 'priority', 'sort', 'group',
'notes', 'created_on', 'updated_on'
'description', 'type_code', 'enable', 'hide', 'public', 'public_hide',
'hide_event_launcher', 'priority', 'sort', 'group', 'notes',
'created_on', 'updated_on'
],
},
'event_presenter': {
@@ -97,9 +99,10 @@ events_presentation_obj_li = {
'searchable_fields': [
'event_presenter_id_random', 'event_id_random',
'event_person_id_random', 'event_presentation_id_random',
'event_session_id_random', 'person_id_random', 'code', 'title_names',
'event_session_id_random', 'person_id_random', 'code', 'informal_name',
'given_name', 'family_name', 'full_name', 'email', 'role', 'enable',
'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on'
'hide', 'public', 'public_hide', 'hide_event_launcher', 'priority',
'sort', 'group', 'notes', 'created_on', 'updated_on'
],
},
'event_session': {
@@ -121,8 +124,8 @@ events_presentation_obj_li = {
'event_session_id_random', 'event_id_random',
'event_location_id_random', 'event_track_id_random', 'code', 'name',
'description', 'type_code', 'start_datetime', 'end_datetime',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on',
'updated_on'
'enable', 'hide', 'public', 'public_hide', 'hide_event_launcher',
'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on'
],
},
'event_track': {
@@ -139,8 +142,8 @@ events_presentation_obj_li = {
'searchable_fields': [
'event_track_id_random', 'event_id_random',
'event_location_id_random', 'name', 'description', 'track_type',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on',
'updated_on'
'enable', 'hide', 'public', 'public_hide', 'hide_event_launcher',
'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on'
],
},
}