Skip to content

Add Rippling access review support - #1748

Draft
gearnode wants to merge 3 commits into
mainfrom
cursor/add-rippling-access-review-3520
Draft

Add Rippling access review support#1748
gearnode wants to merge 3 commits into
mainfrom
cursor/add-rippling-access-review-3520

Conversation

@gearnode

@gearnode gearnode commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Summary

  • register Rippling as an API-token access review provider
  • list Rippling user accounts with active-state and creation metadata
  • follow cursor pagination while preventing cross-host token forwarding
  • cover the provider flow with a synthetic K7 cassette plus focused security tests

Testing

  • go test ./pkg/accessreview/drivers ./pkg/connector/provider ./pkg/coredata ./pkg/server/api/console/v1
  • go test -race ./pkg/accessreview/drivers ./pkg/connector/provider
  • go test -race -v ./pkg/accessreview/drivers -run 'TestRippling'
  • go vet ./pkg/accessreview/drivers ./pkg/connector/provider ./pkg/coredata ./pkg/server/api/console/v1
  • make go-fmt

make lint cannot complete in the cloud image because golangci-lint is not installed; the available targeted vet and formatting checks pass.

Open in Web Open in Cursor 

Summary by cubic

Adds Rippling as an API‑token access review provider and adds the DB enum needed to store it. Lists Rippling users with safe cursor pagination and surfaces the provider in coredata and the Console GraphQL enum.

Tests +165 -0

  • Covers account mapping, multi‑page pagination, cross‑host next‑link rejection, error body redaction, and provider registration returning a RipplingDriver.
  • Uses a synthetic K7 cassette for /users pagination.

Coredata +25 -1

  • Adds ConnectorProviderRippling to the enum, provider list, and IsValid().
  • Introduces a migration to extend the PostgreSQL connector_provider type with RIPPLING. Run migrations before creating Rippling connectors.

GraphQL API +2 -0

  • Adds RIPPLING to the ConnectorProvider enum mapped to coredata.ConnectorProviderRippling.

Service +276 -0

  • Registers the Rippling provider in the builtin registry with API base https://rest.ripplingapis.com and probe https://rest.ripplingapis.com/users/.
  • Implements RipplingDriver to fetch /users, prefer WORK emails, derive full name, set MFAStatusUnknown and AccountTypeUser, parse created_at, and follow next_link only on the same host; returns errors on non‑2xx without leaking response bodies.

Written for commit 09a8bca. Summary will update on new commits.

Review in cubic

cursoragent and others added 3 commits August 21, 2026 15:29
Signed-off-by: Cursor Agent <cursoragent@cursor.com>

Co-authored-by: Bryan FRIMIN <bryan@frimin.fr>
Signed-off-by: Cursor Agent <cursoragent@cursor.com>

Co-authored-by: Bryan FRIMIN <bryan@frimin.fr>
Signed-off-by: Cursor Agent <cursoragent@cursor.com>

Co-authored-by: Bryan FRIMIN <bryan@frimin.fr>
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.

2 participants