diff --git a/.github/workflows/candidate.yml b/.github/workflows/candidate.yml index 75ca4f3..f6d5b10 100644 --- a/.github/workflows/candidate.yml +++ b/.github/workflows/candidate.yml @@ -300,6 +300,7 @@ jobs: echo "value=$actual_client_sha" >> "$GITHUB_OUTPUT" - name: Exercise the complete manifest matrix without artifact claims env: + BUNDLE_GEMFILE: ${{ github.workspace }}/ruby-client/Gemfile OPENCODE_RUBY_PATH: ${{ github.workspace }}/ruby-client OPENCODE_RUBY_COMMIT: ${{ steps.client-sha.outputs.value }} OPENCODE_RAILS_COMMIT: ${{ needs.prepare.outputs.rails_ref }} @@ -312,4 +313,4 @@ jobs: run: scripts/run_image_matrix_contract.sh - name: State the Gitea evidence boundary if: always() - run: echo "Gitea executed every manifest image in one job, but this forge has no supported immutable artifact upload; generated JSON is transient and is not review evidence." + run: echo "Gitea's exact-image path uploads nothing; generated JSON is transient and is not review evidence. This job passes only after every manifest image passes." diff --git a/test/repository_test.rb b/test/repository_test.rb index 3a8e0c3..99e4919 100644 --- a/test/repository_test.rb +++ b/test/repository_test.rb @@ -287,6 +287,7 @@ class RepositoryTest < Minitest::Test assert_includes workflow, "exact-image-contract-gitea:" assert_includes workflow, "if: github.server_url != 'https://github.com'" assert_includes workflow, "run: scripts/run_image_matrix_contract.sh" + assert_operator workflow.scan('BUNDLE_GEMFILE: ${{ github.workspace }}/ruby-client/Gemfile').length, :>=, 2 assert_operator workflow.scan("generated JSON is transient and is not review evidence").length, :>=, 3 gitea_job = workflow.split(/^ exact-image-contract-gitea:\n/, 2).fetch(1)