chore(deps): update actions/cache digest to 55cc834 - #1486
renovate[bot] wants to merge 1 commit into
Conversation
✅ Deploy Preview for stranske-trip-planner canceled.
|
📝 WalkthroughWalkthroughUpdated the pinned ChangesCache action pin updates
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Suggested reviewers
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/agents-auto-pilot.yml:
- Line 225: This synced agents workflow change should not be edited locally in
this repo; the `actions/cache` SHA update belongs in the source-of-truth
`stranske/Workflows` repository first. Revert the local change in
`agents-auto-pilot.yml` and apply the same update in the upstream synced
workflow so the consumer repo stays aligned with the generated source.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: ac908dd1-e693-4e82-9d70-d2737cdb68ec
📒 Files selected for processing (2)
.github/actions/artifact-cache/action.yml.github/workflows/agents-auto-pilot.yml
🔗 Linked repositories identified
CodeRabbit considers these linked repositories for cross-repo context during reviews:
stranske/Workflows(auto-detected)stranske/Template(auto-detected)
📜 Review details
⏰ Context from checks skipped due to timeout. (3)
- GitHub Check: Cross-Repo Smoke / cross-repo-full-product
- GitHub Check: Runtime CI
- GitHub Check: cross-repo-full-product
⚠️ CI failures not shown inline (7)
GitHub Actions: Agents Verifier / 2_check.txt: chore(deps): update actions/cache digest to 55cc834
Conclusion: failure
##[group]Run set -euo pipefail
�[36;1mset -euo pipefail�[0m
�[36;1m�[0m
�[36;1m# Use dedicated scripts dir, create if needed�[0m
�[36;1mINSTALL_DIR=""�[0m
�[36;1mif [ -z "$INSTALL_DIR" ]; then�[0m
�[36;1m INSTALL_DIR="$***GITHUB_WORKSPACE***/.github/scripts"�[0m
�[36;1mfi�[0m
�[36;1mmkdir -p "$INSTALL_DIR"�[0m
�[36;1m�[0m
�[36;1mecho "📦 Installing `@octokit` dependencies in $INSTALL_DIR..."�[0m
�[36;1mcd "$INSTALL_DIR"�[0m
�[36;1m�[0m
�[36;1mdeclare -a VENDORED_ALIAS_DIRS=()�[0m
�[36;1m�[0m
�[36;1mcleanup_vendor_aliases() ***�[0m
�[36;1m if [ "$***`#VENDORED_ALIAS_DIRS`[@]***" -eq 0 ]; then�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m local cleanup_dir="$INSTALL_DIR"�[0m
�[36;1m if [ -z "$cleanup_dir" ]; then�[0m
�[36;1m echo "::warning::Install dir is empty, skipping vendored alias cleanup"�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m if ! pushd "$cleanup_dir" >/dev/null 2>&1; then�[0m
�[36;1m echo "::warning::Failed to enter install dir \"$cleanup_dir\"; skipping vendored alias cleanup"�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m for vendored_alias in "$***VENDORED_ALIAS_DIRS[@]***"; do�[0m
�[36;1m if [ -z "$vendored_alias" ]; then�[0m
�[36;1m continue�[0m
�[36;1m fi�[0m
�[36;1m rm -rf -- "$vendored_alias" || true�[0m
�[36;1m local parent_dir�[0m
�[36;1m parent_dir=$(dirname "$vendored_alias")�[0m
�[36;1m # Remove empty parent directories that may have been created for scoped packages�[0m
�[36;1m while [ "$parent_dir" != "." ] && [ "$parent_dir" != "/" ]; do�[0m
�[36;1m rmdir -- "$parent_dir" 2>/dev/null || break�[0m
�[36;1m parent_dir=$(dirname "$parent_dir")�[0m
�[36;1m done�[0m
�[36;1m done�[0m
�[36;1m�[0m
�[36;1m popd >/dev/null 2>&1 || true�[0m
�[36;1m***�[0m
�[36;1m�[0m
�[36;1mtrap cleanup_vendor_aliases EXIT�[0m
�[36;1m�[0m
�[36;1mcreate_vendor_aliases() ***�[0m
�[36;1m if [ ! -f "package.json" ];...
GitHub Actions: Agents Gate Followups / Record autofix metrics: chore(deps): update actions/cache digest to 55cc834
Conclusion: failure
##[group]Run actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3
with:
github-***REDACTED***
script: const fs = require('fs');
const retryPath = './.github/scripts/github-api-with-retry.js';
const { createTokenAwareRetry } = fs.existsSync(retryPath)
? require(retryPath)
: { createTokenAwareRetry: async () => ({
withRetry: (fn) => fn(github),
paginateWithRetry: (method, params) => github.paginate(method, params)
}) };
const { withRetry, paginateWithRetry } = await createTokenAwareRetry({ github, core });
const prNumber = Number('0') || 0;
const attemptNumber = Number('0') || 0;
const attemptLimit = Number('0') || 0;
const headShaBefore = '';
const gateConclusionBefore =
'' ||
(context.payload.workflow_run?.conclusion || '');
const gateRunId =
'' ||
String(context.payload.workflow_run?.id || '');
const triggerReason = 'unknown';
const triggerJob = '';
const triggerStep = '';
const stopReason = '';
const codexAutofixResult = 'skipped';
const claudeAutofixResult = 'skipped';
const autofixResult =
codexAutofixResult && codexAutofixResult !== 'skipped'
? codexAutofixResult
: claudeAutofixResult;
const { owner, repo } = context.repo;
let fixApplied = false;
let headShaAfter = headShaBefore;
let gateResultAfter = gateConclusionBefore || 'unknown';
if (prNumber) {
try {
const { data: pr } = await withRetry((client) => client.rest.pulls.get({
owner,
repo,
pull_number: prNumber,
}));
headShaAfter = pr.head?.sha || headShaAfter;
fixApplied = Boolean(
headShaBefore && headShaAfter && headShaBefore !== headShaAfter
);
// Remove autofix:escalated label when fixes are applied
// This allows re-escalation to the agent if Gate fails again
if (fixApplied) {
const prLabels = pr.labels?.map(l => l.name) || [];
if (prLabels.includes('autofix:escalated')) {
try {
await withRetry((client) => client.rest.issues.removeLabel({
own...
GitHub Actions: Agents Verifier / check: chore(deps): update actions/cache digest to 55cc834
Conclusion: failure
##[group]Run set -euo pipefail
�[36;1mset -euo pipefail�[0m
�[36;1m�[0m
�[36;1m# Use dedicated scripts dir, create if needed�[0m
�[36;1mINSTALL_DIR=""�[0m
�[36;1mif [ -z "$INSTALL_DIR" ]; then�[0m
�[36;1m INSTALL_DIR="$***GITHUB_WORKSPACE***/.github/scripts"�[0m
�[36;1mfi�[0m
�[36;1mmkdir -p "$INSTALL_DIR"�[0m
�[36;1m�[0m
�[36;1mecho "📦 Installing `@octokit` dependencies in $INSTALL_DIR..."�[0m
�[36;1mcd "$INSTALL_DIR"�[0m
�[36;1m�[0m
�[36;1mdeclare -a VENDORED_ALIAS_DIRS=()�[0m
�[36;1m�[0m
�[36;1mcleanup_vendor_aliases() ***�[0m
�[36;1m if [ "$***`#VENDORED_ALIAS_DIRS`[@]***" -eq 0 ]; then�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m local cleanup_dir="$INSTALL_DIR"�[0m
�[36;1m if [ -z "$cleanup_dir" ]; then�[0m
�[36;1m echo "::warning::Install dir is empty, skipping vendored alias cleanup"�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m if ! pushd "$cleanup_dir" >/dev/null 2>&1; then�[0m
�[36;1m echo "::warning::Failed to enter install dir \"$cleanup_dir\"; skipping vendored alias cleanup"�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m for vendored_alias in "$***VENDORED_ALIAS_DIRS[@]***"; do�[0m
�[36;1m if [ -z "$vendored_alias" ]; then�[0m
�[36;1m continue�[0m
�[36;1m fi�[0m
�[36;1m rm -rf -- "$vendored_alias" || true�[0m
�[36;1m local parent_dir�[0m
�[36;1m parent_dir=$(dirname "$vendored_alias")�[0m
�[36;1m # Remove empty parent directories that may have been created for scoped packages�[0m
�[36;1m while [ "$parent_dir" != "." ] && [ "$parent_dir" != "/" ]; do�[0m
�[36;1m rmdir -- "$parent_dir" 2>/dev/null || break�[0m
�[36;1m parent_dir=$(dirname "$parent_dir")�[0m
�[36;1m done�[0m
�[36;1m done�[0m
�[36;1m�[0m
�[36;1m popd >/dev/null 2>&1 || true�[0m
�[36;1m***�[0m
�[36;1m�[0m
�[36;1mtrap cleanup_vendor_aliases EXIT�[0m
�[36;1m�[0m
�[36;1mcreate_vendor_aliases() ***�[0m
�[36;1m if [ ! -f "package.json" ];...
GitHub Actions: Agents Gate Followups / 1_Record autofix metrics.txt: chore(deps): update actions/cache digest to 55cc834
Conclusion: failure
##[group]Run actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3
with:
github-***REDACTED***
script: const fs = require('fs');
const retryPath = './.github/scripts/github-api-with-retry.js';
const { createTokenAwareRetry } = fs.existsSync(retryPath)
? require(retryPath)
: { createTokenAwareRetry: async () => ({
withRetry: (fn) => fn(github),
paginateWithRetry: (method, params) => github.paginate(method, params)
}) };
const { withRetry, paginateWithRetry } = await createTokenAwareRetry({ github, core });
const prNumber = Number('0') || 0;
const attemptNumber = Number('0') || 0;
const attemptLimit = Number('0') || 0;
const headShaBefore = '';
const gateConclusionBefore =
'' ||
(context.payload.workflow_run?.conclusion || '');
const gateRunId =
'' ||
String(context.payload.workflow_run?.id || '');
const triggerReason = 'unknown';
const triggerJob = '';
const triggerStep = '';
const stopReason = '';
const codexAutofixResult = 'skipped';
const claudeAutofixResult = 'skipped';
const autofixResult =
codexAutofixResult && codexAutofixResult !== 'skipped'
? codexAutofixResult
: claudeAutofixResult;
const { owner, repo } = context.repo;
let fixApplied = false;
let headShaAfter = headShaBefore;
let gateResultAfter = gateConclusionBefore || 'unknown';
if (prNumber) {
try {
const { data: pr } = await withRetry((client) => client.rest.pulls.get({
owner,
repo,
pull_number: prNumber,
}));
headShaAfter = pr.head?.sha || headShaAfter;
fixApplied = Boolean(
headShaBefore && headShaAfter && headShaBefore !== headShaAfter
);
// Remove autofix:escalated label when fixes are applied
// This allows re-escalation to the agent if Gate fails again
if (fixApplied) {
const prLabels = pr.labels?.map(l => l.name) || [];
if (prLabels.includes('autofix:escalated')) {
try {
await withRetry((client) => client.rest.issues.removeLabel({
own...
GitHub Actions: Claude Code Review (Opt-in) / Resolve review target: chore(deps): update actions/cache digest to 55cc834
Conclusion: failure
##[group]Run set -euo pipefail
�[36;1mset -euo pipefail�[0m
�[36;1m�[0m
�[36;1m# Use dedicated scripts dir, create if needed�[0m
�[36;1mINSTALL_DIR=""�[0m
�[36;1mif [ -z "$INSTALL_DIR" ]; then�[0m
�[36;1m INSTALL_DIR="$***GITHUB_WORKSPACE***/.github/scripts"�[0m
�[36;1mfi�[0m
�[36;1mmkdir -p "$INSTALL_DIR"�[0m
�[36;1m�[0m
�[36;1mecho "📦 Installing `@octokit` dependencies in $INSTALL_DIR..."�[0m
�[36;1mcd "$INSTALL_DIR"�[0m
�[36;1m�[0m
�[36;1mdeclare -a VENDORED_ALIAS_DIRS=()�[0m
�[36;1m�[0m
�[36;1mcleanup_vendor_aliases() ***�[0m
�[36;1m if [ "$***`#VENDORED_ALIAS_DIRS`[@]***" -eq 0 ]; then�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m local cleanup_dir="$INSTALL_DIR"�[0m
�[36;1m if [ -z "$cleanup_dir" ]; then�[0m
�[36;1m echo "::warning::Install dir is empty, skipping vendored alias cleanup"�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m if ! pushd "$cleanup_dir" >/dev/null 2>&1; then�[0m
�[36;1m echo "::warning::Failed to enter install dir \"$cleanup_dir\"; skipping vendored alias cleanup"�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m for vendored_alias in "$***VENDORED_ALIAS_DIRS[@]***"; do�[0m
�[36;1m if [ -z "$vendored_alias" ]; then�[0m
�[36;1m continue�[0m
�[36;1m fi�[0m
�[36;1m rm -rf -- "$vendored_alias" || true�[0m
�[36;1m local parent_dir�[0m
�[36;1m parent_dir=$(dirname "$vendored_alias")�[0m
�[36;1m # Remove empty parent directories that may have been created for scoped packages�[0m
�[36;1m while [ "$parent_dir" != "." ] && [ "$parent_dir" != "/" ]; do�[0m
�[36;1m rmdir -- "$parent_dir" 2>/dev/null || break�[0m
�[36;1m parent_dir=$(dirname "$parent_dir")�[0m
�[36;1m done�[0m
�[36;1m done�[0m
�[36;1m�[0m
�[36;1m popd >/dev/null 2>&1 || true�[0m
�[36;1m***�[0m
�[36;1m�[0m
�[36;1mtrap cleanup_vendor_aliases EXIT�[0m
�[36;1m�[0m
�[36;1mcreate_vendor_aliases() ***�[0m
�[36;1m if [ ! -f "package.json" ];...
GitHub Actions: Claude Code Review (Opt-in) / 5_Resolve review target.txt: chore(deps): update actions/cache digest to 55cc834
Conclusion: failure
##[group]Run set -euo pipefail
�[36;1mset -euo pipefail�[0m
�[36;1m�[0m
�[36;1m# Use dedicated scripts dir, create if needed�[0m
�[36;1mINSTALL_DIR=""�[0m
�[36;1mif [ -z "$INSTALL_DIR" ]; then�[0m
�[36;1m INSTALL_DIR="$***GITHUB_WORKSPACE***/.github/scripts"�[0m
�[36;1mfi�[0m
�[36;1mmkdir -p "$INSTALL_DIR"�[0m
�[36;1m�[0m
�[36;1mecho "📦 Installing `@octokit` dependencies in $INSTALL_DIR..."�[0m
�[36;1mcd "$INSTALL_DIR"�[0m
�[36;1m�[0m
�[36;1mdeclare -a VENDORED_ALIAS_DIRS=()�[0m
�[36;1m�[0m
�[36;1mcleanup_vendor_aliases() ***�[0m
�[36;1m if [ "$***`#VENDORED_ALIAS_DIRS`[@]***" -eq 0 ]; then�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m local cleanup_dir="$INSTALL_DIR"�[0m
�[36;1m if [ -z "$cleanup_dir" ]; then�[0m
�[36;1m echo "::warning::Install dir is empty, skipping vendored alias cleanup"�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m if ! pushd "$cleanup_dir" >/dev/null 2>&1; then�[0m
�[36;1m echo "::warning::Failed to enter install dir \"$cleanup_dir\"; skipping vendored alias cleanup"�[0m
�[36;1m return 0�[0m
�[36;1m fi�[0m
�[36;1m�[0m
�[36;1m for vendored_alias in "$***VENDORED_ALIAS_DIRS[@]***"; do�[0m
�[36;1m if [ -z "$vendored_alias" ]; then�[0m
�[36;1m continue�[0m
�[36;1m fi�[0m
�[36;1m rm -rf -- "$vendored_alias" || true�[0m
�[36;1m local parent_dir�[0m
�[36;1m parent_dir=$(dirname "$vendored_alias")�[0m
�[36;1m # Remove empty parent directories that may have been created for scoped packages�[0m
�[36;1m while [ "$parent_dir" != "." ] && [ "$parent_dir" != "/" ]; do�[0m
�[36;1m rmdir -- "$parent_dir" 2>/dev/null || break�[0m
�[36;1m parent_dir=$(dirname "$parent_dir")�[0m
�[36;1m done�[0m
�[36;1m done�[0m
�[36;1m�[0m
�[36;1m popd >/dev/null 2>&1 || true�[0m
�[36;1m***�[0m
�[36;1m�[0m
�[36;1mtrap cleanup_vendor_aliases EXIT�[0m
�[36;1m�[0m
�[36;1mcreate_vendor_aliases() ***�[0m
�[36;1m if [ ! -f "package.json" ];...
Commit Status: Gate / gate: Gate / gate
Conclusion: failure
Path classification was cancelled
🧰 Additional context used
📓 Path-based instructions (6)
{pyproject.toml,.github/workflows/**/*.{yml,yaml}}
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Check both
pyproject.toml([tool.coverage.report] fail_under) AND workflow files forcoverage-minsettings; ensure these match or the lower value will be the effective threshold
Files:
.github/workflows/agents-auto-pilot.yml
.github/workflows/**/*.{yml,yaml}
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
For GitHub Actions workflow
startup_failureerrors with zero jobs, check for invalid YAML syntax, top-levelpermissions:block onworkflow_callreusable workflows (which conflicts with caller permissions), invalid permission scopes, or circular workflow references
Files:
.github/workflows/agents-auto-pilot.yml
.github/workflows/*.yml
📄 CodeRabbit inference engine (CLAUDE.md)
First-party consumers should reference reusable workflows with
@mainunless intentionally pinning to an exact commit SHA for a controlled reason
Files:
.github/workflows/agents-auto-pilot.yml
.github/workflows/agents-*.yml
📄 CodeRabbit inference engine (CLAUDE.md)
agents-*.yml, autofix.yml, .github/codex/ prompts, and synced scripts/docs should be fixed in stranske/Workflows, not in the consumer repo
Files:
.github/workflows/agents-auto-pilot.yml
**/.github/workflows/*.yml
📄 CodeRabbit inference engine (AGENTS.md)
First-party consumers should reference reusable workflows with
@mainunless intentionally pinning to an exact commit SHA for a documented controlled reason
Files:
.github/workflows/agents-auto-pilot.yml
{.github/workflows/agents-*.yml,.github/workflows/autofix.yml,.github/codex/**,docs/**}
📄 CodeRabbit inference engine (AGENTS.md)
Synced workflows (agents-*.yml, autofix.yml), prompts in .github/codex/, and synced scripts/docs should be fixed in stranske/Workflows, not locally; do not edit them locally
Files:
.github/workflows/agents-auto-pilot.yml
🔀 Multi-repo context stranske/Workflows, stranske/Template
Linked repositories findings
stranske/Workflows
tests/workflows/test_workflow_llm_installs.py:27,104,111,296still hard-codesactions/cache@2c8a9bd7457de244a408f35966fab2fb45fda9c8in test constants/assertions. If this repo consumes the updated digest, these tests will fail until the expected SHA is updated. [::stranske/Workflows::]
stranske/Template
- No matching
actions/cachedigest references found. [::stranske/Template::]
🔇 Additional comments (1)
.github/actions/artifact-cache/action.yml (1)
62-62: LGTM!
| - name: Cache pip (LLM requirements) | ||
| if: steps.check_enabled.outputs.enabled == 'true' | ||
| uses: actions/cache@2c8a9bd7457de244a408f35966fab2fb45fda9c8 # v6 | ||
| uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6 |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟠 Major | ⚡ Quick win
Update this in stranske/Workflows instead.
Line 225 edits a synced agents-*.yml workflow locally. That will drift from the source-of-truth repo, and stranske/Workflows still has tests pinned to the old actions/cache SHA, so this change needs to land there first as well. As per coding guidelines, agents-*.yml, autofix.yml, .github/codex/ prompts, and synced scripts/docs should be fixed in stranske/Workflows, not in the consumer repo and Synced workflows (agents-*.yml, autofix.yml), prompts in .github/codex/, and synced scripts/docs should be fixed in stranske/Workflows, not locally; do not edit them locally.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/workflows/agents-auto-pilot.yml at line 225, This synced agents
workflow change should not be edited locally in this repo; the `actions/cache`
SHA update belongs in the source-of-truth `stranske/Workflows` repository first.
Revert the local change in `agents-auto-pilot.yml` and apply the same update in
the upstream synced workflow so the consumer repo stays aligned with the
generated source.
Sources: Coding guidelines, Linked repositories
|
Closing as superseded by merged stranske/Workflows#2543; replacement workflow-template sync will propagate the canonical actions/cache digest. |
Renovate Ignore NotificationBecause you closed this PR without merging, Renovate will ignore this update. You will not get PRs for the If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR. |
This PR contains the following updates:
2c8a9bd→55cc834Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.
Summary by CodeRabbit