Skip to content

Conversation

@michelle0927
Copy link
Collaborator

@michelle0927 michelle0927 commented Dec 18, 2025

Resolves #19528

Summary by CodeRabbit

  • New Features
    • Added Get KVS Record action for OAuth-authenticated workflows
    • Added Run Task action for OAuth-authenticated workflows
  • Improvements
    • Updated multiple components with enhancements
    • Bumped package version to 0.2.0
    • Updated dependencies for improved stability and compatibility

✏️ Tip: You can customize this high-level summary in your review settings.

@vercel
Copy link

vercel bot commented Dec 18, 2025

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

1 Skipped Deployment
Project Deployment Review Updated (UTC)
pipedream-docs-redirect-do-not-edit Ignored Ignored Dec 18, 2025 5:03pm

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 18, 2025

Walkthrough

Updates version numbers across multiple Apify OAuth actions and sources from 0.0.2 to 0.0.3. Introduces two new OAuth-wrapped action modules (get-kvs-record and run-task) that follow established composition patterns. Adds a getAuthToken() method to the app class for token abstraction and bumps the package version from 0.1.1 to 0.2.0 with updated @pipedream/apify dependency.

Changes

Cohort / File(s) Summary
Version bumps: actions
components/apify_oauth/actions/get-dataset-items/get-dataset-items.mjs, components/apify_oauth/actions/run-actor/run-actor.mjs, components/apify_oauth/actions/scrape-single-url/scrape-single-url.mjs, components/apify_oauth/actions/set-key-value-store-record/set-key-value-store-record.mjs
Version updated from "0.0.2" to "0.0.3" across all files
Version bump: run-task-synchronously action
components/apify_oauth/actions/run-task-synchronously/run-task-synchronously.mjs
Version updated from "0.0.2" to "0.0.3"
New action modules: KVS and task runners
components/apify_oauth/actions/get-kvs-record/get-kvs-record.mjs, components/apify_oauth/actions/run-task/run-task.mjs
New OAuth-wrapped action modules that compose shared common actions with app context using adjustPropDefinitions; both export v0.0.1
App class refactoring
components/apify_oauth/apify_oauth.app.mjs
Added getAuthToken() method and updated _client() to use token: this.getAuthToken() instead of direct oauth_access_token access
Package metadata
components/apify_oauth/package.json
Version bumped from 0.1.1 to 0.2.0; @pipedream/apify dependency updated from ^0.3.1 to ^0.4.0
Version bumps: sources
components/apify_oauth/sources/new-finished-actor-run-instant/new-finished-actor-run-instant.mjs, components/apify_oauth/sources/new-finished-task-run-instant/new-finished-task-run-instant.mjs
Version updated from "0.0.2" to "0.0.3" across all files

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Verify the two new action modules (get-kvs-record and run-task) correctly follow the established composition pattern with proper imports and prop adjustments
  • Confirm adjustPropDefinitions utility is correctly applied in both new files
  • Review token abstraction logic in getAuthToken() and its integration in _client()
  • Validate consistency of version bumps across multiple files

Possibly related PRs

  • #18451: Incremental changes to the same Apify OAuth component files with related version bumps and app client/token handling modifications

Suggested reviewers

  • luancazarine

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Description check ⚠️ Warning The pull request description only references a related PR without providing substantive explanation of the changes made, missing the required 'WHY' section from the template. Add a 'WHY' section explaining the purpose of these Apify_OAuth updates, including what issues or improvements these changes address.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the main change as Apify_OAuth updates related to PR #19528, which aligns with the changeset containing version bumps and new action modules.
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 apify-oauth-changes

