+
    jHàjŠÍ  ã                   óX  € R t ^ RIt^ RIt^ RIt^ RIHt ^ RIHt ^ RIH	t	 ^ RI
t
^ RIt^ RIHt ^ RIHtHtHtHt ^ RIHt ^ RIHt ^ R	IHt ]P2                  ! ]4      tR
 R ltR R ltR R lt]! 4       t R R lt!]PD                  ! R4      t#]$! 0 Rm4      t%R t&R t' ! R R4      t(R# )zPAuthenticated WS projection of the gateway authority; no TUI execution fallback.N)Úasdict©Úpartial)ÚPath)ÚPlatform)ÚCANONICAL_GATEWAY_PROTOCOLÚ	PrincipalÚ
SessionRefÚ
Submission)ÚDeferredReply)Úprofile_name_for_home©ÚRuntimeStoreErrorc                ó0   € V ^8„  d   QhR\         R\        /# )é   ÚexcÚreturn)r   Údict)Úformats   "Ú=/home/ubuntu/.hermes/hermes-agent/gateway/session_controls.pyÚ__annotate__r      s   € ÷ ñ Ô(ð ¬Tñ ó    c                ó  € RV P                   /pR F  p\        WR4      pV'       g   K  W1V&   K  	  R F2  p\        \        WR4      \        4      '       g   K%  \        W4      W&   K4  	  \        V RR4      RJ d   RVR&   V# )z~The ``error.data`` for one ``RuntimeStoreError``: always the reason, plus the field and the
detail when the raiser named them.ÚreasonNÚadmittedF©ÚfieldÚdetail)ÚrevisionÚexecution_generation)r   ÚgetattrÚ
isinstanceÚint)r   ÚdataÚkeyÚvalues   &   r   Ú_refusal_datar&      s‚   € ð �c—j‘jÐ!€DÛ"ˆÜ˜ $Ó'ˆß‰5Ø�‹Iñ #ó 4ˆÜ”g˜c¨Ó-¬s×3Ô3Ü Ó)ˆD‹Iñ 4ô ˆs�J Ó%¨Ó.Ø ˆˆZÑØ€Kr   c                ó$   € V ^8„  d   QhR\         /# )r   r   )Ústr)r   s   "r   r   r   &   s   € ÷ 4ñ 4¤#ñ 4r   c                óv   € V '       g   R# \        V 4      pRV9  d
   RV9  d   V# \        V4      ;'       g    R# )z�The profile as a log line should carry it: a named profile by name, a root profile (keyed by its
home path) by its name, never the path itself.ÚdefaultÚ/Ú\)r(   r   )Ú
profile_idÚtexts   & r   Ú_profile_labelr/   &   s9   € ÷ ÙÜˆz‹?€DØ
�$„˜4 tÔ+ØˆÜ  Ó&×3Ð3¨)Ð3r   c                ó(   € V ^8„  d   QhR\         RR/# ©r   r   r   Nr   )r   s   "r   r   r   1   s   € ÷ "ñ "Ô'8ð "¸Tñ "r   c           	     ó˜  € RpT\        V 4      VP                  \        VRR4      '       d   RVP                   2MR\        VRR4      '       d   RVP                   2MR3pVP                  R8w  dA   \        VRR4      '       g   \        VRR4      '       d   \
        P                  ! V.VO5!   R# \
        P                  ! V.VO5!   R# )	a  One line per refusal, at the level its audience deserves.

A refusal that names the check that fired is a launch diagnostic (warning). A bare reason code is
the client's own state: ``permission_denied`` on a submit, ``not_found``, ``session_busy`` are
routine, and a retrying client must not be able to flood the gateway log, so those stay at debug
where they were silent before. The shape follows the gateway's own refusal log lines
(``gateway/run_notifications.py``): what was refused, for which profile, and why.z!%s refused for profile=%s: %s%s%sr   Nz field=Ú r   z detail=Úsession_busy)r/   r   r    r   r   ÚloggerÚwarningÚdebug)ÚprofileÚmethodr   ÚlineÚargss   &&&  r   Ú_log_refusalr<   1   s¬   € ð /€DØ”N 7Ó+¨S¯Z©ZÜ%,¨S°'¸4×%@Ò%@ˆg�c—i‘i�[Ñ!ÀbÜ'.¨s°H¸d×'CÒ'Cˆh�s—z‘z�lÑ#ÈðM€Dð ‡z�z�^Ô#¬°°g¸t×)DÒ)DÌÐPSÐU]Ð_c×HdÒHdÜ�Š�tÐ#˜dÖ#ä�Š�TÐ!˜DÖ!r   c                ó<   € V ^8„  d   QhR\         P                  RR/# r1   )Úsqlite3ÚError)r   s   "r   r   r   G   s"   € ÷ Pñ P¼7¿=¹=ð PÈTñ Pr   c           	     ó  € V\        V4      P                  3pV\        9  p\        P                  V4       \	        V4      p\        V4      ^@8”  d   VR,           R\        V4       R2p\        P                  RV\        V 4      WcVR7       R# )aQ  Keep SQLite's diagnostic at the gateway while its wire error stays retryable.

Clients retry on ``storage_unavailable``, so, like ``_log_refusal``, a retrying client must not
flood the log: every failure keeps one line with its cause, the traceback comes once per method
and error class, and the client-supplied ``session_id`` is capped.:Né0   Nu   â€¦ (z chars)z3%s storage failure for profile=%s session_id=%s: %s)Úexc_infoN)	ÚtypeÚ__name__Ú_STORAGE_TRACEBACKSÚaddÚreprÚlenr5   r6   r/   )r8   r9   Ú
session_idr   r$   ÚfirstÚshowns   &&&&   r   Ú_log_storage_failurerL   G   sƒ   € ð ”4˜“9×%Ñ%Ð
&€CØÔ*Ñ*€EÜ×Ñ˜CÔ Ü�Ó€EÜ
ˆ5ƒz�B„Ø˜•:�,˜e¤C¨£J <¨wÐ7ˆÜ
‡N�NÐHØœ>¨'Ó2°EÈð ö Pr   z[a-z][a-z_]{0,31}c                óŠ   € ^ RI Hp V  Uu. uF  pRV9   d   / VCRVR,          /CMTNK  	  ppVP                  WAR7      # u upi )zîMain's TUI display rows for a snapshot's stored rows: the sidecar's own
``_history_to_messages`` (compaction handoffs stripped, ``/steer`` unwrapped, tool rows
labelled from the paired assistant ``tool_calls``), never a re-implementation.©ÚserverÚrow_idÚ_row_id)Úprofile_home)Útui_gatewayrO   Ú_history_to_messages)ÚhistoryrR   rO   ÚrowÚrowss   &&   r   Údisplay_projectionrX   a   sS   € õ #ÙU\Ó]ÑU\Èc°¸S´Ð-ˆsÐ-�I˜s 8�}Ò-ÀcÒIÑU\€DÐ]Ø×&Ñ& tÐ&ÓGÐGùò ^s   ‹!A c                ó”   € ^ RI Hp V P                  R4      p\        V\        4      ;'       d    \        VP                  V4      4      # )zfA live row the model reads but nobody typed as one message (a micro-compaction merge): never rendered.)ÚMODEL_ONLY_DISPLAY_METADATA_KEYÚdisplay_metadata)Úagent.context_compressorrZ   Úgetr!   r   Úbool)rV   rZ   Úmetadatas   &  r   Ú
model_onlyr`   j   s8   € åHØ�w‰wÐ)Ó*€HÜ�h¤Ó%×]Ð]¬$¨x¯|©|Ð<[Ó/\Ó*]Ð]r   c                   ój  a € ] tR t^qt o RR/R lt]R 4       tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!R  t"R! t#R" t$R# t%R$ t&R% t'R& t(R' t)R( t*R) t+R* t,R+ t-R, t.R- t/R. t0R/ t1R0 t2R1 t3R2 t4R3 t5R4 t6R5 t7R6 t8R7t9V t:R8# )9ÚAuthorityConnectionÚoperatorFc               óä  € Wn         W n        \        0 Rm4      pV'       d   VR0,          pRV9   d   \        VR,          4      pVR0,          pVRJ d   VR0,          pVP                  R4      '       d,   VP                  RVP                  4      VP                  8w  d   \        4       p^ RIHp \        V! V4      VP                  RVP                  4      V\        P                  ! 4       P                  4      V n        ^ R	IHp V! WP                  V4       VP                  R
4      RJ V n        / V n        W4/ uV n        V n        V n        W!P(                  V P                  P*                  &   R# )úsession:readzsession:createÚcapabilitieszsession:operatorTÚuser_idÚinstance_id)Úauthenticated_subjectr-   )Úbind_native_transportÚnative_bootstrapN>   re   úsession:submitúsession:approveúsession:controlúsession:respond)Ú	authorityÚ	transportÚ	frozensetr]   rh   Úgateway.session_identityri   r   r-   ÚuuidÚuuid4ÚhexÚactorÚgateway.session_local_migrationrj   Únative_ownerÚsubscriptionsÚ	_identityÚ	_operatorÚ	_siblingsÚeventsÚtransport_id)Úselfrp   rq   Úidentityrc   rf   ri   rj   s   &&&&$   r   Ú__init__ÚAuthorityConnection.__init__r   s9  € Ø"ŒØ"ŒÜ ò "Hó IˆçØÐ-Ð.Õ.ˆLØ˜XÔ%Ü$ X¨nÕ%=Ó>ˆLàÐ+Ð,Õ,ˆØ�tÓØÐ/Ð0Õ0ˆLØ—‘˜Y×'Ò'Ø—<‘< ¨y×/DÑ/DÓEÈ×I^ÑI^Ô^Ü$›;ˆLÝBÜÑ4°XÓ>Ø'Ÿ|™|¨L¸)×:NÑ:NÓOØ+¬T¯ZªZ«\×-=Ñ-=ó?ˆŒ
õ 	JÙ˜i¯©°XÔ>Ø$ŸL™LÐ);Ó<ÀÐDˆÔØˆÔØ9AÈRÐ6ˆŒ˜œ¨¬Ø4=×Ñ˜Ÿ™×0Ñ0Ó1r   c                ó>   € V P                   P                  R4      R8H  # )z¦A host-scoped grant (the Desktop's shared-primary socket, the dashboard gate) acts for
every profile this process serves; any other grant is bound to its own profile.Úprofile_scopeÚhost)r{   r]   )r€   s   &r   Úhost_scopedÚAuthorityConnection.host_scoped�   s   € ð �~‰~×!Ñ! /Ó2°fÑ<Ð<r   c                óÎ  € ^ RI Hp V! V\        V P                  P                  4      4      '       d   R# V P
                  '       g   \        R4      h\        \        V P                  RR4      RR4      pT;'       g    R FØ  pW@P                  Jg   K  V! V\        VP                  4      4      '       g   K8  V P                  P                  VP                  4      pVe   VP                  VJdf   \        V P                  VP                  VP                  R7      p\        W@P                  W`P                  R7      pWPP                  VP                  &   Vu # 	  \        R4      h)	a^  Connection bound to the sibling authority a ``profile`` param names, or None for our own
