
    @j(              	         d Z ddlmZ ddlZddlZddlZddlZddlZddl	Z	ddl
mZ ddlmZ ddlmZmZ  ee      j%                         j&                  Z ed      Zedz  Zed	z  Zed
z  Z ed      Zedz  Z ed      Zedz  Z ed      Z ed      Zej&                  dz  Z ed      Z e dz  Z! ed      Z"dZ#dZ$dZ%dZ&dZ'dZ(dZ)dZ*dZ+dZ,dZ-d d!d"d#d$d%d&d'd(Z.d0d)Z/d1d*Z0d2d+Z1d3d,Z2d4d-Z3d2d.Z4e5d/k(  r e6 e4             y)5zHDeployed-candidate entry point for the append-only Task26 observer v6.4.    )annotationsN)Path)
ModuleType)unquoteurlparsez(/home/cube/projects/richard/hermes-agentz".venv/lib/python3.12/site-packagesz-hermes_agent-0.17.0.dist-info/direct_url.jsonz4physique_checkin_cli-0.1.0.dist-info/direct_url.jsonz/home/cube/projects/richard/traning coach/.omo/evidence/task26/task26-customer-service-state-bootstrap-successor-4a6c7ee54cf9526a30de8bb576c1d71b411938beba33a04914738f6e1b6ed1cbz.artifacts/hermes_agent-0.17.0-py3-none-any.whlz/home/cube/projects/richard/traning coach/.omo/evidence/task26/task26-certification-deployment-4a6c7ee54cf9526a30de8bb576c1d71b411938beba33a04914738f6e1b6ed1cb-st_01a00b39/receipts/deployment-receipt.jsonzhash-inventory.jsonzX/home/cube/.hermes/profiles/dualcoachtest/data/owner-actions/customer-service-state.jsonzx/home/cube/projects/richard/traning coach/.omo/evidence/task26/task26-telegram-poll-recovery-st_01a00d2c/FINAL-SEAL.jsonzrun-4/recovery-result.jsonz?/home/cube/.hermes/profiles/dualcoachtest/workspace/checkin_clicheckin_cliz/home/cube/projects/richard/traning coach/.omo/evidence/task26/task26-inode-test-fix-successor-6aaef77de87489c3be493978645781b24b55ab07513ff1f880164741d0bd3c73/artifacts/physique_checkin_cli-0.1.0-py3-none-any.whl@4a6c7ee54cf9526a30de8bb576c1d71b411938beba33a04914738f6e1b6ed1cb@3374be765c7e53fc431b0c6e48cacbacb09618f77f13ef87016cb0ad2575d060@f75856d6d986b64d3d2f083aec2f865c7aea19f5950b84ff06e519f2f6505af6@9d22e89a0b1a14d4eb7f1c2005fc01860bec5f3b4eda6e01bb1390542a90b875@fe65b634396aaae2818719d1b34fdaad148b2547290d3a66b3af7803bf93dfca@0119beeb46a15ab25a78550da4c432b4cc52e0dc816822d2688dc9009df89d90@47e52b683f20e3b15755e0f9747ac85e543cea8a1a1dc8d67b7718f5933854ae@81c1e581cb84aac6f44044747e0e8e77a2d7498c71d626f1f9b5ec2f9d09a261@2833428cfab41826a5cb54f90bb51c56f40b2468850d02687f7341c791b7f803@00d44de03e8dde668da8058091751291b13457c8bd086917dfe85e42b3813df8@92d9eee2b556282079e2e8fd673c09bcdf7bc00644fca9791cd20bee06450268@8fb6ba6f855e7508c525447cdec482ceb240f8c0a5827b2ca0ce4268c6880bb0@8afb45c5cca082fd85cf07ab43dc5d1062c34678fd268a5722e313ce35cffd8b@3c24d49d656c623edfb95fcfbc7fb0f92365fc123420df66f733f9dbe39d704f@bf2f312245b59ebf33dd1e3e449cfffed12809d18f820953cc28cecef25d34d2@f04ea498ad12a257fb1322da4c8cfd2f91fc9403f0b978617fcc00df41729209@5d3103b744b6e92ddbc576a77df433c2127d6df17260a3c78d2000d7b90d2f97@b0747c4f366d5a78fce7c4ae14b46bd7731b2ecc1591735c6ad75933a3a72abf@996d4b629eb21f59b9021a6b96ab2d82c0c89029f21e8de7cbb6143c59359f88)z8gateway/platforms/nutrition_onboarding_reconciliation.pyz7gateway/platforms/telegram_nutrition_onboarding_copy.pyz:gateway/platforms/telegram_nutrition_onboarding_runtime.pyzCgateway/platforms/telegram_nutrition_onboarding_runtime_callback.pyzFgateway/platforms/telegram_nutrition_onboarding_runtime_publication.pyzgateway/platforms/telegram.pyz'gateway/platforms/nutrition_coaching.pyz,gateway/platforms/nutrition_service_state.pyc                d    t        j                  | j                               j                         S )N)hashlibsha256
read_bytes	hexdigest)paths    W.omo/evidence/task26/task26-continuous-lifecycle-observer-v6.4-4a6c7ee5/observer_v64.pydigestr#   J   s!    >>$//+,6688    c                    t        j                  | j                               }t        t	        t        t        |j                  dd                  j                              j                         }||j                         k7  rt        d| j                         |B|j                  di       j                  d      }|d| k7  rt        d| j                         y |j                  di       j                  d	      d
urt        d      y )Nurl z$installed direct-url binding drift: archive_infohashzsha256=zinstalled archive hash drift: dir_infoeditableTz-profile package is not exact editable binding)jsonloads	read_textr   r   r   strgetr!   resolveRuntimeErrorname)r!   expected_pathexpected_hashdirect	installedarchive_hashs         r"   verify_direct_urlr9   N   s    ZZ()FWXc&**UB*?&@AFFGHPPRIM))++A$))MNN zz."599&AW]O44!?		{KLL 5	J	#	'	'
	34	?JKK 
@r$   c                 0   t        t              t        k7  rt        d      d} t	        j
                  t              5 }|j                         D ]  }|j                  d      r|j                  d      s&|j                  d      }t        |z  }|j                         r>t        j                  |j                  |            j                         t        |      k7  rt        d|       | dz  }  	 d d d        | dk7  rt        d      | S # 1 sw Y   xY w)	Nzcandidate profile wheel driftr   zcheckin_cli/z.pyz installed/profile module drift:    ,   zprofile module inventory drift)r#   PROFILE_WHEEL_PATHPROFILE_WHEELr2   zipfileZipFilenamelist
