Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/default.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ Closes #
- [ ] Content is properly formatted
- [ ] Documentation has been updated (if needed)
- [ ] Changes have been tested locally
- [ ] This PR is single-purpose and does not mix dependency/security updates with unrelated formatting or content cleanups
- [ ] All review threads are resolved or have an explicit won't-fix / follow-up disposition before merge

## Additional Notes
<!-- Add any additional context or notes for reviewers -->
19 changes: 15 additions & 4 deletions .github/workflows/content-rules-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,26 @@ on:
pull_request:
branches: ["main"]
paths:
- "history.md"
- "_research/index.md"
- ".agents/skills/add-news/SKILL.md"
- ".agents/skills/add-paper/SKILL.md"
- ".github/workflows/content-rules-checks.yml"
- "CLAUDE.md"
- "README.md"
- "history.md"
- "_research/index.md"
- "scripts/check-content-rules-trigger-parity.py"
- "scripts/validate-content-rules.sh"
push:
branches: ["main"]
paths:
- "history.md"
- "_research/index.md"
- ".agents/skills/add-news/SKILL.md"
- ".agents/skills/add-paper/SKILL.md"
- ".github/workflows/content-rules-checks.yml"
- "CLAUDE.md"
- "README.md"
- "history.md"
- "_research/index.md"
- "scripts/check-content-rules-trigger-parity.py"
- "scripts/validate-content-rules.sh"

jobs:
Expand All @@ -26,5 +34,8 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v4

- name: Check workflow trigger parity
run: python3 scripts/check-content-rules-trigger-parity.py

- name: Validate history and research content rules
run: bash scripts/validate-content-rules.sh
12 changes: 8 additions & 4 deletions .github/workflows/jekyll.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,18 +16,22 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.2'
ruby-version: '3.2.2'
bundler: '2.5.23'
bundler-cache: true


- name: Check Ruby/Bundler toolchain
run: bash scripts/check-ruby-toolchain.sh

- name: Build site and search database
run: |
chmod +x scripts/build.sh
./scripts/build.sh

- name: Upload artifact
uses: actions/upload-pages-artifact@v3

Expand Down
42 changes: 42 additions & 0 deletions .github/workflows/maintenance-regression-checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Maintenance Regression Checks

on:
pull_request:
branches: ["main"]
paths:
- ".agents/skills/add-news/SKILL.md"
- "scripts/deploy.sh"
- "tests/deploy-script-regression.sh"
- "tests/news-bullet-regression.test.js"
- "tests/fixtures/news-bullets/**"
push:
branches: ["main"]
paths:
- ".agents/skills/add-news/SKILL.md"
- "scripts/deploy.sh"
- "tests/deploy-script-regression.sh"
- "tests/news-bullet-regression.test.js"
- "tests/fixtures/news-bullets/**"

jobs:
regressions:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
cache: "npm"

- name: Install dependencies
run: npm ci

- name: Run deploy.sh regression tests
run: bash tests/deploy-script-regression.sh

- name: Run add-news bullet regression tests
run: npm test -- --runInBand tests/news-bullet-regression.test.js
13 changes: 9 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,8 @@ A static website for the Computational Multiphase Physics Laboratory, built with

This script will:
- Check for Ruby/Node.js and install them if missing (via rbenv/nvm)
- Install Bundler if not present
- Install the repo-pinned Bundler version from `Gemfile.lock`
- Run a Ruby/Bundler preflight before installing dependencies
- Install all Ruby gems and npm packages
- Build the site and generate search database
- Install Git hooks for pre-commit checks (via Husky)
Expand All @@ -90,15 +91,18 @@ A static website for the Computational Multiphase Physics Laboratory, built with
2. **Manual Setup (Alternative)**

Prerequisites:
- Ruby (version 3.2.0 or higher)
- Bundler (`gem install bundler`)
- Ruby `3.2.2` (matches `.ruby-version`)
- Bundler `2.5.23` (`gem install bundler -v 2.5.23`)
- Node.js and npm (for linting and testing)

Install Dependencies:

```bash
# Ruby/Bundler preflight
bash scripts/check-ruby-toolchain.sh

# Ruby dependencies
bundle install
bundle _2.5.23_ install

# JavaScript dependencies
npm install
Expand Down Expand Up @@ -555,6 +559,7 @@ The `scripts/` directory contains various utility scripts for development, testi

- **`setup.sh`** - Complete environment setup for both fresh and existing installations
- Installs Ruby via rbenv and Node.js via nvm if not present
- Installs the repo-pinned Bundler version and runs a Ruby/Bundler preflight
- Installs all dependencies (Ruby gems and npm packages)
- Builds the site and runs validation tests
- Handles version conflicts gracefully
Expand Down
Loading
Loading