feat: add activity processor tag extraction thresholds - #338
Closed
JimmyPettersson85 wants to merge 1 commit into
Closed
feat: add activity processor tag extraction thresholds#338JimmyPettersson85 wants to merge 1 commit into
JimmyPettersson85 wants to merge 1 commit into
Conversation
Regenerate the models from the chat OpenAPI spec, picking up the optional min_text_length and min_word_count fields on ActivityProcessorConfig. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Contributor
Author
|
Superseded by #339, which carries the identical commit on The branch name has to match the chat branch: |
JimmyPettersson85
deleted the
feat/feeds-1792-tag-extraction-thresholds
branch
August 22, 2026 21:55
JimmyPettersson85
added a commit
that referenced
this pull request
Aug 24, 2026
## Ticket - https://linear.app/stream/issue/FEEDS-1792/make-activity-processor-tag-extraction-thresholds-configurable ## Summary Regenerates `src/gen` from the chat OpenAPI spec to pick up two new optional fields on `ActivityProcessorConfig`: ```ts min_text_length?: number; min_word_count?: number; ``` They let a feed group gate `text_interest_tags` extraction on how much text an activity actually has. Today there is no gate at all — a one-character activity triggers a full LLM call and whatever topics the model invents land in `interest_tags`, which is what a customer reported as junk tags. Both fields default to `0` (disabled), so existing behaviour is unchanged and the knob is opt-in. ## Notes for review **Branch name matches the chat branch on purpose.** `tests/qa/Makefile` resolves `VIDEO_JS_SERVER_SDK_BRANCH` by looking for a `stream-node` branch with the same name as the chat branch, and swaps `@stream-io/node-sdk` to it for the QA run. That is how [GetStream/chat#16074](GetStream/chat#16074 QA tests exercise `min_text_length` / `min_word_count` before this SDK is released. (This PR supersedes #338, which sat on a non-matching branch name.) The regeneration diff is **only** those 10 lines — `src/gen` was already in sync with master, so nothing unrelated came along. Both fields are optional, so this is additive and backwards compatible: existing callers constructing an `ActivityProcessorConfig` keep compiling untouched. ## Verification - `yarn generate:open-api` — regenerated, diff scoped to `ActivityProcessorConfig` - `yarn build` — clean - `yarn lint` — clean, no new warnings - `yarn test` — 18 failed / 3 passed / 3 skipped, **identical to `main`**. Every failure is `secretOrPrivateKey must have a value` from missing `STREAM_API_SECRET` locally; verified by stashing the change and re-running. A type-only addition cannot affect these. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
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.
Ticket
Summary
Regenerates
src/genfrom the chat OpenAPI spec to pick up two new optional fields onActivityProcessorConfig:They let a feed group gate
text_interest_tagsextraction on how much text an activity actually has. Today there is no gate at all — a one-character activity triggers a full LLM call and whatever topics the model invents land ininterest_tags, which is what a customer reported as junk tags. Both fields default to0(disabled), so existing behaviour is unchanged and the knob is opt-in.Notes for review
The regeneration diff is only those 10 lines —
src/genwas already in sync with master, so nothing unrelated came along.Both fields are optional, so this is additive and backwards compatible: existing callers constructing an
ActivityProcessorConfigkeep compiling untouched.Verification
yarn generate:open-api— regenerated, diff scoped toActivityProcessorConfigyarn build— cleanyarn lint— clean, no new warningsyarn test— 18 failed / 3 passed / 3 skipped, identical tomain. Every failure issecretOrPrivateKey must have a valuefrom missingSTREAM_API_SECRETlocally; verified by stashing the change and re-running. A type-only addition cannot affect these.🤖 Generated with Claude Code