home. Only a host-scoped grant (the Desktop's shared-primary socket, the dashboard gate)
reaches a sibling; a profile-bound ticket naming any other profile is a mismatch, exactly
like a profile nobody here serves. Never a fallback, never a rewritten profile_id.)Úprofile_matches_homeNÚprofile_mismatchÚrunnerÚsession_authorities)r-   rh   )rc   © )Úhermes_cli.profilesrŠ   r   rp   r-   r‡   r   r    r}   r]   r   r{   rh   rb   rq   r|   )r€   r8   rŠ   ÚregistryÚsiblingÚ
connectionr�   s   &&     r   Ú_sibling_forÚ AuthorityConnection._sibling_for“   s  € õ
 	=Ù ¬¨d¯n©n×.GÑ.GÓ)H×IÒIÙØ××ÐÜ#Ð$6Ó7Ð7Üœ7 4§>¡>°8¸TÓBÐDYÐ[_Ó`ˆØ Ÿ˜ BšˆGØŸn™nÕ,Ñ1EÀgÌtÐT[×TfÑTfÓOg×1hÔ1hØ!Ÿ^™^×/Ñ/°×0BÑ0BÓC�
ð Ò%¨×)=Ñ)=ÀWÓ)LÜ# D§N¡N¸w×?QÑ?QÐ_f×_rÑ_rÔs�HÜ!4°W¿n¹nÈh×aoÑaoÔ!p�JØ9C—N‘N 7×#5Ñ#5Ñ6Ø!Ò!ñ 'ô  Ð 2Ó3Ð3r   c           	     ó¬  € / RV P                   bRV P                  bRV P                  bRV P                  bRV P                  bRV P
                  bRV P                  bRV P                  bR	V P                  bR
V P                  bRV P                  bRV P                  bRV P                  bRV P                  bRV P                  bRV P                  bRV P                   b/ RV P"                  bRV P$                  bRV P&                  bRV P(                  bRV P*                  bRV P,                  bRV P.                  bRV P0                  bRV P2                  bRV P4                  bRV P6                  bRV P8                  bRV P:                  bRV P<                  bR V P>                  bR!V P@                  bR"V PB                  bCR#V PD                  R$V PF                  R%V PH                  R&V PJ                  /Cp^ R'I&H'p VPQ                  V! V 4      4       ^ R'I)H'p VPQ                  V! V 4      4       ^ R'I*H'p VPQ                  V! V 4      4       ^ R'I+H'p VPQ                  V! V 4      4       ^ R'I,H'p VPQ                  V! V 4      4       ^ R'I-H'p VPQ                  V! V 4      4       ^ R'I.H'p VPQ                  V! V 4      4       ^ R'I/H'p	 VPQ                  V	! V 4      4       ^ R'I0H'p
 VPQ                  V
! V 4      4       ^ R(I1H2p ^ R)I3H4p V! W°4      VR*&   ^ R+I5H6p V! WÐ4      VR,&   ^ R-I7H8p V! Wà4      VR.&   ^ R/I9H:p V! Wð4      VR0&   ^ R1I;H<p V! VV 4      VR2&   ^ R3I=H>p V! VV 4      VR4&   ^ R5I?H@p V! VV 4      VR6&   ^ R7IAHBp V! VV 4      VR8&   ^ R'ICH'p VPQ                  V! V 4      4       ^ R9IDHEp V! VV 4      VR:&   ^ R'IFH'p VPQ                  V! V 4      4       V# );u¬   Method â†’ handler for every verb ``dispatch`` serves outside the group controls; each
name is declared in ``tui_gateway/contracts`` (``METHODS`` or ``CANONICAL_METHODS``).úsession.createÚpingzruntime.describezcommands.catalogzcomplete.slashzplugins.listzcommand.observez
slash.execzcommand.dispatchúsession.listúsession.infoúsession.mutatezbot_relay.deliverzbot_relay.settlezbot_relay.roster.synczbot_relay.outbox.drainzbot_relay.replyza2a.forwardz
kanban.runzcron.submitzcron.statuszcron.cancelzcron.recoverzworker.registerzworker.adoptzworker.persistzsetup.statuszsetup.runtime_checkúsession.resumeúsession.detachúprompt.submitúprompt.receiptúprompt.cancelúprompt.resolve_unknownúsession.interruptúsession.events.sinceúapproval.respondúclarify.respond)Úhandlers)Úattach_bytesr   zimage.attach_bytes)Úcomplete_pathzcomplete.path)Úprunezsession.prune)Ústatsúsession.stats)Úactive_listzsession.active_list)Ú
automationzsession.automation)Úreactzmessage.react)Úclarify_lockzclarify.lock)Úcontrolzsession.control)GÚcreater—   ÚdescribeÚcommand_catalogÚslash_completionsÚplugins_listÚcommand_observeÚ
slash_execÚcommand_dispatchÚlist_sessionsÚinfoÚmutateÚbot_deliverÚ
bot_settleÚ
bot_rosterÚ
bot_outboxÚ	bot_replyÚa2a_forwardÚ
kanban_runÚcron_submitÚcron_statusÚcron_cancelÚcron_recoverÚworker_registerÚworker_adoptÚworker_persistÚsetup_statusÚsetup_runtime_checkÚresumeÚdetachÚsubmitÚreceiptÚcancelÚresolve_unknownÚ	interruptÚevents_sinceÚrespondÚrespond_clarifyÚgateway.session_busy_controlsr¥   ÚupdateÚgateway.session_queued_controlsÚgateway.session_configÚgateway.session_tui_configÚgateway.session_ancillaryÚgateway.session_shellÚgateway.session_tui_opsÚgateway.session_tui_sideÚgateway.session_llm_oneshotÚgateway.session_imagesr¦   Ú	functoolsr   Úgateway.session_complete_pathr§   Úgateway.session_pruner¨   Úgateway.session_usager©   Úgateway.session_active_listr«   Ú!gateway.session_viewer_automationr¬   Úgateway.session_reactionsr­   Úgateway.session_clarify_lockr®   Úgateway.session_connectionsÚgateway.session_control_actionsr¯   Úgateway.session_onboarding)r€   r¥   Úbusy_handlersÚqueued_handlersÚconfig_handlersÚtui_config_handlersÚancillary_handlersÚshell_handlersÚtui_ops_handlersÚside_handlersÚoneshot_handlersr¦   r   r§   r¨   r©   r«   r¬   r­   r®   Úconnection_handlersr¯   Úonboarding_handlerss   &                      r   r¥   ÚAuthorityConnection.handlersª   sA  € ð_Ð$ d§k¡kð _°6¸4¿9¹9ð _ÐFXÐZ^×ZgÑZgð _Ø&¨×(<Ñ(<ð_Ø>NÐPT×PfÑPfð_à" D×$5Ñ$5ð_à7HÈ$×J^ÑJ^ð_ð ! $§/¡/ð_ð 4FÀt×G\ÑG\ð_ð # D×$6Ñ$6ð	_ð 9GÈÏ	É	ð	_ð
 % d§k¡kð_ð
 4GÈ×HXÑHXð_ð '¨¯©ð_ð ,¨T¯_©_ð_ð ?WÐX\×XgÑXgð_ð & t§~¡~ñ_ð 8EÀd×FVÑFVð_ð ! $§/¡/ð_ð " 4×#3Ñ#3ð_ð 6CÀD×DTÑDTð_ð " 4×#3Ñ#3ð_ð 6DÀT×EVÑEVð_ð & t×';Ñ';ð_ð >LÈT×M^ÑM^ð_ð % d×&9Ñ&9ð_ð # D×$5Ñ$5ð_ð 8MÈd×NfÑNfð_ð % d§k¡kð_ð 4DÀTÇ[Á[ð_ð  $ T§[¡[ð!_ð" % d§l¡lð#_ð" 5DÀTÇ[Á[ð#_ð$ -¨d×.BÑ.Bñ%_ð& (¨¯©Ð9OÐQU×QbÑQbØ&¨¯©Ð6GÈ×I]ÑI]ñ)_ˆõ* 	LØ�‰™ dÓ+Ô,ÝOØ�‰™¨Ó-Ô.ÝFØ�‰™¨Ó-Ô.ÝNØ�‰Ñ+¨DÓ1Ô2ÝLØ�‰Ñ*¨4Ó0Ô1ÝDØ�‰™ tÓ,Ô-ÝHØ�‰Ñ(¨Ó.Ô/ÝFØ�‰™ dÓ+Ô,ÝLØ�‰Ñ(¨Ó.Ô/Ý7Ý%Ù)0°Ó)DˆÐ%Ñ&Ý?Ù$+¨MÓ$@ˆ�Ñ!Ý/Ù$+¨EÓ$8ˆ�Ñ!Ý/Ù$+¨EÓ$8ˆ�Ñ!Ý;Ù*1°+¸tÓ*DˆÐ&Ñ'Ý@Ù)0°¸TÓ)BˆÐ%Ñ&Ý3Ù$+¨E°4Ó$8ˆ�Ñ!Ý=Ù#*¨<¸Ó#>ˆ�Ñ ÝOØ�‰Ñ+¨DÓ1Ô2Ý;Ù&-¨g°tÓ&<ˆÐ"Ñ#ÝNØ�‰Ñ+¨DÓ1Ô2Øˆr   c              ƒ  óÆ
  "  € ^ RI Hp V! V4      '       d   V P                  V4       R# VP                  R4      pVP                  R4      pVP                  R4      ;'       g    / p\	        V\
        4      '       g   RRRVRR	R
RRRRR///# ^ RIHp V P                  RJ dr   V! \        V P                  RR4      V4      '       dN   \        R4      p\        \        V P                  RR4      WG4       RRRVRR	R
RVP                  R\        V4      //# VP                  R4      p\	        V\         4      '       do   V'       dg    V P#                  V4      p	T	e   T	P%                  T4      G Rj  x€L
 # T\&        9   d-   TP)                  4        U
