@danhachuel/thunderbolt 0.3.85 → 0.3.87

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -317,5 +317,8 @@ def media_cards_for_pool(settings: Mapping[str, Any], pool: str) -> list[dict[st
317
317
  active_key = MEDIA_IMAGE_ACTIVE_CARD_KEY if pool == "image" else MEDIA_VIDEO_ACTIVE_CARD_KEY if pool == "video" else ""
318
318
  active_id = str(migrated.get(active_key) or "")
319
319
  cards = [dict(item) for item in migrated.get(MEDIA_CARDS_KEY, []) if item.get("enabled", True) and item.get(capability)]
320
- cards.sort(key=lambda card: (0 if str(card.get("id")) == active_id else 1, int(card.get("priority", 0))))
320
+ # A prioridade é o contrato principal do failover. O cartão activo legado
321
+ # só serve de desempate entre cartões com a mesma prioridade, para não
322
+ # ignorar uma escolha explícita do utilizador por causa de estado antigo.
323
+ cards.sort(key=lambda card: (int(card.get("priority", 0)), 0 if str(card.get("id")) == active_id else 1))
321
324
  return cards
@@ -1332,6 +1332,17 @@ def _run_task(task: dict[str, Any]) -> dict[str, Any]:
1332
1332
  if isinstance(stored_upload, dict) and stored_upload:
1333
1333
  return _update(task_id, stage="upload", state="done", progress=100, artifacts=artifacts, video_ready=True, error=None)
1334
1334
 
1335
+ configured_account_id = str(channel.get("google_account_id") or "").strip()
1336
+ configured_upload_post = bool(settings.get("upload_post_enabled", False)) and bool(settings.get("upload_post_auto_upload", False))
1337
+ configured_postiz = bool(settings.get("postiz_enabled", False)) and bool(settings.get("postiz_auto_publish", False))
1338
+ if not (configured_account_id or configured_upload_post or configured_postiz):
1339
+ artifacts["upload"] = {
1340
+ "route": "local",
1341
+ "status": "skipped",
1342
+ "reason": "Nenhuma rota de publicação foi configurada para esta tarefa; os artefactos foram concluídos localmente.",
1343
+ }
1344
+ return _update(task_id, stage="upload", state="done", progress=100, artifacts=artifacts, video_ready=True, error=None)
1345
+
1335
1346
  _update(task_id, stage="upload", state="doing", progress=max(94, int(task.get("progress") or 0)), error=None)
1336
1347
  result = upload_with_default_route(
1337
1348
  settings,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@danhachuel/thunderbolt",
3
- "version": "0.3.85",
3
+ "version": "0.3.87",
4
4
  "description": "Thunderbolt — interface local para operação de canais faceless e motor MoneyPrinterTurbo",
5
5
  "license": "MIT",
6
6
  "main": "scripts/cli.mjs",