Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
7c1aa19
Improves serialization and project config
niemyjski Feb 17, 2026
42bd2d4
Fixed linting errors
niemyjski Feb 17, 2026
adbfea6
Optimize CloseInactiveSessionsJob: batch Redis calls (#2119)
ejsmith Feb 20, 2026
58354b5
Fixes previous day/week/month range selection
niemyjski Feb 20, 2026
971224b
Adds index to stack and event queries
niemyjski Feb 20, 2026
88ca9d1
Improves stack usage tracking and serialization
niemyjski Feb 23, 2026
ddc3091
Optimizes daily summary job and email sending
niemyjski Feb 23, 2026
f112cd7
Fixes stack stats with a work item job (#2129)
niemyjski Feb 24, 2026
f94ac24
Removes unused Foundatio references
niemyjski Feb 24, 2026
bb3dbe3
Updated agent skills
niemyjski Mar 4, 2026
45b6454
Updates dependencies
niemyjski Mar 11, 2026
adece40
Updated next deps
niemyjski Mar 11, 2026
6a47787
Fixed skill names
niemyjski Mar 11, 2026
17dbe6e
fixed lint
niemyjski Mar 11, 2026
282e218
Add project notification settings maintenance cleanup (#2145)
niemyjski Mar 11, 2026
da89de3
Update agent skills documentation and consistency rules
niemyjski Mar 15, 2026
7c6a5a9
Implement AI agent framework and skill evolution protocol
niemyjski Mar 15, 2026
342e055
Add context-aware default build task to VS Code
niemyjski Mar 15, 2026
4111cf5
Update dependencies and adopt new repository APIs
niemyjski Mar 15, 2026
7630a79
Optimize models with nullable properties and migrate tests to System.…
niemyjski Mar 15, 2026
5c0c3eb
Use Update for appsettings files in project configuration
niemyjski Mar 15, 2026
c242dc6
Update stack action response codes to 200 OK
niemyjski Mar 15, 2026
6ae94aa
Enhance engineer agent workflow for PR context and specify agent models
niemyjski Mar 16, 2026
f3f5122
refactor: Migrate from AutoMapper to Mapperly (#2093)
niemyjski Mar 16, 2026
b60ad95
Next: System Admin Page (#2151)
niemyjski Mar 16, 2026
03467d1
Update agent descriptions with usage guidelines and trigger phrases
niemyjski Mar 16, 2026
d35310c
Bump Scalar.AspNetCore from 2.13.8 to 2.13.9 (#2158)
dependabot[bot] Mar 16, 2026
6db0131
Update deps
niemyjski Mar 16, 2026
ee58abf
Initial plan
Copilot Mar 19, 2026
8120c32
Merge main into PR - rebase onto latest
Copilot Mar 19, 2026
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
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
---
name: Accessibility
description: |
WCAG 2.2 AA accessibility standards for the Exceptionless frontend. Semantic HTML, keyboard
navigation, ARIA patterns, focus management, and form accessibility.
Keywords: WCAG, accessibility, a11y, ARIA, semantic HTML, keyboard navigation, focus management,
screen reader, alt text, aria-label, aria-describedby, skip links, focus trap
name: accessibility
description: >
Use this skill when building or reviewing frontend components for accessibility compliance.
Covers WCAG 2.2 AA standards including semantic HTML, keyboard navigation, ARIA patterns,
focus management, screen reader support, and form accessibility. Apply when creating new
UI components, fixing accessibility bugs, adding skip links or focus traps, or ensuring
inclusive markup — even if the user doesn't explicitly mention "a11y" or "WCAG."
---

# Accessibility (WCAG 2.2 AA)
Expand Down Expand Up @@ -110,7 +111,7 @@ description: |
// When dialog opens, focus first interactive element
$effect(() => {
if (open) {
dialogRef?.querySelector('input, button')?.focus();
dialogRef?.querySelector("input, button")?.focus();
}
});

Expand Down Expand Up @@ -240,10 +241,10 @@ npm run test:e2e

```typescript
// In Playwright tests
import AxeBuilder from '@axe-core/playwright';
import AxeBuilder from "@axe-core/playwright";

test('page is accessible', async ({ page }) => {
await page.goto('/dashboard');
test("page is accessible", async ({ page }) => {
await page.goto("/dashboard");
const results = await new AxeBuilder({ page }).analyze();
expect(results.violations).toEqual([]);
});
Expand Down
Loading