Uu/ uF  w  r«T
R8w  g   K  Y«bK  	  pp
p\+        V P                  P,                  VP                  RR4      4      p^ RIHpHpHpHpHp VP                  V4      pVe$   V! VV4      ;p'       d   RRRVRR	R
RRRRRRV///# \        V4      pT;'       g    VP                  V4      pV P                  p\	        VP:                  \         4      '       d‹   VP:                  '       dy   \        VRR4      '       gf   VP,                  \        VRR4      8X  dJ   VP:                  \        VRVP:                  R/4      9  d"   ^ RIHp V! VVP:                  4      G Rj  x€L
  T PA                  4       p ^ RI!H"pH#p ^ RI$H%p ^ RI&HpH'p V! V P                  4      ;_uu_ 4        VV9   g   VR 8X  d   V! WV4      G Rj  x€L
 pM•VV9  g   VV9   d,   V! V4      '       g   RRRVRR	R(RR!V 2RRR"///uuRRR4       # VV,          ! WÅ4      G Rj  x€L
 p\	        V\P        4      '       d0   V! VV4       VPS                  W\U        VV4      4      uuRRR4       # RRR4       V! VV4       V! VX4       RRRVR#V/#   \         dM   p\        \        T P                  RR4      YG4       RRRTRR	R
RTP                  R\        T4      //u Rp?# Rp?ii ; i ELu upp
i  EL� EL# LÔ  + '       g   i     L•; i  \         dc   p\        \        T P                  RR4      YG4       RRRTRR	\        TR$R
4      R\        TR%TP                  4      R\        T4      //u Rp?# Rp?i\V        PX                   dM   p\[        \        T P                  RR4      TTP                  R4      T4       RRRTRR	R&RR'RRR'///u Rp?# Rp?ii ; i5i))é    )Úis_response_frameNÚidr9   ÚparamsÚjsonrpcz2.0ÚerrorÚcodei¡  ÚmessageÚinvalid_paramsr#   r   )Ú ws_method_refused_while_drainingTrŒ   Úruntime_drainingr-   r8   rI   r3   )ÚCANONICAL_METHODSÚMETHODSÚcanonical_param_problemsÚcheck_params_acceptedÚcheck_resultÚfieldsÚretiringFÚsessions)Úadopt_before_restore)ÚGROUP_METHODSÚdispatch_group_control)Úowner_scope)r  Úsession_ownedzprofiles.listzunknown method: Úunknown_methodÚresultÚ	wire_codeÚwire_messagei‰  Ústorage_unavailablei§€ÿÿ).Úgateway.session_server_requestsrù   Ú_resolve_responser]   r!   r   Úgateway.drain_controlr  r|   r    rp   r   r<   rw   r   r&   r(   r“   ÚdispatchÚ_PROFILE_IMPLICITÚitemsr	   r-   Útui_gateway.contracts.registryr  r  r  r  r  rI   Úgateway.session_local_adoptionr  r¥   Úgateway.session_group_controlsr  r  Úgateway.session_authoritiesr  rè   r  r   Ústartr   r>   r?   rL   )r€   Úrequestrù   Úridr9   rû   r  r   r8   Úroutedr$   r%   Úrefr  r  r  r  r  ÚcontractÚproblemsÚoriginal_paramsrp   r  r¥   r  r  r  ÚCONNECTION_METHODSr  r  s   &&                            r   r  ÚAuthorityConnection.dispatchí   s:  é € ÝEÙ˜W×%Ò%ð ×"Ñ" 7Ô+ÙØ�k‰k˜$ÓˆØ—‘˜XÓ&ˆØ—‘˜XÓ&×,Ð,¨"ˆÜ˜&¤$×'Ò'à˜u d¨C°Ø˜˜iÐ)9¸6ÀHÐN^ÐC_ð;að bð båJØ�>‰>˜TÓ!Ñ&FÄwÈtÏ~É~Ð_gÐimÓGnÐpv×&wÒ&wô $Ð$6Ó7ˆCÜœ §¡¨\¸4Ó@À&ÔNØ˜u d¨C°Ø˜˜i¨¯©°V¼]È3Ó=Oð;Qð Rð Rà—*‘*˜YÓ'ˆÜ�gœs×#Ò#¯ðVØ×*Ñ*¨7Ó3�ð
 Ò!Ø#Ÿ_™_¨WÓ5×5Ð5ð Ô*Ô*Ø7=·|±|´~ÔZ±~©¨ÈÐPYÑIYœ*˜#š*±~�ÑZÜ˜Ÿ™×.Ñ.°·
