diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0aa828ca6..b0d519814 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -195,7 +195,7 @@ jobs: persist-credentials: false - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: package.json cache: true @@ -431,7 +431,7 @@ jobs: persist-credentials: false - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: package.json cache: true @@ -512,7 +512,7 @@ jobs: persist-credentials: false - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: package.json cache: true @@ -581,7 +581,7 @@ jobs: persist-credentials: false - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: # Exact host/container pin, rather than the root engines caret range. node-version-file: .nvmrc @@ -699,7 +699,7 @@ jobs: persist-credentials: false - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: .nvmrc cache: true @@ -826,7 +826,7 @@ jobs: persist-credentials: false - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: package.json cache: true @@ -928,7 +928,7 @@ jobs: persist-credentials: false - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: package.json cache: true @@ -974,7 +974,7 @@ jobs: ref: ${{ github.event.pull_request.head.sha || github.sha }} - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: .nvmrc run-install: false diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index cf25644d7..4639f7391 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -233,7 +233,7 @@ jobs: echo "tag=$tag" >> "$GITHUB_OUTPUT" - name: Setup Vite+ if: steps.scope.outputs.tag != '' - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: package.json cache: true @@ -409,7 +409,7 @@ jobs: # the packager copies this Node into the archive and refuses any other. # No dependency cache: a release build installs from the lockfile alone. - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: .nvmrc run-install: false @@ -480,7 +480,7 @@ jobs: ref: ${{ needs.hostd-ref.outputs.ref }} persist-credentials: false - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: package.json run-install: false @@ -555,7 +555,7 @@ jobs: name: hostd-release-assets path: ${{ runner.temp }}/hostd-assets - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: package.json cache: true @@ -761,7 +761,7 @@ jobs: # (rebuild:native) — proven to survive on the macOS image by ci.yml's # desktop-smoke lane. - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: package.json cache: true diff --git a/.github/workflows/smoke-quarantine.yml b/.github/workflows/smoke-quarantine.yml index df54085d2..c3cbbc01c 100644 --- a/.github/workflows/smoke-quarantine.yml +++ b/.github/workflows/smoke-quarantine.yml @@ -30,7 +30,7 @@ jobs: persist-credentials: false - name: Setup Vite+ - uses: voidzero-dev/setup-vp@49c3e4e92c52e7f8392712a9267bbe71c5ab30e5 # v1.19.0 + uses: voidzero-dev/setup-vp@3754dd7dbdb32bd8f6d28b6043de13ad3a75f21f # v1.21.1 with: node-version-file: package.json cache: true diff --git a/packages/host-core/src/worktree/watch.test.ts b/packages/host-core/src/worktree/watch.test.ts index 432175b37..5bb2840cb 100644 --- a/packages/host-core/src/worktree/watch.test.ts +++ b/packages/host-core/src/worktree/watch.test.ts @@ -1110,14 +1110,18 @@ describe("pollRetention — terminal PRs are not re-polled (VC-836)", () => { it("500 Done tickets merged in an earlier launch and 10 open PRs cost 10 gh calls a cycle", async () => { seedProject(); - for (let i = 0; i < 500; i += 1) { - const url = `https://x/pull/m${i}`; - seedNamed({ id: `m${i}`, status: "done", prUrl: url, doneAt: 0 }); - recordMerged(`m${i}`, url); - } - for (let i = 0; i < 10; i += 1) { - seedNamed({ id: `o${i}`, status: "needs_review", prUrl: `https://x/pull/o${i}` }); - } + // Fixture durability is not under test: one commit avoids thousands of + // autocommit disk flushes consuming the test's timeout on a busy runner. + ctx.db.transaction(() => { + for (let i = 0; i < 500; i += 1) { + const url = `https://x/pull/m${i}`; + seedNamed({ id: `m${i}`, status: "done", prUrl: url, doneAt: 0 }); + recordMerged(`m${i}`, url); + } + for (let i = 0; i < 10; i += 1) { + seedNamed({ id: `o${i}`, status: "needs_review", prUrl: `https://x/pull/o${i}` }); + } + })(); const { run, calls } = scriptedNet((_file, args) => String(args[2]).includes("/pull/m") ? prView({ state: "MERGED" }) : prView(), );