Skip to content

Commit f9b231d

Browse files
authored
Merge branch 'main' into dependabot/github_actions/actions/upload-artifact-5
2 parents 55c6fcd + 806d68c commit f9b231d

795 files changed

Lines changed: 122402 additions & 62329 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yml

Lines changed: 7 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
- uses: actions/checkout@v5
1414

1515
- name: Install uv
16-
uses: astral-sh/setup-uv@v6
16+
uses: astral-sh/setup-uv@v7
1717
with:
1818
enable-cache: true
1919
cache-dependency-glob: "uv.lock"
@@ -33,7 +33,7 @@ jobs:
3333
- uses: actions/checkout@v5
3434

3535
- name: Install uv
36-
uses: astral-sh/setup-uv@v6
36+
uses: astral-sh/setup-uv@v7
3737
with:
3838
enable-cache: true
3939
cache-dependency-glob: "uv.lock"
@@ -53,7 +53,7 @@ jobs:
5353
- uses: actions/checkout@v5
5454

5555
- name: Install uv
56-
uses: astral-sh/setup-uv@v6
56+
uses: astral-sh/setup-uv@v7
5757
with:
5858
enable-cache: true
5959
cache-dependency-glob: "uv.lock"
@@ -73,7 +73,7 @@ jobs:
7373
- uses: actions/checkout@v5
7474

7575
- name: Install uv
76-
uses: astral-sh/setup-uv@v6
76+
uses: astral-sh/setup-uv@v7
7777
with:
7878
enable-cache: true
7979

@@ -85,13 +85,13 @@ jobs:
8585

8686
- name: Test project creation with uvx aegis
8787
run: |
88-
uvx --from . aegis init test-uvx-aegis --no-interactive --yes --force
88+
uvx --from . aegis init test-uvx-aegis --to-version HEAD --no-interactive --yes --force
8989
test -d test-uvx-aegis
9090
test -f test-uvx-aegis/pyproject.toml
91-
91+
9292
- name: Test project creation with uvx aegis-stack
9393
run: |
94-
uvx --from . aegis-stack init test-uvx-aegis-stack --no-interactive --yes --force
94+
uvx --from . aegis-stack init test-uvx-aegis-stack --to-version HEAD --no-interactive --yes --force
9595
test -d test-uvx-aegis-stack
9696
test -f test-uvx-aegis-stack/pyproject.toml
9797
@@ -101,56 +101,3 @@ jobs:
101101
test -d app/components/backend
102102
test -d app/components/frontend
103103
test -f app/entrypoints/webserver.py
104-
105-
template-parity:
106-
runs-on: ubuntu-latest
107-
continue-on-error: true # Non-blocking until Copier template is fixed
108-
steps:
109-
- uses: actions/checkout@v5
110-
111-
- name: Install uv
112-
uses: astral-sh/setup-uv@v6
113-
with:
114-
enable-cache: true
115-
cache-dependency-glob: "uv.lock"
116-
117-
- name: Set up Python
118-
run: uv python install 3.11
119-
120-
- name: Install dependencies
121-
run: uv sync --all-extras
122-
123-
- name: Run template parity tests
124-
run: uv run pytest tests/test_template_parity.py -v
125-
# Note: Tests are currently skipped (@pytest.mark.skip) because Copier
126-
# template needs conditional _exclude patterns added. This job validates
127-
# the CI infrastructure is ready. Once Copier template is fixed, remove
128-
# the skip decorator and this will become an active validation step.
129-
130-
test-template-engines:
131-
runs-on: ubuntu-latest
132-
continue-on-error: true # Non-blocking until Copier template is fixed
133-
strategy:
134-
fail-fast: false # Let both engines complete even if one fails
135-
matrix:
136-
engine: [cookiecutter, copier]
137-
steps:
138-
- uses: actions/checkout@v5
139-
140-
- name: Install uv
141-
uses: astral-sh/setup-uv@v6
142-
with:
143-
enable-cache: true
144-
cache-dependency-glob: "uv.lock"
145-
146-
- name: Set up Python
147-
run: uv python install 3.11
148-
149-
- name: Install dependencies
150-
run: uv sync --all-extras
151-
152-
- name: Run tests with ${{ matrix.engine }} engine (fast tests)
153-
run: uv run pytest -v -m "not slow" --engine=${{ matrix.engine }}
154-
# Note: Copier tests will be skipped via skip_copier_tests fixture until
155-
# template is fixed (ticket #128). This validates the test infrastructure.
156-

.github/workflows/docs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
git config user.email 41898282+github-actions[bot]@users.noreply.github.com
2222
2323
- name: Install uv
24-
uses: astral-sh/setup-uv@v6
24+
uses: astral-sh/setup-uv@v7
2525
with:
2626
enable-cache: true
2727
cache-dependency-glob: "uv.lock"

.github/workflows/release.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,15 @@ jobs:
1212
runs-on: ubuntu-latest
1313
steps:
1414
- name: Checkout code
15-
uses: actions/checkout@v4
15+
uses: actions/checkout@v5
1616

