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.
This commit is contained in:
Scott Idem
2026-02-06 16:23:18 -05:00
parent 64d73c4d5c
commit 8270f7ff7a
6 changed files with 180 additions and 142 deletions

View File

@@ -16,14 +16,14 @@ class Event_Exhibit_Base(BaseModel):
log.debug(locals())
# --- Standardized Vision IDs (Strings for API, Integers for DB) ---
id: Optional[Union[int, str]] = Field(None, **base_fields['event_exhibit_id_random'])
event_exhibit_id: Optional[Union[int, str]] = Field(None, **base_fields['event_exhibit_id_random'])
account_id: Optional[Union[int, str]] = Field(None, **base_fields['account_id_random'])
event_id: Optional[Union[int, str]] = Field(None, **base_fields['event_id_random'])
organization_id: Optional[Union[int, str]] = Field(None, **base_fields['organization_id_random'])
contact_id: Optional[Union[int, str]] = Field(None, **base_fields['contact_id_random'])
person_id: Optional[Union[int, str]] = Field(None, **base_fields['person_id_random'])
status_id: Optional[Union[int, str]] = Field(None, **base_fields['status_id_random'])
id: Optional[Union[int, str]] = Field(**base_fields['event_exhibit_id_random'])
event_exhibit_id: Optional[Union[int, str]] = Field(**base_fields['event_exhibit_id_random'])
account_id: Optional[Union[int, str]] = Field(**base_fields['account_id_random'])
event_id: Optional[Union[int, str]] = Field(**base_fields['event_id_random'])
organization_id: Optional[Union[int, str]] = Field(**base_fields['organization_id_random'])
contact_id: Optional[Union[int, str]] = Field(**base_fields['contact_id_random'])
person_id: Optional[Union[int, str]] = Field(**base_fields['person_id_random'])
status_id: Optional[Union[int, str]] = Field(**base_fields['status_id_random'])
# --- Standardized Legacy / Internal IDs (Excluded) ---
id_random: Optional[str] = Field(None, alias='event_exhibit_id_random', exclude=True)