startswithendswithremoveprefixPROFILE_PACKAGEis_filer   r   readr    )countarchivememberrelativer7   s        r"   verify_profile_wheel_parityrL   [   s     !]2:;;E	+	,&&(F$$^4FOOE<R**>:H'(2I$$&'..f9M*N*X*X*Z^den^o*o"%EhZ#PQQQJE ) 
- {;<<L 
-	,s   B4DDc                 X	   t        t        t        t               t        t        t
        d        t        t              t        k7  rt        d      t        j                  t        j                  t        t        dz        t        t              gddd      } t        j                  | j                         }t        j                  t        dz  j#                               }t        j                  t        dz  j#                               }t        j                  t$        j#                               }t        j                  t&        j#                               }|j)                  d      dk7  sR|j)                  d	      t*        k7  s9|j)                  d	      t*        k7  s |j)                  d
      t,        k7  s|j)                  d      t        k7  s|j)                  d      t.        k7  s|j)                  d      dk7  s|j)                  d      t0        k7  s|j)                  d	      t*        k7  s|j)                  d
      t,        k7  su|j)                  d      dk7  s`t        t$              t2        k7  sI|j)                  d      dk7  s4|j)                  di       j)                  d      t4        k7  s|j)                  di       j)                  d      dk7  s|j)                  di       j)                  d      dk7  s|j)                  d      ddddddddk7  s|j)                  d       d!t        t6              d"d#t8        i d$k7  szt        t:              t<        k7  sdt        t>              t@        k7  sNt        t&              tB        k7  s8|j)                  d      d%k7  s$|j)                  d&i       j)                  d'      d(k  rt        d)      t        j                  t6        j#                               }t        t6              t8        k7  s-t6        jE                         jF                  d*z  d+k7  s	|d"d#i d,k7  rt        d-      tI                tJ        jM                         D ]K  \  }}t        tN        |z        |k7  rt        d.|       t        tP        |z        |k7  s?t        d/|        y )0Nzpreserved Hermes wheel driftzverify_candidate.pyT)checkcapture_outputtextzcandidate-manifest.jsonzcandidate-seal.jsonstatusPASSfull_candidate_digestcore_candidate_digesthermes_wheel_sha256profile_wheel_sha256inventory_count   inventory_digestverdictPASS_DEPLOYED_HEALTHYbindingobserver_v63_seal_sha256runtimemain_pidi telegram_state	connectedtransport_gate%task26_live_2e_r2_20260815_8527916639z
2026-08-17
85279166390)chat_idtopic_iduser_id)customer_keycustomer_transport_allowedkst_daterouteservice_state0600@fbb526e57506141f686cd56dd75c6375c78b974452b985c0737f25230060994dzcustomer-service-state-v1)moder!   payload_digestschemar   statesPASS_RECOVEREDreplayoffset_lower_boundi}ʅ%z;candidate, deployment, incident, or inventory binding drifti  i  )rq   rr   rs   z,canonical empty unpaused service-state driftzcandidate source parity drift: z installed Hermes runtime drift: ))r9   HERMES_DIRECT_URLPRESERVED_HERMES_WHEELHERMES_WHEELPROFILE_DIRECT_URLPROFILE_PACKAGE_ROOTr#   r2   
subprocessrunsys
executabler/   	CANDIDATEr,   r-   stdoutr.   DEPLOYMENT_RECEIPTRECOVERY_RESULTr0   	SUCCESSORCOREr>   CANDIDATE_INVENTORY_DIGESTDEPLOYMENT_RECEIPT_SHA256PREDECESSOR_SEAL_SHA256SERVICE_STATESERVICE_STATE_SHA256CANDIDATE_INVENTORYCANDIDATE_INVENTORY_SHA256RECOVERY_SEALRECOVERY_SEAL_SHA256RECOVERY_RESULT_SHA256statst_moderL   SOURCE_PARITYitemsSOURCE	INSTALLED)	resultverificationmanifestseal
deploymentrecoveryrm   rK   expecteds	            r"   verify_bindingr   m   s   ')?N(*>E$%59::^^	Y)>>?YP	F ::fmm,Lzz9'@@KKMNH::y#88CCEFD.88:;Jzz/3356H"f,34	A<</0I=<</0D8<<-.,><<./=@<<)*b0<<*+/II88+,	988+,488I&($%)BB>>(#'>>>>)R(,,-GHLcc>>)R(,,Z8FB>>)R(,,-=>+M>>*+C*.$!-3<X	0
 
 >>/*&`1*/
 
 %&*DD- $88/"&<<<<!%55<<"%))*>?)KXYYJJ}6689M}!55''%/58`1
 
 IJJ!+113(&8#$0!@
KLL)h&'83!A(LMM	 4r$   c                    t         j                  j                  dt        dz        } | | j                  t        d      t         j                  j                  |       }|t        j                  | j                  <   | j                  j                  |       |j                  t        k7  s9|j                  t        k7  s&|j                  t        k7  s|j                  t        k7  rt        d      t!        |dt"               |S )Ntask26_continuous_lifecycle_v64zcontinuous_lifecycle.pyzobserver import unavailablezobserver digest binding driftSITE)	importlibutilspec_from_file_locationROOTloaderr2   module_from_specr~   modulesr3   exec_moduler   r   WHEELry   r>   setattrr   )specmodules     r"   load_observerr      s    >>11)42K+KD |t{{*899^^,,T2F#CKK		KKF#I%;;$<<<'=0:;;FFI&Mr$   c                    	 t                t        t               j                               S # t        t
        t        t        t        j                  t        j                  f$ r(} t        d|  t        j                         Y d } ~ yd } ~ ww xY w)NzFAIL: )file   )r   intr   mainOSError
ValueErrorr2   KeyErrorr|   SubprocessErrorr?   
BadZipFileprintr~   stderr)excs    r"   r   r      sd    =?'')**Zx9S9SU\UgUgh sen3::.s   *- 7B$BB__main__)r!   r   returnr/   )r!   r   r4   r   r5   z
str | Noner   None)r   r   )r   r   )r   r   )7__doc__
__future__r   r   importlib.utilr   r,   r|   r~   r?   pathlibr   typesr   urllib.parser   r   __file__r1   parentr   r   r   rw   rz   r   rx   r   r   r   r   r   r{   rE   r=   r   r   r>   ry   r   r   r   r   r   r   r   r   r#   r9   rL   r   r   r   __name__
SystemExit r$   r"   <module>r      s   N "     
    *H~&&	8	999	 OO !WW G	
 #%UU ' 
  "77 " @  &&)EEE  '6< 
 O	IRQ^ _ _ Y \ Y [  AC @B CE LN OQ%g/q4v	9
L$FNR( z
TV
 r$   