1717
- name: Install uv
18-
uses: astral-sh/setup-uv@v5
18+
uses: astral-sh/setup-uv@v7
1919
with:
2020
enable-cache: true
2121

2222
- name: Set up Python
23-
uses: actions/setup-python@v5
23+
uses: actions/setup-python@v6
2424
with:
2525
python-version: "3.11"
2626

@@ -102,7 +102,7 @@ jobs:
102102
url: https://pypi.org/project/aegis-stack/
103103
steps:
104104
- name: Checkout code
105-
uses: actions/checkout@v4
105+
uses: actions/checkout@v5
106106

107107
- name: Download distribution artifacts
108108
uses: actions/download-artifact@v4

.github/workflows/security.yml

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,15 @@ jobs:
2222
uses: actions/checkout@v5
2323

2424
- name: Initialize CodeQL
25-
uses: github/codeql-action/init@v3
25+
uses: github/codeql-action/init@v4
2626
with:
2727
languages: python
2828

2929
- name: Autobuild
30-
uses: github/codeql-action/autobuild@v3
30+
uses: github/codeql-action/autobuild@v4
3131

3232
- name: Perform CodeQL Analysis
33-
uses: github/codeql-action/analyze@v3
33+
uses: github/codeql-action/analyze@v4
3434

3535
audit:
3636
name: Security Audit
@@ -39,7 +39,7 @@ jobs:
3939
- uses: actions/checkout@v5
4040

4141
- name: Install uv
42-
uses: astral-sh/setup-uv@v6
42+
uses: astral-sh/setup-uv@v7
4343
with:
4444
enable-cache: true
4545
cache-dependency-glob: "uv.lock"
@@ -52,8 +52,12 @@ jobs:
5252

5353
- name: Run security audit
5454
run: |
55-
# Ignoring GHSA-4xh5-x5gv-qwph: pip 25.2 symlink traversal vulnerability
55+
# Ignoring pip 25.2 vulnerabilities (uv manages pip, not user-facing)
5656
# Risk: Low - only affects installation of malicious packages from untrusted sources
5757
# Mitigation: All packages installed from trusted PyPI with uv.lock verification
58-
# Resolution: Will be fixed in pip 25.3 (not yet released)
59-
uv run pip-audit --ignore-vuln GHSA-4xh5-x5gv-qwph
58+
uv run pip-audit \
59+
--ignore-vuln GHSA-4xh5-x5gv-qwph \
60+
--ignore-vuln GHSA-6vgw-5pg2-w6jp \
61+
--ignore-vuln GHSA-58qw-9mgm-455v \
62+
--ignore-vuln ECHO-ffe1-1d3c-d9bc \
63+
--ignore-vuln ECHO-7db2-03aa-5591

.github/workflows/stack-matrix.yml

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
name: Stack Matrix
2+
3+
# Runs the full 13-stack generate → install → lint → typecheck → pytest
4+
# pipeline. This is the slow tier — gated off the default ``ci.yml`` run so
5+
# day-to-day PRs stay fast, but it fires on any PR touching template or
6+
# core-engine code (where drift lands) and nightly to catch anything that
7+
# merged without touching a gated path.
8+
9+
on:
10+
pull_request:
11+
branches: [ main ]
12+
paths:
13+
- 'aegis/templates/**'
14+
- 'aegis/core/**'
15+
- 'aegis/cli/**'
16+
- 'tests/cli/**'
17+
- 'pyproject.toml'
18+
- 'uv.lock'
19+
- '.github/workflows/stack-matrix.yml'
20+
schedule:
21+
# 07:00 UTC daily — catches drift merged via PRs that didn't match the
22+
# path filter above (e.g. docs-only PRs that inadvertently move a
23+
# template Jinja file).
24+
- cron: '0 7 * * *'
25+
workflow_dispatch: {}
26+
27+
concurrency:
28+
group: stack-matrix-${{ github.ref }}
29+
cancel-in-progress: true
30+
31+
jobs:
32+
stack-matrix:
33+
runs-on: ubuntu-latest
34+
timeout-minutes: 45
35+
steps:
36+
- uses: actions/checkout@v5
37+
38+
- name: Install uv
39+
uses: astral-sh/setup-uv@v7
40+
with:
41+
enable-cache: true
42+
cache-dependency-glob: "uv.lock"
43+
44+
- name: Set up Python
45+
run: uv python install 3.11
46+
47+
- name: Install dependencies
48+
run: uv sync --all-extras
49+
50+
- name: Run full stack matrix
51+
run: make test-stacks-full

.gitignore

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,4 +133,13 @@ Thumbs.db
133133
data/
134134

135135
# Demos
136-
demos/recordings
136+
demos/recordings
137+
138+
# Claude Stuff
139+
.claude/settings.json
140+
141+
# Typical generated stack folders
142+
my-app/
143+
144+
# Translation review artifacts
145+
aegis_*_review.csv

0 commit comments

Comments
 (0)