Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
6c563ec
chore: sync dev with main (#71)
vig-os-release-app[bot] Mar 23, 2026
785f8a2
chore: sync dev with main (#73)
vig-os-release-app[bot] Mar 23, 2026
42f98fb
chore: deploy 0.3.1-rc14
commit-action-bot[bot] Mar 23, 2026
cf2c462
chore: deploy 0.3.1-rc14 (#74)
vig-os-release-app[bot] Mar 23, 2026
d26edb4
chore: freeze changelog for release 0.3.1
commit-action-bot[bot] Mar 23, 2026
a14f954
chore: sync issues and PRs
commit-action-bot[bot] Mar 24, 2026
35510ac
chore: deploy 0.3.1-rc15
commit-action-bot[bot] Mar 24, 2026
2e1e137
chore: deploy 0.3.1-rc15 (#76)
vig-os-release-app[bot] Mar 24, 2026
3208580
chore: freeze changelog for release 0.3.1
commit-action-bot[bot] Mar 24, 2026
c6301ce
chore: deploy 0.3.1-rc17
commit-action-bot[bot] Mar 24, 2026
d3bc69b
chore: deploy 0.3.1-rc17 (#79)
vig-os-release-app[bot] Mar 24, 2026
ff4fbd6
chore: freeze changelog for release 0.3.1
commit-action-bot[bot] Mar 24, 2026
b8a2982
chore: sync dev with main (#83)
vig-os-release-app[bot] Mar 24, 2026
22f4a62
chore: deploy 0.3.1-rc18
commit-action-bot[bot] Mar 24, 2026
57bf106
chore: deploy 0.3.1-rc18 (#84)
vig-os-release-app[bot] Mar 24, 2026
fa8fc50
chore: freeze changelog for release 0.3.1
commit-action-bot[bot] Mar 24, 2026
bfbab82
chore: sync issues and PRs
commit-action-bot[bot] Mar 25, 2026
c6b0bbb
chore: deploy 0.3.1-rc20
commit-action-bot[bot] Mar 25, 2026
eb20269
chore: deploy 0.3.1-rc20 (#86)
vig-os-release-app[bot] Mar 25, 2026
d115fe6
chore: freeze changelog for release 0.3.1
commit-action-bot[bot] Mar 25, 2026
27da323
chore: sync dev with main (#90)
vig-os-release-app[bot] Mar 25, 2026
9ea6163
chore: deploy 0.3.1-rc21
commit-action-bot[bot] Mar 25, 2026
0bdc308
chore: deploy 0.3.1-rc21 (#91)
vig-os-release-app[bot] Mar 25, 2026
4fe1cf6
chore: freeze changelog for release 0.3.1
commit-action-bot[bot] Mar 25, 2026
651c0ab
chore: prepare release 0.3.1
commit-action-bot[bot] Mar 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions .devcontainer/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Add project-owned `release-extension.yml` stub and preserve it during `init-workspace.sh --force` upgrades
- Add `validate-contract` composite action for single-source contract version validation
- Add downstream release contract documentation and GHCR extension example in `docs/DOWNSTREAM_RELEASE.md`
- **`jq` in devcontainer image** ([#425](https://github.com/vig-os/devcontainer/issues/425))
- Install the `jq` CLI in the GHCR image so containerized workflows (e.g. `release-core` validate / downstream Release Core) can pipe JSON through `jq`

### Changed

Expand Down Expand Up @@ -70,6 +72,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Bump `actions/cache` restore/save pins from `5.0.3` to `5.0.4` in `sync-issues.yml`
- **Dependabot dependency update batch** ([#413](https://github.com/vig-os/devcontainer/pull/413))
- Bump `@devcontainers/cli` from `0.84.0` to `0.84.1`
- **cursor-agent install is now resilient to CDN failures** ([#434](https://github.com/vig-os/devcontainer/issues/434))
- Retries 3 times with backoff before giving up
- Build succeeds without cursor-agent when Cursor's CDN is unavailable

### Fixed

Expand All @@ -91,6 +96,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- **Sync-main-to-dev conflict detection uses merge-tree** ([#410](https://github.com/vig-os/devcontainer/issues/410))
- Replace working-tree trial merge with `git merge-tree --write-tree` so clean merges are not mislabeled as conflicts
- Enable auto-merge when dev merges cleanly with main; print merge-tree output on conflicts; fail the step on unexpected errors
- **Smoke-test release phase 2 branch-not-found failure** ([#419](https://github.com/vig-os/devcontainer/issues/419))
- Merge phase 2 (`on-release-pr-merge.yml`) back into `repository-dispatch.yml` so the release runs while `release/<version>` still exists, matching the normal release flow
- Remove `on-release-pr-merge.yml` from the smoke-test template
- **Pinned commit-action to v0.2.0** ([#354](https://github.com/vig-os/devcontainer/issues/354))
- Updated workflow pins from `vig-os/commit-action@c0024cb` (v0.1.5) to `1bc004353d08d9332a0cb54920b148256220c8e0` (v0.2.0) in release, sync-issues, prepare-release, and smoke-test workflows
- Upstream v0.2.0 adds bounded retry with exponential backoff for transient GitHub API failures (configurable `MAX_ATTEMPTS` and delay bounds)
- Efficient multi-file commits via `createTree` inline content for text files, binary blobs only when needed, and chunked tree creation for large change sets
- Exports `isBinaryFile`, `getFileMode`, and `TREE_ENTRY_CHUNK_SIZE` for library use; sequential binary blob creation to reduce secondary rate-limit bursts

- **Release finalization now commits generated docs and refreshes PR content** ([#300](https://github.com/vig-os/devcontainer/issues/300))
- Final release automation regenerates docs before committing so pre-commit `generate-docs` does not fail CI with tracked file diffs
Expand Down Expand Up @@ -159,6 +172,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Stop overwriting `CHANGELOG.md` with a minimal stub in `assets/smoke-test/.github/workflows/repository-dispatch.yml`
- Require the workspace `CHANGELOG.md` from `init-workspace` so downstream `prepare-release` validation matches shipped layout
- When the first changelog section is `## [X.Y.Z] - …` (TBD or a release date), remap that top version header to `## Unreleased` so downstream `prepare-release` can run
- **Smoke-test dispatch release validate no longer runs docker inside devcontainer** ([#421](https://github.com/vig-os/devcontainer/issues/421))
- Remove redundant `docker manifest inspect` step from `release-core.yml` validate job (container image is already proof of accessibility; `resolve-image` validates on the runner)
- Set `GH_REPO` for rollback `gh issue create` in workspace `release.yml` when git checkout is skipped
- **Container image tests expect current uv minor line** ([#423](https://github.com/vig-os/devcontainer/issues/423))
- Update `tests/test_image.py` `EXPECTED_VERSIONS["uv"]` to match uv 0.11.x from the latest release install path in the image build
- **Container image tests expect current just minor line** ([#423](https://github.com/vig-os/devcontainer/issues/423))
- Update `tests/test_image.py` `EXPECTED_VERSIONS["just"]` to match just 1.48.x from the latest release install path in the image build
- **Smoke-test dispatch approves release PR before downstream release** ([#430](https://github.com/vig-os/devcontainer/issues/430))
- Grant `pull-requests: write` on `ready-release-pr` and approve with `github.token` (`github-actions[bot]`)
- Satisfy `release-core.yml` approval gate without the release app self-approving its own PR
- **commit-action retries enabled for transient git ref API failures** ([#436](https://github.com/vig-os/devcontainer/issues/436))
- Set `MAX_ATTEMPTS: "3"` on every `vig-os/commit-action` step so v0.2.0 bounded retry actually runs (default was 1)
- Covers smoke-test deploy, prepare-release, release finalization, sync-issues, and workspace templates
- **Release validation fails when bot approves PR** ([#438](https://github.com/vig-os/devcontainer/issues/438))
- Add fallback to individual PR review check when `reviewDecision` is empty (bot approvals not counted by branch protection)

### Security

Expand Down
2 changes: 1 addition & 1 deletion .vig-os
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# vig-os devcontainer configuration
DEVCONTAINER_VERSION=0.3.1-rc13
DEVCONTAINER_VERSION=0.3.1-rc21
28 changes: 28 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Add project-owned `release-extension.yml` stub and preserve it during `init-workspace.sh --force` upgrades
- Add `validate-contract` composite action for single-source contract version validation
- Add downstream release contract documentation and GHCR extension example in `docs/DOWNSTREAM_RELEASE.md`
- **`jq` in devcontainer image** ([#425](https://github.com/vig-os/devcontainer/issues/425))
- Install the `jq` CLI in the GHCR image so containerized workflows (e.g. `release-core` validate / downstream Release Core) can pipe JSON through `jq`

### Changed

Expand Down Expand Up @@ -70,6 +72,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Bump `actions/cache` restore/save pins from `5.0.3` to `5.0.4` in `sync-issues.yml`
- **Dependabot dependency update batch** ([#413](https://github.com/vig-os/devcontainer/pull/413))
- Bump `@devcontainers/cli` from `0.84.0` to `0.84.1`
- **cursor-agent install is now resilient to CDN failures** ([#434](https://github.com/vig-os/devcontainer/issues/434))
- Retries 3 times with backoff before giving up
- Build succeeds without cursor-agent when Cursor's CDN is unavailable

### Fixed

Expand All @@ -91,6 +96,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- **Sync-main-to-dev conflict detection uses merge-tree** ([#410](https://github.com/vig-os/devcontainer/issues/410))
- Replace working-tree trial merge with `git merge-tree --write-tree` so clean merges are not mislabeled as conflicts
- Enable auto-merge when dev merges cleanly with main; print merge-tree output on conflicts; fail the step on unexpected errors
- **Smoke-test release phase 2 branch-not-found failure** ([#419](https://github.com/vig-os/devcontainer/issues/419))
- Merge phase 2 (`on-release-pr-merge.yml`) back into `repository-dispatch.yml` so the release runs while `release/<version>` still exists, matching the normal release flow
- Remove `on-release-pr-merge.yml` from the smoke-test template
- **Pinned commit-action to v0.2.0** ([#354](https://github.com/vig-os/devcontainer/issues/354))
- Updated workflow pins from `vig-os/commit-action@c0024cb` (v0.1.5) to `1bc004353d08d9332a0cb54920b148256220c8e0` (v0.2.0) in release, sync-issues, prepare-release, and smoke-test workflows
- Upstream v0.2.0 adds bounded retry with exponential backoff for transient GitHub API failures (configurable `MAX_ATTEMPTS` and delay bounds)
- Efficient multi-file commits via `createTree` inline content for text files, binary blobs only when needed, and chunked tree creation for large change sets
- Exports `isBinaryFile`, `getFileMode`, and `TREE_ENTRY_CHUNK_SIZE` for library use; sequential binary blob creation to reduce secondary rate-limit bursts

- **Release finalization now commits generated docs and refreshes PR content** ([#300](https://github.com/vig-os/devcontainer/issues/300))
- Final release automation regenerates docs before committing so pre-commit `generate-docs` does not fail CI with tracked file diffs
Expand Down Expand Up @@ -159,6 +172,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Stop overwriting `CHANGELOG.md` with a minimal stub in `assets/smoke-test/.github/workflows/repository-dispatch.yml`
- Require the workspace `CHANGELOG.md` from `init-workspace` so downstream `prepare-release` validation matches shipped layout
- When the first changelog section is `## [X.Y.Z] - …` (TBD or a release date), remap that top version header to `## Unreleased` so downstream `prepare-release` can run
- **Smoke-test dispatch release validate no longer runs docker inside devcontainer** ([#421](https://github.com/vig-os/devcontainer/issues/421))
- Remove redundant `docker manifest inspect` step from `release-core.yml` validate job (container image is already proof of accessibility; `resolve-image` validates on the runner)
- Set `GH_REPO` for rollback `gh issue create` in workspace `release.yml` when git checkout is skipped
- **Container image tests expect current uv minor line** ([#423](https://github.com/vig-os/devcontainer/issues/423))
- Update `tests/test_image.py` `EXPECTED_VERSIONS["uv"]` to match uv 0.11.x from the latest release install path in the image build
- **Container image tests expect current just minor line** ([#423](https://github.com/vig-os/devcontainer/issues/423))
- Update `tests/test_image.py` `EXPECTED_VERSIONS["just"]` to match just 1.48.x from the latest release install path in the image build
- **Smoke-test dispatch approves release PR before downstream release** ([#430](https://github.com/vig-os/devcontainer/issues/430))
- Grant `pull-requests: write` on `ready-release-pr` and approve with `github.token` (`github-actions[bot]`)
- Satisfy `release-core.yml` approval gate without the release app self-approving its own PR
- **commit-action retries enabled for transient git ref API failures** ([#436](https://github.com/vig-os/devcontainer/issues/436))
- Set `MAX_ATTEMPTS: "3"` on every `vig-os/commit-action` step so v0.2.0 bounded retry actually runs (default was 1)
- Covers smoke-test deploy, prepare-release, release finalization, sync-issues, and workspace templates
- **Release validation fails when bot approves PR** ([#438](https://github.com/vig-os/devcontainer/issues/438))
- Add fallback to individual PR review check when `reviewDecision` is empty (bot approvals not counted by branch protection)

### Security

Expand Down
28 changes: 28 additions & 0 deletions docs/issues/issue-78.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
type: issue
state: open
created: 2026-03-24T07:32:47Z
updated: 2026-03-24T07:32:47Z
author: vig-os-release-app[bot]
author_url: https://github.com/vig-os-release-app[bot]
url: https://github.com/vig-os/devcontainer-smoke-test/issues/78
comments: 0
labels: bug
assignees: none
milestone: none
projects: none
parent: none
children: none
synced: 2026-03-25T04:21:43.243Z
---

# [Issue 78]: [Release 0.3.1 failed — automatic rollback](https://github.com/vig-os/devcontainer-smoke-test/issues/78)

Release 0.3.1 failed during the automated release workflow.

**Workflow Run:** [View logs](https://github.com/vig-os/devcontainer-smoke-test/actions/runs/23478133458)
**Release PR:** #

**Automatic rollback attempted:**
- Release branch reset to pre-finalization state
- Release tag deleted (if created)
28 changes: 28 additions & 0 deletions docs/issues/issue-81.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
type: issue
state: open
created: 2026-03-24T15:08:09Z
updated: 2026-03-24T15:08:09Z
author: vig-os-release-app[bot]
author_url: https://github.com/vig-os-release-app[bot]
url: https://github.com/vig-os/devcontainer-smoke-test/issues/81
comments: 0
labels: bug
assignees: none
milestone: none
projects: none
parent: none
children: none
synced: 2026-03-25T04:21:42.915Z
---

# [Issue 81]: [Release 0.3.1 failed — automatic rollback](https://github.com/vig-os/devcontainer-smoke-test/issues/81)

Release 0.3.1 failed during the automated release workflow.

**Workflow Run:** [View logs](https://github.com/vig-os/devcontainer-smoke-test/actions/runs/23496632796)
**Release PR:** #80

**Automatic rollback attempted:**
- Release branch reset to pre-finalization state
- Release tag deleted (if created)
27 changes: 24 additions & 3 deletions docs/pull-requests/pr-61.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
type: pull_request
state: open
state: closed
branch: release/0.3.1 → main
created: 2026-03-22T13:33:40Z
updated: 2026-03-22T13:34:06Z
updated: 2026-03-23T12:30:16Z
author: vig-os-release-app[bot]
author_url: https://github.com/vig-os-release-app[bot]
url: https://github.com/vig-os/devcontainer-smoke-test/pull/61
Expand All @@ -12,7 +12,7 @@ labels: release-kind:candidate
assignees: none
milestone: none
projects: none
synced: 2026-03-23T04:28:45.134Z
synced: 2026-03-24T04:20:23.957Z
---

# [PR 61](https://github.com/vig-os/devcontainer-smoke-test/pull/61) chore: release 0.3.1
Expand All @@ -29,3 +29,24 @@ This PR prepares release 0.3.1 for merge to main.

- Deploy devcontainer 0.3.1-rc11



---
---

## Commits

### Commit 1: [680c24f](https://github.com/vig-os/devcontainer-smoke-test/commit/680c24f17d934d76c904534d3c526d7da16d56ad) by [c-vigo](https://github.com/c-vigo) on March 22, 2026 at 12:27 PM
chore: sync dev with main (conflicts) (#59), 849 files modified (CHANGELOG.md)

### Commit 2: [b21c77a](https://github.com/vig-os/devcontainer-smoke-test/commit/b21c77a6af9d9a3ce06ebf542a3cfd84f5f4da36) by [commit-action-bot[bot]](https://github.com/apps/commit-action-bot) on March 22, 2026 at 01:31 PM
chore: deploy 0.3.1-rc11, 892 files modified (.devcontainer/CHANGELOG.md, .github/workflows/sync-main-to-dev.yml, .vig-os, CHANGELOG.md)

### Commit 3: [1efb848](https://github.com/vig-os/devcontainer-smoke-test/commit/1efb848c673740299c442822b05627a90f310770) by [vig-os-release-app[bot]](https://github.com/apps/vig-os-release-app) on March 22, 2026 at 01:32 PM
chore: deploy 0.3.1-rc11 (#60), 892 files modified (.devcontainer/CHANGELOG.md, .github/workflows/sync-main-to-dev.yml, .vig-os, CHANGELOG.md)

### Commit 4: [97c0251](https://github.com/vig-os/devcontainer-smoke-test/commit/97c02512369862a94c1b15577128d53aee27aa40) by [commit-action-bot[bot]](https://github.com/apps/commit-action-bot) on March 22, 2026 at 01:33 PM
chore: freeze changelog for release 0.3.1, 20 files modified (CHANGELOG.md)

### Commit 5: [3710e25](https://github.com/vig-os/devcontainer-smoke-test/commit/3710e2568c9db21a749cd22629239f092ff3baf4) by [commit-action-bot[bot]](https://github.com/apps/commit-action-bot) on March 22, 2026 at 01:33 PM
chore: prepare release 0.3.1, 14 files modified (CHANGELOG.md)
Loading
Loading