Skip to content

feat(studio): undo and redo step through the project history, whoever made the change #135

feat(studio): undo and redo step through the project history, whoever made the change

feat(studio): undo and redo step through the project history, whoever made the change #135

Workflow file for this run

name: Comments
permissions:
contents: read
# No secrets and a read-only token, so fork PRs run it too. Rules: CONTRIBUTING.md, "Comments".
on:
pull_request:
types: [opened, synchronize, reopened]
concurrency:
group: comments-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
comments:
name: Comments
# A release PR carries commits that each passed this gate on their own PR.
if: ${{ !startsWith(github.head_ref, 'release/') }}
runs-on: ubuntu-latest
timeout-minutes: 10
env:
# Every repo script this job runs. They import each other, so all run from one tree.
COMMENT_SCRIPTS: >-
scripts/check-comment-citations.mjs scripts/check-comment-citations.test.mjs
scripts/comment-ratchet.mjs scripts/comment-ratchet.test.mjs
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
# The PR's own head, graded against its merge-base: not the merge preview, which would
# charge the branch for every comment main changed since it forked.
ref: ${{ github.event.pull_request.head.sha }}
path: pr
fetch-depth: 0
# A branch cut before any of these scripts existed runs the base's copies. A branch that has
# them all runs its own, so a PR that fixes a check is graded by the fix.
- name: Pick the checks
run: |
dir=pr
for script in $COMMENT_SCRIPTS; do [ -f "pr/$script" ] || dir=base; done
echo "CHECKS_DIR=$dir" >> "$GITHUB_ENV"
- if: env.CHECKS_DIR == 'base'
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
ref: ${{ github.event.pull_request.base.sha }}
path: base
- uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
with:
node-version: 22
# The commented-out-code rule asks the TypeScript parser, a root dependency.
- working-directory: ${{ env.CHECKS_DIR }}
run: bash scripts/ci/install-workspace-dependencies.sh --ignore-scripts
- name: Test the checker
working-directory: ${{ env.CHECKS_DIR }}
run: node --test scripts/check-comment-citations.test.mjs scripts/comment-ratchet.test.mjs
- name: Check the comments this diff touched
working-directory: pr
env:
COMMENT_CHECK_BASE: ${{ github.event.pull_request.base.sha }}
run: node "../$CHECKS_DIR/scripts/check-comment-citations.mjs"
- name: A package file's comment share may not rise
if: ${{ !cancelled() }}
working-directory: pr
env:
COMMENT_CHECK_BASE: ${{ github.event.pull_request.base.sha }}
run: node "../$CHECKS_DIR/scripts/comment-ratchet.mjs"