feat(telegram): offer BotFather web app flow next to the chat flow in onboarding#100540
Conversation
|
Codex review: needs real behavior proof before merge. Reviewed July 5, 2026, 10:07 PM ET / 02:07 UTC. Summary PR surface: Source +6, Docs +6. Total +12 across 5 files. Reproducibility: not applicable. this is a docs/onboarding-copy enhancement rather than a bug. Current main source inspection does show the requested web app pointer is absent from the Telegram setup help and quick setup docs. Review metrics: none identified. Root-cause cluster Members:
Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Proof guidance:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Merge the narrow setup-copy/docs update after a real onboarding-output proof or maintainer proof override, while leaving full managed-bot auto-provisioning as a separate product decision under #100538. Do we have a high-confidence way to reproduce the issue? Not applicable: this is a docs/onboarding-copy enhancement rather than a bug. Current main source inspection does show the requested web app pointer is absent from the Telegram setup help and quick setup docs. Is this the best way to solve the issue? Yes, with proof still needed: adding one owner-local wizard help line plus matching docs copy is the narrowest maintainable solution for discoverability. The heavier managed-bot provisioning alternative belongs in a separate product decision because it changes token custody and setup shape. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against d095f4755339. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source +6, Docs +6. Total +12 across 5 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
* origin/main: (1287 commits) fix(android): block loopback canvas navigation (openclaw#99874) fix(hooks): suppress unhandled stdout/stderr stream errors in gmail watcher (openclaw#100519) fix(memory-core): guard qmd mcporter JSON.parse against non-JSON stdout (openclaw#98381) fix(build): fall back to tsx for build TypeScript scripts (openclaw#91262) feat(skills): suggest saving detected reusable workflows by default (openclaw#95477) (openclaw#100692) docs(changelog): remove generated release-note entries feat(telegram): offer BotFather web app flow in setup help and docs (openclaw#100540) fix(ios): unify Talk and Settings row typography on one branded detail row (openclaw#100515) feat(gateway): add persisted crash-loop breaker and fatal-config exit contract refactor(macos): lock and unify PortGuardian tunnel record persistence so concurrent app instances cannot lose orphan records (openclaw#100601) fix: stop reconnecting on protocol mismatch (openclaw#98414) fix(maint): reuse recent hosted gates after rebase (openclaw#100663) fix(ui): reopen web terminals without stale content (openclaw#100665) fix(browser): diagnose empty WSL2 Chrome replies (openclaw#100590) fix(ios): chat snaps back to bottom when scrolling to top via status-bar tap (openclaw#100502) Treat already-compacted CLI compaction as no-op (openclaw#99136) docs(changelog): remove direct main fix entry fix(feishu): strip internal tool-trace banners from outbound text (openclaw#98705) fix(message): thread --limit through to CLI formatter and surface provider pagination hints (openclaw#99089) fix(voyage): close response body stream when batch output JSONL parsing throws (openclaw#98840) ... # Conflicts: # extensions/memory-wiki/package.json
Closes #100538
What Problem This Solves
Telegram onboarding only describes the chat-command way to get a bot token: DM @Botfather, run
/newbot, copy the token. Telegram now ships an official web-based flow — the BotFather web app (Mini App) athttps://t.me/BotFather?startapp— which runs in every Telegram client including web.telegram.org. Neitheropenclaw onboard telegramnor the docs quick-setup mention it, so users who prefer a UI (or are on Telegram Web, where the chat flow is clumsy) never find it.Why This Change Was Made
Surfaces the web flow next to the existing chat flow without changing any behavior: one new help line in the setup wizard's token help (all three wizard locales), and the docs quick-setup step now presents both flows. Both paths end the same way — the user pastes a token — so the wizard structure, config surface, and token validation are untouched.
Deeper integration via Telegram managed bots (Bot API 9.6+
t.me/newbot/...deep link +getManagedBotToken, fully removing token copy-paste) is intentionally out of scope; it needs a product decision about operating a manager bot and token custody — context and API details are in #100538.User Impact
Users setting up the Telegram channel see both token-creation paths in
openclaw onboard telegramand in the docs, and can create their bot entirely from a web UI. The BotFather toggles accordion in the docs also points at the web app as the GUI alternative for settings like/setprivacy.Evidence
node scripts/run-vitest.mjs):src/wizard/i18n/index.test.ts5 passed (includes the shipped-locale key-parity check covering the newtokenHelpWebAppkey in en/zh-CN/zh-TW) andextensions/telegram/src/setup-surface.test.ts12 passed.oxfmt --checkandoxlintclean on the touched files;git diff --checkclean.