
    yj                     n    d Z ddlmZ ddlmZ ddlmZ  G d de          Z G d de          ZddgZ	d	S )
a  
Reconciliation events for Honcho telemetry.

Reconciliation tasks handle maintenance operations:
- Sync vectors: Synchronize documents and message embeddings to external vector stores
- Cleanup stale items: Clean up soft-deleted records and expired queue items
    )ClassVar)Field)	BaseEventc                   F   e Zd ZU dZdZee         ed<   dZee	         ed<   dZ
ee         ed<    edd	
          Ze	ed<    edd
          Ze	ed<    edd
          Ze	ed<    edd
          Ze	ed<    edd
          Ze	ed<    edd          Zeed<   defdZdS )SyncVectorsCompletedEventa  Emitted when a vector sync cycle completes.

    Vector sync tasks synchronize documents and message embeddings to external
    vector stores. These run periodically and operate across all workspaces.

    Note: This event has no workspace context as it operates globally.
    z%reconciliation.sync_vectors.completed_event_type   _schema_versionreconciliation	_categoryr   z-Documents successfully synced to vector storedefaultdescriptiondocuments_syncedzDocuments that failed to syncdocuments_failedz-Soft-deleted documents cleaned up during syncdocuments_cleanedz&Message embeddings successfully syncedmessage_embeddings_syncedz&Message embeddings that failed to syncmessage_embeddings_failed.Total processing timer   total_duration_msreturnc                     dS )/Resource ID is fixed for this global operation.sync_vectors selfs    K/DATA/AppData/hermes/projects/honcho/src/telemetry/events/reconciliation.pyget_resource_idz)SyncVectorsCompletedEvent.get_resource_id3   s    ~    N)__name__
__module____qualname____doc__r   r   str__annotations__r
   intr   r   r   r   r   r   r   r   floatr    r   r!   r   r   r      s          "IK#HHH%&OXc]&&&/Ix}/// "EN  c    "E>  c    #UN  s   
 &+UG& & &s    &+UG& & &s   
  %uS6MNNNuNNN      r!   r   c                       e Zd ZU dZdZee         ed<   dZee	         ed<   dZ
ee         ed<    edd	
          Ze	ed<    edd
          Ze	ed<    edd          Zeed<   defdZdS )CleanupStaleItemsCompletedEventa  Emitted when a stale items cleanup cycle completes.

    Cleanup tasks remove soft-deleted documents and expired queue items.
    These run periodically and operate across all workspaces.

    Note: This event has no workspace context as it operates globally.
    z,reconciliation.cleanup_stale_items.completedr   r	   r
   r   r   r   z!Soft-deleted documents cleaned upr   r   zExpired queue items cleaned upqueue_items_cleaned.r   r   r   r   c                     dS )r   cleanup_stale_itemsr   r   s    r   r    z/CleanupStaleItemsCompletedEvent.get_resource_idP   s    $$r!   N)r"   r#   r$   r%   r   r   r&   r'   r
   r(   r   r   r   r,   r   r)   r    r   r!   r   r+   r+   8   s           "PK#OOO%&OXc]&&&/Ix}/// #UB  s     %u?        
  %uS6MNNNuNNN% % % % % % %r!   r+   N)
r%   typingr   pydanticr   src.telemetry.events.baser   r   r+   __all__r   r!   r   <module>r3      s                 / / / / / /% % % % %	 % % %P% % % % %i % % %<  %r!   