mirror of
https://github.com/TelegramMessenger/Telegram-iOS.git
synced 2026-07-05 19:28:46 +02:00
Applies the wave-11/12/15 collapse pattern to ItemListAvatarAndNameInfoItem. ItemContext.other payload changes from (accountPeerId:, postbox: Postbox, network: Network) to (accountPeerId:, stateManager: AccountStateManager). Internal AvatarNode.setPeer forward rewires through stateManager.postbox / .network. Module drops import Postbox (source) and //submodules/Postbox:Postbox (BUILD). Sole external caller — DeviceContactInfoController.swift:413 at the Share-Extension boundary — migrated atomically. Handle choice is stateManager: (not engine:) because the sole caller fires specifically when the context is not a ShareControllerAppAccountContext; ShareControllerAccountContext protocol exposes stateManager: AccountStateManager but not engine: TelegramEngine, and no full TelegramEngine is constructible in the Share Extension (no Account). Per feedback_postbox_refactor_handle.md and the wave-15 precedent. Pre-flight public-Postbox-type inventory grep (per CLAUDE.md's Wave-selection guidance) returned only Postbox itself — no hidden leaks like wave 16's EngineMessageHistoryThread / PeerStoryStats surprises. Module fully Postbox-free after this wave. Running tally updated in CLAUDE.md. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| Sources | ||
| BUILD | ||