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
45 changes: 45 additions & 0 deletions .github/workflows/website-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: Website CI

on:
pull_request:
push:
branches: [main]

permissions:
contents: read

concurrency:
group: website-ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
verify:
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false

- name: Set up pinned Node
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version-file: .nvmrc

- name: Install exact dependencies
run: npm ci

- name: Run tests
run: npm test

- name: Build static site
run: npm run build

- name: Verify routes, markers, and links
run: npm run check:site

- name: Scan repository and workflow security
run: npm run check:security

- name: Require zero npm advisories
run: npm run audit
1 change: 1 addition & 0 deletions .node-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
22.17.1
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
engine-strict=true
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
22.17.1
43 changes: 43 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# AFTERLIGHT Website Agent Guardrails

This file is the source of truth for any agent working in this website repository.

## Writing Style

- Never use the U+2014 em dash character in source, documentation, tests, comments, commit messages, or replies to Shane.
- Use commas, colons, parentheses, or separate sentences instead.

## Skills First

- Before every task, check the available project and user skills for a matching workflow.
- Use test-driven development for features, fixes, tooling, and behavior changes.
- Use the GitHub Actions security review skill for any workflow change or review.
- Use frontend design guidance when visual work is in scope. Preserve the established design when visual work is not in scope.
- If no skill matches, search for one before improvising and inspect low-adoption skills before use.

## Test-Driven Development

- Write the failing test first and confirm that it fails for the intended reason.
- Implement the smallest change that makes the test pass.
- Preserve RED and GREEN command evidence for reviewed security work.
- Test generated output and executable behavior, not only source text.

## Verification Before Claims

- Never claim success without fresh evidence from the same session.
- Run a clean `npm ci`, the complete `npm test` suite, `npm run build`, `npm run check:site`, `npm run check:security`, and `npm run audit` before completion.
- Run preview and browser checks for routes or interactive behavior affected by the task.
- Report failures verbatim and do not soften partial results.

## Repository Safety

- Never commit secrets, private keys, access tokens, populated environment files, or credentials.
- Never commit generated output such as `dist/`, `.astro/`, `.netlify/`, `node_modules/`, coverage, logs, or temporary agent files.
- Keep changes scoped to the requested task. Do not alter portal behavior, copy, branding, EmailJS behavior, or unrelated content without explicit direction.
- Use Node `22.17.1` consistently across local work, package metadata, CI, and Netlify.

## Review and Delivery

- Do not push, merge, deploy, change DNS, or modify hosting infrastructure before review and explicit approval.
- Never add deployment permissions or secrets to pull request CI.
- End Codex-authored commit messages with `Co-Authored-By: Codex <noreply@openai.com>`.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ A modern, responsive website for R&L Labs, LLC built with Astro, Vue, and SCSS.

### Prerequisites

- Node.js 18+ and npm
- Node.js 22.17.1 and npm

### Installation

1. Install dependencies:
```bash
npm install
npm ci
```

2. Set up environment variables:
Expand Down
6 changes: 2 additions & 4 deletions astro.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,8 @@
import { defineConfig } from 'astro/config';
import vue from '@astrojs/vue';

import netlify from '@astrojs/netlify';

// https://astro.build/config
export default defineConfig({
output: 'static',
integrations: [vue()],
adapter: netlify(),
});
});
Loading