Skip to content

[GRV-26]: Establish attribution catalog and repair boundary guard #53

[GRV-26]: Establish attribution catalog and repair boundary guard

[GRV-26]: Establish attribution catalog and repair boundary guard #53

Workflow file for this run

name: pr-build
on:
pull_request:
branches: [main]
push:
branches: [main]
jobs:
pr-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Validate SKILL.md (agentskills spec)
run: |
pip install -q "git+https://github.com/agentskills/agentskills.git#subdirectory=skills-ref"
skills-ref validate packages/issue-standards
- name: Syntax check
run: |
node --check packages/linear-agent-hooks/hooks/post-tool-use.mjs
node --check packages/linear-agent-hooks/hooks/stop.mjs
node --check packages/linear-agent-hooks/lib/comment.mjs
node --check packages/linear-agent-hooks/lib/transcript.mjs
node --check packages/linear-agent-hooks/bin/setup.mjs
node --check packages/issue-standards/bin/setup.mjs
node --check scripts/project-acceptance.mjs
node --check scripts/check-llm-cost-catalog-api-alignment.mjs
node --check test/project-acceptance/llm-cost-architecture-contracts/catalog-api-alignment.check.mjs
node --check packages/llm-cost-attribution/bin/llm-cost.mjs
for f in packages/llm-cost-attribution/src/*.mjs packages/llm-cost-attribution/src/transcripts/*.mjs; do
node --check "$f"
done
node --check packages/llm-cost-estimation/bin/llm-cost-estimate.mjs
for f in packages/llm-cost-estimation/src/*.mjs; do
node --check "$f"
done
- name: Install workspace deps
run: npm install --no-audit --no-fund
- name: Run tests
run: |
# Project ATDD checks live under test/project-acceptance/ and run only
# in project-acceptance.yml while that temporary gate is active.
node --test \
packages/linear-agent-hooks/tests/post-tool-use.test.mjs \
packages/linear-agent-hooks/tests/stop.test.mjs \
packages/linear-agent-hooks/tests/comment.test.mjs \
packages/linear-agent-hooks/tests/transcript.test.mjs \
scripts/check-llm-cost-catalog-api-alignment.test.mjs \
packages/llm-cost-attribution/test/issue-pattern.test.mjs \
packages/llm-cost-attribution/test/aggregator.test.mjs \
packages/llm-cost-attribution/test/usage-jsonl.test.mjs \
packages/llm-cost-attribution/test/transcript-to-usage.test.mjs \
packages/llm-cost-attribution/test/pricing.test.mjs \
packages/llm-cost-attribution/test/multi-issue.test.mjs \
packages/llm-cost-estimation/test/enrich.test.mjs \
packages/llm-cost-estimation/test/smoke.test.mjs \
packages/llm-cost-estimation/test/cli.test.mjs \
packages/llm-cost-estimation/test/no-org-data.test.mjs