§
    üøJj9  ã                  ó*   — d Z ddlmZ ddlmZ d
d„Zd	S )zž``hermes update`` subcommand parser.

Extracted verbatim from ``hermes_cli/main.py:main()`` (god-file Phase 2).
Handler injected to avoid importing ``main``.
é    )Úannotations)ÚCallableÚ
cmd_updater   ÚreturnÚNonec               óô  — |                       ddd¬¦  «        }|                     dddd¬	¦  «         |                     d
ddd¬	¦  «         |                     dddd¬	¦  «         |                     dddd¬	¦  «         |                     ddddd¬	¦  «         |                     dddd¬¦  «         |                     dddd¬	¦  «         |                     dddd¬	¦  «         |                     |¬¦  «         dS )z3Attach the ``update`` subcommand to ``subparsers``.Úupdatez)Update Hermes Agent to the latest versionz;Pull the latest changes from git and reinstall dependencies)ÚhelpÚdescriptionz	--gatewayÚ
store_trueFzZGateway mode: use file-based IPC for prompts instead of stdin (used internally by /update))ÚactionÚdefaultr
   z--checkz@Check whether an update is available without installing anythingz--no-backupzMSkip the pre-update backup for this run (overrides updates.pre_update_backup)z--backupzbForce a pre-update backup for this run (off by default; overrides updates.pre_update_backup=false)z--yesz-yz‘Assume yes for interactive prompts (config migration, stash restore). API-key entry is skipped; run 'hermes config migrate' separately for those.z--branchNÚNAMEzÃUpdate against this branch instead of the default (main). If the local checkout is on a different branch, hermes will switch to the requested branch first (auto-stashing any uncommitted changes).)r   Úmetavarr
   z--forcezõWindows: proceed with the update even when another hermes.exe is detected. The concurrent process will likely cause WinError 32 warnings and may leave a reboot-deferred .exe replacement. Does NOT bypass the venv-process guard (see --force-venv).z--force-venva>  Windows: mutate the venv even while other processes are running from its interpreter (desktop backend, gateway, terminals). Those processes keep native .pyd files locked, so the dependency sync will likely fail partway and strand the install half-updated. Use only if you know the detected holders are false positives.)Úfunc)Ú
add_parserÚadd_argumentÚset_defaults)Ú
subparsersr   Úupdate_parsers      úC/home/rurouni/.hermes/hermes-agent/hermes_cli/subcommands/update.pyÚbuild_update_parserr      s¬  € ð
 ×)Ò)ØØ8ØQð *ñ ô €Mð
 ×ÒØØØØið	 ñ ô ð ð ×ÒØØØØOð	 ñ ô ð ð ×ÒØØØØ\ð	 ñ ô ð ð ×ÒØØØØqð	 ñ ô ð ð ×ÒØØØØð að ñ ô ð ð ×ÒØØØð$ð ñ 
ô 
ð 
ð ×ÒØØØð Eð	 ñ ô ð ð ×ÒØØØð Nð	 ñ ô ð ð ×Ò JÐÑ/Ô/Ð/Ð/Ð/ó    N)r   r   r   r   )Ú__doc__Ú
__future__r   Útypingr   r   © r   r   ú<module>r      sY   ððð ð #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð ð@0ð @0ð @0ð @0ð @0ð @0r   