±
¸<ÈÓ0LÓMˆ÷	
õ 	
ð %×(Ñ(¨Ó0ˆØÒÑ1IÈ(ÐTZÓ1[Ð%[ XÖ%[ð ˜u d¨C°Ø˜˜iÐ)9¸6ÀHÐN^Ð`hÐjrÐCsð;uð vð vä˜v›,ˆØ×2Ð2˜wŸ{™{¨6Ó2ˆØ—N‘Nˆ	Ü�s—~‘~¤s×+Ò+°··°ÄwÈyÐZdÐfk×GlÒGlØ—N‘N¤g¨i¸ÀtÓ&LÔLØ—N‘N¬'°)¸ZÈ#Ï.É.ÐZ^ÐI_Ó*`Ô`õ LÙ& y°#·.±.ÓA×AÐAØ—=‘=“?ˆð$	lß\õ
 @ß`Ù˜TŸ^™^×,Õ,Ø˜]Ô*¨f¸Ô.GÙ#9¸$ÈÓ#O×O‘FØ 8Ô+°Ð:LÔ0LÑUbÐci×UjÒUjð & u¨d°C¸Ø ¨	Ð5EÀfÀXÐ3NØ Ð+;Ð <ðC>ð ?÷ -Ò,ð $,¨FÖ#3°CÓ#@×@�FÜ! &¬-×8Ò8Ù-¨h¸ÔHØ%Ÿ|™|¨D´w¸|ÈXÓ7VÓW÷ -×,Ò,ñ " (¨OÔ<Ù˜ 6Ô*Ø˜u d¨C°¸6ÐBÐBøôq %ô VÜœW T§Z¡Z°¸tÓDÀfÔRØ! 5¨$°°WØ˜D )¨S¯Z©Z¸ÄÈsÓASð?Uð Võ VûðVúò
 6ùó [ò( Bò Pñ A÷ -×,ûô$ !ô 	-Üœ §¡¨\¸4Ó@À&ÔNà˜u d¨C°Øœ  [°$Ó7¸ÄGÈCÐQ_Ðad×akÑakÓDlØœ cÓ*ð;,ð -õ -ûô �}‰}ô 	lÜ ¤¨¯©°\À4Ó!HÈ&Ø!'§¡¨LÓ!9¸3ô@à˜u d¨C°Ø˜˜iÐ)>ÀÈÐShÐHið;kð lõ lûð	lüs3  ‚A!U!Á$CU!ÅP ÅU!Å-Q.Å."U!ÆQ1Æ Q1Æ&A&U!È%U!È3AU!ÊA3U!Ë6Q7Ë7U!Ì0R Ì<Q?ÍQ:Í Q?Í9Q?Î
R ÎU!ÎQ?Î(Q=Î)>Q?Ï'
R Ï1U!Ï2!R ÐU!ÐQ+ÐAQ&Ñ Q+Ñ!U!Ñ&Q+Ñ+U!Ñ1U!Ñ:Q?Ñ=Q?Ñ?R	Ò
R ÒUÒAS:Ó4UÓ5U!Ó:UÔUÔAUÕUÕU!ÕUÕU!c              ƒ  ó:   "  € ^ RI Hp V! W4      G Rj  x€L
 #  L5i)rø   )ÚforwardN)Úgateway.session_a2ar*  )r€   r#  rû   r*  s   &&& r   rÀ   ÚAuthorityConnection.a2a_forwardM  ó   é € Ý/Ù˜TÓ*×*Ð*Ñ*ùó   ‚”•c              ƒ  ó:   "  € ^ RI Hp V! W4      G Rj  x€L
 #  L5i)rø   )Úrun_taskN)Úgateway.session_kanbanr0  )r€   r#  rû   r0  s   &&& r   rÁ   ÚAuthorityConnection.kanban_runQ  s   é € Ý3Ù˜dÓ+×+Ð+Ñ+ùr.  c              ƒ  ó>   "  € ^ RI Hp V! V RV4      G Rj  x€L
 #  L5i)rø   ©ÚrpcÚrecoverN©Úgateway.session_cronr5  ©r€   r#  rû   r5  s   &&& r   rÅ   Ú AuthorityConnection.cron_recoverU  s   é € Ý,Ù˜˜y¨&Ó1×1Ð1Ñ1ùó   ‚–—c              ƒ  ó>   "  € ^ RI Hp V! V RV4      G Rj  x€L
 #  L5i)rø   r4  rÍ   Nr7  r9  s   &&& r   rÂ   ÚAuthorityConnection.cron_submitY  ó   é € Ý,Ù˜˜x¨Ó0×0Ð0Ñ0ùr;  c              ƒ  ó>   "  € ^ RI Hp V! V RV4      G Rj  x€L
 #  L5i)rø   r4  ÚstatusNr7  r9  s   &&& r   rÃ   ÚAuthorityConnection.cron_status]  r>  r;  c              ƒ  ó>   "  € ^ RI Hp V! V RV4      G Rj  x€L
 #  L5i)rø   r4  rÏ   Nr7  r9  s   &&& r   rÄ   ÚAuthorityConnection.cron_cancela  r>  r;  c              ƒ  ó*   "  € ^ RI Hp V! V RV4      # 5i)rø   ©Úrelay_operationÚroster©Úgateway.session_botrF  ©r€   r#  rû   rF  s   &&& r   r½   ÚAuthorityConnection.bot_rostere  ó   é € Ý7Ù˜t X¨vÓ6Ð6ùó   ‚c              ƒ  ó*   "  € ^ RI Hp V! V RV4      # 5i)rø   rE  ÚoutboxrH  rJ  s   &&& r   r¾   ÚAuthorityConnection.bot_outboxi  rL  rM  c              ƒ  ó*   "  € ^ RI Hp V! V RV4      # 5i)rø   rE  ÚreplyrH  rJ  s   &&& r   r¿   ÚAuthorityConnection.bot_replym  s   é € Ý7Ù˜t W¨fÓ5Ð5ùrM  c              ƒ  ó:   "  € ^ RI Hp V! W4      G Rj  x€L
 #  L5i)rø   )ÚdeliverN)rI  rU  )r€   r#  rû   rU  s   &&& r   r»   ÚAuthorityConnection.bot_deliverq  r-  r.  c              ƒ  ó:   "  € ^ RI Hp V! W4      G Rj  x€L
 #  L5i)rø   )ÚsettleN)rI  rX  )r€   r#  rû   rX  s   &&& r   r¼   ÚAuthorityConnection.bot_settleu  s   é € Ý.Ù˜DÓ)×)Ð)Ñ)ùr.  c              ƒ  ó@   "  € ^ RI Hp V! WVRR7      G Rj  x€L
 #  L5i)rø   ©Úworker_requestÚregister©Ú	operationN©Úgateway.session_workerr\  ©r€   r#  rû   r\  s   &&& r   rÆ   Ú#AuthorityConnection.worker_registery  s   é € Ý9Ù# D¨vÀÔL×LÐLÑLùó   ‚—˜c              ƒ  ó@   "  € ^ RI Hp V! WVRR7      G Rj  x€L
 #  L5i)rø   r[  Úadoptr^  Nr`  rb  s   &&& r   rÇ   Ú AuthorityConnection.worker_adopt}  s   é € Ý9Ù# D¨vÀÔI×IÐIÑIùrd  c              ƒ  ó@   "  € ^ RI Hp V! WVRR7      G Rj  x€L
 #  L5i)rø   r[  Úpersistr^  Nr`  rb  s   &&& r   rÈ   Ú"AuthorityConnection.worker_persist�  s   é € Ý9Ù# D¨vÀÔK×KÐKÑKùrd  c              ƒ  ó<   "  € ^ RI Hp V! WV4      G Rj  x€L
 #  L5i)rø   ©Úexecute_commandN©Úgateway.session_commandsrm  ©r€   r#  rû   rm  s   &&& r   r¶   ÚAuthorityConnection.slash_exec…  ó   é € Ý<Ù$ T°Ó7×7Ð7Ñ7ùó   ‚•–c              ƒ  ó@   "  € ^ RI Hp V! WVRR7      G Rj  x€L
 #  L5i)rø   rl  T)r  Nrn  rp  s   &&& r   r·   Ú$AuthorityConnection.command_dispatch‰  s   é € Ý<Ù$ T°ÀÔF×FÐFÑFùrd  c              ƒ  ó<   "  € ^ RI Hp V! WV4      G Rj  x€L
 #  L5i)rø   )Úobserve_commandN)ro  rw  )r€   r#  rû   rw  s   &&& r   rµ   Ú#AuthorityConnection.command_observe�  rr  rs  c              ƒ  óf   "  € ^ RI Hp V! V P                  V P                  V4      G Rj  x€L
 #  L5i)rø   ©Údiscover_commandsN©Úgateway.session_discoveryr{  rp   rw   ©r€   r#  rû   r{  s   &&& r   r²   Ú#AuthorityConnection.command_catalog‘  s%   é € Ý?Ù& t§~¡~°t·z±zÀ6ÓJ×JÐJÑJùó   ‚(1ª/«1c              ƒ  óf   "  € ^ RI Hp V! V P                  V P                  V4      G Rj  x€L
 #  L5i)rø   )Úlist_pluginsN)r}  r‚  rp   rw   )r€   r#  rû   r‚  s   &&& r   r´   Ú AuthorityConnection.plugins_list•  s%   é € Ý:Ù! $§.¡.°$·*±*¸fÓE×EÐEÑEùr€  c              ƒ  ój   "  € ^ RI Hp V! V P                  V P                  VRR7      G Rj  x€L
 #  L5i)rø   rz  T)Ú
completionNr|  r~  s   &&& r   r³   Ú%AuthorityConnection.slash_completions™  s(   é € Ý?Ù& t§~¡~°t·z±zÀ6ÐVZÔ[×[Ð[Ñ[ùó   ‚*3¬1­3c              ƒ  ój   "  € ^ RI Hp V! V P                  V P                  VRR7      G Rj  x€L
 #  L5i)rø   ©Ú	readinessF©ÚruntimeN©Úgateway.session_readinessrŠ  rp   rw   ©r€   r#  rû   rŠ  s   &&& r   rÉ   Ú AuthorityConnection.setup_status�  s'   é € Ý7Ù˜tŸ~™~¨t¯z©z¸6È5ÔQ×QÐQÑQùr‡  c              ƒ  ój   "  € ^ RI Hp V! V P                  V P                  VRR7      G Rj  x€L
 #  L5i)rø   r‰  Tr‹  Nr�  r�  s   &&& r   rÊ   Ú'AuthorityConnection.setup_runtime_check¡  s'   é € Ý7Ù˜tŸ~™~¨t¯z©z¸6È4ÔP×PÐPÑPùr‡  c              ƒ  óØ  "  € ^ RI Hp RV9   d   V! VP                  R4      4      MRpVf   V P                  VR4      G Rj  x€L
 # \	        V P
                  RR4      pVf&   \        P                  ! 4       ;qPP
                  n        T;_uu_4       GRj  x€L
  V P                  W$4      G Rj  x€L
 uuRRR4      GRj  x€L
  #  L‚ L1 L L  + GRj  x€L 
 '       g   i     R# ; i5i)rø   )Úvalidate_titleÚtitleNÚ_titled_create_lock)	Úgateway.session_local_titler”  ÚpopÚ_creater    rp   ÚasyncioÚLockr–  )r€   r#  rû   r”  r•  Úlocks   &&&   r   r°   ÚAuthorityConnection.create¥  s£   é € Ý>Ø7>À&Ô7H‘˜vŸz™z¨'Ó2Ô3ÈdˆØŠ=ØŸ™ f¨dÓ3×3Ð3ô �t—~‘~Ð'<¸dÓCˆØŠ<Ü8?¿º»ÐFˆD—>‘>Ô5ß—4’4ØŸ™ fÓ4×4÷ —4’4ñ 4ñ Ù4÷ —4—4“4üss   ‚A C*ÁCÁAC*ÂCÂC*ÂCÂ.C	Â/CÂ2C*Â?CÃ C*ÃC*Ã	CÃC*ÃC'	ÃCÃ
C'	ÃC'	Ã!	C*c              ƒ  ó²  a"  € ^ RI HpHp ^ RIHp ^ RIHpHp ^ RIH	p ^ RI
Hp	 ^ RIHp
 SP                  RR4      p\        V4      \         Jd   \#        R	RR
R7      hT;'       d!    V! V P$                  V P&                  VRR7      pV'       g�   VR8X  d†   \(        ;QJ d    V3R lV 4       F  '       g   K   RM	  RM! V3R lV 4       4      '       gF   V! V P$                  V P&                  SP+                  R4      4      '       d   SP-                  RR4       V'       EgŠ   RpRS9   d¼   ^ RIHp ^ RIHp SP-                  R\2        P4                  ! 4       P6                  4       V! V P$                  P8                  V P&                  P:                  SR,          4      pV P$                  P<                  P?                  V4      f!   \@        PB                  ! VSV4      G Rj  x€L
 pV! V P$                  V P&                  SVV PD                  \G        V PH                  RR4      R7      p\K        V\L        4      '       dl   TpV	! V P$                  \O        W P$                  P<                  V P$                  PP                  VR7      4      G Rj  x€L
  V! V P$                  VR,          4      pSP+                  R4      RJ db   ^ RIH)pH*p ^ RIH+p V! V! V P$                  P<                  VPX                  4      R,          4      p\@        PB                  ! VV4      G Rj  x€L
  V'       d0   V	! V P$                  \O        WpP$                  WÂ4      4      G Rj  x€L
  V'       dO   V	! V P$                  \O        V P$                  P<                  PZ                  VPX                  R4      4      G Rj  x€L
  V P]                  V/ 4      G Rj  x€L
 #  ELä EL? L± L| L( L5i)rø   )Ústage_local_sessionÚstaged_creation_follows)Úrestore_local_session)Úresolve_titled_sessionÚtitle_new_session)ÚBYPASS_FIELDS)Útracked_write)Úcommit_local_sessionÚhiddenFr   zmust be a booleanr   T©Ú
missing_okzBot Chatc              3   óJ   <"  € T F  pSP                  V4      R J x € K  	  R# 5i)TN)r]   )Ú.0Únamerû   s   & €r   Ú	<genexpr>Ú.AuthorityConnection._create.<locals>.<genexpr>À  s   øé € ÐOÁ¸˜FŸJ™J tÓ,°Õ4Ãùs   ƒ #Ú
request_idÚfollow_profile_configNÚskills)Úlocal_identity)Úrender_launch_skillsÚdesktop_local)Úskills_promptÚclient_localr´  )ÚepochrÎ   rI   Úaccept_hooks)Úaccept_launch_hooksÚrestore_policy)Úlocal_receiptÚpolicy)/Úgateway.session_localrŸ  r   Úgateway.session_local_recoveryr¡  r—  r¢  r£  Úgateway.session_policyr¤  Úgateway.session_runtime_workersr¥  Úhermes_state_localr¦  r˜  rC   r^   r   rp   rw   Úanyr]   Ú
setdefaultr²  r³  rt   ru   rv   r-   ÚsubjectÚdbÚget_sessionrš  Ú	to_threadry   r    rq   r!   r   r   r·  r¹  rº  r»  rI   Úset_session_hiddenrË   )r€   rû   r•  rŸ  r   r¡  r¢  r£  r¤  r¥  r¦  r§  r#  rµ  r²  r³  ÚsidrÎ   r¹  rº  r»  r¼  s   &f&                   r   r™  ÚAuthorityConnection._create²  sÛ  øé € ßVÝHßYÝ8ÝAÝ;ð —‘˜H eÓ,ˆÜ�‹<œtÓ#Ü#Ð$4¸HÐM`ÔaÐaØ×bÐbÑ.¨t¯~©~¸t¿z¹zÈ5Ð]aÔbˆß˜ Ô+ß›ÔOÁÓOŸŸšÔOÁÓO×OÒOÙ+¨D¯N©N¸D¿J¹JÈÏ
É
ÐS_ÓH`×aÒað ×ÑÐ5°tÔ<ßˆsØ ˆMØ˜6Ô!õ JÝGØ×!Ñ! ,´·
²
³×0@Ñ0@ÔAÙ$ T§^¡^×%>Ñ%>ÀÇ
Á
×@RÑ@RÐTZÐ[gÕThÓi�Ø—>‘>×$Ñ$×0Ñ0°Ó5Ò=Ü*1×*;Ò*;Ð<PÐRXÐZ]Ó*^×$^�Má% d§n¡n°d·j±jÀ&ÐXeØ37×3DÑ3DÜ4;¸D¿N¹NÈOÐ]bÓ4côeˆCô ˜#œt×$Ò$ð �Ù# D§N¡N´GØ(¯.©.×*;Ñ*;À4Ç>Á>×CWÑCWÐahô5jó k÷ kð ká+¨D¯N©N¸GÀLÕ<QÓR�à�z‰z˜.Ó)¨TÓ1ßVÝ<Ù'©°d·n±n×6GÑ6GÈÏÉÓ(XÐYaÕ(bÓc�Ü×'Ò'Ð(;¸VÓD×DÐDßÙ# D§N¡N´GÐ<MÏ~É~Ð_bÓ4jÓk×kÐkßÙ# D§N¡N´G¸D¿N¹N×<MÑ<M×<`Ñ<`Ðbe×bpÑbpÐrvÓ4wÓx×xÐxØ—[‘[  bÓ)×)Ð)ò- %_òkñ EákáxÙ)ùs¦   ƒA$OÁ((OÂOÂ#OÂ:OÃ2OÄOÄ&B?OÇ%O	Ç&B'OÊOÊBOÌOÌOÌ**OÍOÍOÍ!A	OÎ*OÎ+OÏOÏOÏOÏOÏOÏOÏOc              ƒ  ó†   "  € V P                   P                  '       g   \        R 4      hV'       d   \        R4      hRR/# 5i)Úpermission_deniedr   ÚpongT)rw   rf   r   ©r€   r#  rû   s   &&&r   r—   ÚAuthorityConnection.pingè  s:   é € Ø�z‰z×&×&Ð&Ü#Ð$7Ó8Ð8ßÜ#Ð$4Ó5Ð5Ø˜ˆ~Ðùs
   ‚/A²Ac              ƒ  ól  "  € V P                  W4      G R j  x€L
  ^ RIHpHp ^ RIHp RV P                  P                  RV P                  P                  RV P                  P                  R. RORR\        V4      R	\        VR
0,          4      /R\        P                  ! V4      G R j  x€L
 /#  L˜ L5i)N)ÚCREATE_FIELDSÚSURFACES)Úresolved_skinrh   r-   Úauthority_epochrf   Úsession_createÚsourcesÚ
parametersr•  Úskin)zdurable-admission-v1zevent-replay-v1zlocal-cli-create-v1zacp-editor-policy-v1zacp-session-mcp-v1)r—   r¿  rÑ  rÒ  Úgateway.session_skinrÓ  rp   rh   r-   r·  Úsortedrš  rÇ  )r€   r#  rû   rÑ  rÒ  rÓ  s   &&&   r   r±   ÚAuthorityConnection.describeï  s    é € Ø�i‰i˜Ó$×$Ð$ßBÝ6Ø˜tŸ~™~×9Ñ9¸<ÈÏÉ×IbÑIbØ! 4§>¡>×#7Ñ#7Øò  !QØ  9¬f°XÓ.>Ø#/´¸ÈÈ	Õ8QÓ1Rð#Tð œg×/Ò/°Ó>×>ð@ð 	@ñ 	%ñ ?ùs"   ‚B4—B0˜BB4Â*B2Â+B4Â2B4c              ƒ  óè   "  € ^ RI Hp \        V4      R08w  d   \        R4      hV P                  P                  V P                  V4      G Rj  x€L
  V! V P                  V4      G Rj  x€L
 #  L L5i)rø   ©Úsnapshot_inforI   r   N)Úgateway.session_local_inventoryrÞ  Úsetr   rp   Úresolverw   )r€   r#  rû   rÞ  s   &&& r   r¹   ÚAuthorityConnection.infoû  s\   é € ÝAÜˆv‹;˜<˜.Ô(Ü#Ð$4Ó5Ð5Ø�n‰n×$Ñ$ T§Z¡Z°Ó5×5Ð5Ù" 4§>¡>°3Ó7×7Ð7ñ 	6Ù7ùs$   ‚AA2ÁA.ÁA2Á)A0Á*A2Á0A2c              ƒ  ó’  "  € R V P                   P                  9  d   \        R4      hVP                  R^È4      p\	        V4      0 R!m,
          '       g%   \        V4      \        Jg   ^Tu;8:  d   ^È8:  g   M \        R4      hVP                  RR4      R"9  g   RV9   d   RV9   d   \        R4      hVP                  R4      R8X  dL   ^ R	IHp \        P                  ! W@P                  V P                   W2P                  RR
4      R7      G Rj  x€L
 # RV9   Ed¯   ^ RIHp V! V P                  V P                   VR,          RR7      pVf   R. RR/# V P                  P                  P                  VP                   4      ;'       g    / pV P                  P                  P                  V P                  P                  P#                  VR,          4      ;'       g    VP                   4      ;'       g    TpRRVP                   RVP                  R4      ;'       g    VP                   RVP                   RVP                  R4      ;'       g    RRVP                  R4      ;'       g    RRVP                  R4      RVP                  R4      RVP                  R^ 4      RVP                   V P                  P$                  9   /	.RR/# ^ RIHp	 ^ RIHp
 . pV
! V P                  V P                   4      G Rj  x€L
  EF!  pVP.                  pVP                  R4      V	9   gX   VP0                  '       gF   VP                  R4      '       g1   VP                  R4      '       g   VP                  R4      '       d   K  TP3                  RVP                   RVP                   RVP                  R4      ;'       g    RRVP                  R4      RVP                  R4      RVP                  R^ 4      RVP                  R4      RVP4                  P6                  R8H  /4       EK$  	  VP9                  R RR 7       RVRV RR/#  EL1 ELK5i)#re   rÌ  Úlimitr•  Úinclude_hiddenÚscoper   ÚliveÚstored)Ústored_picker_sessionsF)rä  rå  N©r¢  Tr¨  r
  rI   rú   Úresolved_idr3   Ú
root_titleÚsourceÚ
started_atÚmessage_countÚrunning)ÚINTERNAL_LISTING_SOURCES)Úlive_entriesr§  ÚarchivedÚmodelc                 ó(   € V R ,          ;'       g    ^ # )rî  rŽ   )rV   s   &r   Ú<lambda>Ú3AuthorityConnection.list_sessions.<locals>.<lambda>/  s   €  c¨,Õ&7×&<Ð&<¸1Ð&<r   )r$   Úreverse>   rä  ræ  r•  rå  >   rç  rè  )rw   rf   r   r]   rà  rC   r"   Úgateway.session_listingré  rš  rÇ  rp   r—  r¢  rÅ  rÆ  rI   Úresolve_session_by_titler
  Úhermes_state_sessionsrñ  Úgateway.session_live_listingrò  rV   ÚclosedÚappendÚhandleÚexecution_stateÚsort)r€   r#  rû   rä  ré  r¢  ÚfoundrV   Úrootrñ  rò  r
  Úentrys   &&&          r   r¸   Ú!AuthorityConnection.list_sessions  sº  é € Ø §¡×!8Ñ!8Ô8Ü#Ð$7Ó8Ð8Ø—
‘
˜7 CÓ(ˆÜˆv‹;ÒF×FÔFÌ$ÈuË+Ô]`ÓJ`ÐhiÐmrÖhyÐvyÖhyÜ#Ð$4Ó5Ð5Ø�:‰:�g˜vÓ&Ð.@Ô@ÀWÐPVÔEVÐ[bÐflÔ[lÜ#Ð$4Ó5Ð5Ø�:‰:�gÓ (Ô*ÝFÜ ×*Ò*Ð+AÇ>Á>ÐSW×S]ÑS]Ø¯J©JÐ7GÈÓ,OôQ÷ Qð Qà�fÕõ KÙ*¨4¯>©>¸4¿:¹:ÀvÈgÅÐcgÔhˆEØŠ}Ø" B¨°Ð:Ð:Ø—.‘.×#Ñ#×/Ñ/°×0@Ñ0@ÓA×GÐGÀRˆCØ—>‘>×$Ñ$×0Ñ0Ø—‘×!Ñ!×:Ñ:¸6À'½?ÓK×_Ð_Èu×O_ÑO_óa÷ hð hØdgð à ,°×0@Ñ0@À$ÈÏÉÐQUË×HjÐHjÐZ_×ZjÑZjØ"/°×1AÑ1AÀ7ÈCÏGÉGÐT[ÓL\×LbÐLbÐ`bØ".°·±¸Ó0A×0GÐ0GÀRÈÐSV×SZÑSZÐ[cÓSdØ".°·±¸Ó0EØ"1°3·7±7¸?ÈAÓ3NØ"+¨U×-=Ñ-=ÀÇÁ×AXÑAXÑ-Xð"Zð ![ð ˜Xð'ð 'õ 	CÝ=ØˆÙ'¨¯©¸¿
¹
ÓC×CÓCˆEØ—)‘)ˆCð �w‰w�xÓ Ð$<Ô<ÀÇÇÀØŸ
™
Ð#3×4Ò4¸#¿'¹'À(×:KÒ:KÈsÏwÉwÐWa×ObÒObÙØ�O‰O˜\¨5×+;Ñ+;¸TÀ5×CSÑCSÐU\Ð^a×^eÑ^eÐfmÓ^n×^tÐ^tÐrtØ% s§w¡w¨xÓ'8¸,ÈÏÉÐP\ÓH]Ø,¨c¯g©g°oÀqÓ.IÈ7ÐTW×T[ÑT[Ð\cÓTdØ&¨¯©×(DÑ(DÈ	Ñ(QðS÷ Tñ Dð 	�‰Ñ<ÀdˆÔKØ˜H V eÐ,¨g°vÐ>Ð>òIQò. Dùsj   ‚DQÄQÄA8QÆ
AQÇQÇ7(QÈ 0QÉQÉ,BQË9QË:;QÌ6QÍQÍ$QÍ;=QÎ9B	QÑQc              ƒ  ó4  "  € ^ RI Hp RV9   d>   ^ RIHp V! V P                  V P
                  VR,          VP                  R4      4      pEMÁRV9   d.   ^ RIHp V! V P                  V P
                  VR,          4      pEM�\        P                  ! RVP                  4      '       dJ   V P                  P                  P                  VP                  4      pVe   \        VP                  V4      p^ R	IHp ^ R
IHp ^ RIHp	 V! V P                  VP                  4      G Rj  x€L
  V P                  P                  P+                  VP                  4      p
V
'       d�   V
R,          V	\,        P.                  P0                  0,          9   da   T! V P                  V P
                  V P                  P                  P3                  VP                  4      ;'       g    VP                  4      pM!V
'       d   ^ RIHp V! V P                  V4      pVP                  R4      eH   T P                  P9                  V P
                  VR4       ^ RIHp V! V P                  WR,          4       RV9   dH   T P                  P9                  V P
                  VR4       ^ RIH p V! V P                  WR,          4       V P                  P9                  V P
                  VR4       RV P
                  PB                  9   d:   ^ RIH"p V! V P                  WP                  V PF                  9   R7      G Rj  x€L
  V P                  PI                  V P
                  V4      G Rj  x€L
 pVPJ                  V PF                  VP                  &   V PM                  V4       R\N        /pV P                  PP                  VPR                  PT                  P                  ,          PV                  pVe‘   VPX                  \,        P.                  8X  dr   ^ RIH-pH.p \^        P`                  ! VV! V P                  Pb                  V4      4      G Rj  x€L
  V! V P                  VPR                  PT                  4      G Rj  x€L
 p^ RI2H3p ^ RI4H5p \m        VPn                  4      / ppVP                  R4      '       dG   \q        V U
u. uF  p
\s        V
4      '       d   K  V
NK  	  up
V P                  P                  4      VR&   RVP                  RVP                  RV/VCR\u        V4      R VPR                  Pv                  R 8H  R!VPR                  Px                  R"VPz                  R#VP|                  R$VPJ                  R%VPR                  P~                  R&VPR                  P€                  R'VP‚                   Uu. uF  p\…        V4      NK  	  upR(\m        VP†                  4      R)VR*V! V P                  VP                  4      R+V! V4      /C#  ELÜ ELÖ EL« ELÈ ELœu up
i u upi 5i),rø   rÝ  Úlatest)Úresolve_latest_sessionÚ	workspacer•  rê  zlocal-[0-9a-f]{16}N)Úresolve_local_target)Úrefresh_settled)ÚLEGACY_LOCAL_SOURCESrí  )Úmessaging_owner_refÚeditorrn   )Úresume_editor_mcpÚapi_key)Úrebind_launch_keyre   )Úrefresh_resumed_policy)ÚattachedÚdesktop_protocol)Úpolicy_for_sourceÚrefresh_profile_hooks)Úpending_connection)Ú_todo_state_from_historyrX   Údisplay_messagesrI   Ústored_session_idÚmessagesrï  rð  rÔ  Úreplay_epochÚlast_sequenceÚsubscription_idr   r   ÚpendingÚpromptsr¹   r  Ú
todo_state)Drß  rÞ  r—  r  rp   rw   r]   r¢  ÚreÚ	fullmatchrI   rÅ  Úresolve_session_idr	   r-   rx   r
  Úgateway.session_policy_refreshr  Úhermes_state_local_migrationr  rÆ  r   ÚLOCALr%   Úget_compression_tipÚgateway.session_route_recoveryr  Ú	authorizeÚgateway.session_local_mcpr  r¿  r  rf   r  rz   Úattachr  Ú_spawn_noticer   r
  rÿ  r#  rí  Úplatformr  r  rš  rÇ  rŒ   rè   r  Útui_gateway.tool_progressr  ÚlistrU   rX   r`   rH   r   rÔ  r  r  r   r   r  r   r   )r€   r#  rû   rÞ  r  r¢  rë  r
  r  r  rV   r  r  r  r  Úsnapshotr¹   rí  r  r  r  r  rU   ÚdisplayÚrs   &&&                      r   rË   ÚAuthorityConnection.resume2  sŽ  é € ÝAØ�vÔõ KÙ(¨¯©¸¿¹ÀVÈHÕEUÐW]×WaÑWaÐbmÓWnÓoŠCØ˜ÔÝJÙ(¨¯©¸¿¹ÀVÈGÅ_ÓUŠCô �|Š|Ð1°3·>±>×BÒBØ"Ÿn™n×/Ñ/×BÑBÀ3Ç>Á>ÓR�ØÒ*Ü$ S§^¡^°[ÓA�CÝLÝFÝIá! $§.¡.°#·.±.ÓA×AÐAØ—.‘.×#Ñ#×/Ñ/°·±Ó?ˆC÷ �s˜8•}Ð(<ÄÇÁ×@TÑ@TÐ?UÕ(UÔUÙ*¨4¯>©>¸4¿:¹:Ø—N‘N×%Ñ%×9Ñ9¸#¿.¹.ÓI×[Ð[ÈSÏ^É^ó]‘çõ OÙ)¨$¯.©.¸#Ó>�Ø�:‰:�hÓÒ+Ø�N‰N×$Ñ$ T§Z¡Z°Ð6GÔHÝCÙ˜dŸn™n¨c¸(Õ3CÔDØ˜Ôà�N‰N×$Ñ$ T§Z¡Z°Ð6GÔHÝ@Ù˜dŸn™n¨c¸)Õ3DÔEð 	�‰× Ñ  §¡¨S°.ÔAØ §
¡
× 7Ñ 7Ô7õ NÙ(¨¯©¸Ç~Á~ÐY]×YkÑYkÑGkÔl×lÐlØŸ™×.Ñ.¨t¯z©z¸3Ó?×?ˆØ-5×-EÑ-Eˆ×Ñ˜3Ÿ>™>Ñ*Ø×Ñ˜3Ôð #Ô$>Ð?ˆØ—‘×(Ñ(¨¯©×)<Ñ)<×)GÑ)GÕH×OÑOˆØÒ &§/¡/´X·^±^Ô"CßWÜ×#Ò#Ð$9Ñ;LÈTÏ^É^×MbÑMbÐdjÓ;kÓl×lÐlÙ& t§~¡~°x·±×7JÑ7JÓK×KˆDÝBåFÜ × 0Ñ 0Ó1°2�ˆØ�:‰:Ð*×+Ò+ä*<Ù 'Ó?¡˜¬z¸#¯—�¡Ñ?ÀÇÁ×AZÑAZó+\ˆGÐ&Ñ'à˜cŸn™nÐ.AÀ3Ç>Á>Ø˜GðAØ'.ðAØ0?ÄÀWÃØ˜8Ÿ?™?×:Ñ:¸iÑGØ! 8§?¡?×#BÑ#BØ × 5Ñ 5°È×H^ÑH^Ø! 8×#;Ñ#;¸ZÈÏÉ×IaÑIaØ&¨¯©×(LÑ(LØ¨x×/?Ò/?Ó@Ñ/?¨!œF 1žIÑ/?Ñ@Øœ4 × 0Ñ 0Ó1°6¸4Ø$Ñ&8¸¿¹ÈÏÉÓ&Xð Ñ6°wÓ?ñAð 	Aòg Bò> mÚ?ò mÚKùò @ùò Aùs�   ‚B%XÂ(A;XÄ#W?Ä$:XÅA;XÇXÇ5D7XÌ,XÌ--XÍXÍC%XÑ XÑ.XÑ/XÑ0AXÒ7XÓXÓCXÖ*X(Ö>AXØXØXØXØXØ
Xc                ó  € ^ RI Hp \        P                  ! 4       P	                  V! V P
                  V4      4      pV P                  P                  R\        4       4      pVP                  V4       VP                  VP                  4       R# )zJLow-disk auto-prune question for this viewer, off the resume reply's path.)Úpublish_local_auto_prune_noticeÚ_notice_tasksN)Úgateway.run_housekeeping_diskr6  rš  Úget_running_loopÚcreate_taskrp   Ú__dict__rÃ  rà  rF   Úadd_done_callbackÚdiscard)r€   r#  r6  ÚtaskÚtaskss   &&   r   r-  Ú!AuthorityConnection._spawn_noticeŠ  sc   € åQÜ×'Ò'Ó)×5Ñ5Ñ6UÐVZ×VdÑVdÐfiÓ6jÓkˆØ—‘×(Ñ(¨¼#»%Ó@ˆØ�	‰	�$ŒØ×Ñ˜uŸ}™}Ö-r   c              ƒ  ó°  "  € \        V4      R 0,
          RR08w  d   \        R4      hVR,          pVR,          pVP                  R 4      p\        V\        4      '       d\   V'       dT   \        V\        4      '       d>   V'       d6   Ve=   \        V\        4      '       d   \
        P                  V4      '       g   \        R4      hRVRVRR/pV P                  P                  V4      V8w  d   V# V P                  P                  V P                  WER7      G Rj  x€L
  V P                  P                  V4      V8X  d   V P                  V RVR&   V#  L85i)	Ú
end_reasonrI   r  r   NÚdetachedF)rB  T)rà  r   r]   r!   r(   Ú_END_REASONr#  rz   rp   rÌ   rw   )r€   r#  rû   rI   r  rB  r  s   &&&    r   rÌ   ÚAuthorityConnection.detach’  s.  é € Üˆv‹;˜,˜Õ'¨LÐ:KÐ+LÔLÜ#Ð$4Ó5Ð5Ø˜LÕ)ˆ
Ø Ð!2Õ3ˆð —Z‘Z Ó-ˆ
Ü˜:¤s×+Ò+·:Ü! /´3×7Ò7¿ØÒ*Ü'¨
´C×8Ò8¼[×=RÑ=RÐS]×=^Ò=^Ü#Ð$4Ó5Ð5Ø 
Ð,=¸Ø˜eð%ˆà×Ñ×!Ñ! *Ó-°Ô@ØˆMØ�n‰n×#Ñ# D§J¡J°Ð#ÓW×WÐWØ×Ñ×!Ñ! *Ó-°Ô@Ø×"Ñ" :Ð.Ø!ˆˆzÑØˆñ	 	Xùs%   ‚A&EÁ)EÂ4EÂ<AEÄEÄ9Ec              ƒ  ó¼  "  € V P                   P                  V P                  VR 4       VP                  RVP                  R^ 4      4      pVP                  R4      p\	        V4      \
        Jg"   V^ 8  g   Ve"   \        V\        4      '       g   \        R4      hV P                   P                  VP                  ,          P                  P                  WC4      # 5i)re   r  Ú	last_seenr  r   )rp   r*  rw   r]   rC   r"   r!   r(   r   r
  rI   Úevent_streamÚsince)r€   r#  rû   Úsequencer·  s   &&&  r   rÒ   Ú AuthorityConnection.events_sinceª  s¤   é € Ø�‰× Ñ  §¡¨S°.ÔAØ—:‘:˜o¨v¯z©z¸+ÀqÓ/IÓJˆØ—
