@@ -11,6 +11,10 @@ Key references:
1111- ` docs/solid-ai-templates/base/issues.md ` — issue templates (epic, task, bug, incident, spike)
1212- ` docs/solid-ai-templates/base/scope.md ` — scope guard, session protocol
1313- ` docs/solid-ai-templates/base/quality-gates.md ` — three-layer gate model
14+ - ` docs/solid-ai-templates/base/testing.md ` — test pyramid, coverage thresholds
15+ - ` docs/solid-ai-templates/base/cicd.md ` — pipeline stages, triggers, environments
16+ - ` docs/solid-ai-templates/base/devsecops.md ` — SAST, secret detection, SCA
17+ - ` docs/solid-ai-templates/platform/github.md ` — CodeQL, GitHub Actions, gitleaks
1418- ` docs/solid-ai-templates/frontend/ux.md ` — UX principles, WCAG 2.1 AA, accessibility testing
1519- ` docs/solid-ai-templates/frontend/quality.md ` — CSS conventions, performance, SEO
1620- ` docs/solid-ai-templates/frontend/static-site.md ` — static site architecture
@@ -26,6 +30,7 @@ Project-specific overrides and additions follow below.
2630- ** Owner** : Branimir Georgiev — braboj
2731- ** Repo** : github.com/braboj/tutorial-git
2832- ** Stack** : Astro static site, Markdown content, draw.io diagrams
33+ - ** Model** : reference — base conventions in ` docs/solid-ai-templates/ ` , project overrides inline
2934- ** Hosting** : GitHub Pages via GitHub Actions
3035- ** Domain** : braboj.me/tutorial-git (codewithbranko.com pending)
3136
@@ -298,28 +303,48 @@ Extends `docs/solid-ai-templates/stack/static-site-astro.md`:
298303- Default to ` .astro ` components — zero JS shipped unless islands are used
299304- MUST NOT use ` set:html ` — bypasses escaping; use ` {expression} ` instead
300305- ESLint and Prettier are not yet configured — follow ` base/quality.md `
301- style rules manually until tooling is added
306+ style rules manually; see ` base/quality-gates.md ` for the planned
307+ tooling setup
302308- ` .astro ` files: keep component scripts minimal, logic in ` src/lib/ `
303309
304310### 2.10 CI/CD
305311
306- Two GitHub Actions workflows:
312+ Extends ` docs/solid-ai-templates/base/cicd.md ` and
313+ ` docs/solid-ai-templates/platform/github.md ` .
314+
315+ Three GitHub Actions workflows + GitHub-native CodeQL:
307316
308317** ` build.yml ` ** — triggers on pull requests to ` main `
309318- Checkout, setup Node (pinned to match ` engines ` in ` package.json ` ),
310- npm ci, build
319+ npm ci, build, lychee link checking
320+ - Permissions: ` contents: read `
321+
322+ ** ` lighthouse.yml ` ** — triggers on pull requests to ` main `
323+ - Builds the site and runs Lighthouse CI against 4 pages
324+ - Accessibility < 90 fails the check (error); performance, SEO,
325+ best practices < 90 warn
326+ - Reports uploaded as GitHub Actions artifacts
327+ - Permissions: ` contents: read `
328+ - Config: ` lighthouserc.json `
329+
330+ ** CodeQL** — GitHub default setup (no workflow file)
331+ - Analyzes JavaScript/TypeScript and GitHub Actions
332+ - Results in Security tab → Code scanning alerts
311333
312334** ` deploy.yml ` ** — triggers on push to ` main `
313- - Same build steps, plus upload artifact and deploy to GitHub Pages
335+ - Same build steps as ` build.yml ` , plus upload artifact and deploy to
336+ GitHub Pages
314337
315338### 2.11 Release process
316339
317340Follow ` docs/solid-ai-templates/base/git.md ` release process:
3183411 . ` git checkout -b chore/release-vX.Y.Z `
319- 2 . ` git commit --allow-empty -m "chore: release vX.Y.Z" `
320- 3 . Push, open PR, merge
321- 4 . ` git checkout main && git pull `
322- 5 . ` git tag vX.Y.Z && git push origin vX.Y.Z `
342+ 2 . Bump ` version ` in ` astro-site/package.json ` to match
343+ 3 . Commit: ` chore: release vX.Y.Z `
344+ 4 . Push, open PR, wait for CI, merge
345+ 5 . ` git checkout main && git pull `
346+ 6 . ` git tag vX.Y.Z && git push origin vX.Y.Z `
347+ 7 . ` gh release create vX.Y.Z --title "vX.Y.Z" --notes "..." `
323348
324349Tags use semver: ` v1.0.0 ` (lowercase v, three segments).
325350
0 commit comments