Uh oh!
There was an error while loading. Please reload this page.
improvement(gong): validate integration against API docs, fix pagination/wandConfig consistency - #5361
Conversation
PR SummaryHigh Risk Overview Several existing flows get small consistency fixes: Reviewed by Cursor Bugbot for commit e5eea58. Configure here. |
Greptile SummaryThis PR adds four new Gong tools (
Confidence Score: 5/5Safe to merge — all new tools follow established patterns, destructive purge parameters are correctly guarded with user-only visibility, and the consistency fixes are trivially correct. The four new tools are well-structured and consistent with the existing Gong integration: auth headers, error handling via getGongErrorMessage, typed params/responses, and registry/block wiring are all correct. The purge endpoints carry visibility: 'user-only' on the target address/number, addressing the concern raised in the prior review cycle. The optional: true cursor fixes and wandConfig additions are mechanical and low-risk. No files require special attention. Important Files Changed
Sequence Diagram%%{init: {'theme': 'neutral'}}%%
sequenceDiagram
participant U as User/LLM
participant B as Gong Block
participant R as Tool Registry
participant G as Gong API
U->>B: Select operation (e.g. assign_flow_prospects)
B->>R: Resolve tool → gong_assign_flow_prospects
R->>G: POST /v2/flows/prospects/assign
G-->>R: "{requestId, prospectsAssigned[], prospectsNotAssigned[]}"
R-->>B: Typed output
B-->>U: prospectsAssigned / prospectsNotAssigned
U->>B: Select operation (get_prospect_flows)
B->>R: Resolve tool → gong_get_prospect_flows
R->>G: POST /v2/flows/prospects
G-->>R: "{requestId, prospectsAssigned[]}"
R-->>B: Typed output
B-->>U: prospectsAssigned
Note over U,B: Purge operations require user-only input
U->>B: Select purge_email_address
B->>R: Resolve tool → gong_purge_email_address
R->>G: "POST /v2/data-privacy/erase-data-for-email-address?emailAddress=..."
G-->>R: "{requestId}"
R-->>B: requestId
B-->>U: Async erase confirmed (irreversible)
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
sequenceDiagram
participant U as User/LLM
participant B as Gong Block
participant R as Tool Registry
participant G as Gong API
U->>B: Select operation (e.g. assign_flow_prospects)
B->>R: Resolve tool → gong_assign_flow_prospects
R->>G: POST /v2/flows/prospects/assign
G-->>R: "{requestId, prospectsAssigned[], prospectsNotAssigned[]}"
R-->>B: Typed output
B-->>U: prospectsAssigned / prospectsNotAssigned
U->>B: Select operation (get_prospect_flows)
B->>R: Resolve tool → gong_get_prospect_flows
R->>G: POST /v2/flows/prospects
G-->>R: "{requestId, prospectsAssigned[]}"
R-->>B: Typed output
B-->>U: prospectsAssigned
Note over U,B: Purge operations require user-only input
U->>B: Select purge_email_address
B->>R: Resolve tool → gong_purge_email_address
R->>G: "POST /v2/data-privacy/erase-data-for-email-address?emailAddress=..."
G-->>R: "{requestId}"
R-->>B: requestId
B-->>U: Async erase confirmed (irreversible)
Reviews (7): Last reviewed commit: "fix(gong): require human-entered target ..." | Re-trigger Greptile |
The latest updates on your projects. Learn more about Vercel for GitHub. |
waleedlatif1
commented
Jul 2, 2026
waleedlatif1
commented
Jul 2, 2026
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit b39f5d9. Configure here.
waleedlatif1
commented
Jul 2, 2026
waleedlatif1
commented
Jul 2, 2026
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit b39f5d9. Configure here.
…to ID list fields - mark cursor output optional:true on aggregate_activity, interaction_stats, list_flows for consistency with list_calls - add wandConfig to comma-separated ID fields (callIds, primaryUserIds, userIds, scorecardIds, reviewedUserIds) matching repo convention for CSV inputs
contentSelector.context/contextTiming were never set on the /v2/calls/extensive request, so the documented context (CRM/external-system links) output was silently always empty even though the field is declared in the tool's outputs.
b39f5d9 to
536b2c3Comparewaleedlatif1
commented
Jul 2, 2026
waleedlatif1
commented
Jul 2, 2026
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit 536b2c3. Configure here.
- gong_purge_email_address / gong_purge_phone_number: POST /v2/data-privacy/erase-data-for-*, the write-half pairing with the existing lookup_email/lookup_phone read tools - gong_assign_flow_prospects: POST /v2/flows/prospects/assign, enrolls CRM prospects into an Engage flow - gong_get_prospect_flows: POST /v2/flows/prospects, looks up which flows a prospect is in Field names verified against an OpenAPI-generator-produced client (cedricziel/gong-rs) whose serde rename attributes mirror Gong's published spec, since Gong's interactive Swagger docs require an authenticated session and can't be fetched directly.
waleedlatif1
commented
Jul 2, 2026
waleedlatif1
commented
Jul 2, 2026
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit 8cb1fc3. Configure here.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
emailAddress/phoneNumber on the purge tools were user-or-llm, letting an agent autonomously pick the erasure target for an irreversible operation with no human confirmation. Match the user-only visibility already used for credentials.
waleedlatif1
commented
Jul 2, 2026
waleedlatif1
commented
Jul 2, 2026
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit e5eea58. Configure here.
Uh oh!
There was an error while loading. Please reload this page.
waleedlatif1
commented
Jul 2, 2026
waleedlatif1
commented
Jul 2, 2026
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit e5eea58. Configure here.
Summary
cursoroutputoptional: trueon aggregate_activity/interaction_stats/list_flows (matching list_calls convention), addedwandConfigto comma-separated ID fields (callIds, primaryUserIds, userIds, scorecardIds, reviewedUserIds)Type of Change
Testing
Tested manually —
bun run lintandtsc --noEmitboth cleanChecklist