Skip to content

Split skill files to follow 500-line content guideline#16951

Merged
zdrawku merged 17 commits intomasterfrom
copilot/split-skills-content
Feb 24, 2026
Merged

Split skill files to follow 500-line content guideline#16951
zdrawku merged 17 commits intomasterfrom
copilot/split-skills-content

Conversation

Copy link
Contributor

Copilot AI commented Feb 24, 2026

  • Split igniteui-angular-components/SKILL.md (653 → 2 files ≤500 lines)
  • Split igniteui-angular-grids/SKILL.md (1049 → 3 files ≤500 lines)
  • Split igniteui-angular-grid-data-operations/SKILL.md (1691 → 4 files ≤500 lines)
  • Keep igniteui-angular-theming/SKILL.md with added Related Skills section
  • Add proper cross-references (Related Skills with links) to all 10 skill files
  • Update .github/copilot-instructions.md and README.md with new skill listings
  • Fix: Remote Paging example now sets [pagingMode]="pagingMode" (GridPagingMode.Remote) on the grid
  • Fix: Complete Remote Data Pattern now uses (filteringExpressionsTreeChange) instead of (filteringDone)
  • Added filteringExpressionsTreeChange to the Filtering Events table in grid-data-operations with a remote data note
  • Trim duplicate editing/summaries content in grids-features (331 → 228 lines): replaced detailed Cell Editing, Row Editing, Batch Editing, Row Adding/Deleting, Validation, and Summaries sections with redirect pointers to grid-editing; quick-reference tables retained for at-a-glance use

💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI and others added 5 commits February 24, 2026 06:14
…kills

Split the igniteui-angular-components SKILL.md (653 lines) into two files:
- igniteui-angular-components (308 lines): form controls, app setup, architecture, forms integration
- igniteui-angular-components-layout (383 lines): layout, data display, feedback/overlays, directives

Both files have proper YAML frontmatter and cross-references to related skills.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Split the 1049-line grid skill file into three focused files:
- igniteui-angular-grids/SKILL.md (363 lines): Grid structure, column config, sorting, filtering, selection
- igniteui-angular-grids-features/SKILL.md (329 lines): Editing, grouping, summaries, toolbar, export, etc.
- igniteui-angular-grids-types/SKILL.md (427 lines): Tree Grid, Hierarchical Grid, Grid Lite, Pivot Grid

Each file has proper YAML frontmatter and cross-references to all related skills.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Split the 1691-line SKILL.md into four focused skill files:

1. igniteui-angular-grid-data-operations (455 lines) - Sorting, filtering,
   grouping, and canonical grid import patterns
2. igniteui-angular-grid-paging-remote (400 lines) - Paging, remote data
   operations, virtualization, multi-grid coordination
3. igniteui-angular-grid-editing (494 lines) - Cell/row/batch editing,
   validation, summaries
4. igniteui-angular-grid-state (462 lines) - State persistence, Tree Grid,
   Hierarchical Grid, Pivot Grid, Grid Lite operations

Each file has proper YAML frontmatter, cross-references to all related
skills, and the shared grid import patterns are in the canonical first
file with references from the others.

Updated references in README.md, copilot-instructions.md, and all
related skill files.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…references

Co-authored-by: zdrawku <11193764+zdrawku@users.noreply.github.com>
Co-authored-by: zdrawku <11193764+zdrawku@users.noreply.github.com>
Copilot AI changed the title [WIP] Refactor skills to follow content length best practices Split skill files to follow 500-line content guideline Feb 24, 2026
@zdrawku zdrawku marked this pull request as ready for review February 24, 2026 07:05
@zdrawku zdrawku self-requested a review February 24, 2026 07:07
@zdrawku
Copy link
Contributor

zdrawku commented Feb 24, 2026

@copilot, here a few issues I noticed:

  1. the remote paging template in the igniteui-angular-grid-paging-remote skill is missing pagingMode -

