Skip to content

release: promote main to stable#382

Closed
devsy-app[bot] wants to merge 13 commits into
releasefrom
main
Closed

release: promote main to stable#382
devsy-app[bot] wants to merge 13 commits into
releasefrom
main

Conversation

@devsy-app
Copy link
Copy Markdown
Contributor

@devsy-app devsy-app Bot commented May 19, 2026

Commits being promoted

2789cee fix(ci): use origin refs in create-release-pr workflow (#381)
13b8742 chore: change license from MPL-2.0 to BSL 1.1 (#380)
6aa6d55 fix(ci): remove release commit to avoid unsigned commit from semantic-release (#379)
3de1827 chore(release): 1.4.0-rc.1 [skip ci]
d96cb97 chore: add semantic-release dependency changelog (#378)
ad6e3f9 fix(ci): re-add changelog and git plugins with signed commit support (#375)
e971f37 fix(ci): remove @semantic-release/git plugin that cannot push to signature-protected branch
c89325a fix(ci): add signed commit config and create-release-pr workflow
d80ae42 fix(ci): resolve semantic-release tag conflict and add changelog+git plugins
c3bf35c fix(ci): remove @semantic-release/git plugin that can't push to protected branch
bcd9208 fix(ci): add package-lock.json for semantic-release workflow
9fcceef feat(ci): migrate from release-please to semantic-release (#374)
0675390 chore(main): release 1.4.0-rc.1 (#373)
f06f4ba fix: update workspace_result.json paths on workspace rename (#369)
33a9d44 fix(ci): advance prerelease manifest past stable release (#372)
ade426e chore(main): release 1.3.0-rc.21 (#370)
d985356 feat(ci): replace single release-please config with dual prerelease/stable setup (#368)
ade278c chore(main): release 1.3.0-rc.20 (#366)
fe42511 chore(ci): tidy workflow comments (#365)
76841a4 feat: auto-overwrite stale agent binary and workspace clean command (#364)
75069e3 chore(main): release 1.3.0-rc.19 (#362)
2f889bb feat(ci): enable autoMergeRequest in release-please action (#363)
77a9373 fix(ci): pass app token via token input for softprops/action-gh-release (#361)

skevetter and others added 12 commits May 18, 2026 16:01
…se (#361)

softprops/action-gh-release@v3 reads the token from INPUT_TOKEN (set by
the 'token' action input) before falling back to GITHUB_TOKEN. Setting
env.GITHUB_TOKEN did not override INPUT_TOKEN so the action used the
default GITHUB_TOKEN instead of the app-token, causing the 403.
Adds autoMergeRequest: true to the googleapis/release-please-action step
so that release-please PRs auto-merge after CI passes.
Co-authored-by: devsy-app[bot] <277138668+devsy-app[bot]@users.noreply.github.com>
…364)

* feat: auto-overwrite agent binary on version mismatch in Docker delivery

When the named Docker volume already contains an agent binary with a
different version, force-overwrite it instead of leaving the stale
binary in place. Logs an INFO message with the old and new versions.
If versions match, skip re-delivery entirely as an optimization.

* feat: add `devsy workspace clean` subcommand

Adds a command to remove the agent binary from the Docker named volume
for a workspace, forcing a fresh injection on next start. Useful when
the binary becomes stale and the automatic version-mismatch detection
is not sufficient.

* fix: extract docker command string to constant (goconst lint)
Co-authored-by: devsy-app[bot] <277138668+devsy-app[bot]@users.noreply.github.com>
…table setup (#368)

Split the release-please configuration into two independent tracks:
- Prerelease track (push to main): creates RC releases with auto-merge
- Stable track (workflow_dispatch): creates stable releases on demand

This eliminates the promote-release.yml workaround that re-tagged RC commits
as stable releases. Instead, release-please natively manages both version
tracks with separate configs, manifests, labels, and changelog paths.
Co-authored-by: devsy-app[bot] <277138668+devsy-app[bot]@users.noreply.github.com>
* fix: update workspace_result.json paths on workspace rename

After renaming a workspace, the cached workspace_result.json still
referenced the old workspace name in ContainerWorkspaceFolder,
LocalWorkspaceFolder, and WorkspaceMount paths. This caused the
container's working directory to point to /workspaces/<old-name>
which doesn't exist, breaking exec and SSH into the workspace.

* fix: also update MergedConfig.WorkspaceMount on workspace rename

Closes a gap where MergedConfig.WorkspaceMount (a *string field) was
not being rewritten during rename, leaving a stale mount path in the
cached result.

* refactor: derive workspace parent dirs dynamically in path replacer

Instead of hardcoding `/workspaces` as the container workspace parent
directory, derive it from SubstitutionContext.ContainerWorkspaceFolder
by stripping the basename. Similarly derive the host parent from
LocalWorkspaceFolder. This makes the rename path replacer work
correctly for devcontainers that use a non-default workspaceFolder.

* test: add unit tests for workspace rename path replacement

* test: add e2e tests for workspace rename path updates

Integration tests verifying that updateWorkspaceResult correctly
rewrites ContainerWorkspaceFolder, LocalWorkspaceFolder, WorkspaceMount
in SubstitutionContext and MergedConfig after a workspace rename.

Covers: basic rename, non-default workspace dirs, nested paths,
same-name idempotent rename, nil MergedConfig/WorkspaceMount, missing
result file, and raw JSON roundtrip.

* fix(lint): wire up testContainerOldWS, testLocalOldWS, testContainerApp, testContainerOld constants

Linter introduced constants but left self-referential definitions and
bare literals in test bodies. Fix init cycles and use constants throughout.

* fix(lint): extract repeated /workspaces/ws-old literal to testContainerWSMount constant
Co-authored-by: devsy-app[bot] <277138668+devsy-app[bot]@users.noreply.github.com>
Replace the dual release-please prerelease/stable configuration with a
single semantic-release setup for simplicity.

- Add .releaserc.json with commit-analyzer, release-notes-generator,
  changelog, github, and git plugins
- Add semantic-release.yml workflow (push to main → RC, push to
  release → stable, plus dry-run workflow_dispatch)
- Remove release-please workflows, configs, and manifests
- Add semantic-release devDependencies to package.json
@netlify
Copy link
Copy Markdown

netlify Bot commented May 19, 2026

Deploy Preview for devsydev canceled.

Name Link
🔨 Latest commit 3d9b0a0
🔍 Latest deploy log https://app.netlify.com/projects/devsydev/deploys/6a0c8b5c79911b0008ff3c3c

@github-actions
Copy link
Copy Markdown

⚠️ This PR contains unsigned commits. To get your PR merged, please sign those commits (git rebase --exec 'git commit -S --amend --no-edit -n' @{upstream}) and force push them to this branch (git push --force-with-lease).

If you're new to commit signing, there are different ways to set it up:

Sign commits with gpg

Follow the steps below to set up commit signing with gpg:

  1. Generate a GPG key
  2. Add the GPG key to your GitHub account
  3. Configure git to use your GPG key for commit signing
Sign commits with ssh-agent

Follow the steps below to set up commit signing with ssh-agent:

  1. Generate an SSH key and add it to ssh-agent
  2. Add the SSH key to your GitHub account
  3. Configure git to use your SSH key for commit signing
Sign commits with 1Password

You can also sign commits using 1Password, which lets you sign commits with biometrics without the signing key leaving the local 1Password process.

Learn how to use 1Password to sign your commits.

Watch the demo

The semantic-release workflow uses actions/setup-node with npm caching,
which requires a lock file to be present. Also switches from npm install
to npm ci for reproducible CI builds.
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.

1 participant