mirror of
https://github.com/TelegramMessenger/Telegram-iOS.git
synced 2026-07-06 03:33:41 +02:00
31 waves of consumer-side migration from `import Postbox` to TelegramEngine typealiases. Net: 173 import drops + 39 BUILD-dep drops + 1 new typealias (`EngineStoryId = StoryId`, wave 113). Wave shapes used: - Orphan-import sweeps (107, 108, 128): drop `import Postbox` from files whose only Postbox-symbol reference was the import line itself, then resolve build failures. Methodology requires token-level (`grep -oE`) filtering, not line-level, to avoid masking real Postbox usage on lines that also contain `Namespaces.X` references. - Identifier-swap mini-waves (109-127, 129-134, 136-137): rename Postbox-typealiased identifiers to engine equivalents (PeerId -> EnginePeer.Id, MessageId -> EngineMessage.Id, MediaId -> EngineMedia.Id, MessageIndex -> EngineMessage.Index, StoryId -> EngineStoryId, ItemCollectionId -> EngineItemCollectionId, PreferencesEntry -> EnginePreferencesEntry, FetchResourceSourceType/Error -> EngineFetchResourceSourceType/Error, MemoryBuffer -> EngineMemoryBuffer, MessageTags -> EngineMessage.Tags, MessageAttribute -> EngineMessage.Attribute, TempBox -> EngineTempBox). - Asset-string FP-only orphans (124). - Typealias addition + drain (113): added `EngineStoryId` typealias to TelegramCore, then drained 3+11 consumer sites. Hard blockers identified during these waves (must restore `import Postbox` when present): MediaResource[A-Za-z]* (any suffix -- the literal `MediaResource` matches don't catch MediaResourceData/MediaResourceId/etc.), Postbox/MediaBox/MediaResource raw types, PostboxCoding/PostboxEncoder/ PostboxDecoder, TempBoxFile, ValueBoxKey, PostboxView, combinedView, HashFunctions, postboxLog, openPostbox, declareEncodable, PeerView, MessageHistoryView, MessageHistoryThreadData, CachedPeerData, RenderedPeer, SelectivePrivacyPeer, SimpleDictionary, ItemCollectionInfosView, ItemCollectionItem, ItemCollectionItemIndex, ItemCollectionViewEntryIndex, ChatListIndex, ChatListEntrySummaryComponents, CodableEntry, MessageHistoryThread, MessageHistoryAnchorIndex, MessageHistoryEntryLocation, PeerStoryStats, PeerNameIndex, PeerSummaryCounterTags, ChatListTotalUnreadStateCategory/Stats, arePeersEqual. Protocol-shape blockers: bare `Peer`/`Message`/`Media` in function signatures, generic args, enum-case payloads, or dict value types (e.g., `[PeerId: Peer]`, `case messages([Message])`, `Signal<(Peer?, ...), NoError>`). `replace_all PeerId -> EnginePeer.Id` is dangerous: mangles compound names like `failedPeerId`, `ContactListPeerId`, `nextRemoteMediaId`, `replyToMessageId`. Pre-flight grep `\b[a-z][a-zA-Z]*PeerId\b` and only replace_all if 0 matches. Also removes unneeded design/plan docs from a separate (link-highlighting) feature branch: - docs/superpowers/plans/2026-05-02-link-highlighting-modern-path-fixes.md - docs/superpowers/specs/2026-05-02-link-highlighting-modern-path-fixes-design.md Squashed commits: 6d82c2980d..e6de5d53a3 (59 commits, including per-wave content commits and per-wave CLAUDE.md bumps). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| AccessoryPanelNode | ||
| ChatAgeRestrictionAlertController | ||
| ChatAvatarNavigationNode | ||
| ChatBotInfoItem | ||
| ChatButtonKeyboardInputNode | ||
| ChatChannelSubscriberInputPanelNode | ||
| ChatContextResultPeekContent | ||
| ChatEmptyNode | ||
| ChatHistoryEntry | ||
| ChatHistorySearchContainerNode | ||
| ChatInlineSearchResultsListComponent | ||
| ChatInputAccessoryPanel | ||
| ChatInputAutocompletePanel | ||
| ChatInputContextPanelNode | ||
| ChatInputMessageAccessoryPanel | ||
| ChatInputPanelNode | ||
| ChatInputTextNode | ||
| ChatInstantVideoMessageDurationNode | ||
| ChatLoadingNode | ||
| ChatMediaInputStickerGridItem | ||
| ChatMessageActionBubbleContentNode | ||
| ChatMessageActionButtonsNode | ||
| ChatMessageAnimatedStickerItemNode | ||
| ChatMessageAttachedContentButtonNode | ||
| ChatMessageAttachedContentNode | ||
| ChatMessageBirthdateSuggestionContentNode | ||
| ChatMessageBubbleContentNode | ||
| ChatMessageBubbleItemNode | ||
| ChatMessageCallBubbleContentNode | ||
| ChatMessageCommentFooterContentNode | ||
| ChatMessageContactBubbleContentNode | ||
| ChatMessageDateAndStatusNode | ||
| ChatMessageDeliveryFailedNode | ||
| ChatMessageDisableCopyProtectionBubbleContentNode | ||
| ChatMessageEventLogPreviousDescriptionContentNode | ||
| ChatMessageEventLogPreviousLinkContentNode | ||
| ChatMessageEventLogPreviousMessageContentNode | ||
| ChatMessageFactCheckBubbleContentNode | ||
| ChatMessageFileBubbleContentNode | ||
| ChatMessageForwardInfoNode | ||
| ChatMessageGameBubbleContentNode | ||
| ChatMessageGiftBubbleContentNode | ||
| ChatMessageGiftOfferBubbleContentNode | ||
| ChatMessageGiveawayBubbleContentNode | ||
| ChatMessageInstantVideoBubbleContentNode | ||
| ChatMessageInstantVideoItemNode | ||
| ChatMessageInteractiveFileNode | ||
| ChatMessageInteractiveInstantVideoNode | ||
| ChatMessageInteractiveMediaNode | ||
| ChatMessageInvoiceBubbleContentNode | ||
| ChatMessageItem | ||
| ChatMessageItemCommon | ||
| ChatMessageItemImpl | ||
| ChatMessageItemView | ||
| ChatMessageJoinedChannelBubbleContentNode | ||
| ChatMessageMapBubbleContentNode | ||
| ChatMessageMediaBubbleContentNode | ||
| ChatMessageNotificationItem | ||
| ChatMessagePaymentAlertController | ||
| ChatMessagePollBubbleContentNode | ||
| ChatMessageProfilePhotoSuggestionContentNode | ||
| ChatMessageReactionsFooterContentNode | ||
| ChatMessageReplyInfoNode | ||
| ChatMessageRestrictedBubbleContentNode | ||
| ChatMessageRichDataBubbleContentNode | ||
| ChatMessageSelectionInputPanelNode | ||
| ChatMessageSelectionNode | ||
| ChatMessageShareButton | ||
| ChatMessageStarsMediaInfoNode | ||
| ChatMessageStickerItemNode | ||
| ChatMessageStoryMentionContentNode | ||
| ChatMessageSuggestedPostInfoNode | ||
| ChatMessageSwipeToReplyNode | ||
| ChatMessageTextBubbleContentNode | ||
| ChatMessageThreadInfoNode | ||
| ChatMessageTodoBubbleContentNode | ||
| ChatMessageTransitionNode | ||
| ChatMessageUnlockMediaNode | ||
| ChatMessageUnsupportedBubbleContentNode | ||
| ChatMessageWallpaperBubbleContentNode | ||
| ChatMessageWebpageBubbleContentNode | ||
| ChatNavigationButton | ||
| ChatNewThreadInfoItem | ||
| ChatOverscrollControl | ||
| ChatPanelsComponent | ||
| ChatQrCodeScreen | ||
| ChatRankInfoScreen | ||
| ChatRecentActionsController | ||
| ChatRecordingPreviewInputPanelNode | ||
| ChatRecordingViewOnceButtonNode | ||
| ChatSearchNavigationContentNode | ||
| ChatSendAsContextMenu | ||
| ChatSendAudioMessageContextPreview | ||
| ChatSendStarsScreen | ||
| ChatShareMessageTagView | ||
| ChatSideTopicsPanel | ||
| ChatSwipeToReplyRecognizer | ||
| ChatTextInputActionButtonsNode | ||
| ChatTextInputAudioRecordingCancelIndicator | ||
| ChatTextInputAudioRecordingTimeNode | ||
| ChatTextInputPanelNode | ||
| ChatTextInputSlowmodePlaceholderNode | ||
| ChatUserInfoItem | ||
| EditableTokenListNode | ||
| FactCheckAlertController | ||
| ForwardAccessoryPanelNode | ||
| InstantVideoRadialStatusNode | ||
| ManagedDiceAnimationNode | ||
| MergedAvatarsNode | ||
| MessageHaptics | ||
| MessageInlineBlockBackgroundView | ||
| MessageQuoteComponent | ||
| PollBubbleTimerNode | ||
| QuickShareScreen | ||
| ReplyAccessoryPanelNode | ||
| SavedTagNameAlertController | ||
| ShimmeringLinkNode | ||
| SuggestPostAccessoryPanelNode | ||
| TopMessageReactions | ||