We should set Grid's pagingMode property to GridPagingMode.remote. Also it is necessary to either subscribe to pagingDone or perPageChange events in order to fetch the data from your remote service, it depends on the use case which event will be used.

Without it, the grid will attempt client-side pagination over whatever page-slice the server returns, producing incorrect results. The SKILL does mention this correctly in the "Remote Paging with custom igx-paginator-content" note block (GridPagingMode.Remote should be set), but the primary Remote Paging example simply omits it entirely.

  1. Wrong event for remote filtering
    The SKILL's complete remote data pattern template uses:

The docs consistently use filteringExpressionsTreeChange for remote filtering:

"you need to subscribe to the dataPreLoad, sortingExpressionsChange and filteringExpressionsTreeChange outputs"

filteringDone is a column-level event (fires with IFilteringExpressionsTree for a single column). filteringExpressionsTreeChange is the grid-level output that reflects the whole filter state and is the correct one to debounce and forward to the server. Using filteringDone could cause missed updates (e.g., clearing all filters) or scope problems.

…remote skill

Co-authored-by: zdrawku <11193764+zdrawku@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Feb 24, 2026

@copilot, here a few issues I noticed:

  1. the remote paging template in the igniteui-angular-grid-paging-remote skill is missing pagingMode -
    ...

Fixed in 69c6fd6:

  1. Remote Paging — missing pagingMode: Added import { GridPagingMode } from 'igniteui-angular/grids/grid', set pagingMode = GridPagingMode.Remote on the component, and bound [pagingMode]="pagingMode" on the grid element. Without this, the grid would apply client-side pagination on top of the server's page slice.

  2. Remote filtering event: Replaced (filteringDone)="onFilteringDone()" with (filteringExpressionsTreeChange)="onFilteringExpressionsTreeChange()" in the complete remote data pattern template, and updated the handler name and Key Points rule Style the list component #5 accordingly. Also added filteringExpressionsTreeChange to the Filtering Events table in the grid-data-operations skill with a note clarifying when each event should be used (filteringDone = column-scoped, filteringExpressionsTreeChange = grid-level for remote data).

@zdrawku
Copy link
Contributor

zdrawku commented Feb 24, 2026

@copilot there is a duplicate content
igniteui-angular-grids-features overlaps significantly with igniteui-angular-grid-editing — both cover cell editing, row editing, batch editing, row adding/deleting, and validation. The features skill is the older summary-style skill; the editing skill is the newer detailed one. They cross-link each other, which is correct, but the editing section content in grids-features could be trimmed to just redirect pointers to reduce token cost and prevent drift.

… redirect to grid-editing skill

Co-authored-by: zdrawku <11193764+zdrawku@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Feb 24, 2026

@copilot there is a duplicate content
igniteui-angular-grids-features overlaps significantly with igniteui-angular-grid-editing — both cover cell editing, row editing, batch editi...

Fixed in 1c59500. Replaced the detailed Cell Editing, Row Editing, Batch Editing, Row Adding/Deleting, Validation, and Summaries sections in grids-features with redirect pointers to grid-editing, retaining only a quick-reference table for at-a-glance mode selection. The file dropped from 331 → 228 lines.

- Created structure.md detailing column configuration, sorting, filtering, and selection for grids.
- Introduced types.md covering Tree Grid, Hierarchical Grid, Grid Lite, and Pivot Grid, including their unique features and data operation behaviors.
…on setup

- Introduced `form-controls.md` detailing Input Group, Combo, Select, Date/Time Pickers, Calendar, Checkbox, Radio, Switch, Slider, and Reactive Forms integration.
- Created `layout-manager.md` covering Layout Manager and Dock Manager with usage examples and key rules.
- Added `layout.md` for Tabs, Bottom Navigation, Stepper, Accordion, Splitter, and Navigation Drawer components.
- Established `setup.md` for application setup, required providers, and architecture for standalone components.
@zdrawku zdrawku merged commit 6c508ac into master Feb 24, 2026
5 checks passed
@zdrawku zdrawku deleted the copilot/split-skills-content branch February 24, 2026 14:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants