ci: weekly SDK compliance sync via supabase/sdk reusable workflow#1606
Conversation
📝 WalkthroughSummary by CodeRabbit
WalkthroughAdds a GitHub Actions workflow named for compliance synchronization. It runs weekly on Mondays at 06:00 UTC or through manual dispatch, grants write permissions for repository contents and pull requests, and delegates execution to 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: 1
🤖 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 @.github/workflows/sync-compliance.yml:
- Around line 37-70: Update the workflow before the “Append new capability IDs”
step to detect whether the sync branch already exists remotely, securely fetch
it, and check it out when present; otherwise create the branch from the default
branch. Run sync_compliance_matrix.py against that checked-out branch so
existing manual triage is preserved, and update the “Create pull request” step
to push without relying on a force-with-lease against an unavailable tracking
reference.
🪄 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: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 3deb1d1d-389f-444d-98b9-2697443b9bdd
📒 Files selected for processing (2)
.github/scripts/sync_compliance_matrix.py.github/workflows/sync-compliance.yml
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 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 @.github/workflows/sync-compliance.yml:
- Around line 13-16: Update the reusable workflow reference in
sync-compliance.yml from the mutable main branch to a reviewed, full immutable
commit SHA, preserving the existing workflow path, secrets, and permissions.
🪄 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: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 88d8dfb8-7b4c-49eb-9272-6c1186dca42b
📒 Files selected for processing (1)
.github/workflows/sync-compliance.yml
What
Adds a weekly workflow that keeps
sdk-compliance.yamlin sync with new capability IDs added to the canonical spec at https://github.com/supabase/sdk.The sync logic lives centrally in
supabase/sdkas a reusable workflow (see supabase/sdk#65), mirroring the existingvalidate-sdk-compliance-dart.ymlpattern. This repo just adds a thin caller:.github/workflows/sync-compliance.yml— runs Mondays 06:00 UTC (and on manual dispatch), callssupabase/sdk/.github/workflows/sync-sdk-compliance.yml@main, passing this repo'sAPP_ID/PRIVATE_KEYapp-token secrets so the sync PR is opened under our own token.The reusable workflow diffs the canonical feature IDs against the keys already in
sdk-compliance.yaml, inserts any missing ones asnot_implementednext to theirarea.group.siblings (correct section, no guessing), and opens/updates a PR here.Why centralized
The diff/insert logic is language-agnostic, so it belongs in
supabase/sdkwhere every SDK can share one implementation. Each SDK repo adds the same thin caller and runs on its own token, so no cross-repo permissions are needed.Notes
@mainreference resolves once it lands).not_implemented; real status and symbols are triaged by a human //parity.