‘
˜>Ó*ˆÜ�‹>¤Ó$¨°1¬¸Ò9JÔS]Ð^cÔeh×SiÒSiÜ#Ð$4Ó5Ð5Ø�~‰~×&Ñ& s§~¡~Õ6×CÑC×IÑIÈ%ÓZÐZùs   ‚CCc              ƒ  óT  "  € V P                  W4      '       g    V P                  W4      G R j  x€L
 '       d   V P                  W4       RR/# V P                  P	                  V P
                  V P                  W4      V P                  RJ R7      G R j  x€L
 p\        V4      #  Lu L5i)NÚvoice_stoppedT)Úqueue_while_restarting)	Ú_voice_stop_replayÚ_typed_voice_stopÚ_record_voice_stoprp   rÍ   rw   Ú
submissionr|   r   )r€   r#  rû   rÎ   s   &&& r   rÍ   ÚAuthorityConnection.submit²  s—   é € Ø×"Ñ" 3×/Ò/¸×9OÑ9OÐPSÓ9\×3\Ö3\Ø×#Ñ# CÔ0Ø# TÐ*Ð*àŸ™×-Ñ-¨d¯j©j¸$¿/¹/È#Ó:VØEIÇ^Á^ÐW[ÐE[ð .ó ]÷ ]ˆä�g‹Ðñ 4]ñ]ùs'   ‚,B(®B$¯	B(¹AB(ÂB&ÂB(Â&B(c                óò   € VP                  R 4      ;'       g    VP                  R4      p\        V\        4      '       d	   V'       g   R# V P                  P                  VP
                  VP                  V3# )Úsubmission_idÚinput_idN)r]   r!   r(   rw   rÄ  r-   rI   )r€   r#  rû   r¯  s   &&& r   Ú_voice_stop_keyÚ#AuthorityConnection._voice_stop_key»  sT   € Ø—Z‘Z Ó0×JÐJ°F·J±J¸zÓ4Jˆ
