You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .github/agents/bug-fixing-implementer-agent.md
+37-6Lines changed: 37 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -75,6 +75,37 @@ If the fix adds or modifies user-facing strings:
75
75
76
76
---
77
77
78
+
## Styles and Theming
79
+
80
+
If the bug is in a component's visual styles, read `skills/igniteui-angular-theming/references/contributing.md` in full before modifying any SCSS.
81
+
82
+
### Non-negotiable rules
83
+
84
+
- All visual styles (colors, sizes, shadows) live in the **theme file** (`_<name>-theme.scss`). Never move visual declarations into the component file (`_<name>-component.scss`).
85
+
- Use `var-get($theme, 'token-name')` for every design token reference. **Never introduce hardcoded hex, RGB, HSL, or pixel values** for anything with a corresponding token.
86
+
- Every `@extend` must use `!optional`.
87
+
- BEM naming: Two Dashes style — see `css-naming-convention.md` (handled by the `b()`, `e()`, and `m()` mixins).
88
+
89
+
### Linting
90
+
91
+
```bash
92
+
# SCSS-only fix
93
+
npm run lint:styles
94
+
95
+
# Final check before finishing
96
+
npm run lint:lib
97
+
```
98
+
99
+
### Style tests
100
+
101
+
If you modify functions or mixins in `base/` (not component themes), run:
102
+
103
+
```bash
104
+
npm run test:styles
105
+
```
106
+
107
+
---
108
+
78
109
## What You Do NOT Do
79
110
80
111
- Do not write tests — the `tdd-test-writer-agent` handles that.
Copy file name to clipboardExpand all lines: .github/agents/feature-implementer-agent.md
+45-1Lines changed: 45 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,7 +16,7 @@ You write **production code** for Ignite UI for Angular to make failing tests pa
16
16
17
17
You are an independent specialist. You read the original user request yourself, read the relevant source code yourself, and decide how to implement the feature based on your own understanding of the real behavior contract and existing repo patterns — not just to make tests green.
18
18
19
-
Treat failing tests as guidance, not as the full specification.
19
+
Treat failing tests as guidance, not as the full specification.
20
20
21
21
---
22
22
@@ -37,6 +37,9 @@ Treat failing tests as guidance, not as the full specification.
37
37
Check the relevant skill file for component APIs and patterns:
Each skill file is a routing hub pointing to detailed reference files under its `references/` folder. **Read the relevant reference files in full** before modifying any component code.
40
43
41
44
---
42
45
@@ -82,6 +85,47 @@ Every new UI element must include:
82
85
83
86
---
84
87
88
+
## Theming and Styles
89
+
90
+
If the feature adds or modifies component styles, read `skills/igniteui-angular-theming/references/contributing.md` in full before touching any SCSS.
| New component |`_<name>-theme.scss`, `_<name>-component.scss`, `components/_index.scss`, `themes/_core.scss`, `themes/generators/_base.scss`|
97
+
| New visual state / modifier |`_<name>-theme.scss` (new placeholder), `_<name>-component.scss` (new `@include m/e`) |
98
+
| Bug fix in existing styles | The relevant `_<name>-theme.scss` or `_<name>-component.scss`|
99
+
100
+
### Non-negotiable rules
101
+
102
+
- All visual styles (colors, sizes, shadows) live in the **theme file** (`_<name>-theme.scss`). The component file (`_<name>-component.scss`) contains only structural layout that is theme-independent.
103
+
- Use `var-get($theme, 'token-name')` for every design token reference. **Never hardcode hex, RGB, HSL, or pixel values** for anything with a corresponding token.
104
+
- Every `@extend` must use `!optional`.
105
+
- Call `@include tokens($theme, $mode: 'scoped')` as the first statement inside every theme mixin.
106
+
- Call `register-component($name: ..., $deps: (...))` inside the root `b()` block of every component mixin.
107
+
- BEM naming: Two Dashes style — see `css-naming-convention.md`.
108
+
109
+
### Linting
110
+
111
+
```bash
112
+
# SCSS-only changes
113
+
npm run lint:styles
114
+
115
+
# Final check before finishing
116
+
npm run lint:lib
117
+
```
118
+
119
+
### Style tests
120
+
121
+
If you modify functions or mixins in `base/` (not component themes), run:
0 commit comments