Add GitLab Issues as a backlog manager option#643
Open
rcfrias wants to merge 1 commit into
Open
Conversation
`sandcastle init` now offers GitLab Issues alongside GitHub Issues and Beads. The new entry installs `glab` in the sandbox Dockerfile, substitutes `glab issue ...` commands into the scaffolded prompts, and writes a GITLAB_TOKEN (plus commented GITLAB_HOST for self-hosted) into .env.example. `glab issue close` does not accept a comment, so `CLOSE_TASK_COMMAND` is widened from `string` to `readonly string[]` and rendered as a `&&`-joined shell pipeline at substitution time. The GitHub and Beads entries become single-element arrays. A new `--backlog-manager <name>` flag on `sandcastle init` skips the interactive selection.
|
@rcfrias is attempting to deploy a commit to the Matt Pocock's projects Team on Vercel. A member of the Team first needs to authorize it. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
gitlab-issuesbacklog manager that drives theglabCLI:sandcastle initoffers it alongside GitHub Issues and Beads, the sandboxDockerfile/Containerfileinstallsglab, and the scaffold writesGITLAB_TOKEN(with a commentedGITLAB_HOSTfor self-hosted instances) into.env.example.glab issue closedoes not accept a comment, soCLOSE_TASK_COMMANDwidens fromstringtoreadonly string[]and renders as a&&-joined shell pipeline (glab issue note <ID> -m "..." && glab issue close <ID>). The GitHub and Beads entries become single-element arrays.--backlog-manager <name>flag onsandcastle initskips the interactive prompt (parallels the existing--agent/--templateflags).Design notes
LIST_TASKS_COMMANDproduces[{number, title, body, labels, comments}]. To keep the templates provider-agnostic, GitLab's command reshapesglab issue list -O jsonviajqinto the same shape (number: .iid,body: .description).commentsis rendered as[]; agents fetch full comments viaVIEW_TASK_COMMAND(glab issue view <ID> --comments)..debfor the container architecture (amd64/arm64), so the sameDockerfileworks on both Apple Silicon and Linux hosts.cli.tsgains aglab label createbranch alongside the existinggh label createone, gated onselectedBacklogManager.name. The--label Sandcastlestripping inrewritePromptFilesalready handles the long-form flag, so it works for GitLab too without changes.Test plan
npx vitest run src/InitService.test.ts— 161/161 pass, including 11 new tests covering registry shape, scaffold output across all 5 templates, Dockerfile install, and.env.exampleshape for GitLab.src/cli.test.ts— added 2 tests for--backlog-managerflag (--helpexposure + unknown-value error).prettier --checkclean on changed files; lint-staged ran on commit.tsgo --noEmit— no new errors; only the pre-existing@daytona/sdkerrors remain.gitlab-issuesselected (not run in this PR — the CI image build will exercise it).Changeset
.changeset/add-gitlab-backlog-manager.md(patch).