Repository navigation
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Automated agent reply (not from Jack). The initial Publish run and its one retry failed because the mock package did not re-export the new SDK constants. This is introduced by the stack, not a known default-branch failure: the matching export test passes at main f2ef3eb and fails at the initial layer-01 revision. The mock now re-exports the constants and types. Validation: a specific export regression failed before the fix and now passes. SDK: 452 passed, 83 skipped. Mock: 238 passed, 88 skipped. Final CLI: 639 passed. All layer heads passed isolated build/typecheck and full CLI tests. CI is pending or still being monitored for the new head |
…managed-credentials-13-readonly-auth
…managed-credentials-13-readonly-auth
…managed-credentials-13-readonly-auth
…managed-credentials-13-readonly-auth
|
Automated agent update (not from Jack). Closing this PR so we can simplify and shorten the managed-credentials CLI implementation before requesting human review again. We will consolidate the current work into one draft PR and use it as the simplification workspace. The existing branch and review history are preserved. A follow-up comment will link the replacement draft. |
|
Automated agent update (not from Jack). Replacement draft: #449 That single draft contains the current managed-credentials CLI implementation and will be used to simplify and shorten the change before human review. This closed PR remains historical context. Its branch and review history are preserved. The replacement is a draft, not ready for approval or merge. |
Automated implementation split from #419 for focused human review.
API-aligned terminology and publication status
Automated terminology update (not from Jack).
The title and scope summary use the agreed API-shaped model. The API-conformance follow-up remains local, uncommitted, and unpushed at the stack tip. This edit changes PR metadata only, not the published code or branch bases. Earlier implementation notes and test results below describe their recorded commits, not proof that the follow-up is published.
A source selects the initial checkout through
source.type: "git"andsource.url. Each group incredentials.githubcontainsrepositories,actions, and optionalactAs. Git and GitHub API actions share that list. File input, SDK requests, persistence, and replay use these same managed-credential fields without translation or regrouping. CLI-onlyrepoJSON keys are rejected. Team, project, resources, and other creation controls remain outside this credential document.Use GitHub actor for the account selected by
actAs. Normal commit credit comes from that same actor, not a separate local Git identity. Both review rows useinferred from active gh accountwhen gh selects the actor.commitAsremains a deprecated explicit override with safety checks.Project Bounds limit the project's maximum access. They do not grant a Sandbox every right in that limit. An unreadable policy stops creation. No Bounds are created or expanded by this workflow.
The API-aligned create action list excludes
git:read. Unsupported read intent is rejected, never converted to write access. Explicit action flags replace the full default set. They do not acquire hidden Git permissions.Review scope
Provide read-only Vercel authentication and scope discovery for dry-run. A preview never starts login, refreshes credentials, creates a default project, or writes configuration. Keep explicit flags, OIDC claims, and linked-project context ahead of fallback discovery. Do not silently replace a selected token with broader user credentials.
This is layer 13/17. Review the diff against the PR base, not against main. Each layer includes its owning tests and a changeset. Earlier layers do not enable the command surface. There are no dependency additions.
Stack
Base: #431. The next layer targets this branch. Merge in sequence after review, not as one combined change.
Validation
Isolated clean-worktree validation at
d614ebe3da4b8b57ea18aa793b62915e24aec3d9: CLI build, typecheck and full tests passed. Focus: existing auth/scope suites plus read-only regression tests demonstrated failing before the fix.Test summary: 575 passed (575).
The first layer also passed SDK build, typecheck and the full SDK suite. Network/provider behavior is mocked. No production policy, Sandbox or flag was changed.
Deliberate limits
Legacy CLI credential flags and legacy configuration normalization are not carried forward. Deployed SDK/API compatibility is separate and retained.
Backend capability and rollout remain separate from CLI terminology. The agreed creation contract excludes
git:read. Unsupported access must stop instead of gaining write permissions. Project Bounds reads require authorization. An unreadable policy is not treated as having no Bounds. This workflow does not provision or expand project Bounds.Backend handoff: https://github.com/vercel/api/blob/scubbo/managed-credentials-api-devbox-context/_doc/managed-credentials-devbox-context.md
Navigation: previous #431; next #433. Full stack index.
Latest validation:
331348f6c9a563e8093e57a95a7c0e1894371244passed isolated CLI build, typecheck and all tests after the automated review/CI fixes. Ancestor fixes are propagated by merges, not force pushes. The SDK/mock export parity failure is fixed in layer 01; owning review findings are fixed in their own layers. See the current checks and full stack index for remote CI outcomes.Guess correction follow-up
Automated implementation update (not from Jack).
Melkey suggested printing the full explicit-flags command after a user rejects an inferred proposal. Discussion.
Carry the review-flow update from #431 into this dependent layer without changing authentication behavior.
Validation at
c36328b36d84e8fb8c16c6eac8325d7feceeca3b: 40 focused review/auth/scope tests passed; CLI typecheck and build passed. Remote CI and automated reviews are monitored separately.GitHub namespace, Bounds consent, and access presets
Automated implementation update (not from Jack).
Carry the namespace and no-Bounds flow updates without introducing login, refresh, or project creation in dry-run.
The granular flags use
--credentials-github-*. The access preset layer owns--github-access. In the API-aligned follow-up,writeselectsgit:writeplus the 11 supported GitHub API actions.readand--credentials-github-no-writestop because create does not acceptgit:read. No preset adds workflow-file write access. See the publication status above before comparing this description with the published code.The stack retains Melkey's suggested explicit-command recovery after rejection. Discussion. Existing attribution and review history above are retained.
Current head:
b21f409db0c9c178c6bd5f4b922a33da66068245. Local validation: Test Files 49 passed (49); Tests 620 passed (620). CLI build and typecheck passed; namespace-only comment follow-ups were checked separately.Saved-login preview in the final layer
Automated implementation update (not from Jack).
PR #440 adds the follow-up for
create --enable-github-credentials --dry-run. The final layer reuses saved Vercel login to discover an existing default team/project with read-only API calls. It does not refresh tokens or create a missing project. That follow-up also applies the final enable-flag name in help, examples, diagnostics, and rejected-command recovery. This note does not expand this layer's code scope. Existing Melkey attribution and review history are retained.