diff --git a/.github/aw/actions-lock.json b/.github/aw/actions-lock.json index 13156845b2..ad52ade1a1 100644 --- a/.github/aw/actions-lock.json +++ b/.github/aw/actions-lock.json @@ -10,6 +10,11 @@ "version": "v4", "sha": "0057852bfaa89a56745cba8c7296529d2fc39830" }, + "actions/cache/save@v4": { + "repo": "actions/cache/save", + "version": "v4", + "sha": "0057852bfaa89a56745cba8c7296529d2fc39830" + }, "actions/cache@v4": { "repo": "actions/cache", "version": "v4", diff --git a/.github/workflows/audit-workflows.lock.yml b/.github/workflows/audit-workflows.lock.yml index 8bff6dc864..866521751d 100644 --- a/.github/workflows/audit-workflows.lock.yml +++ b/.github/workflows/audit-workflows.lock.yml @@ -71,16 +71,19 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -828,7 +831,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1037,8 +1042,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: trending-data-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1047,6 +1052,7 @@ jobs: trending-data- trending- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7283,6 +7289,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: trending-data-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/ci-doctor.lock.yml b/.github/workflows/ci-doctor.lock.yml index 6afc546b79..18cb1e4d3e 100644 --- a/.github/workflows/ci-doctor.lock.yml +++ b/.github/workflows/ci-doctor.lock.yml @@ -79,6 +79,7 @@ # create_issue["create_issue"] # detection["detection"] # pre_activation["pre_activation"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # add_comment --> conclusion @@ -86,11 +87,13 @@ # agent --> conclusion # agent --> create_issue # agent --> detection +# agent --> update_cache_memory # create_issue --> add_comment # create_issue --> conclusion # detection --> add_comment # detection --> conclusion # detection --> create_issue +# detection --> update_cache_memory # pre_activation --> activation # ``` # @@ -252,7 +255,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1024,8 +1029,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1033,6 +1038,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7309,3 +7315,24 @@ jobs: } await main(); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/cli-version-checker.lock.yml b/.github/workflows/cli-version-checker.lock.yml index 5116b36494..2488d8a593 100644 --- a/.github/workflows/cli-version-checker.lock.yml +++ b/.github/workflows/cli-version-checker.lock.yml @@ -62,14 +62,17 @@ # conclusion["conclusion"] # create_issue["create_issue"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_issue # agent --> detection +# agent --> update_cache_memory # create_issue --> conclusion # detection --> conclusion # detection --> create_issue +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -384,7 +387,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -547,8 +552,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -556,6 +561,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6253,3 +6259,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/cloclo.lock.yml b/.github/workflows/cloclo.lock.yml index 80985f7e93..bdf337f294 100644 --- a/.github/workflows/cloclo.lock.yml +++ b/.github/workflows/cloclo.lock.yml @@ -76,6 +76,7 @@ # create_pull_request["create_pull_request"] # detection["detection"] # pre_activation["pre_activation"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # activation --> create_pull_request @@ -84,11 +85,13 @@ # agent --> conclusion # agent --> create_pull_request # agent --> detection +# agent --> update_cache_memory # create_pull_request --> add_comment # create_pull_request --> conclusion # detection --> add_comment # detection --> conclusion # detection --> create_pull_request +# detection --> update_cache_memory # pre_activation --> activation # ``` # @@ -334,7 +337,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1920,8 +1925,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: cloclo-memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1930,6 +1935,7 @@ jobs: cloclo-memory- cloclo- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7911,3 +7917,24 @@ jobs: } await main(); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: cloclo-memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/close-old-discussions.lock.yml b/.github/workflows/close-old-discussions.lock.yml index b5461a7b8c..d8c452cb91 100644 --- a/.github/workflows/close-old-discussions.lock.yml +++ b/.github/workflows/close-old-discussions.lock.yml @@ -176,14 +176,17 @@ # close_discussion["close_discussion"] # conclusion["conclusion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> close_discussion # agent --> conclusion # agent --> detection +# agent --> update_cache_memory # close_discussion --> conclusion # detection --> close_discussion # detection --> conclusion +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -387,7 +390,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -566,8 +571,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: discussions-data-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -575,6 +580,7 @@ jobs: discussions-data- discussions- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -5921,3 +5927,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: discussions-data-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/copilot-agent-analysis.lock.yml b/.github/workflows/copilot-agent-analysis.lock.yml index 7db362fd7d..07c8b13d57 100644 --- a/.github/workflows/copilot-agent-analysis.lock.yml +++ b/.github/workflows/copilot-agent-analysis.lock.yml @@ -89,14 +89,17 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -705,7 +708,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -875,8 +880,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: copilot-pr-data-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -885,6 +890,7 @@ jobs: copilot-pr- copilot- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6959,3 +6965,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: copilot-pr-data-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/copilot-pr-nlp-analysis.lock.yml b/.github/workflows/copilot-pr-nlp-analysis.lock.yml index 898b3bff8b..837f0930ea 100644 --- a/.github/workflows/copilot-pr-nlp-analysis.lock.yml +++ b/.github/workflows/copilot-pr-nlp-analysis.lock.yml @@ -122,16 +122,19 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -963,7 +966,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1165,8 +1170,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: copilot-pr-data-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1175,6 +1180,7 @@ jobs: copilot-pr- copilot- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -8057,6 +8063,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: copilot-pr-data-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/copilot-pr-prompt-analysis.lock.yml b/.github/workflows/copilot-pr-prompt-analysis.lock.yml index 0b81a39f17..258341d3a5 100644 --- a/.github/workflows/copilot-pr-prompt-analysis.lock.yml +++ b/.github/workflows/copilot-pr-prompt-analysis.lock.yml @@ -81,14 +81,17 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -521,7 +524,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -691,8 +696,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: copilot-pr-data-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -701,6 +706,7 @@ jobs: copilot-pr- copilot- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7138,3 +7144,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: copilot-pr-data-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/copilot-session-insights.lock.yml b/.github/workflows/copilot-session-insights.lock.yml index effe9270bc..3b13fee5f0 100644 --- a/.github/workflows/copilot-session-insights.lock.yml +++ b/.github/workflows/copilot-session-insights.lock.yml @@ -91,16 +91,19 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -1385,7 +1388,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1580,8 +1585,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1589,6 +1594,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -8369,6 +8375,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/daily-code-metrics.lock.yml b/.github/workflows/daily-code-metrics.lock.yml index 7d910dea0c..eb6ae765c5 100644 --- a/.github/workflows/daily-code-metrics.lock.yml +++ b/.github/workflows/daily-code-metrics.lock.yml @@ -63,14 +63,17 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -923,7 +926,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1106,8 +1111,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: trending-data-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1116,6 +1121,7 @@ jobs: trending-data- trending- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7412,3 +7418,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: trending-data-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/daily-copilot-token-report.lock.yml b/.github/workflows/daily-copilot-token-report.lock.yml index 7f6dbbabf3..fda9bd7d38 100644 --- a/.github/workflows/daily-copilot-token-report.lock.yml +++ b/.github/workflows/daily-copilot-token-report.lock.yml @@ -81,16 +81,19 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -1041,7 +1044,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1233,8 +1238,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1242,6 +1247,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -8228,6 +8234,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/daily-doc-updater.lock.yml b/.github/workflows/daily-doc-updater.lock.yml index 5f4f5f972c..98b2e45e83 100644 --- a/.github/workflows/daily-doc-updater.lock.yml +++ b/.github/workflows/daily-doc-updater.lock.yml @@ -74,15 +74,18 @@ # conclusion["conclusion"] # create_pull_request["create_pull_request"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # activation --> create_pull_request # agent --> conclusion # agent --> create_pull_request # agent --> detection +# agent --> update_cache_memory # create_pull_request --> conclusion # detection --> conclusion # detection --> create_pull_request +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -250,7 +253,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -410,8 +415,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -419,6 +424,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6072,3 +6078,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/daily-firewall-report.lock.yml b/.github/workflows/daily-firewall-report.lock.yml index 37718356fe..b868ae2e4f 100644 --- a/.github/workflows/daily-firewall-report.lock.yml +++ b/.github/workflows/daily-firewall-report.lock.yml @@ -77,6 +77,7 @@ # create_discussion["create_discussion"] # detection["detection"] # push_repo_memory["push_repo_memory"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion @@ -84,11 +85,13 @@ # agent --> create_discussion # agent --> detection # agent --> push_repo_memory +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion # detection --> push_repo_memory +# detection --> update_cache_memory # detection --> upload_assets # push_repo_memory --> conclusion # upload_assets --> conclusion @@ -701,7 +704,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -904,8 +909,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: trending-data-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -914,6 +919,7 @@ jobs: trending-data- trending- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7843,6 +7849,27 @@ jobs: core.setFailed(`Unexpected error: ${error instanceof Error ? error.message : String(error)}`); }); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: trending-data-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/daily-issues-report.lock.yml b/.github/workflows/daily-issues-report.lock.yml index d4289310fb..85df70f0b8 100644 --- a/.github/workflows/daily-issues-report.lock.yml +++ b/.github/workflows/daily-issues-report.lock.yml @@ -74,6 +74,7 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion @@ -81,12 +82,14 @@ # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # close_discussion --> conclusion # create_discussion --> conclusion # detection --> close_discussion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -1081,7 +1084,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1278,8 +1283,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1287,6 +1292,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -8217,6 +8223,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/daily-news.lock.yml b/.github/workflows/daily-news.lock.yml index 6f14d573a1..0427e61e61 100644 --- a/.github/workflows/daily-news.lock.yml +++ b/.github/workflows/daily-news.lock.yml @@ -262,16 +262,19 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -1053,7 +1056,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1251,8 +1256,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1260,6 +1265,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -8117,6 +8123,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/daily-performance-summary.lock.yml b/.github/workflows/daily-performance-summary.lock.yml index 752974b355..6822d29315 100644 --- a/.github/workflows/daily-performance-summary.lock.yml +++ b/.github/workflows/daily-performance-summary.lock.yml @@ -70,6 +70,7 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion @@ -77,12 +78,14 @@ # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # close_discussion --> conclusion # create_discussion --> conclusion # detection --> close_discussion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -849,7 +852,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1039,8 +1044,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: trending-data-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1049,6 +1054,7 @@ jobs: trending-data- trending- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -9431,6 +9437,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: trending-data-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/daily-repo-chronicle.lock.yml b/.github/workflows/daily-repo-chronicle.lock.yml index 87988e1d4c..02b22cafdf 100644 --- a/.github/workflows/daily-repo-chronicle.lock.yml +++ b/.github/workflows/daily-repo-chronicle.lock.yml @@ -75,16 +75,19 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -749,7 +752,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -937,8 +942,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -946,6 +951,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7661,6 +7667,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/deep-report.lock.yml b/.github/workflows/deep-report.lock.yml index 6c9b35c948..70d4099881 100644 --- a/.github/workflows/deep-report.lock.yml +++ b/.github/workflows/deep-report.lock.yml @@ -92,6 +92,7 @@ # create_discussion["create_discussion"] # detection["detection"] # push_repo_memory["push_repo_memory"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion @@ -99,11 +100,13 @@ # agent --> create_discussion # agent --> detection # agent --> push_repo_memory +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion # detection --> push_repo_memory +# detection --> update_cache_memory # detection --> upload_assets # push_repo_memory --> conclusion # upload_assets --> conclusion @@ -594,7 +597,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -788,8 +793,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: weekly-issues-data-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -798,6 +803,7 @@ jobs: weekly-issues- weekly- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7060,6 +7066,27 @@ jobs: core.setFailed(`Unexpected error: ${error instanceof Error ? error.message : String(error)}`); }); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: weekly-issues-data-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/developer-docs-consolidator.lock.yml b/.github/workflows/developer-docs-consolidator.lock.yml index a27f66d1df..33bee33c27 100644 --- a/.github/workflows/developer-docs-consolidator.lock.yml +++ b/.github/workflows/developer-docs-consolidator.lock.yml @@ -88,6 +88,7 @@ # create_discussion["create_discussion"] # create_pull_request["create_pull_request"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # activation --> create_pull_request @@ -95,11 +96,13 @@ # agent --> create_discussion # agent --> create_pull_request # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # create_pull_request --> conclusion # detection --> conclusion # detection --> create_discussion # detection --> create_pull_request +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -753,7 +756,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -933,8 +938,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: developer-docs-cache-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -943,6 +948,7 @@ jobs: developer-docs- developer- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7788,3 +7794,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: developer-docs-cache-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/firewall-escape.lock.yml b/.github/workflows/firewall-escape.lock.yml index ed1f165d2d..fcc2efae07 100644 --- a/.github/workflows/firewall-escape.lock.yml +++ b/.github/workflows/firewall-escape.lock.yml @@ -432,6 +432,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory diff --git a/.github/workflows/github-mcp-structural-analysis.lock.yml b/.github/workflows/github-mcp-structural-analysis.lock.yml index f602bfa187..6972655503 100644 --- a/.github/workflows/github-mcp-structural-analysis.lock.yml +++ b/.github/workflows/github-mcp-structural-analysis.lock.yml @@ -69,16 +69,19 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -743,7 +746,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -937,8 +942,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -946,6 +951,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7092,6 +7098,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/github-mcp-tools-report.lock.yml b/.github/workflows/github-mcp-tools-report.lock.yml index 8c34143f67..c87d981ff8 100644 --- a/.github/workflows/github-mcp-tools-report.lock.yml +++ b/.github/workflows/github-mcp-tools-report.lock.yml @@ -70,6 +70,7 @@ # create_discussion["create_discussion"] # create_pull_request["create_pull_request"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # activation --> create_pull_request @@ -77,11 +78,13 @@ # agent --> create_discussion # agent --> create_pull_request # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # create_pull_request --> conclusion # detection --> conclusion # detection --> create_discussion # detection --> create_pull_request +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -621,7 +624,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -789,8 +794,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -798,6 +803,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7546,3 +7552,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/glossary-maintainer.lock.yml b/.github/workflows/glossary-maintainer.lock.yml index 5918ecfe1f..abab1359c9 100644 --- a/.github/workflows/glossary-maintainer.lock.yml +++ b/.github/workflows/glossary-maintainer.lock.yml @@ -83,15 +83,18 @@ # conclusion["conclusion"] # create_pull_request["create_pull_request"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # activation --> create_pull_request # agent --> conclusion # agent --> create_pull_request # agent --> detection +# agent --> update_cache_memory # create_pull_request --> conclusion # detection --> conclusion # detection --> create_pull_request +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -697,7 +700,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -877,8 +882,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -886,6 +891,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7490,3 +7496,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/go-fan.lock.yml b/.github/workflows/go-fan.lock.yml index 9b42c9c9a5..2f67dbe57c 100644 --- a/.github/workflows/go-fan.lock.yml +++ b/.github/workflows/go-fan.lock.yml @@ -86,14 +86,17 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -442,7 +445,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -622,8 +627,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -631,6 +636,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6470,3 +6476,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/go-logger.lock.yml b/.github/workflows/go-logger.lock.yml index 7d6efc27d2..943e1f5c84 100644 --- a/.github/workflows/go-logger.lock.yml +++ b/.github/workflows/go-logger.lock.yml @@ -85,15 +85,18 @@ # conclusion["conclusion"] # create_pull_request["create_pull_request"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # activation --> create_pull_request # agent --> conclusion # agent --> create_pull_request # agent --> detection +# agent --> update_cache_memory # create_pull_request --> conclusion # detection --> conclusion # detection --> create_pull_request +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -360,7 +363,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -538,8 +543,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -547,6 +552,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6246,3 +6252,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/grumpy-reviewer.lock.yml b/.github/workflows/grumpy-reviewer.lock.yml index fb19a16c67..cd5dcba68d 100644 --- a/.github/workflows/grumpy-reviewer.lock.yml +++ b/.github/workflows/grumpy-reviewer.lock.yml @@ -59,6 +59,7 @@ # create_pr_review_comment["create_pr_review_comment"] # detection["detection"] # pre_activation["pre_activation"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # add_comment --> conclusion @@ -66,10 +67,12 @@ # agent --> conclusion # agent --> create_pr_review_comment # agent --> detection +# agent --> update_cache_memory # create_pr_review_comment --> conclusion # detection --> add_comment # detection --> conclusion # detection --> create_pr_review_comment +# detection --> update_cache_memory # pre_activation --> activation # ``` # @@ -203,7 +206,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1722,8 +1727,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1731,6 +1736,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7767,3 +7773,24 @@ jobs: } await main(); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/instructions-janitor.lock.yml b/.github/workflows/instructions-janitor.lock.yml index 456ca28c76..c62e119674 100644 --- a/.github/workflows/instructions-janitor.lock.yml +++ b/.github/workflows/instructions-janitor.lock.yml @@ -72,15 +72,18 @@ # conclusion["conclusion"] # create_pull_request["create_pull_request"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # activation --> create_pull_request # agent --> conclusion # agent --> create_pull_request # agent --> detection +# agent --> update_cache_memory # create_pull_request --> conclusion # detection --> conclusion # detection --> create_pull_request +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -247,7 +250,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -407,8 +412,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -416,6 +421,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6011,3 +6017,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/lockfile-stats.lock.yml b/.github/workflows/lockfile-stats.lock.yml index c927f750c3..4b87960e95 100644 --- a/.github/workflows/lockfile-stats.lock.yml +++ b/.github/workflows/lockfile-stats.lock.yml @@ -58,14 +58,17 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -482,7 +485,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -642,8 +647,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -651,6 +656,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6511,3 +6517,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/mcp-inspector.lock.yml b/.github/workflows/mcp-inspector.lock.yml index 6d54ffb928..10df5b007a 100644 --- a/.github/workflows/mcp-inspector.lock.yml +++ b/.github/workflows/mcp-inspector.lock.yml @@ -103,6 +103,7 @@ # detection["detection"] # notion_add_comment["notion_add_comment"] # post_to_slack_channel["post_to_slack_channel"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion @@ -110,11 +111,13 @@ # agent --> detection # agent --> notion_add_comment # agent --> post_to_slack_channel +# agent --> update_cache_memory # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion # detection --> notion_add_comment # detection --> post_to_slack_channel +# detection --> update_cache_memory # notion_add_comment --> conclusion # post_to_slack_channel --> conclusion # ``` @@ -381,7 +384,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -577,8 +582,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -586,6 +591,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7459,3 +7465,24 @@ jobs: } } + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/org-health-report.lock.yml b/.github/workflows/org-health-report.lock.yml index 9761cf4a37..7521728498 100644 --- a/.github/workflows/org-health-report.lock.yml +++ b/.github/workflows/org-health-report.lock.yml @@ -76,16 +76,19 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -954,7 +957,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1146,8 +1151,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1155,6 +1160,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -8052,6 +8058,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/pdf-summary.lock.yml b/.github/workflows/pdf-summary.lock.yml index 2ae75667b5..b4cea5c212 100644 --- a/.github/workflows/pdf-summary.lock.yml +++ b/.github/workflows/pdf-summary.lock.yml @@ -81,14 +81,17 @@ # conclusion["conclusion"] # detection["detection"] # pre_activation["pre_activation"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # add_comment --> conclusion # agent --> add_comment # agent --> conclusion # agent --> detection +# agent --> update_cache_memory # detection --> add_comment # detection --> conclusion +# detection --> update_cache_memory # pre_activation --> activation # ``` # @@ -239,7 +242,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1782,8 +1787,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1791,6 +1796,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7421,3 +7427,24 @@ jobs: } await main(); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/poem-bot.lock.yml b/.github/workflows/poem-bot.lock.yml index 1055c5c1fe..e204cfc693 100644 --- a/.github/workflows/poem-bot.lock.yml +++ b/.github/workflows/poem-bot.lock.yml @@ -180,6 +180,7 @@ # link_sub_issue["link_sub_issue"] # pre_activation["pre_activation"] # push_to_pull_request_branch["push_to_pull_request_branch"] +# update_cache_memory["update_cache_memory"] # update_issue["update_issue"] # upload_assets["upload_assets"] # activation --> agent @@ -200,6 +201,7 @@ # agent --> detection # agent --> link_sub_issue # agent --> push_to_pull_request_branch +# agent --> update_cache_memory # agent --> update_issue # agent --> upload_assets # close_pull_request --> conclusion @@ -224,6 +226,7 @@ # detection --> create_pull_request # detection --> link_sub_issue # detection --> push_to_pull_request_branch +# detection --> update_cache_memory # detection --> update_issue # detection --> upload_assets # link_sub_issue --> conclusion @@ -280,7 +283,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -2382,8 +2387,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: poem-memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -2392,6 +2397,7 @@ jobs: poem-memory- poem- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -12102,6 +12108,27 @@ jobs: } await main(); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: poem-memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + update_issue: needs: - agent diff --git a/.github/workflows/pr-nitpick-reviewer.lock.yml b/.github/workflows/pr-nitpick-reviewer.lock.yml index 0851727477..acc51e0ab4 100644 --- a/.github/workflows/pr-nitpick-reviewer.lock.yml +++ b/.github/workflows/pr-nitpick-reviewer.lock.yml @@ -69,6 +69,7 @@ # create_pr_review_comment["create_pr_review_comment"] # detection["detection"] # pre_activation["pre_activation"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # add_comment --> conclusion @@ -77,6 +78,7 @@ # agent --> create_discussion # agent --> create_pr_review_comment # agent --> detection +# agent --> update_cache_memory # create_discussion --> add_comment # create_discussion --> conclusion # create_pr_review_comment --> conclusion @@ -84,6 +86,7 @@ # detection --> conclusion # detection --> create_discussion # detection --> create_pr_review_comment +# detection --> update_cache_memory # pre_activation --> activation # ``` # @@ -522,7 +525,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1706,8 +1711,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1715,6 +1720,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -8804,3 +8810,24 @@ jobs: } await main(); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/prompt-clustering-analysis.lock.yml b/.github/workflows/prompt-clustering-analysis.lock.yml index 7acca2b0c5..dc94ece890 100644 --- a/.github/workflows/prompt-clustering-analysis.lock.yml +++ b/.github/workflows/prompt-clustering-analysis.lock.yml @@ -147,14 +147,17 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -1098,6 +1101,10 @@ # Pinned GitHub Actions: # - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd # - actions/download-artifact@v6 (018cc2cf5baa6db3ef3c5f8a56943fffe632ef53) @@ -1325,8 +1332,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: trending-data-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1335,6 +1342,7 @@ jobs: trending-data- trending- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7721,3 +7729,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: trending-data-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/python-data-charts.lock.yml b/.github/workflows/python-data-charts.lock.yml index 1a3d9bcb5c..9a14fd9349 100644 --- a/.github/workflows/python-data-charts.lock.yml +++ b/.github/workflows/python-data-charts.lock.yml @@ -58,16 +58,19 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -1046,7 +1049,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1232,8 +1237,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1241,6 +1246,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -8285,6 +8291,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/q.lock.yml b/.github/workflows/q.lock.yml index 5519a7ebf5..e307bcd399 100644 --- a/.github/workflows/q.lock.yml +++ b/.github/workflows/q.lock.yml @@ -80,6 +80,7 @@ # create_pull_request["create_pull_request"] # detection["detection"] # pre_activation["pre_activation"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # activation --> create_pull_request @@ -88,11 +89,13 @@ # agent --> conclusion # agent --> create_pull_request # agent --> detection +# agent --> update_cache_memory # create_pull_request --> add_comment # create_pull_request --> conclusion # detection --> add_comment # detection --> conclusion # detection --> create_pull_request +# detection --> update_cache_memory # pre_activation --> activation # ``` # @@ -462,7 +465,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -2038,8 +2043,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -2047,6 +2052,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -8693,3 +8699,24 @@ jobs: } await main(); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/repository-quality-improver.lock.yml b/.github/workflows/repository-quality-improver.lock.yml index e46ca11ad7..77b5e4a4dc 100644 --- a/.github/workflows/repository-quality-improver.lock.yml +++ b/.github/workflows/repository-quality-improver.lock.yml @@ -67,14 +67,17 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -684,7 +687,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -861,8 +866,8 @@ jobs: - name: Create cache-memory directory (focus-areas) run: | mkdir -p /tmp/gh-aw/cache-memory-focus-areas - - name: Cache memory file share data (focus-areas) - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data (focus-areas) + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: quality-focus-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory-focus-areas @@ -871,6 +876,7 @@ jobs: quality-focus- quality- - name: Upload cache-memory data as artifact (focus-areas) + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory-focus-areas @@ -7496,3 +7502,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory-focus-areas artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory-focus-areas + path: /tmp/gh-aw/cache-memory-focus-areas + - name: Save cache memory (focus-areas) + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: quality-focus-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory-focus-areas + diff --git a/.github/workflows/safe-output-health.lock.yml b/.github/workflows/safe-output-health.lock.yml index 2dd3484b55..dc583ffc44 100644 --- a/.github/workflows/safe-output-health.lock.yml +++ b/.github/workflows/safe-output-health.lock.yml @@ -68,14 +68,17 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -583,7 +586,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -767,8 +772,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -776,6 +781,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6743,3 +6749,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/schema-consistency-checker.lock.yml b/.github/workflows/schema-consistency-checker.lock.yml index 3c0214288e..93474c42a4 100644 --- a/.github/workflows/schema-consistency-checker.lock.yml +++ b/.github/workflows/schema-consistency-checker.lock.yml @@ -64,14 +64,17 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -492,7 +495,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -654,8 +659,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: schema-consistency-cache-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -665,6 +670,7 @@ jobs: schema-consistency- schema- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6522,3 +6528,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: schema-consistency-cache-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/scout.lock.yml b/.github/workflows/scout.lock.yml index 2dfa9ebef0..8effa6ed5d 100644 --- a/.github/workflows/scout.lock.yml +++ b/.github/workflows/scout.lock.yml @@ -82,14 +82,17 @@ # conclusion["conclusion"] # detection["detection"] # pre_activation["pre_activation"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # add_comment --> conclusion # agent --> add_comment # agent --> conclusion # agent --> detection +# agent --> update_cache_memory # detection --> add_comment # detection --> conclusion +# detection --> update_cache_memory # pre_activation --> activation # ``` # @@ -419,7 +422,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1983,8 +1988,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1992,6 +1997,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7332,3 +7338,24 @@ jobs: } await main(); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/security-fix-pr.lock.yml b/.github/workflows/security-fix-pr.lock.yml index 10e73bf25d..392766724c 100644 --- a/.github/workflows/security-fix-pr.lock.yml +++ b/.github/workflows/security-fix-pr.lock.yml @@ -62,15 +62,18 @@ # create_pull_request["create_pull_request"] # detection["detection"] # pre_activation["pre_activation"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # activation --> create_pull_request # agent --> conclusion # agent --> create_pull_request # agent --> detection +# agent --> update_cache_memory # create_pull_request --> conclusion # detection --> conclusion # detection --> create_pull_request +# detection --> update_cache_memory # pre_activation --> activation # ``` # @@ -216,7 +219,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -384,8 +389,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -393,6 +398,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6146,3 +6152,24 @@ jobs: } await main(); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/smoke-copilot-safe-inputs.lock.yml b/.github/workflows/smoke-copilot-safe-inputs.lock.yml index 7c5035c145..4e91871450 100644 --- a/.github/workflows/smoke-copilot-safe-inputs.lock.yml +++ b/.github/workflows/smoke-copilot-safe-inputs.lock.yml @@ -4185,6 +4185,15 @@ jobs: for (const tool of tools) { registerTool(server, tool); } + try { + const fs = require("fs"); + if (fs.existsSync(configPath)) { + fs.unlinkSync(configPath); + server.debug(`Deleted configuration file: ${configPath}`); + } + } catch (error) { + server.debugError(`Warning: Could not delete configuration file: `, error); + } start(server); } if (require.main === module) { @@ -4274,6 +4283,15 @@ jobs: } logger.debug(`Tool registration complete: ${registeredCount} registered, ${skippedCount} skipped`); logger.debug(`=== MCP Server Creation Complete ===`); + try { + const fs = require("fs"); + if (fs.existsSync(configPath)) { + fs.unlinkSync(configPath); + logger.debug(`Deleted configuration file: ${configPath}`); + } + } catch (error) { + logger.debugError(`Warning: Could not delete configuration file: `, error); + } return { server, config, logger }; } async function startHttpServer(configPath, options = {}) { @@ -4478,6 +4496,9 @@ jobs: "type": "object" }, "handler": "gh.sh", + "env": { + "GH_AW_GH_TOKEN": "GH_AW_GH_TOKEN" + }, "timeout": 60 } ] diff --git a/.github/workflows/smoke-detector.lock.yml b/.github/workflows/smoke-detector.lock.yml index def806df1e..8c61b7d8b1 100644 --- a/.github/workflows/smoke-detector.lock.yml +++ b/.github/workflows/smoke-detector.lock.yml @@ -95,6 +95,7 @@ # create_issue["create_issue"] # detection["detection"] # pre_activation["pre_activation"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # add_comment --> conclusion @@ -102,11 +103,13 @@ # agent --> conclusion # agent --> create_issue # agent --> detection +# agent --> update_cache_memory # create_issue --> add_comment # create_issue --> conclusion # detection --> add_comment # detection --> conclusion # detection --> create_issue +# detection --> update_cache_memory # pre_activation --> activation # ``` # @@ -436,7 +439,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1632,8 +1637,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1641,6 +1646,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7478,3 +7484,24 @@ jobs: } await main(); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/spec-kit-executor.lock.yml b/.github/workflows/spec-kit-executor.lock.yml index ae2d6e496e..58650e4123 100644 --- a/.github/workflows/spec-kit-executor.lock.yml +++ b/.github/workflows/spec-kit-executor.lock.yml @@ -86,6 +86,7 @@ # create_pull_request["create_pull_request"] # detection["detection"] # push_repo_memory["push_repo_memory"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # activation --> create_pull_request @@ -93,10 +94,12 @@ # agent --> create_pull_request # agent --> detection # agent --> push_repo_memory +# agent --> update_cache_memory # create_pull_request --> conclusion # detection --> conclusion # detection --> create_pull_request # detection --> push_repo_memory +# detection --> update_cache_memory # push_repo_memory --> conclusion # ``` # @@ -316,7 +319,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -476,8 +481,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -485,6 +490,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7012,3 +7018,24 @@ jobs: core.setFailed(`Unexpected error: ${error instanceof Error ? error.message : String(error)}`); }); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/stale-repo-identifier.lock.yml b/.github/workflows/stale-repo-identifier.lock.yml index aa7e4a165f..216b6ea644 100644 --- a/.github/workflows/stale-repo-identifier.lock.yml +++ b/.github/workflows/stale-repo-identifier.lock.yml @@ -120,16 +120,19 @@ # conclusion["conclusion"] # create_issue["create_issue"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_issue # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_issue --> conclusion # detection --> conclusion # detection --> create_issue +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -980,7 +983,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1214,8 +1219,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: trending-data-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1224,6 +1229,7 @@ jobs: trending-data- trending- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -8060,6 +8066,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: trending-data-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/static-analysis-report.lock.yml b/.github/workflows/static-analysis-report.lock.yml index e899d98a63..3c5c782273 100644 --- a/.github/workflows/static-analysis-report.lock.yml +++ b/.github/workflows/static-analysis-report.lock.yml @@ -65,14 +65,17 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # ``` # # Original Prompt: @@ -498,7 +501,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -676,8 +681,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -685,6 +690,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6547,3 +6553,24 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/super-linter.lock.yml b/.github/workflows/super-linter.lock.yml index a33ba0971e..1ec155f1fb 100644 --- a/.github/workflows/super-linter.lock.yml +++ b/.github/workflows/super-linter.lock.yml @@ -115,15 +115,18 @@ # create_issue["create_issue"] # detection["detection"] # super_linter["super_linter"] +# update_cache_memory["update_cache_memory"] # activation --> agent # activation --> conclusion # activation --> super_linter # agent --> conclusion # agent --> create_issue # agent --> detection +# agent --> update_cache_memory # create_issue --> conclusion # detection --> conclusion # detection --> create_issue +# detection --> update_cache_memory # super_linter --> agent # ``` # @@ -324,7 +327,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -496,8 +501,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -505,6 +510,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -6685,3 +6691,24 @@ jobs: path: super-linter.log retention-days: 7 + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + diff --git a/.github/workflows/technical-doc-writer.lock.yml b/.github/workflows/technical-doc-writer.lock.yml index 2b650368e4..2794d3b554 100644 --- a/.github/workflows/technical-doc-writer.lock.yml +++ b/.github/workflows/technical-doc-writer.lock.yml @@ -107,6 +107,7 @@ # conclusion["conclusion"] # create_pull_request["create_pull_request"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion @@ -116,12 +117,14 @@ # agent --> conclusion # agent --> create_pull_request # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_pull_request --> add_comment # create_pull_request --> conclusion # detection --> add_comment # detection --> conclusion # detection --> create_pull_request +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -524,7 +527,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1303,8 +1308,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1312,6 +1317,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7805,6 +7811,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/unbloat-docs.lock.yml b/.github/workflows/unbloat-docs.lock.yml index f831dffec0..a183f39897 100644 --- a/.github/workflows/unbloat-docs.lock.yml +++ b/.github/workflows/unbloat-docs.lock.yml @@ -142,6 +142,7 @@ # create_pull_request["create_pull_request"] # detection["detection"] # pre_activation["pre_activation"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion @@ -151,12 +152,14 @@ # agent --> conclusion # agent --> create_pull_request # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_pull_request --> add_comment # create_pull_request --> conclusion # detection --> add_comment # detection --> conclusion # detection --> create_pull_request +# detection --> update_cache_memory # detection --> upload_assets # pre_activation --> activation # upload_assets --> conclusion @@ -479,7 +482,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -1658,8 +1663,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -1667,6 +1672,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7714,6 +7720,27 @@ jobs: } await main(); + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/.github/workflows/weekly-issue-summary.lock.yml b/.github/workflows/weekly-issue-summary.lock.yml index 853455787c..c0810eadf3 100644 --- a/.github/workflows/weekly-issue-summary.lock.yml +++ b/.github/workflows/weekly-issue-summary.lock.yml @@ -71,16 +71,19 @@ # conclusion["conclusion"] # create_discussion["create_discussion"] # detection["detection"] +# update_cache_memory["update_cache_memory"] # upload_assets["upload_assets"] # activation --> agent # activation --> conclusion # agent --> conclusion # agent --> create_discussion # agent --> detection +# agent --> update_cache_memory # agent --> upload_assets # create_discussion --> conclusion # detection --> conclusion # detection --> create_discussion +# detection --> update_cache_memory # detection --> upload_assets # upload_assets --> conclusion # ``` @@ -700,7 +703,9 @@ # ``` # # Pinned GitHub Actions: -# - actions/cache@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# - actions/cache/restore@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) +# https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 +# - actions/cache/save@v4 (0057852bfaa89a56745cba8c7296529d2fc39830) # https://github.com/actions/cache/commit/0057852bfaa89a56745cba8c7296529d2fc39830 # - actions/checkout@v5 (93cb6efe18208431cddfb8368fd83d5badbf9bfd) # https://github.com/actions/checkout/commit/93cb6efe18208431cddfb8368fd83d5badbf9bfd @@ -878,8 +883,8 @@ jobs: echo "Cache memory directory created at /tmp/gh-aw/cache-memory" echo "This folder provides persistent file storage across workflow runs" echo "LLMs and agentic tools can freely read and write files in this directory" - - name: Cache memory file share data - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + - name: Restore cache memory file share data + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: key: memory-${{ github.workflow }}-${{ github.run_id }} path: /tmp/gh-aw/cache-memory @@ -887,6 +892,7 @@ jobs: memory-${{ github.workflow }}- memory- - name: Upload cache-memory data as artifact + if: always() uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: cache-memory @@ -7520,6 +7526,27 @@ jobs: path: /tmp/gh-aw/threat-detection/detection.log if-no-files-found: ignore + update_cache_memory: + needs: + - agent + - detection + if: needs.detection.outputs.success == 'true' + runs-on: ubuntu-latest + permissions: {} + timeout-minutes: 5 + steps: + - name: Download cache-memory artifact + continue-on-error: true + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 + with: + name: cache-memory + path: /tmp/gh-aw/cache-memory + - name: Save cache memory + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + key: memory-${{ github.workflow }}-${{ github.run_id }} + path: /tmp/gh-aw/cache-memory + upload_assets: needs: - agent diff --git a/pkg/constants/constants.go b/pkg/constants/constants.go index 8217a95908..411cbc22e4 100644 --- a/pkg/constants/constants.go +++ b/pkg/constants/constants.go @@ -209,6 +209,7 @@ const AgentJobName = "agent" const ActivationJobName = "activation" const PreActivationJobName = "pre_activation" const DetectionJobName = "detection" +const UpdateCacheMemoryJobName = "update_cache_memory" const SafeOutputArtifactName = "safe_output.jsonl" const AgentOutputArtifactName = "agent_output.json" diff --git a/pkg/constants/constants_test.go b/pkg/constants/constants_test.go index 437590b65c..0aaea9f7d8 100644 --- a/pkg/constants/constants_test.go +++ b/pkg/constants/constants_test.go @@ -215,6 +215,7 @@ func TestConstantValues(t *testing.T) { {"ActivationJobName", ActivationJobName, "activation"}, {"PreActivationJobName", PreActivationJobName, "pre_activation"}, {"DetectionJobName", DetectionJobName, "detection"}, + {"UpdateCacheMemoryJobName", UpdateCacheMemoryJobName, "update_cache_memory"}, {"SafeOutputArtifactName", SafeOutputArtifactName, "safe_output.jsonl"}, {"AgentOutputArtifactName", AgentOutputArtifactName, "agent_output.json"}, {"SafeOutputsMCPServerID", SafeOutputsMCPServerID, "safeoutputs"}, diff --git a/pkg/workflow/action_pins_test.go b/pkg/workflow/action_pins_test.go index bfc16de226..289652e940 100644 --- a/pkg/workflow/action_pins_test.go +++ b/pkg/workflow/action_pins_test.go @@ -345,9 +345,12 @@ func TestApplyActionPinToStep(t *testing.T) { func TestGetActionPinsSorting(t *testing.T) { pins := getActionPins() - // Verify we got all the pins (should be 25 after adding more actions) - if len(pins) != 25 { - t.Errorf("getActionPins() returned %d pins, expected 25", len(pins)) + // Verify we got all the pins + // Expected count: 26 (as of 2025-12-07, includes actions/cache/save@v4) + // Update this count when adding or removing action pins in actions-lock.json + expectedCount := 26 + if len(pins) != expectedCount { + t.Errorf("getActionPins() returned %d pins, expected %d", len(pins), expectedCount) } // Verify they are sorted by version (descending) then by repository name (ascending) diff --git a/pkg/workflow/cache.go b/pkg/workflow/cache.go index bd2f0f8157..f8ec9fbb86 100644 --- a/pkg/workflow/cache.go +++ b/pkg/workflow/cache.go @@ -4,6 +4,7 @@ import ( "fmt" "strings" + "github.com/githubnext/gh-aw/pkg/constants" "github.com/githubnext/gh-aw/pkg/logger" "github.com/goccy/go-yaml" ) @@ -316,6 +317,14 @@ func generateCacheMemorySteps(builder *strings.Builder, data *WorkflowData) { cacheLog.Printf("Generating cache-memory steps for %d caches", len(data.CacheMemoryConfig.Caches)) + // Check if threat detection is enabled + // When threat detection is enabled, cache should only be restored (not saved) + // The update_cache_memory job will handle saving after successful detection + threatDetectionEnabled := data.SafeOutputs != nil && data.SafeOutputs.ThreatDetection != nil + if threatDetectionEnabled { + cacheLog.Print("Threat detection enabled - cache-memory will use restore-only mode") + } + builder.WriteString(" # Cache memory file share configuration from frontmatter processed below\n") // Use backward-compatible paths only when there's a single cache with ID "default" @@ -368,9 +377,11 @@ func generateCacheMemorySteps(builder *strings.Builder, data *WorkflowData) { } // Step name and action - // Use actions/cache/restore for restore-only caches, actions/cache for normal caches + // Use actions/cache/restore for restore-only caches OR when threat detection is enabled + // When threat detection is enabled, cache updates are deferred to update_cache_memory job + restoreOnly := cache.RestoreOnly || threatDetectionEnabled var actionName string - if cache.RestoreOnly { + if restoreOnly { actionName = "Restore cache memory file share data" } else { actionName = "Cache memory file share data" @@ -383,7 +394,7 @@ func generateCacheMemorySteps(builder *strings.Builder, data *WorkflowData) { } // Use actions/cache/restore@v4 for restore-only, actions/cache@v4 for normal - if cache.RestoreOnly { + if restoreOnly { builder.WriteString(fmt.Sprintf(" uses: %s\n", GetActionPin("actions/cache/restore"))) } else { builder.WriteString(fmt.Sprintf(" uses: %s\n", GetActionPin("actions/cache"))) @@ -399,13 +410,17 @@ func generateCacheMemorySteps(builder *strings.Builder, data *WorkflowData) { fmt.Fprintf(builder, " %s\n", key) } - // Add upload-artifact step for each cache (runs always), but skip for restore-only caches - if !cache.RestoreOnly { + // Add upload-artifact step for each cache + // Upload artifacts when threat detection is enabled (for update_cache_memory job) + // OR when cache is not explicitly restore-only + shouldUploadArtifact := threatDetectionEnabled || !cache.RestoreOnly + if shouldUploadArtifact { if useBackwardCompatiblePaths { builder.WriteString(" - name: Upload cache-memory data as artifact\n") } else { builder.WriteString(fmt.Sprintf(" - name: Upload cache-memory data as artifact (%s)\n", cache.ID)) } + builder.WriteString(" if: always()\n") builder.WriteString(fmt.Sprintf(" uses: %s\n", GetActionPin("actions/upload-artifact"))) builder.WriteString(" with:\n") // Always use the new artifact name and path format @@ -499,3 +514,106 @@ func generateCacheMemoryPromptSection(yaml *strings.Builder, config *CacheMemory yaml.WriteString(" Feel free to create, read, update, and organize files in these folders as needed for your tasks.\n") } } + +// buildUpdateCacheMemoryJob creates a job that updates cache-memory after successful threat detection +// This job runs after the detection job completes successfully and copies artifacts to cache folders +func (c *Compiler) buildUpdateCacheMemoryJob(data *WorkflowData, mainJobName string) (*Job, error) { + cacheLog.Print("Building update_cache_memory job") + + if data.CacheMemoryConfig == nil || len(data.CacheMemoryConfig.Caches) == 0 { + return nil, fmt.Errorf("cache-memory is not configured") + } + + var steps []string + + // Use backward-compatible naming only when there's a single cache with ID "default" + useBackwardCompatiblePaths := len(data.CacheMemoryConfig.Caches) == 1 && data.CacheMemoryConfig.Caches[0].ID == "default" + + // Step 1: Download cache-memory artifacts from agent job + for _, cache := range data.CacheMemoryConfig.Caches { + // Skip restore-only caches as they don't have artifacts to download + if cache.RestoreOnly { + continue + } + + // Match artifact naming logic from upload step + var artifactName string + if useBackwardCompatiblePaths { + artifactName = "cache-memory" + } else { + artifactName = fmt.Sprintf("cache-memory-%s", cache.ID) + } + + steps = append(steps, fmt.Sprintf(" - name: Download %s artifact\n", artifactName)) + steps = append(steps, " continue-on-error: true\n") + steps = append(steps, fmt.Sprintf(" uses: %s\n", GetActionPin("actions/download-artifact"))) + steps = append(steps, " with:\n") + steps = append(steps, fmt.Sprintf(" name: %s\n", artifactName)) + + // Match directory path logic + var downloadPath string + if cache.ID == "default" { + downloadPath = "/tmp/gh-aw/cache-memory" + } else { + downloadPath = fmt.Sprintf("/tmp/gh-aw/cache-memory-%s", cache.ID) + } + steps = append(steps, fmt.Sprintf(" path: %s\n", downloadPath)) + } + + // Step 2: Save cache-memory using actions/cache/save + // This updates the cache with the artifact content that was downloaded + for _, cache := range data.CacheMemoryConfig.Caches { + // Skip restore-only caches + if cache.RestoreOnly { + continue + } + + var cacheDir string + if cache.ID == "default" { + cacheDir = "/tmp/gh-aw/cache-memory" + } else { + cacheDir = fmt.Sprintf("/tmp/gh-aw/cache-memory-%s", cache.ID) + } + + // Generate cache key (same as in generateCacheMemorySteps) + cacheKey := cache.Key + if cacheKey == "" { + if cache.ID == "default" { + cacheKey = "memory-${{ github.workflow }}-${{ github.run_id }}" + } else { + cacheKey = fmt.Sprintf("memory-%s-${{ github.workflow }}-${{ github.run_id }}", cache.ID) + } + } + + // Ensure key ends with run_id suffix + runIdSuffix := "-${{ github.run_id }}" + if !strings.HasSuffix(cacheKey, runIdSuffix) { + cacheKey = cacheKey + runIdSuffix + } + + // Add step to save cache (use backward-compatible naming when applicable) + stepName := "Save cache memory" + if !useBackwardCompatiblePaths { + stepName = fmt.Sprintf("Save cache memory (%s)", cache.ID) + } + + steps = append(steps, fmt.Sprintf(" - name: %s\n", stepName)) + steps = append(steps, fmt.Sprintf(" uses: %s\n", GetActionPin("actions/cache/save"))) + steps = append(steps, " with:\n") + steps = append(steps, fmt.Sprintf(" key: %s\n", cacheKey)) + steps = append(steps, fmt.Sprintf(" path: %s\n", cacheDir)) + } + + // Build the job + job := &Job{ + Name: constants.UpdateCacheMemoryJobName, + If: "needs.detection.outputs.success == 'true'", + RunsOn: "runs-on: ubuntu-latest", + Permissions: NewPermissionsEmpty().RenderToYAML(), + TimeoutMinutes: 5, + Steps: steps, + Needs: []string{mainJobName, constants.DetectionJobName}, + } + + return job, nil +} diff --git a/pkg/workflow/cache_memory_threat_detection_test.go b/pkg/workflow/cache_memory_threat_detection_test.go new file mode 100644 index 0000000000..62cff0f8ee --- /dev/null +++ b/pkg/workflow/cache_memory_threat_detection_test.go @@ -0,0 +1,192 @@ +package workflow + +import ( + "os" + "path/filepath" + "strings" + "testing" +) + +// TestCacheMemoryWithThreatDetection tests that cache-memory uses restore-only mode +// when threat detection is enabled, and that an update_cache_memory job is created +func TestCacheMemoryWithThreatDetection(t *testing.T) { + tests := []struct { + name string + frontmatter string + expectedInLock []string + notExpectedInLock []string + }{ + { + name: "cache-memory with threat detection enabled", + frontmatter: `--- +name: Test Cache Memory with Threat Detection +on: workflow_dispatch +permissions: + contents: read + issues: read + pull-requests: read +engine: copilot +tools: + cache-memory: true +safe-outputs: + create-issue: + labels: ["test"] +--- + +# Test workflow + +Test the cache-memory and threat detection integration. +`, + expectedInLock: []string{ + // Cache should use restore-only mode in agent job + "- name: Restore cache memory file share data", + "actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830", + "key: memory-${{ github.workflow }}-${{ github.run_id }}", + "path: /tmp/gh-aw/cache-memory", + // Artifact should still be uploaded + "- name: Upload cache-memory data as artifact", + "if: always()", + "name: cache-memory", + // Detection job should exist + "detection:", + "needs: agent", + // update_cache_memory job should exist + "update_cache_memory:", + "needs:", + "- agent", + "- detection", + "if: needs.detection.outputs.success == 'true'", + "- name: Download cache-memory artifact", + "- name: Save cache memory", + "actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830", + }, + notExpectedInLock: []string{ + // Should NOT use regular cache action in agent job + "- name: Cache memory file share data\n", + }, + }, + { + name: "cache-memory without threat detection", + frontmatter: `--- +name: Test Cache Memory without Threat Detection +on: workflow_dispatch +permissions: + contents: read +engine: copilot +tools: + cache-memory: true +--- + +# Test workflow + +Test cache-memory without threat detection. +`, + expectedInLock: []string{ + // Cache should use normal cache action + "- name: Cache memory file share data", + "actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830", + "key: memory-${{ github.workflow }}-${{ github.run_id }}", + }, + notExpectedInLock: []string{ + // Should NOT have detection job + "detection:", + // Should NOT have update_cache_memory job + "update_cache_memory:", + // Should NOT use restore-only action + "actions/cache/restore@", + }, + }, + { + name: "multiple cache-memory with threat detection", + frontmatter: `--- +name: Test Multiple Cache Memory with Threat Detection +on: workflow_dispatch +permissions: + contents: read +engine: copilot +tools: + cache-memory: + - id: default + key: memory-default + - id: session + key: memory-session +safe-outputs: + create-issue: + labels: ["test"] +--- + +# Test workflow + +Test multiple cache-memory entries with threat detection. +`, + expectedInLock: []string{ + // Both caches should use restore-only mode + "- name: Restore cache memory file share data (default)", + "actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830", + "- name: Restore cache memory file share data (session)", + "actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830", + // Both artifacts should be uploaded + "- name: Upload cache-memory data as artifact (default)", + "name: cache-memory-default", + "- name: Upload cache-memory data as artifact (session)", + "name: cache-memory-session", + // update_cache_memory job should handle both + "update_cache_memory:", + "- name: Download cache-memory-default artifact", + "name: cache-memory-default", + "- name: Download cache-memory-session artifact", + "name: cache-memory-session", + "- name: Save cache memory (default)", + "key: memory-default-${{ github.run_id }}", + "- name: Save cache memory (session)", + "key: memory-session-${{ github.run_id }}", + }, + notExpectedInLock: []string{ + // Should NOT use regular cache action + "- name: Cache memory file share data (default)", + "- name: Cache memory file share data (session)", + }, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + // Create temporary directory for test + tempDir := t.TempDir() + mdPath := filepath.Join(tempDir, "test.md") + + // Write markdown file + if err := os.WriteFile(mdPath, []byte(tt.frontmatter), 0600); err != nil { + t.Fatalf("Failed to write markdown file: %v", err) + } + + // Compile the workflow + compiler := NewCompiler(false, "", "test") + if err := compiler.CompileWorkflow(mdPath); err != nil { + t.Fatalf("Failed to compile workflow: %v", err) + } + + // Read the generated lock file + lockPath := strings.TrimSuffix(mdPath, ".md") + ".lock.yml" + lockContent, err := os.ReadFile(lockPath) + if err != nil { + t.Fatalf("Failed to read lock file: %v", err) + } + lockStr := string(lockContent) + + // Check expected strings are present + for _, expected := range tt.expectedInLock { + if !strings.Contains(lockStr, expected) { + t.Errorf("Expected string not found in lock file:\n%s\n\nLock file content:\n%s", expected, lockStr) + } + } + + // Check unexpected strings are absent + for _, notExpected := range tt.notExpectedInLock { + if strings.Contains(lockStr, notExpected) { + t.Errorf("Unexpected string found in lock file:\n%s", notExpected) + } + } + }) + } +} diff --git a/pkg/workflow/compiler_jobs.go b/pkg/workflow/compiler_jobs.go index 0053bc64c6..deae1b2a34 100644 --- a/pkg/workflow/compiler_jobs.go +++ b/pkg/workflow/compiler_jobs.go @@ -246,6 +246,20 @@ func (c *Compiler) buildSafeOutputsJobs(data *WorkflowData, jobName, markdownPat } compilerJobsLog.Printf("Successfully added threat detection job: %s", constants.DetectionJobName) threatDetectionEnabled = true + + // Build update_cache_memory job if cache-memory is configured + // This job runs after successful detection and updates the cache from artifacts + if data.CacheMemoryConfig != nil && len(data.CacheMemoryConfig.Caches) > 0 { + compilerJobsLog.Print("Building update_cache_memory job") + updateCacheJob, err := c.buildUpdateCacheMemoryJob(data, jobName) + if err != nil { + return fmt.Errorf("failed to build update_cache_memory job: %w", err) + } + if err := c.jobManager.AddJob(updateCacheJob); err != nil { + return fmt.Errorf("failed to add update_cache_memory job: %w", err) + } + compilerJobsLog.Printf("Successfully added update_cache_memory job") + } } // Track safe output job names to establish dependencies for conclusion job diff --git a/pkg/workflow/data/action_pins.json b/pkg/workflow/data/action_pins.json index 13156845b2..ad52ade1a1 100644 --- a/pkg/workflow/data/action_pins.json +++ b/pkg/workflow/data/action_pins.json @@ -10,6 +10,11 @@ "version": "v4", "sha": "0057852bfaa89a56745cba8c7296529d2fc39830" }, + "actions/cache/save@v4": { + "repo": "actions/cache/save", + "version": "v4", + "sha": "0057852bfaa89a56745cba8c7296529d2fc39830" + }, "actions/cache@v4": { "repo": "actions/cache", "version": "v4", diff --git a/pkg/workflow/js/update_pr_description_helpers.cjs b/pkg/workflow/js/update_pr_description_helpers.cjs index 67bb92f997..9b8239298a 100644 --- a/pkg/workflow/js/update_pr_description_helpers.cjs +++ b/pkg/workflow/js/update_pr_description_helpers.cjs @@ -47,17 +47,17 @@ function buildIslandEndMarker(runId) { function findIsland(body, runId) { const startMarker = buildIslandStartMarker(runId); const endMarker = buildIslandEndMarker(runId); - + const startIndex = body.indexOf(startMarker); if (startIndex === -1) { return { found: false, startIndex: -1, endIndex: -1 }; } - + const endIndex = body.indexOf(endMarker, startIndex); if (endIndex === -1) { return { found: false, startIndex: -1, endIndex: -1 }; } - + return { found: true, startIndex, endIndex: endIndex + endMarker.length }; } @@ -75,24 +75,24 @@ function findIsland(body, runId) { function updatePRBody(params) { const { currentBody, newContent, operation, workflowName, runUrl, runId } = params; const aiFooter = buildAIFooter(workflowName, runUrl); - + if (operation === "replace") { // Replace: just use the new content as-is core.info("Operation: replace (full body replacement)"); return newContent; } - + if (operation === "replace-island") { // Try to find existing island for this run ID const island = findIsland(currentBody, runId); - + if (island.found) { // Replace the island content core.info(`Operation: replace-island (updating existing island for run ${runId})`); const startMarker = buildIslandStartMarker(runId); const endMarker = buildIslandEndMarker(runId); const islandContent = `${startMarker}\n${newContent}${aiFooter}\n${endMarker}`; - + const before = currentBody.substring(0, island.startIndex); const after = currentBody.substring(island.endIndex); return before + islandContent + after; @@ -106,14 +106,14 @@ function updatePRBody(params) { return currentBody + appendSection; } } - + if (operation === "prepend") { // Prepend: add content, AI footer, and horizontal line at the start core.info("Operation: prepend (add to start with separator)"); const prependSection = `${newContent}${aiFooter}\n\n---\n\n`; return prependSection + currentBody; } - + // Default to append core.info("Operation: append (add to end with separator)"); const appendSection = `\n\n---\n\n${newContent}${aiFooter}`; diff --git a/pkg/workflow/js/update_pr_description_helpers.test.cjs b/pkg/workflow/js/update_pr_description_helpers.test.cjs index 5b93d8fb04..e826b28377 100644 --- a/pkg/workflow/js/update_pr_description_helpers.test.cjs +++ b/pkg/workflow/js/update_pr_description_helpers.test.cjs @@ -11,13 +11,9 @@ const mockCore = { global.core = mockCore; // Import the module -const { - buildAIFooter, - buildIslandStartMarker, - buildIslandEndMarker, - findIsland, - updatePRBody, -} = await import("./update_pr_description_helpers.cjs"); +const { buildAIFooter, buildIslandStartMarker, buildIslandEndMarker, findIsland, updatePRBody } = await import( + "./update_pr_description_helpers.cjs" +); describe("update_pr_description_helpers.cjs", () => { beforeEach(() => { @@ -95,7 +91,8 @@ describe("update_pr_description_helpers.cjs", () => { }); it("should handle multiple islands with different run IDs", () => { - const body = "\nIsland 1\n\n\nIsland 2\n"; + const body = + "\nIsland 1\n\n\nIsland 2\n"; const result1 = findIsland(body, 100); const result2 = findIsland(body, 200); expect(result1.found).toBe(true); @@ -239,7 +236,8 @@ describe("update_pr_description_helpers.cjs", () => { }); it("should preserve content outside island when replacing", () => { - const currentBody = "# Title\n\nSome intro\n\n\nOld\n\n\n## Footer\n\nMore content"; + const currentBody = + "# Title\n\nSome intro\n\n\nOld\n\n\n## Footer\n\nMore content"; const result = updatePRBody({ currentBody, newContent: "Updated content", @@ -275,7 +273,8 @@ describe("update_pr_description_helpers.cjs", () => { }); it("should handle multiple islands with same run ID (replace first)", () => { - const currentBody = "\nFirst\n\n\nSecond\n"; + const currentBody = + "\nFirst\n\n\nSecond\n"; const result = updatePRBody({ currentBody, newContent: "Replaced",