Skip to content

Add Attio access review support - #1756

Draft
gearnode wants to merge 2 commits into
mainfrom
cursor/add-attio-access-review-e37f
Draft

Add Attio access review support#1756
gearnode wants to merge 2 commits into
mainfrom
cursor/add-attio-access-review-e37f

Conversation

@gearnode

@gearnode gearnode commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Summary

  • register Attio as an OAuth and API-key access-review provider
  • map Attio workspace members and resolve workspace names
  • add the PostgreSQL connector_provider migration for ATTIO
  • add Attio branding, bootstrap configuration, and GraphQL exposure
  • cover Attio API behavior with deterministic K7 cassettes

Testing

  • go test ./pkg/accessreview/drivers -run 'TestAttio' -count=1
  • make test MODULE=./pkg/accessreview/drivers
  • make test MODULE=./pkg/connector/provider
  • go test ./pkg/bootstrap ./pkg/coredata ./pkg/server/api/console/v1
  • go test ./pkg/coredata -run '^TestDevice_DeleteOrphans$' -count=1
  • verified ATTIO exists in the migrated PostgreSQL connector_provider enum
  • go test -c -o /tmp/probo-console-e2e.test ./e2e/console
  • npm -w @probo/ui run check
  • ESLint on changed UI files
  • make relay

Manual testing

Storybook visual verification is currently blocked by an existing Tailwind build error: Cannot apply unknown utility class my-2.

Open in Web Open in Cursor 

Summary by cubic

Adds Attio as an access-review provider via OAuth or API key so campaigns can review Attio workspace members and show a human-friendly workspace name. Previously Attio was unsupported; now ATTIO is available in GraphQL and UI, and a DB enum migration enables persistence.

Service +301 -0

  • Registers Attio in the connector registry with OAuth endpoints, probe, user_management:read scope, and API-key flow.
  • Adds a driver that lists /v2/workspace_members, maps Admin/Member/Suspended, sets active/admin flags, and captures IDs and timestamps.
  • Adds a name resolver using /v2/self that returns the workspace name; treats inactive tokens as terminal.
  • Wires bootstrap to read PROBOD_CONNECTOR_ATTIO_CLIENT_ID/PROBOD_CONNECTOR_ATTIO_CLIENT_SECRET and validates required secrets.

Coredata +25 -1

  • Introduces ATTIO as a ConnectorProvider, adds it to providers and validity checks.
  • Migration required: run 20260821T160700Z.sql to extend the connector_provider enum with ATTIO before enabling the provider.

GraphQL API +1 -0

  • Exposes ATTIO in the Console GraphQL ConnectorProvider enum.

Package: ui +50 -0

  • Adds an Attio logo in packages/ui and wires it into ThirdPartyLogo and Storybook.

Tests +173 -1

  • Covers the Attio driver and name resolver with deterministic K7 fixtures.
  • Verifies provider registration defaults and updates e2e to assert the ATTIO provider is present.

Other +3 -0

  • Documents new env vars in .env.example for Attio OAuth.

Written for commit e745590. Summary will update on new commits.

Review in cubic

cursoragent and others added 2 commits August 21, 2026 16:01
Register Attio as an OAuth and API-key access-review source. Map
workspace members into review accounts and identify the connected
workspace so campaigns display a useful source name.

Add K7 cassettes for deterministic API coverage and expose the Attio
brand in the connector catalog.

Signed-off-by: Cursor Agent <cursoragent@cursor.com>

Co-authored-by: Bryan FRIMIN <bryan@frimin.fr>
Extend the PostgreSQL connector provider enum so Attio connectors can be
persisted after the application begins accepting the new provider.

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