File tree Expand file tree Collapse file tree 3 files changed +23
-14
lines changed
component-combo-reactive-form/tests
theming-palette-generation/tests Expand file tree Collapse file tree 3 files changed +23
-14
lines changed Original file line number Diff line number Diff line change @@ -79,9 +79,10 @@ npm run validate:theming # theming-palette-generation only
79792 . Write a clear, unambiguous ` instruction.md ` that tells the agent exactly what
8080 to build.
8181
82- 3 . Write ` tests/test.sh ` to check ** outcomes** (files exist, project compiles,
83- correct selectors are present) rather than specific steps. The grader must
84- write a reward (0.0–1.0) to ` logs/verifier/reward.txt ` .
82+ 3 . Write ` tests/test.sh ` to check ** outcomes** (files exist, correct selectors
83+ and entry-point imports are present, correct API call ordering) rather than
84+ specific steps. The grader must write a reward (0.0–1.0) to
85+ ` logs/verifier/reward.txt ` .
8586
86874 . Write ` prompts/quality.md ` with rubric dimensions that sum to 1.0.
8788
@@ -117,10 +118,11 @@ automatically on PRs that modify `skills/**` or `evals/**`. It:
117118## Grading Strategy
118119
119120** Deterministic grader (60% weight)** — checks:
120- - Project builds without errors
121+ - Expected component files exist
121122- Correct Ignite UI selector is present in the generated template
122- - Required imports exist
123+ - Required entry-point imports exist (not root barrel)
123124- No use of forbidden alternatives
125+ - Correct API call ordering (e.g. ` core() ` before ` theme() ` )
124126
125127** LLM rubric grader (40% weight)** — evaluates:
126128- Correct intent routing
Original file line number Diff line number Diff line change 7373 DETAILS=" ${DETAILS} FAIL: Forbidden alternative (native select, mat-select, igx-select) detected\n"
7474fi
7575
76- # --- Check 5: Correct import from igniteui-angular ---
76+ # --- Check 5: Correct entry-point import from igniteui-angular/combo ---
77+ # The skill requires entry-point imports (not the root barrel).
78+ COMBO_IMPORT_PATTERN=" from ['\" ](@infragistics/)?igniteui-angular/combo['\" ]"
7779IMPORT_FOUND=0
7880if [ -n " ${COMPONENT_FILE:- } " ]; then
79- if grep -qE " from [' \" ]igniteui-angular|from [' \" ]@infragistics/igniteui-angular " " $COMPONENT_FILE " 2> /dev/null; then
81+ if grep -qE " $COMBO_IMPORT_PATTERN " " $COMPONENT_FILE " 2> /dev/null; then
8082 IMPORT_FOUND=1
8183 fi
8284fi
8385
8486if [ " $IMPORT_FOUND " -eq 1 ]; then
8587 SCORE=$(( SCORE + 1 ))
86- DETAILS=" ${DETAILS} PASS: igniteui-angular import found\n"
88+ DETAILS=" ${DETAILS} PASS: Correct combo entry-point import found\n"
8789else
88- DETAILS=" ${DETAILS} FAIL: No igniteui-angular import found \n"
90+ DETAILS=" ${DETAILS} FAIL: Missing import from igniteui-angular/combo entry point \n"
8991fi
9092
9193# --- Calculate reward ---
Original file line number Diff line number Diff line change 5050 DETAILS=" ${DETAILS} FAIL: No theme() mixin call found\n"
5151fi
5252
53- # --- Check 4: core() mixin call ( must be before theme) ---
54- if grep -qE ' @include.*core\(' " $STYLES_FILE " 2> /dev/null; then
55- SCORE =$(( SCORE + 1 ) )
56- DETAILS= " ${DETAILS} PASS: core() mixin call found\n "
57- else
53+ # --- Check 4: core() mixin call must appear before theme( ) ---
54+ CORE_LINE= $( grep -nE ' @include.*core\(' " $STYLES_FILE " 2> /dev/null | head -1 | cut -d: -f1 )
55+ THEME_LINE =$( grep -nE ' @include.*theme\( ' " $STYLES_FILE " 2> /dev/null | head -1 | cut -d: -f1 )
56+
57+ if [ -z " ${CORE_LINE :- } " ] ; then
5858 DETAILS=" ${DETAILS} FAIL: No core() mixin call found\n"
59+ elif [ -n " ${THEME_LINE:- } " ] && [ " $CORE_LINE " -gt " $THEME_LINE " ]; then
60+ DETAILS=" ${DETAILS} FAIL: core() must be called before theme() (core on line $CORE_LINE , theme on line $THEME_LINE )\n"
61+ else
62+ SCORE=$(( SCORE + 1 ))
63+ DETAILS=" ${DETAILS} PASS: core() mixin call found before theme()\n"
5964fi
6065
6166# --- Check 5: No hardcoded CSS custom properties as the sole theming approach ---
You can’t perform that action at this time.
0 commit comments