diff --git a/.github/workflows/certify-release-candidate.yml b/.github/workflows/certify-release-candidate.yml index 8ac04a8..f7184db 100644 --- a/.github/workflows/certify-release-candidate.yml +++ b/.github/workflows/certify-release-candidate.yml @@ -49,7 +49,7 @@ jobs: EVIDENCE_BUCKET: ${{ vars.NFI_EVIDENCE_BUCKET }} steps: - name: Check out candidate source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Validate candidate run identity @@ -69,14 +69,14 @@ jobs: [[ "$(jq -r .head_sha <<<"$run_json")" == "$WORKFLOW_COMMIT" ]] \ || { echo "candidate and certification commits differ" >&2; exit 1; } - name: Download exact candidate bundle - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: release-bundle-${{ github.sha }} path: candidate run-id: ${{ inputs.candidate_run_id }} github-token: ${{ github.token }} - name: Install frozen candidate - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - name: Plan exact immutable Oracle reuse @@ -174,7 +174,7 @@ jobs: cp .long-certification-plan.json host-certificate/ - name: Configure short-lived immutable-storage credentials - uses: aws-actions/configure-aws-credentials@acca2b1b2070338fb9fd1ca27ecee81d687e58e5 # v6.1.2 + uses: aws-actions/configure-aws-credentials@e6de054238d6b7531b4efff3b6587d9aade6a06c # v6.2.3 with: role-to-assume: ${{ vars.NFI_EVIDENCE_AWS_ROLE }} aws-region: ${{ vars.NFI_EVIDENCE_AWS_REGION }} @@ -265,7 +265,7 @@ jobs: status: $status }' > host-certificate/immutable-upload.json - name: Upload same-commit host certificate - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: host-certificate-${{ inputs.mode }}-${{ github.sha }} path: host-certificate/* diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bd1831e..058fb48 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,7 +30,7 @@ jobs: changed_paths_json: ${{ steps.paths.outputs.changed_paths_json }} steps: - name: Check out source and comparison history - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 0 persist-credentials: false @@ -56,7 +56,7 @@ jobs: timeout-minutes: 5 steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 0 persist-credentials: false @@ -85,7 +85,7 @@ jobs: timeout-minutes: 5 steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Validate CI policy without project build @@ -118,11 +118,11 @@ jobs: suite: ast-compat steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Install uv and Python - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: ${{ matrix.python-version }} enable-cache: ${{ matrix.suite == 'full' }} @@ -148,11 +148,11 @@ jobs: timeout-minutes: 45 steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Install uv and Python - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" enable-cache: true @@ -181,11 +181,11 @@ jobs: timeout-minutes: 30 steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Install uv and Python - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" enable-cache: true @@ -215,7 +215,7 @@ jobs: timeout-minutes: 5 steps: - name: Check out CI contract - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Require the selected job matrix diff --git a/.github/workflows/fixture-storage.yml b/.github/workflows/fixture-storage.yml index ae1ba5c..62e5602 100644 --- a/.github/workflows/fixture-storage.yml +++ b/.github/workflows/fixture-storage.yml @@ -55,7 +55,7 @@ jobs: fi - name: Configure short-lived AWS credentials - uses: aws-actions/configure-aws-credentials@acca2b1b2070338fb9fd1ca27ecee81d687e58e5 # v6.1.2 + uses: aws-actions/configure-aws-credentials@e6de054238d6b7531b4efff3b6587d9aade6a06c # v6.2.3 with: role-to-assume: ${{ vars.NFI_EVIDENCE_AWS_ROLE }} aws-region: ${{ vars.NFI_EVIDENCE_AWS_REGION }} @@ -127,7 +127,7 @@ jobs: - name: Expose verified download if: inputs.operation == 'download' - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: certification-bundle path: certification-bundle.zip diff --git a/.github/workflows/nfi-compatibility.yml b/.github/workflows/nfi-compatibility.yml index 32a46dc..07fbf68 100644 --- a/.github/workflows/nfi-compatibility.yml +++ b/.github/workflows/nfi-compatibility.yml @@ -34,7 +34,7 @@ jobs: freqtrade_digest: ${{ steps.revision.outputs.freqtrade_digest }} steps: - name: Check out engine - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 1 persist-credentials: false @@ -110,11 +110,11 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out engine - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Install uv and Python - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - name: Install locked Python environment @@ -198,7 +198,7 @@ jobs: source_sha256: $source_sha256 }' > .compatibility/compatibility-identity.json - name: Retain strategy difference and source - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: latest-nfi-x7-strategy-diff path: | @@ -223,11 +223,11 @@ jobs: - futures steps: - name: Check out engine - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Install uv and Python - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - name: Install engine @@ -259,7 +259,7 @@ jobs: test -s .compatibility/report-${{ matrix.trading_mode }}.json echo "native_compatibility_exit_code=${status}" >> "${GITHUB_STEP_SUMMARY}" - name: Retain compatibility report - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: latest-nfi-x7-${{ matrix.trading_mode }}-compatibility path: .compatibility/report-${{ matrix.trading_mode }}.json @@ -283,23 +283,23 @@ jobs: - futures steps: - name: Check out engine - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Install uv, Python, and engine - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - run: | uv sync --extra dev --frozen uv run maturin develop --release --locked - name: Download strategy difference - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: latest-nfi-x7-strategy-diff path: .compatibility - name: Download static compatibility report - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: latest-nfi-x7-${{ matrix.trading_mode }}-compatibility path: .compatibility @@ -391,7 +391,7 @@ jobs: fi - name: Retain compact targeted-verification evidence if: always() - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: latest-nfi-x7-${{ matrix.trading_mode }}-targeted path: | @@ -421,11 +421,11 @@ jobs: issues: write steps: - name: Check out engine - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Download compact compatibility artifacts - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: pattern: latest-nfi-x7-* path: .compatibility/results @@ -527,7 +527,7 @@ jobs: issues: write steps: - name: Check out engine - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Reconcile deduplicated health issue diff --git a/.github/workflows/nfi-futures-discovery.yml b/.github/workflows/nfi-futures-discovery.yml index 933c018..328bbcf 100644 --- a/.github/workflows/nfi-futures-discovery.yml +++ b/.github/workflows/nfi-futures-discovery.yml @@ -45,7 +45,7 @@ jobs: deep_search_required: ${{ steps.identity.outputs.deep_search_required }} steps: - name: Check out current main - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 1 persist-credentials: false @@ -146,7 +146,7 @@ jobs: - futures steps: - name: Check out checked engine identity - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: ref: ${{ needs.resolve.outputs.engine_sha }} persist-credentials: false @@ -201,7 +201,7 @@ jobs: fi - name: Install uv, Python, and engine if: steps.restore.outputs.deferred != 'true' - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - name: Build locked engine @@ -211,7 +211,7 @@ jobs: uv run maturin develop --release --locked - name: Download checked strategy difference if: steps.restore.outputs.deferred != 'true' - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: latest-nfi-x7-strategy-diff path: .discovery/input @@ -219,7 +219,7 @@ jobs: github-token: ${{ github.token }} - name: Download checked mode compatibility if: steps.restore.outputs.deferred != 'true' - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: latest-nfi-x7-${{ matrix.trading_mode }}-compatibility path: .discovery/input @@ -354,7 +354,7 @@ jobs: fi echo "days=${days}" >> "${GITHUB_OUTPUT}" - name: Retain compact report and optional size-bounded candidate - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: nfi-branch-discovery-${{ matrix.trading_mode }} path: | @@ -394,12 +394,12 @@ jobs: issues: write steps: - name: Check out engine - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: ref: ${{ needs.resolve.outputs.engine_sha }} persist-credentials: false - name: Download compact mode result - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: nfi-branch-discovery-${{ matrix.trading_mode }} path: .discovery/result @@ -509,12 +509,12 @@ jobs: pull-requests: write steps: - name: Check out protected main identity - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: ref: ${{ needs.resolve.outputs.engine_sha }} persist-credentials: true - name: Download exact candidate result - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: nfi-branch-discovery-${{ matrix.trading_mode }} path: .discovery/result @@ -531,7 +531,7 @@ jobs: fi - name: Install locked Python environment if: steps.candidate.outputs.found == 'true' - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - name: Sync locked Python environment @@ -568,7 +568,7 @@ jobs: issues: write steps: - name: Check out engine - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Reconcile gaps already proven exact by the fast lane diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 21d1021..079c18d 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -24,7 +24,7 @@ jobs: fixture_count: ${{ steps.inventory.outputs.fixture_count }} steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Generate balanced, non-overlapping shards @@ -38,7 +38,7 @@ jobs: --output .nightly/matrix.json \ --github-output "$GITHUB_OUTPUT" - name: Retain matrix inventory - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: nightly-matrix-${{ github.sha }} path: .nightly/matrix.json @@ -55,11 +55,11 @@ jobs: matrix: ${{ fromJSON(needs.inventory.outputs.matrix) }} steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Install uv and Python - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" enable-cache: true @@ -77,7 +77,7 @@ jobs: --output .nightly/results/shard-${{ matrix.shard_index }}.json - name: Retain immutable shard report if: always() - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: nightly-shard-${{ matrix.shard_index }}-${{ github.sha }} path: .nightly/results/shard-${{ matrix.shard_index }}.json @@ -85,7 +85,7 @@ jobs: retention-days: 14 - name: Retain shard diagnostics if: always() - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: nightly-diagnostics-${{ matrix.shard_index }}-${{ github.sha }} path: .nightly/artifacts/shard-${{ matrix.shard_index }}/*.log @@ -98,11 +98,11 @@ jobs: timeout-minutes: 30 steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Install uv and Python - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" enable-cache: true @@ -127,11 +127,11 @@ jobs: timeout-minutes: 30 steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Install uv and Python - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" enable-cache: true @@ -149,7 +149,7 @@ jobs: --timeout 900 - name: Retain reference evidence if: always() - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: nightly-reference-${{ github.sha }} path: .nightly/reference @@ -164,12 +164,12 @@ jobs: timeout-minutes: 10 steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Download shard reports continue-on-error: true - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: pattern: nightly-shard-*-${{ github.sha }} path: .nightly/results @@ -193,7 +193,7 @@ jobs: --output .nightly/nightly-report.json - name: Retain one nightly report if: always() - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: nightly-report-${{ github.sha }} path: .nightly/nightly-report.json diff --git a/.github/workflows/promote-product-release.yml b/.github/workflows/promote-product-release.yml index f0e8d58..2addfa0 100644 --- a/.github/workflows/promote-product-release.yml +++ b/.github/workflows/promote-product-release.yml @@ -30,7 +30,7 @@ jobs: stable_tag: ${{ inputs.stable_tag }} steps: - name: Check out release commit - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 0 persist-credentials: false @@ -111,7 +111,7 @@ jobs: test ! -e candidate/release-gate.json test "$(find candidate -maxdepth 1 -type f -name '*certification*' | wc -l)" -eq 0 - name: Install candidate before promotion - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - name: Verify installed version and exact fixture @@ -182,7 +182,7 @@ jobs: runs-on: windows-latest steps: - name: Check out release commit - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: ref: ${{ needs.promote.outputs.candidate_sha }} persist-credentials: false @@ -198,7 +198,7 @@ jobs: runs-on: macos-14 steps: - name: Check out release commit - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: ref: ${{ needs.promote.outputs.candidate_sha }} persist-credentials: false diff --git a/.github/workflows/promote-release.yml b/.github/workflows/promote-release.yml index 0e43353..f2f52c6 100644 --- a/.github/workflows/promote-release.yml +++ b/.github/workflows/promote-release.yml @@ -61,7 +61,7 @@ jobs: (cd candidate && sha256sum --check SHA256SUMS.txt) (cd candidate && sha256sum --check RELEASE-SHA256SUMS.txt) - name: Install and verify combined release gate - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - name: Prove candidate certification before promotion diff --git a/.github/workflows/publish-product-release-candidate.yml b/.github/workflows/publish-product-release-candidate.yml index 672b7af..17eac0d 100644 --- a/.github/workflows/publish-product-release-candidate.yml +++ b/.github/workflows/publish-product-release-candidate.yml @@ -30,7 +30,7 @@ jobs: release_tag: ${{ inputs.release_tag }} steps: - name: Check out release commit - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 0 persist-credentials: false @@ -90,7 +90,7 @@ jobs: echo "sha=$candidate_sha" >> "$GITHUB_OUTPUT" echo "notes=$notes" >> "$GITHUB_OUTPUT" - name: Download exact sealed product bundle - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: product-release-bundle-${{ steps.candidate.outputs.sha }} path: candidate @@ -149,7 +149,7 @@ jobs: test ! -e candidate/full-x7-release-result.json test "$(find candidate -maxdepth 1 -type f -name '*certification*' | wc -l)" -eq 0 - name: Install Linux wheel and repeat exact fixture - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - name: Verify installed product candidate @@ -211,7 +211,7 @@ jobs: runs-on: windows-latest steps: - name: Check out release commit - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: ref: ${{ needs.publish.outputs.candidate_sha }} persist-credentials: false @@ -230,7 +230,7 @@ jobs: runs-on: macos-14 steps: - name: Check out release commit - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: ref: ${{ needs.publish.outputs.candidate_sha }} persist-credentials: false diff --git a/.github/workflows/publish-release-candidate.yml b/.github/workflows/publish-release-candidate.yml index 07287db..9b387ae 100644 --- a/.github/workflows/publish-release-candidate.yml +++ b/.github/workflows/publish-release-candidate.yml @@ -31,7 +31,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out repository - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 0 persist-credentials: false @@ -94,28 +94,28 @@ jobs: fi echo "sha=$candidate_sha" >> "$GITHUB_OUTPUT" - name: Download sealed candidate - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: release-bundle-${{ steps.candidate.outputs.sha }} path: candidate run-id: ${{ inputs.candidate_run_id }} github-token: ${{ github.token }} - name: Download same-commit Spot host certificate - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: host-certificate-spot-${{ steps.candidate.outputs.sha }} path: certificates/spot run-id: ${{ inputs.spot_certificate_run_id }} github-token: ${{ github.token }} - name: Download same-commit Futures host certificate - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: host-certificate-futures-${{ steps.candidate.outputs.sha }} path: certificates/futures run-id: ${{ inputs.futures_certificate_run_id }} github-token: ${{ github.token }} - name: Install candidate release gate - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - name: Combine both certificates and seal public release hashes diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e9dbb9e..5d5365e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -33,11 +33,11 @@ jobs: portable_evidence: true steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Install Python - uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0 + uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 with: python-version: "3.12" - name: Validate declarative release workloads @@ -124,14 +124,14 @@ jobs: } - name: Upload platform benchmark if: matrix.portable_evidence - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: platform-report-${{ matrix.target }} path: .platform-evidence/*/platform-benchmark.json if-no-files-found: error include-hidden-files: true - name: Upload wheel - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: wheel-${{ matrix.target }} path: dist/* @@ -142,7 +142,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Build sdist @@ -152,7 +152,7 @@ jobs: command: sdist args: --out dist - name: Upload sdist - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: sdist path: dist/* @@ -164,17 +164,17 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Download distributions - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: pattern: wheel-* path: dist merge-multiple: true - name: Install uv and Python - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - name: Install built x86_64 wheel @@ -197,21 +197,21 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Download platform reports - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: pattern: platform-report-* path: reports - name: Download Linux release wheel - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: wheel-x86_64-unknown-linux-gnu path: wheel - name: Install release wheel - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 + uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 with: python-version: "3.12" - name: Seal reports and prepare release evidence @@ -253,7 +253,7 @@ jobs: .release-candidate-plan.json ) - name: Upload sealed platform evidence - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: release-evidence-${{ github.sha }} path: release-evidence/ @@ -265,22 +265,22 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out source - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Download release wheels - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: pattern: "wheel-*" path: dist merge-multiple: true - name: Download source distribution - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: sdist path: dist - name: Download sealed platform evidence - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: release-evidence-${{ github.sha }} path: dist @@ -329,14 +329,14 @@ jobs: | xargs -0 sha256sum > SHA256SUMS.txt sha256sum --check SHA256SUMS.txt - name: Upload sealed candidate - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: release-bundle-${{ github.sha }} path: dist/ if-no-files-found: error retention-days: 30 - name: Upload sealed product release - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: product-release-bundle-${{ github.sha }} path: product-release/