Skip to content

Conversation

@michelle0927
Copy link
Collaborator

@michelle0927 michelle0927 commented Nov 6, 2025

Resolves #18965

Summary by CodeRabbit

  • Chores

    • Updated package version and dependency bump.
    • Normalized end-of-file newlines across multiple components.
  • Changes

    • Clarified the New Call event source description.
    • Narrowed the initial data lookback for the New Call source to focus recent events.

@vercel
Copy link

vercel bot commented Nov 6, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

2 Skipped Deployments
Project Deployment Preview Comments Updated (UTC)
pipedream-docs Ignored Ignored Nov 7, 2025 10:27pm
pipedream-docs-redirect-do-not-edit Ignored Ignored Nov 7, 2025 10:27pm

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 6, 2025

Walkthrough

Adds a deploy-time hook limiting initial Gong "New Call" retrieval to 25 items, narrows the default lookback from three months to one day, and bumps the Gong package version and platform dependency.

Changes

Cohort / File(s) Summary
Package & Dependencies
components/gong/package.json
Version updated from 0.3.10.3.2; @pipedream/platform dependency updated from ^3.0.3^3.1.0.
Polling Mechanism
components/gong/sources/common/polling.mjs
processResources(resources) signature changed to processResources(resources, max) (optional max); added hooks.deploy that paginates resources and calls processResources(..., max=25) to limit initial emits.
New Call Source
components/gong/sources/new-call/new-call.mjs
Source version bumped 0.0.30.0.4; description text updated; initial data window narrowed — uses one-day lookback (oneDayAgo) instead of three-months (threeMonthsAgo); default fromDateTime adjusted accordingly.
Whitespace / Formatting
components/*/*.app.mjs (multiple files)
Trailing newline added to various app files; no behavioral changes. Files include but are not limited to: components/babelfy/babelfy.app.mjs, components/bitrated/bitrated.app.mjs, components/crypto_apis_by_alternative/crypto_apis_by_alternative.app.mjs, components/embedapi/embedapi.app.mjs, components/financial_modeling_prep/financial_modeling_prep.app.mjs, components/ideta/ideta.app.mjs, components/intelitruth/intelitruth.app.mjs, components/jooble/jooble.app.mjs, components/live_score_api/live_score_api.app.mjs, components/loginradius/loginradius.app.mjs, components/mallabe/mallabe.app.mjs, components/marcom_robot/marcom_robot.app.mjs, components/microsoft_azure_monitor/microsoft_azure_monitor.app.mjs, components/mymemory/mymemory.app.mjs, components/stock_news_api/stock_news_api.app.mjs, components/stocknewsapi/stocknewsapi.app.mjs, components/webspellchecker/webspellchecker.app.mjs, components/yext_sandbox/yext_sandbox.app.mjs.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant DeployHook as Deploy Hook
    participant RunFlow as Regular Run
    participant GongAPI as Gong API

    rect rgba(220,240,255,0.6)
    Note over User,GongAPI: Initial deployment flow (limited)
    User->>DeployHook: deploy source
    DeployHook->>GongAPI: fetch resources (paginated)
    GongAPI-->>DeployHook: resources list
    DeployHook->>DeployHook: processResources(resources, max=25)
    DeployHook->>User: emit up to 25 events
    end

    rect rgba(235,255,230,0.6)
    Note over User,GongAPI: Subsequent scheduled runs (timestamp-filtered)
    User->>RunFlow: scheduled trigger
    RunFlow->>GongAPI: fetch resources filtered by fromDateTime (one day lookback)
    GongAPI-->>RunFlow: recent resources
    RunFlow->>RunFlow: processResources(resources)  %% no max
    RunFlow->>User: emit new events
    end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

  • Review the updated processResources(resources, max) implementation and ensure safe handling of max (undefined, zero, >length).
  • Verify hooks.deploy pagination stops correctly and won’t emit more than 25 items across pages.
  • Confirm getResourceFnArgs one-day lookback aligns with desired behavior and that timestamp filtering prevents indefinite pagination.

Pre-merge checks and finishing touches

❌ Failed checks (1 warning, 1 inconclusive)
Check name Status Explanation Resolution
Out of Scope Changes check ⚠️ Warning Most changes align with the issue objectives. However, multiple trailing newline additions to unrelated .app.mjs files appear out of scope for the pagination fix issue. Remove the trailing newline formatting changes from unrelated components (babelfy, bitrated, crypto_apis, embedapi, etc.) as they are out of scope for the pagination bug fix.
Description check ❓ Inconclusive The PR description is minimal but adequate, referencing the resolved issue #18965. However, it lacks detailed explanation of what was changed and why, which would be expected per the repository template requiring a WHY section. Expand the description to include a WHY section explaining the rationale behind the changes and how they resolve the indefinite pagination issue.
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The PR title accurately describes the primary changes: updating the Gong 'New Call' trigger and addressing pagination issues through changes to polling logic and deployment hooks.
Linked Issues check ✅ Passed All objectives from issue #18965 are met: pagination is limited to 25 events on deployment via hooks.deploy, the initial window is narrowed from 3 months to 1 day, and timestamp-based filtering is preserved for subsequent runs.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch issue-18965

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between aebf7b0 and 8e93fa6.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (3)
  • components/gong/package.json (2 hunks)
  • components/gong/sources/common/polling.mjs (2 hunks)
  • components/gong/sources/new-call/new-call.mjs (2 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-01-23T03:55:15.166Z
Learnt from: GTFalcao
Repo: PipedreamHQ/pipedream PR: 15376
File: components/monday/sources/name-updated/name-updated.mjs:6-6
Timestamp: 2025-01-23T03:55:15.166Z
Learning: Source names in Monday.com components don't need to start with "New" if they emit events for updated items (e.g., "Name Updated", "Column Value Updated") rather than new items. This follows the component guidelines exception where the "New" prefix is only required when emits are limited to new items.

Applied to files:

  • components/gong/sources/new-call/new-call.mjs
🧬 Code graph analysis (1)
components/gong/sources/common/polling.mjs (1)
components/zep/actions/get-threads/get-threads.mjs (1)
  • max (39-39)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
  • GitHub Check: pnpm publish
  • GitHub Check: Lint Code Base
  • GitHub Check: Publish TypeScript components
  • GitHub Check: Verify TypeScript components
🔇 Additional comments (5)
components/gong/package.json (1)

3-3: LGTM: Version and dependency updates are appropriate.

The version bump and platform dependency update align with the feature changes in this PR.

Also applies to: 16-16

components/gong/sources/common/polling.mjs (1)

42-58: LGTM: processResources correctly limits emission while maintaining timestamp tracking.

The logic properly reverses resources to descending order, slices to the newest N events when max is provided, and updates lastCreatedAt to the newest emitted resource. This ensures subsequent runs fetch only newer events.

components/gong/sources/new-call/new-call.mjs (3)

7-7: LGTM: Description is clear and specific.

The updated description explicitly states the trigger behavior and includes relevant API documentation.


9-9: LGTM: Version bump is appropriate.

Patch version increment is correct for this bug fix.


20-24: Key fix: Lookback window reduced from 3 months to 1 day.

This change directly addresses the indefinite pagination issue reported in #18965. By reducing the default lookback window from 3 months to 1 day, the initial deployment will fetch far fewer historical calls, preventing the emission of 1000+ events. Combined with the deploy hook's 25-event emission limit, this ensures a controlled initial deployment.

The 1-day window strikes a good balance between avoiding excessive historical data and capturing recent events.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 8e93fa6 and 52dd56b.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (18)
  • components/babelfy/babelfy.app.mjs (1 hunks)
  • components/bitrated/bitrated.app.mjs (1 hunks)
  • components/crypto_apis_by_alternative/crypto_apis_by_alternative.app.mjs (1 hunks)
  • components/embedapi/embedapi.app.mjs (1 hunks)
  • components/financial_modeling_prep/financial_modeling_prep.app.mjs (1 hunks)
  • components/ideta/ideta.app.mjs (1 hunks)
  • components/intelitruth/intelitruth.app.mjs (1 hunks)
  • components/jooble/jooble.app.mjs (1 hunks)
  • components/live_score_api/live_score_api.app.mjs (1 hunks)
  • components/loginradius/loginradius.app.mjs (1 hunks)
  • components/mallabe/mallabe.app.mjs (1 hunks)
  • components/marcom_robot/marcom_robot.app.mjs (1 hunks)
  • components/microsoft_azure_monitor/microsoft_azure_monitor.app.mjs (1 hunks)
  • components/mymemory/mymemory.app.mjs (1 hunks)
  • components/stock_news_api/stock_news_api.app.mjs (1 hunks)
  • components/stocknewsapi/stocknewsapi.app.mjs (1 hunks)
  • components/webspellchecker/webspellchecker.app.mjs (1 hunks)
  • components/yext_sandbox/yext_sandbox.app.mjs (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
  • GitHub Check: pnpm publish
  • GitHub Check: Publish TypeScript components
  • GitHub Check: Verify TypeScript components
  • GitHub Check: Lint Code Base
🔇 Additional comments (17)
components/mymemory/mymemory.app.mjs (1)

11-11: Formatting standardization approved.

The addition of a trailing newline at end-of-file aligns with standard formatting conventions and is consistent with the broader formatting updates noted in this PR. No functional impact.

components/webspellchecker/webspellchecker.app.mjs (1)

11-11: Verify file relevance to PR objectives.

This file (webspellchecker component) appears unrelated to the PR's stated objectives of fixing Gong "New Call" trigger pagination indefinite loops. The only change is adding an EOF newline—a formatting-only update.

Confirm whether this file should be included in this PR or if it was accidentally included in a broader formatting pass across components.

components/marcom_robot/marcom_robot.app.mjs (1)

11-11: Formatting-only change unrelated to PR objectives.

The added trailing newline is a formatting change that's not related to fixing the Gong "New Call" trigger pagination issue. To keep the PR focused and the commit history clean, consider removing this formatting change and excluding it from the current PR.

components/ideta/ideta.app.mjs (1)

11-11: File appears unrelated to PR objectives; clarify scope.

This file contains only a cosmetic trailing-newline addition. However, the PR objectives specifically address Gong "New Call" trigger pagination fixes—including deploy-time hooks, initial fetch limits to 25 items, and default lookback adjustments. This IDeta app component does not implement those fixes.

Please verify that all relevant Gong trigger files are included in the review. The actual changes for resolving issue #18965 should be in the Gong component files (e.g., under components/gong/), not in unrelated app files.

components/intelitruth/intelitruth.app.mjs (1)

1-11: Mismatch between PR objectives and provided file.

The PR objectives state that this PR resolves issue #18965 by adding a deploy-time hook to limit the Gong "New Call" trigger to 25 items on initial deployment and implementing proper timestamp-based filtering. However, the provided file is an unrelated intelitruth component with only a trailing newline formatting change, which does not address the stated objectives.

Please verify that the correct files were provided for review. The actual Gong trigger component (likely at components/gong/triggers/new-call.mjs or similar) should contain the pagination-limiting logic and deploy-time hook mentioned in the PR summary. Could you provide the Gong trigger file(s) that implement the fix?

components/yext_sandbox/yext_sandbox.app.mjs (1)

11-11: Formatting change looks fine.

Trailing newline addition is harmless.

components/loginradius/loginradius.app.mjs (1)

11-11: LGTM! Formatting-only change.

This trailing newline addition is a benign formatting update with no functional impact. It's part of a broader repository-wide formatting cleanup.

components/mallabe/mallabe.app.mjs (1)

11-11: Trailing newline looks good.

Formatting-only change; nothing else to address.

components/jooble/jooble.app.mjs (1)

11-11: Trailing newline looks good.

Formatting-only change; nothing else to address.

components/bitrated/bitrated.app.mjs (1)

11-11: Trailing newline looks good.

Formatting-only change; nothing else to address.

components/stocknewsapi/stocknewsapi.app.mjs (1)

11-11: Trailing newline looks good.

Formatting-only change; nothing else to address.

components/live_score_api/live_score_api.app.mjs (1)

11-11: Trailing newline looks good.

Formatting-only change; nothing else to address.

components/crypto_apis_by_alternative/crypto_apis_by_alternative.app.mjs (1)

11-11: Formatting-only change; no functional impact.

This file receives only a trailing newline addition as part of a repo-wide formatting pass. No logic, behavior, or public API changes.

components/microsoft_azure_monitor/microsoft_azure_monitor.app.mjs (1)

11-11: Formatting-only change; no functional impact.

Trailing newline addition only. No logic, behavior, or public API changes.

components/embedapi/embedapi.app.mjs (1)

11-11: Formatting-only change; no functional impact.

Trailing newline addition only. No logic, behavior, or public API changes.

components/babelfy/babelfy.app.mjs (1)

11-11: Formatting-only change; no functional impact.

Trailing newline addition only. No logic, behavior, or public API changes.

components/stock_news_api/stock_news_api.app.mjs (1)

11-11: Formatting-only change; no functional impact.

Trailing newline addition only. No logic, behavior, or public API changes.

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.

[BUG] Gong "New Call" trigger indefinite pagination

2 participants