
    #j@                        d Z ddlmZ ddlZddlmZ ddlmZmZ  ee	      j                         j                  d   dz  dz  Zg d	Zdd
ZddZddZy)uo   task-2644 fixture loader (conftest 외부) — pytest 가 상위 conftest.py 와 충돌하지 않도록 분리.    )annotationsN)Path)DictOptional   fixturescallback_control_plane)merge_ready	critical7auto_remediationsibling_incompletesibling_finallog_only_failcallback_received_misuseCfallback_safety_net_log_recovery_without_control_plane_adjudicationc                n    | j                         sy t        j                  | j                  d            S )Nutf-8encoding)is_filejsonloads	read_textpaths    c/home/jay/workspace/.worktrees/task-2644-dev1/tests/regression/callback_control_plane/_fx_loader.py
_read_jsonr      s(    <<>::dnngn677    c                H    | j                         sy| j                  d      S )N r   r   )r   r   r   s    r   
_read_textr!      s    <<>>>7>++r   c           	         t         | z  }|j                         s
J d|         | t        |dz        t        |dz        t        |dz        t        |dz        t        |dz        dS )Nzfixture missing: zenvelope.jsonzexpected.jsonzledger_entry.jsonzlast_output_text.txtzPROVENANCE.md)nameenvelopeexpectedledger_entrylast_output_text
provenance)FIXTURE_ROOTis_dirr   r!   )r#   bases     r   load_fixturer,   $   sw    $D;;=4-dV44=to56to56"4*=#=>&t.D'DE !78 r   )r   r   returnzOptional[Dict])r   r   r-   str)r#   r.   r-   r   )__doc__
__future__r   r   pathlibr   typingr   r   __file__resolveparentsr)   FIXTURE_NAMESr   r!   r,    r   r   <module>r8      sT    u "   ! H~%%'//2Z?BZZ	8,
r   