
    yj                         U d Z ddlmZ ddlZddlmZ ddlmZ ddl	m
Z
mZmZ dZeed<   d	Zedz  ed
<   dZeee         z  dz  ed<   dZeee         z  dz  ed<    e            ZddZddZdS )a  add_reasoning_tree_columns

Add source_ids column to documents table for reasoning tree traversal.
This enables linking observations (deductive, inductive, contradiction)
to their source observations.

Revision ID: f1a2b3c4d5e6
Revises: 110bdf470272
Create Date: 2025-12-11

    )SequenceN)op)JSONB)column_exists
get_schemaindex_existsf1a2b3c4d5e6revision110bdf470272down_revisionbranch_labels
depends_onreturnc                  l   t          j                    } t          j        |           }t	          dd|          sIt          j        dt          j        dt          dt          j        d                    t                     t          dd|          s!t          j        dddgdt          	           d
S d
S )z8Add source_ids column with GIN index for tree traversal.	documents
source_idsTNULL)nullableserver_defaultschemaix_documents_source_ids_gingin)postgresql_usingr   N)r   get_bindsainspectr   
add_columnColumnr   textr   r   create_index
connection	inspectors     c/DATA/AppData/hermes/projects/honcho/migrations/versions/f1a2b3c4d5e6_add_reasoning_tree_columns.pyupgrader&      s    J
:&&I lI>> 


I!wv	   		
 		
 		
 		
 %BINN 

)N"	
 	
 	
 	
 	
 	

 
    c                     t          j                    } t          j        |           }t	          dd|          rt          j        ddt                     t          dd|          rt          j        ddt                     dS dS )z'Remove source_ids column and its index.r   r   )
table_namer   r   r   N)	r   r   r   r   r   
drop_indexr   r   drop_columnr"   s     r%   	downgrader,   <   s    J
:&&I K!>	JJ 

)"	
 	
 	
 	
 [,	:: A
{L@@@@@@A Ar'   )r   N)__doc__collections.abcr   
sqlalchemyr   alembicr   sqlalchemy.dialects.postgresqlr   migrations.utilsr   r   r   r
   str__annotations__r   r   r   r   r&   r,    r'   r%   <module>r6      s  
 
 
 % $ $ $ $ $           0 0 0 0 0 0 D D D D D D D D D D #   *sTz * * *,0sXc]"T) 0 0 0)-
C(3-$& - - -	
 
 
 
<A A A A A Ar'   