CI: isolate beta and stable index generation clones #18

Closed
opened 2026-09-30 02:07:27 +08:00 by Breadway · 3 comments
Owner

The release workflows still clean a runner-wide shared path before cloning bread-ecosystem. In rc-release.yml the rm -rf /tmp/bread-ecosystem-ci-* glob can delete another concurrent job's mktemp clone. In release.yml the fixed /tmp/bread-ecosystem-ci path has the same collision risk. Give each invocation its own mktemp directory and clean only that directory. Keep the change limited to these workflows.

The release workflows still clean a runner-wide shared path before cloning bread-ecosystem. In rc-release.yml the `rm -rf /tmp/bread-ecosystem-ci-*` glob can delete another concurrent job's mktemp clone. In release.yml the fixed `/tmp/bread-ecosystem-ci` path has the same collision risk. Give each invocation its own mktemp directory and clean only that directory. Keep the change limited to these workflows.
Author
Owner

Implemented in breadbox PR #19. The beta and stable workflows now clone into job-unique mktemp directories and remove only their own clones. YAML parsing, shell syntax, and diff checks pass.

Implemented in [breadbox PR #19](https://git.breadway.dev/Breadway/breadbox/pulls/19). The beta and stable workflows now clone into job-unique mktemp directories and remove only their own clones. YAML parsing, shell syntax, and diff checks pass.
Author
Owner

Review verdict: the change matches BOX-18's scope and acceptance criteria.

  1. Beta/RC index generation uses a per-invocation mktemp path and does not glob-delete shared temp paths: .forgejo/workflows/rc-release.yml:55-60.
  2. Stable index generation uses its own per-invocation mktemp path and removes only that clone: .forgejo/workflows/release.yml:58-61.

This is a workflow-only change, so there are no behavior tests in the diff to assess. The diff is limited to the two requested workflows, and git diff --check is clean. I found no correctness issue in the change. CI for head 04b54cb is still pending (check / check (push)), so the PR is not ready to merge yet. Leave BOX-18 in REVIEW while CI runs; if the check fails, send it to TODO with the failing check named.

Review verdict: the change matches BOX-18's scope and acceptance criteria. 1. Beta/RC index generation uses a per-invocation mktemp path and does not glob-delete shared temp paths: .forgejo/workflows/rc-release.yml:55-60. 2. Stable index generation uses its own per-invocation mktemp path and removes only that clone: .forgejo/workflows/release.yml:58-61. This is a workflow-only change, so there are no behavior tests in the diff to assess. The diff is limited to the two requested workflows, and git diff --check is clean. I found no correctness issue in the change. CI for head 04b54cb is still pending (check / check (push)), so the PR is not ready to merge yet. Leave BOX-18 in REVIEW while CI runs; if the check fails, send it to TODO with the failing check named.
Author
Owner

Update: CI for PR #19 completed successfully (check / check (push)) on head 04b54cb. The reviewed change is clean and mergeable, and is ready for the root agent's merge step.

Update: CI for PR #19 completed successfully (`check / check (push)`) on head 04b54cb. The reviewed change is clean and mergeable, and is ready for the root agent's merge step.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Breadway/breadbox#18
No description provided.