Ü˜*¤c×*Ò*·*ÙØ—
‘
×"Ñ" C§N¡N°C·N±NÀJÐOÐOr   c                óô   € V P                  W4      pVe   V\        V P                  R/ 4      9  d   R# VP                  V P                  9  d   R# V P                  P                  V P                  VR4       R# )a  A retry of a stop this owner already consumed (its reply was lost; Ink offers Alt+K on the
same submission id). Voice is off by then, so the phrase check alone would admit ``stop`` as a
turn: the request identity answers it again, as an admission's replay would.Ú_consumed_voice_stopsFrl   T)rW  r    rp   rI   rz   r*  rw   )r€   r#  rû   r$   s   &&& r   rO  Ú&AuthorityConnection._voice_stop_replayÁ  se   € ð ×"Ñ" 3Ó/ˆØŠ;˜#¤W¨T¯^©^Ð=TÐVXÓ%YÔYÙØ�>‰> ×!3Ñ!3Ô3ÙØ�‰× Ñ  §¡¨SÐ2BÔCÙr   c                ó  € ^ RI Hp V P                  W4      pVf   R# V P                  P                  P                  RV! 4       4      pRWT&   VP                  V4       \        V4      R8”  d   VP                  RR7       K$  R# )rø   )ÚOrderedDictNrZ  Té   F)Úlast)	Úcollectionsr]  rW  rp   r;  rÃ  Úmove_to_endrH   Úpopitem)r€   r#  rû   r]  r$   Úconsumeds   &&&   r   rQ  Ú&AuthorityConnection._record_voice_stopÍ  ss   € Ý+Ø×"Ñ" 3Ó/ˆØŠ;ÙØ—>‘>×*Ñ*×5Ñ5Ð6MÉ{Ë}Ó]ˆØˆ‰Ø×Ñ˜SÔ!Ü�(‹m˜cÔ!Ø×Ñ %ÐÖ(ñ "r   c              ƒ  ó`  "  € VP                  R4      p\        V\        4      '       g   R# VP                  V P                  9  d   R# V P
                  P                  V P                  VR4       V P
                  P                  P                  VP                  4      p\        VRR4      pVe    VP                  \        P                  8w  d   R# ^ RIHp V! VP                  4      '       g   R# ^ RIHp \"        P$                  ! VP&                  W1P                  RR7      G Rj  x€L
 #  L5i)	a�  TUI-26: a bare stop phrase typed while the session's voice chat is on ends the chat
