Skip to content

Add first-class non-secret variables alongside secrets - #10

Merged
achadha235 merged 2 commits into
mainfrom
cursor/variables-vs-secrets-46d0
Jul 24, 2026
Merged

Add first-class non-secret variables alongside secrets#10
achadha235 merged 2 commits into
mainfrom
cursor/variables-vs-secrets-46d0

Conversation

@achadha235

Copy link
Copy Markdown
Owner

Summary

Adds a uniform variables surface so SecretSync can publish non-secret config without connector-specific deployment shapes.

  • Top-level variables: (same env / allowEmpty shape as secrets); ids must not overlap with secrets:
  • Deployments use secrets: and/or variables: maps; sets may include either kind
  • Connectors derive secure vs plaintext behavior from kind:
    • GitHub: Actions Secrets API vs Variables API
    • Vercel: type: sensitive vs encrypted (removes scope.sensitive)
    • SST: secrets only; check_kind_support(variable) returns an actionable Issue pointing at Linkables
  • Validate enforces map membership, deprecated Vercel sensitive, and connector kind support
  • Prune inventory is keyed by (destination, scope, kind)

Breaking

Vercel scope.sensitive is rejected at validate. Move sensitive values under deployment.secrets and plaintext under deployment.variables.

Tests

  • 164 non-smoke tests passing
  • New fixtures/unit/integration coverage for overlap, wrong map, SST reject, Vercel migration, GitHub variables CRUD, Vercel type-from-kind
Open in Web Open in Cursor 

cursoragent and others added 2 commits July 24, 2026 08:02
Introduce top-level variables with disjoint ids from secrets, uniform
deployment.secrets/variables maps, and connector-derived secure vs
plaintext paths. Vercel drops scope.sensitive (type from kind); GitHub
gains Actions Variables API support; SST rejects variables with a
Linkable-focused Issue.

Co-authored-by: Abhishek Chadha <achadha235@users.noreply.github.com>
CI failed on ubuntu and macos at `uv run ruff format --check .`
because models.py still had a multi-line f-string that ruff collapses.

Co-authored-by: Abhishek Chadha <achadha235@users.noreply.github.com>
@achadha235
achadha235 marked this pull request as ready for review July 24, 2026 20:02
@achadha235
achadha235 merged commit b53d47c into main Jul 24, 2026
2 checks passed
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