Skip to content

chore(gha): update mobsuccess.yml GitHub workflow - #157

Open
ms-bot wants to merge 1 commit into
masterfrom
mobsuccessbot/workflow-mobsuccess
Open

chore(gha): update mobsuccess.yml GitHub workflow#157
ms-bot wants to merge 1 commit into
masterfrom
mobsuccessbot/workflow-mobsuccess

Conversation

@ms-bot

@ms-bot ms-bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Why is this needed?

This pull request has been created by a robot to update the mobsuccess.yml GitHub workflow.

Copilot AI lite review requested due to automatic review settings August 4, 2026 08:50
@ms-bot ms-bot added the mobsuccessbot Pull requests that enforce company policies label Aug 4, 2026
@maximus-agents

maximus-agents Bot commented Aug 4, 2026

Copy link
Copy Markdown

🤖 fix-approve-merge

Outcome: BLOCKED ⛔
Head commit: 9673015

Replied to and resolved the Copilot thread without modifying the generated workflow-sync PR; required CI has Prettier failing, and no Linear check is present.

Next: Upstream policy owners must fix the fail-closed workflow and regenerate the PR (or otherwise make Prettier pass) before approval and merge.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the repository’s mobsuccess.yml workflow (used for Mobsuccess compliance checks) to add a PR-only checkout and a guard step that detects dangerous cases where a tracked file/symlink can replace an ignored directory (and where tracked symlinks escape the repo), preventing silent data loss on merge/checkout.

Changes:

  • Add a PR-only actions/checkout with full history and blob:none filtering to enable commit-graph-based checks while keeping blob download on-demand.
  • Add a PR-only “Ignored directory replacement” step that scans the PR diff/tree to detect ignored-directory replacement scenarios and symlinks pointing outside the repository.
Suppressed comments (2)

.github/workflows/mobsuccess.yml:105

  • ignored() treats any non-zero from git check-ignore as “not ignored”. That means a real git error (e.g. repo init/config issue) can be misinterpreted as a safe result, which contradicts the “fail closed” intent. Capture the exit code and hard-fail on unexpected values.
          ignored() {
            git -c core.excludesFile=/dev/null -C "$sandbox" \
              check-ignore -q --no-index -- "$1"
          }

.github/workflows/mobsuccess.yml:101

  • The script aims to be fail-closed, but the sandbox exclude-file reset is not guarded. A redirection failure here could make the ignore verdict depend on runner-global excludes (or later git behavior) and still pass the check.
          : > "$sandbox/.git/info/exclude"

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/mobsuccess.yml
@ms-bot
ms-bot force-pushed the mobsuccessbot/workflow-mobsuccess branch from 9673015 to b22e8fe Compare August 4, 2026 09:50
@ms-bot
ms-bot force-pushed the mobsuccessbot/workflow-mobsuccess branch from b22e8fe to f78a292 Compare August 4, 2026 11:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

mobsuccessbot Pull requests that enforce company policies

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants