Skip to content

feat(feeds): add reaction write outcome fields - #350

Merged
JimmyPettersson85 merged 2 commits into
mainfrom
feature/feeds-1886-reaction-write-outcome
Sep 21, 2026
Merged

JimmyPettersson85 merged 2 commits into
mainfrom
feature/feeds-1886-reaction-write-outcome

Conversation

@JimmyPettersson85

@JimmyPettersson85 JimmyPettersson85 commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds three new fields to AddReactionResponse and AddCommentReactionResponse, from the v2 serverside spec:

Field Type Meaning
outcome stringcreated | replaced | unchanged what the write did to the user's reaction on the target
previous_reaction_type string? the reaction type enforce_unique removed
counter_delta number0 | 1 change to the user's reaction count on the target

Backend PR: GetStream/chat#17241 (FEEDS-1886). With enforce_unique=true the previous reaction is replaced silently, and nothing in the response told the caller whether the reaction was new or a swap — so a customer keeping their own per-user reaction counter had to read before writing, or delete-then-add.

Counting recipe: add → outcome === 'created' ? +1 : 0; delete → 2xx ? -1 : 0.

Scope

This is deliberately not a full regeneration. src/gen was last refreshed on 2026-09-07, so a wholesale regen also pulls in every unrelated spec change since then — skip_own_followings, activity_marks, unity device fields, the user-interests endpoints, and additional optional params across the chat, common, moderation and video APIs. That was the first version of this PR and it failed channel-types.test.ts.

This version resets src/gen to main and adds only the two reaction response interfaces: 30 insertions, 0 deletions, 1 file. Catching the rest up to the spec is worth doing, but as its own PR where a failure is attributable.

Merge order

Merges before the backend, per the usual flow: SDKs merge and release first, then the chat repo bumps its pinned SDK versions, then GetStream/chat#17241 merges.

Generated from that PR's branch spec, so if its API surface changes during review this needs updating before release.

Testing

  • prettier --check clean, tsc --noEmit clean.
  • Field definitions taken verbatim from the generator output, so they match what a future full regen will produce.

🤖 Generated with Claude Code

Adds outcome, previous_reaction_type and counter_delta to
AddReactionResponse and AddCommentReactionResponse, from the v2 serverside
spec (GetStream/chat#17241).

Scoped to just these two interfaces rather than a full regeneration: a
wholesale regen also pulls in every other spec change since the last
refresh, which is a much wider surface than this needs.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@JimmyPettersson85
JimmyPettersson85 force-pushed the feature/feeds-1886-reaction-write-outcome branch from 72fa8e5 to 2e6b9c3 Compare September 19, 2026 09:20
@JimmyPettersson85 JimmyPettersson85 changed the title feat(feeds): regenerate for reaction write outcome fields feat(feeds): add reaction write outcome fields Sep 19, 2026
@JimmyPettersson85
JimmyPettersson85 merged commit 70d6cbb into main Sep 21, 2026
10 checks passed
@JimmyPettersson85
JimmyPettersson85 deleted the feature/feeds-1886-reaction-write-outcome branch September 21, 2026 14:14
szuperaz pushed a commit that referenced this pull request Sep 21, 2026
🤖 I have created a release *beep* *boop*
---


##
[0.8.7](v0.8.6...v0.8.7)
(2026-09-21)


### Features

* **feeds:** add reaction write outcome fields
([#350](#350))
([70d6cbb](70d6cbb))
* update to API spec v238.16.2
([#348](#348))
([11ceeda](11ceeda))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
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