Skip to content

fix: remove CustomCommandData - #1989

Merged
MartinCupela merged 2 commits into
release-v10from
fix/custom-command-data
Nov 4, 2026
Merged

MartinCupela merged 2 commits into
release-v10from
fix/custom-command-data

Conversation

@MartinCupela

@MartinCupela MartinCupela commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

CLA

  • I have signed the Stream CLA (required).
  • Code changes are tested

Description of the changes, What, Why and How?

Linear: REACT-1363

What: removes the CustomCommandData interface and its root export.

Why: in v9, CustomCommandData fed CommandVariants, which typed CommandResponse.name and set, so a typo in a command name failed to compile. In v10, Command['name'] and Command['set'] come from the generated models as plain string, and nothing reads CustomCommandData. 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.ts and src/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, plus CustomCommandData added to the removed-type import regex and the verification grep. A leftover augmentation still compiles, so tsc alone 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 lint and yarn test pass.

Downstream:

Changelog

  • Removed CustomCommandData. Command names (Command['name'], Command['set']) are string; delete augmentations of it.

Squash-merge footer

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.

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
MartinCupela merged commit f737d61 into release-v10 Nov 4, 2026
5 of 6 checks passed
@MartinCupela
MartinCupela deleted the fix/custom-command-data branch November 4, 2026 11:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants