docs(composio): name the OpenCompany twin of mapComposioCategory - #5496
Merged
senamakel merged 1 commit intoAug 13, 2026
Merged
Conversation
`mapComposioCategory` has a second copy in `frontend/src/lib/composio-catalog.ts` in tinyhumansai/opencompany, whose operator console buckets the same Composio catalog off the same free-form category strings (opencompany#600 ported it from here). Nothing mechanical detects a divergence between them: edit one and both consoles keep looking correct in isolation while bucketing the same provider differently. Raised in review on opencompany#639, which asks for a notice on each side; this is the OpenHuman half. Also records that the branch ORDER is as load-bearing as the substrings. Both copies return on the first hit, so an entry carrying several categories depends on Chat → Social → Productivity → Platform, and reordering here alone is the subtlest available drift. Comment-only: no code, no behaviour, no new dependency. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
8 tasks
Contributor
📝 WalkthroughWalkthroughThe pull request adds documentation to ChangesCategory Mapping
Estimated code review effort: 1 (Trivial) | ~2 minutes Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
Summary
mapComposioCategory(app/src/components/composio/toolkitMeta.tsx) naming its second copy in tinyhumansai/opencompany, atfrontend/src/lib/composio-catalog.ts.Problem
mapComposioCategoryhere andmapComposioCategoryin OpenCompany's operator console bucket the same Composio catalog off the same free-form category strings — opencompany#600 ported this function to fix a flat 123-provider list there.Nothing mechanical detects a divergence between the two. They live in different repositories with no shared package, so edit one and both consoles keep looking correct in isolation while bucketing the same provider differently. The failure is silent on both sides and only visible to someone comparing two products.
Raised in review on tinyhumansai/opencompany#639, which asks for a notice on each side. This is the OpenHuman half; the OpenCompany half ships in that PR.
Solution
The cheap, honest guard rather than machinery that does not exist yet:
mapComposioCategory keeps the buckets its OpenHuman twin produces) asserting the substring mapping case-by-case, plus one asserting the first-hit branch order. Editing the table without editing the list fails that suite — which is the moment the editor is told a twin exists.One thing the comment adds beyond the review's ask: both copies
returnon the first match, so an entry carrying several categories depends on Chat → Social → Productivity → Platform. Reordering the branches on one side only is the subtlest way these can drift, and neither copy said so.Hoisting the function into a shared package would be the real fix. That is a cross-repository dependency decision well beyond a review nit, so it is not attempted here.
Submission Checklist
N/A: comment-only change, no executable line added or altered.The behavioural pinning this review item asked for lands with the OpenCompany copy (three tests in connections: categorised, searchable connector grid (#600) opencompany#639), where the function's tests already live.N/A: every changed line is a comment, so no changed line is instrumentable.N/A: behaviour-only change(in fact not even that — documentation only).## Related—N/A: no feature row is affected.N/A: does not alter any runtime surface.Closes #NNN—N/A: no OpenHuman issue exists.This originates from review feedback on a PR in another repository, linked below.Impact
None at runtime. The bundle is unchanged apart from a comment stripped at build time; no desktop, mobile, web, or CLI behaviour is touched, and there are no performance, security, migration, or compatibility implications.
Related
N/A— no OpenHuman issue.mapComposioCategoryinto a package both repositories consume would remove the need for this notice entirely. Not attempted here — it is a cross-repository dependency decision, not a review nit.AI Authored PR Metadata
Linear Issue
N/A— originates from a GitHub review comment on connections: categorised, searchable connector grid (#600) opencompany#639, not Linear.N/ACommit & Branch
docs/composio-category-twin4a96a86f8Validation Run
pnpm --filter openhuman-app format:check— passes: "All matched files use Prettier code style!", plus thecargo fmthalf. Prettier parsing the file is also proof it remains syntactically valid TSX.pnpm typecheck— passes clean (tsc --noEmit, no output). Run at this branch's own base in a dedicated worktree with its ownpnpm install --frozen-lockfile; an earlier attempt to reuse a checkout 53 commits behind was discarded because its baseline already failed on an unrelated file, which would have been a meaningless signal.N/A— no executable line changed; there is no test that can distinguish this commit from its parent.N/A— no Rust touched.N/A— no Tauri shell code touched.Validation Blocked
command:N/Aerror:N/Aimpact:N/A— nothing blocked. The checklist item above was initially left unticked because the command had not been run, which failed the PR Submission Checklist gate. The fix was to run it rather than to tick it: deps were installed in a worktree at this branch's base and bothpnpm typecheckandpnpm --filter openhuman-app format:checknow pass.Behavior Changes
Parity Contract
mapComposioCategory's body, signature and branch order are byte-identical.N/A— no guard, fallback, or dispatch path is touched. The comment documents the existing first-hit branch order; it does not change it.Duplicate / Superseded PR Handling
N/A🤖 Generated with Claude Code
Summary by CodeRabbit