(the sidecar's ``methods_prompt._consume_typed_stop_phrase``, its typed twin of the spoken
stop) and is never admitted. Only a submitter attached to the session may end it, and only
on a LOCAL session: a messaging lane's own ``/voice`` mode belongs to that chat, so a
viewer's typed text there is admitted untouched.r.   Frl   rí  N)Úlocal_voice_enabledrN   )Úemit)r]   r!   r(   rI   rz   rp   r*  rw   r
  r    r.  r   r'  rØ   rf  rS   rO   rš  rÇ  Ú_consume_typed_stop_phrase)r€   r#  rû   r.   rç  rí  rf  rO   s   &&&     r   rP  Ú%AuthorityConnection._typed_voice_stopØ  sØ   é € ð �z‰z˜&Ó!ˆÜ˜$¤×$Ò$ÙØ�>‰> ×!3Ñ!3Ô3ÙØ�‰× Ñ  §¡¨SÐ2BÔCØ�~‰~×&Ñ&×*Ñ*¨3¯>©>Ó:ˆÜ˜˜x¨Ó.ˆØŠ>˜VŸ_™_´·±Ô>ÙÝ>Ù" 3§>¡>×2Ò2ÙÝ&Ü×&Ò& v×'HÑ'HÈ$×P^ÑP^ÐejÔk×kÐkÑkùs   ‚C,D.Ã/8D.Ä'D,Ä(D.c                ó  € VP                   V P                  9  d   \        R4      h\        V4      0 Rm,
          pV'       d   \        R4      hVP	                  R4      ;'       g    VP	                  R4      p\        V\        4      '       d	   V'       g   \        R4      h^ RIHp ^ RI	H
p ^ R	IHp ^ R
IHp RVP	                  R4      /V! W V3R7      CV! V4      CV! V4      CV! V4      Cp	RV9   d   VR,          V	R&   \        WAV	R4      # )zZThe admission a ``prompt.submit``-shaped request asks for (``prompt.replace_queued`` too).rÌ  r.   rU  rV  Úattachmentsr   )Úadmit_finite)Úsubmit_display_fields)Úsubmit_surface_fields)Úsubmit_cli_turn_fields)Ú	submitterÚqueue>   r.   ÚfiniteÚqueuedÚsurfaceÚapi_textrV  rI   Ú
unattendedÚ
voice_turnrk  ÚinterruptedÚturn_authorÚdisplay_kindÚclarify_batchrU  Útitle_previewÚvoice_contextÚmodel_override)rI   rz   r   rà  r]   r!   r(   Úgateway.session_finiterl  Úgateway.session_displayrm  Úgateway.session_surfacern  Úgateway.session_cli_turnro  r
   )
r€   r#  rû   Ú	forbiddenr¯  rl  rm  rn  ro  Úpayloads
   &&&       r   rR  ÚAuthorityConnection.submissionî  s  € à�>‰> ×!3Ñ!3Ô3Ü#Ð$7Ó8Ð8Ü˜“Kò #aõ aˆ	÷ Ü#Ð$4Ó5Ð5Ø—Z‘Z Ó0×JÐJ°F·J±J¸zÓ4Jˆ
Ü˜*¤c×*Ò*·*Ü#Ð$4Ó5Ð5Ý7ÝAÝAÝCØ˜6Ÿ:™: fÓ-ð V±¸fÐWZÐP[Ô1\ð VÑ`uÐv|Ó`}ð VÙ*¨6Ó2ðVÙ6LÈVÓ6TðVˆà˜FÔ"Ø%+¨MÕ%:ˆG�MÑ"Ü˜*¨7°GÓ<Ð<r   c              ƒ  ó   "  € ^ RI Hp ^ RIHpHp  V! V P
                  V P                  W4      G Rj  x€L
 p\!        T\"        4      '       d   TP%                  R4      MRp	T	'       d?   Y�P&                  9  d/   T P)                  \+        TP,                  T	4      / 4      G Rj  x€L
  T#  Lu  T d   pT! T4      ThRp?i\         d�   pTP                  R9   dj   \        P                  ! T P
                  P                  P                  TP                  4      G Rj  x€L 
 pTe   TR,          TR,          uTn        Tn        h Rp?ii ; i L©5i)rø   )Úmutate_session)ÚMUTATION_GUARD_REFUSALSÚbusy_refusalNÚruntime_revisionÚruntime_generationÚbranched_session_id>   Ústale_generationÚrevision_conflict)Úgateway.session_mutationsr‡  Úhermes_state_mutation_guardsrˆ  r‰  rp   rw   r   r   rš  rÇ  rÅ  rÆ  rI   r   r   r!   r   r]   rz   rË   r	   r-   )
r€   r#  rû   r‡  rˆ  r‰  r  r   rV   Úchilds
   &&&       r   rº   ÚAuthorityConnection.mutate  s  é € Ý<ßVð	Ù)¨$¯.©.¸$¿*¹*ÀcÓR×RˆFô 6@ÀÌ×5MÒ5M�—
‘
Ð0Ô1ÐSWˆß�U×"4Ñ"4Ô4Ø—+‘+œj¨¯©¸Ó?ÀÓD×DÐDØˆñ# SøØ&ô 	-ñ ˜sÓ#¨Ð,ûÜ ô 	Ø�z‰zÐFÔFä#×-Ò-¨d¯n©n×.?Ñ.?×.KÑ.KÈSÏ^É^Ó\×\Ð\�Ø’?Ø=@ÐASÕ=TÐVYÐZnÕVoÐ:�C”L #Ô":Øûð	úñ Eùsh   ‚E’!B+ ³B)´B+ ¸0EÁ)9EÂ"EÂ#EÂ)B+ Â+E	Â2	B;Â;E	ÃE	Ã	AEÄDÄ'EÅE	Å	Ec              ƒ  ó¤  "  € V P                   P                  V P                  WP                  R 4      4      G Rj  x€L
 p\	        V4      pVP                  R4      RJ dm   VP
                  R8X  d\   ^ RIHp V! V P                   P                  VP                  4      pVe+   VR,          VR&   VP                  R4      ;'       g    / VR&   V#  L’5i)Úadmission_idNÚinclude_resultTÚterminal)Úadmission_resultr  Úusage)
