Skip to main content

Dépannage#

"tgcloud login" requires an interactive terminal#

La CLI veut un TTY. Utilisez login_bot : il envoie le jeton sur stdin avec TGCLOUD_ASSUME_TTY=1. En CI : TGCLOUD_TOKEN='app...'.

Token format looks wrong. Expected "app<id>:<secret>"#

C’était le jeton Bot API. Il faut le jeton d’accès CLI : @BotFather → bot → Serverless → CLI Access.

Could not reach the tgcloud server#

cloud.telegram.org est injoignable. Vérifiez le réseau et le proxy, et dirigez la CLI via TGCLOUD_CLI vers une enveloppe avec HTTPS_PROXY et NODE_USE_ENV_PROXY=1.

This bot already has N deployed modules (revision R)#

Le nuage et le projet ont divergé : fetch → diff → push (ou, en connaissance de cause, push { force: true, confirm: true }).

non-interactive session — specify --safe, --yes, or --dry-run#

Utilisez migrate. Le défaut est --dry-run. Appliquer exige dry_run: false et confirm: true. apply: "safe" correspond à --safe (les suppressions en avertissement sont sautées). apply: "yes" correspond à --yes (ces suppressions sont appliquées, les changements de type manuels non).

Les commandes refusent un projet dont schema.js est à la racine#

C’est la disposition d’avant la CLI 0.2.0. upgrade avec dry_run: true, puis upgrade { dry_run: false, confirm: true }.

chat not found dans run_handler#

Attendu avec un identifiant de chat fictif : les écritures en base réussissent, seul l’envoi réel vers Telegram échoue. La logique du handler s’exécute quand même.

Aucun log d’un bot déployé#

Aucune commande ne télécharge les logs d’un bot déployé. tgcloud run (run_handler) capture console.*, mais il exécute vos fichiers locaux sur la plateforme sans déployer — ce n’est pas la sortie du bot déployé. Pour diagnostiquer un échec après déploiement, lisez webhook_status (tgcloud webhook) : la dernière erreur de livraison et l’état de synchronisation sont les premiers indices. Reproduisez ensuite le chemin avec run_handler.

La Mini App montre un ancien front#

push ne lance pas le bundler. Appelez deploy, ou construisez puis poussez. immutable dans tgcloud.jsonc met en cache les fichiers correspondants pendant un an — seulement pour les chemins au contenu haché, par exemple /assets/*.