New Components - sibfly#21294
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 1 Skipped Deployment
|
|
Thank you so much for submitting this! We've added it to our backlog to review, and our team has been notified. |
|
Thanks for submitting this PR! When we review PRs, we follow the Pipedream component guidelines. If you're not familiar, here's a quick checklist:
|
📝 WalkthroughWalkthroughAdds a new Sibfly Pipedream component consisting of an app client ( ChangesSibfly App and Actions
Sequence Diagram(s)sequenceDiagram
participant User
participant Action
participant SibflyApp
participant SibflyAPI
User->>Action: run(address or lat/lon)
Action->>Action: validate input
Action->>SibflyApp: checkGroundMotion/checkCoverage(params)
SibflyApp->>SibflyApp: _location(), _headers()
SibflyApp->>SibflyAPI: _makeRequest(path, params)
SibflyAPI-->>SibflyApp: response data
SibflyApp-->>Action: response
Action->>Action: build $summary
Action-->>User: return response
Estimated code review effort🎯 2 (Simple) | ⏱️ ~15 minutes Suggested reviewers
🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (3 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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 |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@components/sibfly/actions/check-coverage/check-coverage.mjs`:
- Around line 36-38: The pre-flight validation in checkCoverageAction is
throwing a generic Error for missing address/lat/lon input, but this repo
expects user-input validation failures to use ConfigurationError from
`@pipedream/platform`. Update the validation branch in checkCoverageAction to
raise ConfigurationError instead of Error, keeping the same message and
preserving the existing address/lat/lon check.
In `@components/sibfly/actions/check-ground-motion/check-ground-motion.mjs`:
- Around line 42-44: The pre-flight validation in checkGroundMotion should use
the same ConfigurationError pattern as check-coverage.mjs instead of throwing a
generic Error. Update the address/coordinate guard in the checkGroundMotion
logic to raise ConfigurationError with the same message, and keep the validation
flow consistent with the other action’s configuration checks. Use the existing
checkGroundMotion method and any imported ConfigurationError symbol to locate
and update the exception type.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
Run ID: a1e0e5dc-b258-4ab2-bc17-e20d40db4c53
📒 Files selected for processing (4)
components/sibfly/actions/check-coverage/check-coverage.mjscomponents/sibfly/actions/check-ground-motion/check-ground-motion.mjscomponents/sibfly/package.jsoncomponents/sibfly/sibfly.app.mjs
| if (!this.address && (!this.lat || !this.lon)) { | ||
| throw new Error("Provide an Address, or both Latitude and Longitude."); | ||
| } |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win
Use ConfigurationError for pre-flight validation instead of generic Error.
This is a pre-call user-input validation check (missing address/lat/lon), which the repo convention handles via ConfigurationError from @pipedream/platform rather than a plain Error.
♻️ Proposed fix
-import app from "../../sibfly.app.mjs";
+import { ConfigurationError } from "`@pipedream/platform`";
+import app from "../../sibfly.app.mjs"; if (!this.address && (!this.lat || !this.lon)) {
- throw new Error("Provide an Address, or both Latitude and Longitude.");
+ throw new ConfigurationError("Provide an Address, or both Latitude and Longitude.");
}📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| if (!this.address && (!this.lat || !this.lon)) { | |
| throw new Error("Provide an Address, or both Latitude and Longitude."); | |
| } | |
| import { ConfigurationError } from "`@pipedream/platform`"; | |
| import app from "../../sibfly.app.mjs"; | |
| if (!this.address && (!this.lat || !this.lon)) { | |
| throw new ConfigurationError("Provide an Address, or both Latitude and Longitude."); | |
| } |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@components/sibfly/actions/check-coverage/check-coverage.mjs` around lines 36
- 38, The pre-flight validation in checkCoverageAction is throwing a generic
Error for missing address/lat/lon input, but this repo expects user-input
validation failures to use ConfigurationError from `@pipedream/platform`. Update
the validation branch in checkCoverageAction to raise ConfigurationError instead
of Error, keeping the same message and preserving the existing address/lat/lon
check.
Source: Path instructions
| if (!this.address && (!this.lat || !this.lon)) { | ||
| throw new Error("Provide an Address, or both Latitude and Longitude."); | ||
| } |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win
Same ConfigurationError concern as check-coverage.mjs.
Same pre-flight validation pattern — should throw ConfigurationError instead of a generic Error.
♻️ Proposed fix
-import app from "../../sibfly.app.mjs";
+import { ConfigurationError } from "`@pipedream/platform`";
+import app from "../../sibfly.app.mjs"; if (!this.address && (!this.lat || !this.lon)) {
- throw new Error("Provide an Address, or both Latitude and Longitude.");
+ throw new ConfigurationError("Provide an Address, or both Latitude and Longitude.");
}📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| if (!this.address && (!this.lat || !this.lon)) { | |
| throw new Error("Provide an Address, or both Latitude and Longitude."); | |
| } | |
| import { ConfigurationError } from "`@pipedream/platform`"; | |
| import app from "../../sibfly.app.mjs"; | |
| if (!this.address && (!this.lat || !this.lon)) { | |
| throw new ConfigurationError("Provide an Address, or both Latitude and Longitude."); | |
| } |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@components/sibfly/actions/check-ground-motion/check-ground-motion.mjs` around
lines 42 - 44, The pre-flight validation in checkGroundMotion should use the
same ConfigurationError pattern as check-coverage.mjs instead of throwing a
generic Error. Update the address/coordinate guard in the checkGroundMotion
logic to raise ConfigurationError with the same message, and keep the validation
flow consistent with the other action’s configuration checks. Use the existing
checkGroundMotion method and any imported ConfigurationError symbol to locate
and update the exception type.
Source: Path instructions
|
Hello @james-sib, thank you for your contribution! If you haven't already, would you mind submitting an app request for Sibfly to https://github.com/PipedreamHQ/pipedream/issues/new?template=app---service-integration.md? Once we have a base integration in place, we can review and test this PR. Thanks! |
Adds a SibFly app + two actions.
SibFly returns satellite-measured ground motion (subsidence/uplift, mm/year) for any US address, from NASA OPERA Sentinel-1 InSAR.
Auth = SibFly API key (
sf_live_...). App slugsibflywill need managed auth stood up. Docs: https://sibfly.com/docs · OpenAPI: https://sibfly.com/openapi.jsonSummary by CodeRabbit