rp   rÎ   rw   r]   r   r@  Úgateway.session_resultsr—  rÅ  r”  )r€   r#  rû   rÎ   Úoutr—  Úsaveds   &&&    r   rÎ   ÚAuthorityConnection.receipt  s«   é € ØŸ™×.Ñ.¨t¯z©z¸3Ç
Á
È>Ó@ZÓ[×[ˆÜ�W‹oˆØ�:‰:Ð&Ó'¨4Ó/°G·N±NÀjÔ4Põ AÙ$ T§^¡^×%6Ñ%6¸×8LÑ8LÓMˆEØÒ Ø % h¥��H‘Ø$Ÿy™y¨Ó1×7Ð7°R��G‘Øˆ
ñ \ùs   ‚9C»C¼B	CÃ	Cc              ƒ  ó@  "  € VP                  R 4      pV P                  P                  V P                  W4      G Rj  x€L
 P                  R8w  d8   \        V P                  P                  V P                  W4      G Rj  x€L
 4      # V P                  P                  V P                  W4      G Rj  x€L
 pVe$   V P                  VRVR,          /4      G Rj  x€L
  \        V P                  P                  V P                  W4      G Rj  x€L
 4      #  LÖ L– Lf LA L5i)r”  Nrs  r   Ú
generation)	r]   rp   rÎ   rw   r@  r   Úcancel_queuedÚcancel_or_claimedrÑ   )r€   r#  rû   r”  rV   s   &&&  r   rÏ   ÚAuthorityConnection.cancel)  sØ   é € Ø—z‘z .Ó1ˆØ—.‘.×(Ñ(¨¯©°SÓG×G×OÑOÐS[Ô[Ü §¡× <Ñ <¸T¿Z¹ZÈÓ [×[Ó\Ð\ð —N‘N×4Ñ4°T·Z±ZÀÓS×SˆØŠ?Ø—.‘. Ð'=¸sÀ<Õ?PÐ&QÓR×RÐRÜ˜DŸN™N×2Ñ2°4·:±:¸sÓQ×QÓRÐRñ HÙ[ñ TáRÙQùsX   ‚;D½D¾ADÁ?DÂ 1DÂ1DÂ2&DÃDÃ2DÄDÄ	DÄDÄDÄDÄDc           	   ƒ  óÔ   "  € \        V4      0 Rm8w  d   \        R4      h\        V P                  P	                  V P
                  WR,          VR,          4      G Rj  x€L
 4      #  L5i)rI   r”  r   r   N>   rI   r”  r   )rà  r   r   rp   rÐ   rw   rÎ  s   &&&r   rÐ   Ú#AuthorityConnection.resolve_unknown4  sa   é € Üˆv‹;ÒPÔPÜ#Ð$4Ó5Ð5Ü˜DŸN™N×:Ñ:Ø�J‰J˜ NÕ3°VÐ<RÕ5SóU÷ Uó Vð 	Vñ Uùs   ‚AA(ÁA&Á	A(c           	   ƒ  óT  "  € ^ RI Hp V! V P                  V P                  WP	                  R4      4      '       d%   \        V P                  P                  V4      4      # \        V P                  P                  V P                  WP	                  R4      4      G Rj  x€L
 4      #  L5i)rø   )Úinterrupt_managedr   N)Úgateway.session_managed_workerr¥  rp   rw   r]   r   Ú_handlerÑ   )r€   r#  rû   r¥  s   &&& r   rÑ   ÚAuthorityConnection.interrupt:  ss   é € ÝDÙ˜TŸ^™^¨T¯Z©Z¸¿j¹jÐI_Ó>`×aÒaÜ˜$Ÿ.™.×0Ñ0°Ó5Ó6Ð6Ü˜DŸN™N×4Ñ4°T·Z±ZÀÇjÁjÐQgÓFhÓi×iÓjÐjÑiùs   ‚BB(ÂB&Â	B(c                ó¼   a a€ ^ RI HoHp VV 3R lpV! WR7      '       g<   ^ RIpVP                  ! \
        4      P                  RVP                  R4      4       R# R# )rø   )Ú
may_settlerá  c                 ó@   <€ S! SP                   SP                  W4      # )N)rp   rw   )rI   r~   rª  r€   s   &&€€r   ÚentitledÚ7AuthorityConnection._resolve_response.<locals>.entitledC  s   ø€ á˜dŸn™n¨d¯j©j¸*ÓMÐMr   )Ú
session_okNz2dropping response for unknown server request id=%rrú   )r  rª  rá  ÚloggingÚ	getLoggerrD   r7   r]   )r€   Úframerá  r¬  r¯  rª  s   f&   @r   r  Ú%AuthorityConnection._resolve_response@  sJ   ù€ ßGö	Nñ �u×2Ó2ÛØ×ÒœhÓ'×-Ñ-Ð.bÐdi×dmÑdmÐnrÓdsÖtñ 3r   c           	   ƒ  óÖ   "  € \        V4      0 Rm8w  d   \        R4      hV P                  P                  V P                  WR,          VR,          RVR,          /4      G Rj  x€L
 #  L5i)rI   r   Ú	prompt_idÚchoicer   N>   rµ  r´  rI   r   ©rà  r   rp   rÓ   rw   rÎ  s   &&&r   rÓ   ÚAuthorityConnection.respondJ  sf   é € Üˆv‹;ÒWÔWÜ#Ð$4Ó5Ð5Ø—^‘^×+Ñ+¨D¯J©J¸ÐDZÕ=[Ø,2°;Õ,?À(ÈFÐS[ÕL\ÐA]ó_÷ _ð 	_ñ _ùs   ‚A A)Á"A'Á#A)c           	   ƒ  óÚ   "  € \        V4      0 Rm8w  d   \        R4      hV P                  P                  V P                  WR,          VR,          RVR,          /RR7      G Rj  x€L
 #  L5i)	rI   r   r´  Úanswerr   Úclarify)ÚkindN>   r¹  r´  rI   r   r¶  rÎ  s   &&&r   rÔ   Ú#AuthorityConnection.respond_clarifyP  sl   é € Üˆv‹;ÒWÔWÜ#Ð$4Ó5Ð5Ø—^‘^×+Ñ+¨D¯J©J¸ÐDZÕ=[Ø�;Õ (¨F°8Õ,<Ð!=ÀIð ,ó O÷ Oð 	Oñ Oùs   ‚A"A+Á$A)Á%A+c              ƒ  óö  "  € V P                   P                  4        F  pVP                  4       G R j  x€L
  K  	  V P                   P                  4        ^ RIHp V! V 4       \        V P                  P                  4       4       Fp  w  r4V P                  P                  P                  V4      pVf   K0  WEP                  9   g   KB  V P                  P                  V P                  V4      G R j  x€L
  Kr  	  ^ RIHp V! V P                  V P                  4       V P                  P                  4        V P                  P"                  P%                  V P                  P&                  R 4       R #  ELA L„5i)N)Úforget)Úunbind_native_transport)r}   ÚvaluesÚcloseÚclearrÞ   r¾  r0  rz   r  rp   r
  r]   ÚsubscribersrÌ   rw   rx   r¿  r~   r˜  r   )r€   r‘   r¾  rI   Úsubscriptionrç  r¿  s   &      r   rÁ  ÚAuthorityConnection.closeV  s  é € Ø—~‘~×,Ñ,Ö.ˆGØ—-‘-“/×!Ò!ñ /à�‰×ÑÔÝ6ÙˆtŒô )-¨T×-?Ñ-?×-EÑ-EÓ-GÖ(HÑ$ˆJØ—>‘>×*Ñ*×.Ñ.¨zÓ:ˆDØÔ L×4DÑ4DÖ$DØ—n‘n×+Ñ+¨D¯J©J¸ÓE×EÒEñ )Iõ 	LÙ §¡°·
±
Ô;Ø×Ñ× Ñ Ô"Ø�‰×Ñ×!Ñ! $§*¡*×"9Ñ"9¸4Ö@ò "ñ Fùs/   ‚1E9³E4´A>E9Â7E9Ã	)E9Ã2E7Ã3BE9Å7E9)r{   r|   r}   rw   rp   ry   rz   rq   N);rD   Ú
__module__Ú__qualname__Ú__firstlineno__r‚   Úpropertyr‡   r“   r¥   r  rÀ   rÁ   rÅ   rÂ   rÃ   rÄ   r½   r¾   r¿   r»   r¼   rÆ   rÇ   rÈ   r¶   r·   rµ   r²   r´   r³   rÉ   rÊ   r°   r™  r—   r±   r¹   r¸   rË   r-  rÌ   rÒ   rÍ   rW  rO  rQ  rP  rR  rº   rÎ   rÏ   rÐ   rÑ   r  rÓ   rÔ   rÁ  Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r   rb   rb   q   sC  ø‡ € ð>À5ô >ð6 ñ=ó ð=ò
4ò.AòF^lò@+ò,ò2ò1ò1ò1ò7ò7ò6ò+ò*òMòJòLò8òGò8òKòFò\òRòQò5ò4*òlò
@ò8ò.?ò`VAòp.òò0[òòPò
ò	)òlò,=ò,ò.ò	SòVòkòuò_òO÷Að Ar   rb   >   r™   r˜   rŸ   r�   rª   rž   r–   rœ   rš   r›   r¤   r£   r¡   úprompt.steer_queuedr¢   úprompt.replace_queuedr    ))Ú__doc__rš  r¯  r"  Údataclassesr   rà   r   Úpathlibr   r>   rt   Úgateway.configr   Úgateway.session_contractr   r   r	   r
   rÞ   r   Úhermes_constantsr   Úhermes_state_runtimer   r°  rD   r5   r&   r/   r<   rà  rE   rL   ÚcompilerD  rr   r  rX   r`   rb   rŽ   r   r   Ú<module>r×     sž   ðÙ VÛ Û Û 	Ý Ý Ý Û Û å #ß bÓ bÝ 5Ý 2Ý 2à	×	Ò	˜8Ó	$€õ
õ 4õ"ñ& “eÐ õPð" �jŠjÐ-Ó.€áò Fó GÐ òHò^÷tAó tAr   