discourse/plugins/discourse-chat-integration/spec/system
Krzysztof Kotlarek 45538c7c11
DEV: Handle both string and object tag formats (#37207)
What is the problem?

PR discourse/discourse#36678 changes tags from an array of strings to an
array of tag objects. The chat-integration plugin's rule editing and
display functionality will break when tags become objects instead of
strings:
- The `EditRule` modal directly mutates `rule.tags` with the tag chooser
output
- The `RuleRow` component displays `rule.tags` directly in the template

What is the solution?

Update both components to handle both formats:
- Add `onTagsChanged` handler in `EditRule` that normalizes tags to
strings using `typeof t === "string" ? t : t.name`
- Add `displayTags` getter in `RuleRow` that converts tags to strings
before display
- Add system spec to verify tag editing works correctly

This is the same backwards-compatible approach used in Discourse core.
2026-01-21 08:43:32 +08:00
..
core_features_spec.rb
create_channel_spec.rb
rule_tags_spec.rb DEV: Handle both string and object tag formats (#37207) 2026-01-21 08:43:32 +08:00