📜 Recent review details

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 67eaf60 and b8f9d2a.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (11)
  • components/apify_oauth/actions/get-dataset-items/get-dataset-items.mjs (1 hunks)
  • components/apify_oauth/actions/get-kvs-record/get-kvs-record.mjs (1 hunks)
  • components/apify_oauth/actions/run-actor/run-actor.mjs (1 hunks)
  • components/apify_oauth/actions/run-task-synchronously/run-task-synchronously.mjs (1 hunks)
  • components/apify_oauth/actions/run-task/run-task.mjs (1 hunks)
  • components/apify_oauth/actions/scrape-single-url/scrape-single-url.mjs (1 hunks)
  • components/apify_oauth/actions/set-key-value-store-record/set-key-value-store-record.mjs (1 hunks)
  • components/apify_oauth/apify_oauth.app.mjs (1 hunks)
  • components/apify_oauth/package.json (2 hunks)
  • components/apify_oauth/sources/new-finished-actor-run-instant/new-finished-actor-run-instant.mjs (1 hunks)
  • components/apify_oauth/sources/new-finished-task-run-instant/new-finished-task-run-instant.mjs (1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📚 Learning: 2025-09-12T07:49:36.125Z
Learnt from: matyascimbulka
Repo: PipedreamHQ/pipedream PR: 18308
File: components/apify/actions/run-task-synchronously/run-task-synchronously.mjs:70-0
Timestamp: 2025-09-12T07:49:36.125Z
Learning: The Apify Task object always contains the `options` field according to the official API documentation, making nested destructuring like `options: { build }` safe to use without additional checks.

Applied to files:

  • components/apify_oauth/actions/run-task-synchronously/run-task-synchronously.mjs
  • components/apify_oauth/sources/new-finished-task-run-instant/new-finished-task-run-instant.mjs
  • components/apify_oauth/actions/run-task/run-task.mjs
📚 Learning: 2024-12-12T19:23:09.039Z
Learnt from: jcortes
Repo: PipedreamHQ/pipedream PR: 14935
File: components/sailpoint/package.json:15-18
Timestamp: 2024-12-12T19:23:09.039Z
Learning: When developing Pipedream components, do not add built-in Node.js modules like `fs` to `package.json` dependencies, as they are native modules provided by the Node.js runtime.

Applied to files:

  • components/apify_oauth/package.json
🧬 Code graph analysis (1)
components/apify_oauth/actions/get-kvs-record/get-kvs-record.mjs (8)
components/apify_oauth/actions/get-dataset-items/get-dataset-items.mjs (2)
  • others (6-8)
  • props (9-9)
components/apify_oauth/actions/run-actor/run-actor.mjs (2)
  • others (6-8)
  • props (9-9)
components/apify_oauth/actions/run-task-synchronously/run-task-synchronously.mjs (2)
  • others (6-8)
  • props (9-9)
components/apify_oauth/actions/run-task/run-task.mjs (2)
  • others (6-8)
  • props (9-9)
components/apify_oauth/actions/scrape-single-url/scrape-single-url.mjs (2)
  • others (6-8)
  • props (9-9)
components/apify_oauth/actions/set-key-value-store-record/set-key-value-store-record.mjs (2)
  • others (6-8)
  • props (9-9)
components/apify_oauth/sources/new-finished-actor-run-instant/new-finished-actor-run-instant.mjs (2)
  • others (6-8)
  • props (9-9)
components/apify_oauth/sources/new-finished-task-run-instant/new-finished-task-run-instant.mjs (2)
  • others (6-8)
  • props (9-9)
⏰ 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: Verify TypeScript components
  • GitHub Check: Publish TypeScript components
🔇 Additional comments (12)
components/apify_oauth/actions/scrape-single-url/scrape-single-url.mjs (1)

14-14: LGTM! Version bump aligns with PR objectives.

The version update from 0.0.2 to 0.0.3 is consistent with other OAuth action modules in this PR.

components/apify_oauth/actions/run-task-synchronously/run-task-synchronously.mjs (1)

14-14: LGTM! Version bump aligns with PR objectives.

The version update from 0.0.2 to 0.0.3 is consistent with other OAuth action modules in this PR.

components/apify_oauth/sources/new-finished-task-run-instant/new-finished-task-run-instant.mjs (1)

14-14: LGTM! Version bump aligns with PR objectives.

The version update from 0.0.2 to 0.0.3 is consistent with other OAuth source modules in this PR.

components/apify_oauth/sources/new-finished-actor-run-instant/new-finished-actor-run-instant.mjs (1)

14-14: LGTM! Version bump aligns with PR objectives.

The version update from 0.0.2 to 0.0.3 is consistent with other OAuth source modules in this PR.

components/apify_oauth/actions/set-key-value-store-record/set-key-value-store-record.mjs (1)

14-14: LGTM! Version bump aligns with PR objectives.

The version update from 0.0.2 to 0.0.3 is consistent with other OAuth action modules in this PR.

components/apify_oauth/apify_oauth.app.mjs (2)

12-14: Good abstraction! Token access centralized.

The new getAuthToken() method provides a clean abstraction layer for accessing the OAuth token, making future modifications easier and improving testability.


17-17: LGTM! Client initialization updated correctly.

The _client() method now uses getAuthToken() instead of directly accessing this.$auth.oauth_access_token, maintaining consistency with the new abstraction.

components/apify_oauth/actions/get-kvs-record/get-kvs-record.mjs (1)

1-22: LGTM! New action follows established patterns.

The new get-kvs-record OAuth wrapper follows the same composition pattern used across all other Apify OAuth actions:

  • Imports and adjusts props from the base action
  • Applies OAuth app context
  • Uses consistent key naming convention
  • Starts at version 0.0.1 as expected for a new module

The structure is consistent with existing actions like get-dataset-items, run-actor, and set-key-value-store-record.

components/apify_oauth/package.json (1)

3-3: The dependency version @pipedream/apify@0.4.0 exists and is the latest stable release.

The npm registry confirms that version 0.4.0 is available and properly released. However, verification of the get-kvs-record action availability in this version and any breaking changes requires manual inspection of the package or release notes.

Also applies to: 16-16

components/apify_oauth/actions/run-actor/run-actor.mjs (1)

14-14: LGTM! Version bump aligns with PR objectives.

The version increment from 0.0.2 to 0.0.3 is consistent with the broader OAuth action updates in this PR.

components/apify_oauth/actions/get-dataset-items/get-dataset-items.mjs (1)

14-14: LGTM! Version bump aligns with PR objectives.

The version increment from 0.0.2 to 0.0.3 is consistent with the broader OAuth action updates in this PR.

components/apify_oauth/actions/run-task/run-task.mjs (1)

1-22: LGTM! New OAuth wrapper follows established composition pattern.

The implementation correctly imports the OAuth app and common run-task action, adjusts prop definitions using the utility function, and composes the final export with OAuth-specific overrides. The structure is consistent with other OAuth action wrappers in this module.


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.

❤️ Share

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

Copy link
Collaborator

@jcortes jcortes left a comment

Choose a reason for hiding this comment

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

Hi @michelle0927 lgtm! Ready for QA!

@jcortes jcortes moved this from Ready for PR Review to Ready for QA in Component (Source and Action) Backlog Dec 18, 2025
@vunguyenhung vunguyenhung moved this from Ready for QA to Ready for Release in Component (Source and Action) Backlog Dec 19, 2025
@vunguyenhung
Copy link
Collaborator

Hi everyone, all test cases are passed! Ready for release!

Test reports

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Ready for Release

Development

Successfully merging this pull request may close these issues.

4 participants