Files
openclaw_openclaw/extensions
hnshah c7f021f70f
CI Bun / build-bun-artifacts (push) Has been cancelled
CI Bun / bun-checks (OPENCLAW_TEST_ISOLATE=1 bunx vitest run --config vitest.unit.config.ts --shard 1/2, 2, 1) (push) Has been cancelled
CI Bun / bun-checks (OPENCLAW_TEST_ISOLATE=1 bunx vitest run --config vitest.unit.config.ts --shard 2/2, 2, 2) (push) Has been cancelled
CI / scope (push) Has been cancelled
CI / security-fast (push) Has been cancelled
CI / build-artifacts (push) Has been cancelled
CI / release-check (push) Has been cancelled
CI / checks-fast (pnpm test:contracts pnpm protocol:check , node, contracts-protocol) (push) Has been cancelled
CI / checks-fast (pnpm test:extensions, node, extensions) (push) Has been cancelled
CI / checks (node22, pnpm build pnpm ui:build node openclaw.mjs --help node openclaw.mjs status --json --timeout 1 pnpm test:build:singleton node scripts/stage-bundled-plugin-runtime-deps.mjs node --import tsx scripts/release-check.ts , 22.x, node, compat-n… (push) Has been cancelled
CI / checks (pnpm test, node, 4, 1, test) (push) Has been cancelled
CI / checks (pnpm test, node, 4, 2, test) (push) Has been cancelled
CI / checks (pnpm test, node, 4, 3, test) (push) Has been cancelled
CI / checks (pnpm test, node, 4, 4, test) (push) Has been cancelled
CI / checks (pnpm test:channels, node, 3, 1, channels) (push) Has been cancelled
CI / checks (pnpm test:channels, node, 3, 2, channels) (push) Has been cancelled
CI / checks (pnpm test:channels, node, 3, 3, channels) (push) Has been cancelled
CI / extension-fast (push) Has been cancelled
CI / check (push) Has been cancelled
CI / check-additional (push) Has been cancelled
CI / build-smoke (push) Has been cancelled
CI / check-docs (push) Has been cancelled
CI / skills-python (push) Has been cancelled
CI / checks-windows (pnpm test, node, 9, 1, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 9, 2, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 9, 3, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 9, 4, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 9, 5, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 9, 6, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 9, 7, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 9, 8, test) (push) Has been cancelled
CI / checks-windows (pnpm test, node, 9, 9, test) (push) Has been cancelled
CI / macos (push) Has been cancelled
CI / android (./gradlew --no-daemon :app:assemblePlayDebug, build-play) (push) Has been cancelled
CI / android (./gradlew --no-daemon :app:assembleThirdPartyDebug, build-third-party) (push) Has been cancelled
CI / android (./gradlew --no-daemon :app:testPlayDebugUnitTest, test-play) (push) Has been cancelled
CI / android (./gradlew --no-daemon :app:testThirdPartyDebugUnitTest, test-third-party) (push) Has been cancelled
Docker Release / validate_manual_backfill (push) Has been cancelled
Docker Release / approve_manual_backfill (push) Has been cancelled
Docker Release / build-amd64 (push) Has been cancelled
Docker Release / build-arm64 (push) Has been cancelled
Docker Release / create-manifest (push) Has been cancelled
Install Smoke / docs-scope (push) Has been cancelled
Install Smoke / changed-smoke (push) Has been cancelled
Install Smoke / install-smoke (push) Has been cancelled
Plugin NPM Release / preview_plugins_npm (push) Has been cancelled
Plugin NPM Release / preview_plugin_pack (push) Has been cancelled
Plugin NPM Release / publish_plugins_npm (push) Has been cancelled
Workflow Sanity / no-tabs (push) Has been cancelled
Workflow Sanity / actionlint (push) Has been cancelled
Workflow Sanity / generated-doc-baselines (push) Has been cancelled
Stale / stale (push) Has been cancelled
Stale / lock-closed-issues (push) Has been cancelled
fix: preflight invalid telegram photos (#52545) (thanks @hnshah)
* fix(telegram): validate photo dimensions before sendPhoto

Prevents PHOTO_INVALID_DIMENSIONS errors by checking image dimensions
against Telegram Bot API requirements before calling sendPhoto.

If dimensions exceed limits (width + height > 10,000px), automatically
falls back to sending as document instead of crashing with 400 error.

Tested in production (openclaw 2026.3.13) where this error occurred:
  [telegram] tool reply failed: GrammyError: Call to 'sendPhoto' failed!
  (400: Bad Request: PHOTO_INVALID_DIMENSIONS)

Uses existing sharp dependency to read image metadata. Gracefully
degrades if sharp fails (lets Telegram handle validation, backward
compatible behavior).

Closes: #XXXXX (will reference OpenClaw issue if one exists)

* fix(telegram): validate photo aspect ratio

* refactor: use shared telegram image metadata

* fix: fail closed on telegram image metadata

* fix: preflight invalid telegram photos (#52545) (thanks @hnshah)

---------

Co-authored-by: Bob Shah <bobshah@Macs-Mac-Studio.local>
Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-03-25 12:00:20 +05:30
..
2026-03-25 00:20:24 +00:00
2026-03-22 11:58:33 -07:00
2026-03-22 11:58:33 -07:00
2026-03-25 04:25:02 +00:00
2026-03-22 11:58:33 -07:00
2026-03-22 11:58:33 -07:00
2026-03-22 11:58:33 -07:00
2026-03-22 11:58:33 -07:00
2026-03-25 04:25:02 +00:00
2026-03-22 17:51:29 -07:00