Repository navigation
fix: remove CustomCommandData - #1989
Merged
Merged
Conversation
Command names come from the server, so Command['name'] and Command['set'] are plain strings and nothing reads CustomCommandData. BREAKING CHANGE: CustomCommandData is no longer exported. Delete its augmentations and imports. A leftover augmentation still compiles and has no effect, so search for the name rather than relying on tsc. An app that wants a closed set of command names declares its own union. See ai-docs/v10-breaking-changes.md#custom-data-augmentation.
MartinCupela
requested review from
NikolaGoranNaumovski,
isekovanic,
oliverlaz and
szuperaz
as code owners
November 3, 2026 15:10
isekovanic
approved these changes
Nov 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
CLA
Description of the changes, What, Why and How?
Linear: REACT-1363
What: removes the
CustomCommandDatainterface and its root export.Why: in v9,
CustomCommandDatafedCommandVariants, which typedCommandResponse.nameandset, so a typo in a command name failed to compile. In v10,Command['name']andCommand['set']come from the generated models as plainstring, and nothing readsCustomCommandData. Augmenting it compiled but had no effect. Command names come from the server (built-in commands plus the app's own), so we don't type them. An app that wants a closed set of names declares its own union.How:
src/custom_types.tsandsrc/index.ts: interface and export removed.ai-docs/v10-breaking-changes.md(#custom-data-augmentation): a note that it is removed, a migration step, a row in "Removed: no replacement type", and updated counts in the type-rename section.ai-docs/ai-migration-v9-to-v10.md: the migration step, plusCustomCommandDataadded to the removed-type import regex and the verification grep. A leftover augmentation still compiles, sotscalone won't find it.ai-docs/v10-followups.md: the follow-up is marked solved..claude/skills/update-custom-mapping: the interface is no longer listed.yarn types,yarn lintandyarn testpass.Downstream:
CustomCommandDataaugmentation andDefaultCommandData.CustomCommandData(package/src/types/stream-chat-common-custom-data.d.tsand two examples). That keeps compiling against this change, but has no effect and should be deleted.Changelog
CustomCommandData. Command names (Command['name'],Command['set']) arestring; delete augmentations of it.Squash-merge footer