Skip to content

feat(copilot): Adding copilot instructions#4407

Merged
ericfennis merged 7 commits into
mainfrom
copilot-reviews
May 22, 2026
Merged

feat(copilot): Adding copilot instructions#4407
ericfennis merged 7 commits into
mainfrom
copilot-reviews

Conversation

@ericfennis

Copy link
Copy Markdown
Member

This pull request adds documentation to improve the review process for pull requests and provides detailed instructions for handling icon metadata files. The main changes focus on setting clear guidelines for PR reviews and standardizing the management of icon JSON metadata, including contributors, tags, and categories.

Documentation for PR review process:

  • Added a new section to .github/copilot-instructions.md outlining expectations for reviewing PRs, including being friendly, constructive, and appreciative, as well as providing clear feedback and acknowledging contributors' patience.

Instructions for icon metadata:

  • Introduced .github/instructions/metadata.instructions.md with comprehensive instructions for managing icon JSON metadata descriptors, including:
    • Placement and naming conventions for JSON files alongside SVGs.
    • Guidelines for maintaining the contributors property, ensuring significant contributors are credited.
    • Best practices and validation for tags, including formatting, exclusion of icon names, and consistency with existing tags.
    • Recommendations for categories, with instructions on relevance, formatting, and avoiding duplicates, referencing the schema and repository standards.

Copilot AI review requested due to automatic review settings May 22, 2026 13:40

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds repository-level GitHub Copilot instruction docs to standardize PR review behavior and provide guidance for editing icon metadata JSON files under icons/.

Changes:

  • Added .github/copilot-instructions.md with guidance for how Copilot should phrase PR reviews.
  • Added .github/instructions/metadata.instructions.md (scoped via applyTo: "icons/*.json") describing conventions for icon metadata fields like contributors, tags, and categories.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
.github/instructions/metadata.instructions.md Adds Copilot-scoped instructions for editing/validating icons/*.json metadata fields.
.github/copilot-instructions.md Adds general Copilot guidance for tone/structure when reviewing PRs.
Comments suppressed due to low confidence (1)

.github/instructions/metadata.instructions.md:15

  • The instruction that tags "should not contain spaces" conflicts with existing icon metadata: many current icons/*.json tags are multi-word strings (e.g., "heart rate monitor" in icons/activity.json). Consider updating this guidance to allow spaces and instead recommend consistent casing/wording based on existing tags (and rely on icon.schema.json, which does not restrict spaces).
The `tags` property is an array of strings that describe the icon and can be used for searching.
Validate the tags against the `icon.schema.json` to ensure they are correctly formatted and adhere to the defined structure.
Provide tag suggestions based on the name of the icon and the use cases provided in the PR description. Use the existing tags in the repository as a reference for consistency and to avoid duplicates. Don't suggest words like: 'icon' and preferably use single words. Tags should always be in lowercase and should not contain spaces. The name of icon should not be included in the tags, as it is already specified.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/instructions/metadata.instructions.md
Comment thread .github/instructions/metadata.instructions.md Outdated
Comment thread .github/copilot-instructions.md Outdated
ericfennis and others added 2 commits May 22, 2026 15:45
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 22, 2026 13:47

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

Comments suppressed due to low confidence (1)

.github/instructions/metadata.instructions.md:19

  • The examples here include categories like "interface" and "media", but these are not valid values in the categories enum in icon.schema.json (e.g. the schema uses "multimedia" rather than "media"). Consider updating the examples to only include allowed schema values to avoid reviewers requesting invalid categories.
The `categories` property is an array of strings that specify the categories to which the icon belongs, such as "devices", "interface", "media", etc. See the `categories` property in the `icon.schema.json` for more details on the allowed values. The categories should be chosen based on the use cases provided in the PR description and the existing categories in the repository. The categories should be relevant to the icon and should help users find the icon when searching for specific types of icons. The name of icon should not be included in the categories, as it is already specified. Suggest categories based on the name of the icon and the use cases provided in the PR description. Use the existing categories in the repository as a reference for consistency and to avoid duplicates. Categories should always be in lowercase and should not contain spaces.

Comment thread .github/instructions/metadata.instructions.md Outdated
Comment thread .github/instructions/metadata.instructions.md
Comment thread .github/instructions/metadata.instructions.md Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

Comments suppressed due to low confidence (3)

.github/instructions/metadata.instructions.md:16

  • This guidance says tags should not contain spaces / should be single words, but existing icon metadata uses multi-word tags with spaces (e.g., icons/activity.json includes "heart rate monitor"). The instructions should match existing repository conventions (allow multi-word tags, while keeping other constraints like lowercase if desired).
The `tags` property is an array of strings that describe the icon and can be used for searching.
Validate the tags against the `icon.schema.json` to ensure they are correctly formatted and adhere to the defined structure.
Provide tag suggestions based on the name of the icon and the use cases provided in the PR description. Use the existing tags in the repository as a reference for consistency and to avoid duplicates. Don't suggest words like: 'icon' and preferably use single words. Tags should always be in lowercase and should not contain spaces. The name of icon should not be included in the tags, as it is already specified.

.github/instructions/metadata.instructions.md:18

  • The Categories heading level is inconsistent with the rest of the document (it’s a top-level # while other sections use ##). Consider changing it to ## Categories for consistent structure.
# Categories

.github/instructions/metadata.instructions.md:20

  • The examples include categories like "interface" and "media", but these are not valid values per icon.schema.json’s categories enum. Please update the examples to valid categories (e.g., "layout", "multimedia", etc.) to avoid misleading contributors.
The `categories` property is an array of strings that specify the categories to which the icon belongs, such as "devices", "interface", "media", etc. See the `categories` property in the `icon.schema.json` for more details on the allowed values. The categories should be chosen based on the use cases provided in the PR description and the existing categories in the repository. The categories should be relevant to the icon and should help users find the icon when searching for specific types of icons. The name of icon should not be included in the categories, as it is already specified. Suggest categories based on the name of the icon and the use cases provided in the PR description. Use the existing categories in the repository as a reference for consistency and to avoid duplicates. Categories should always be in lowercase and should not contain spaces.

Comment thread .github/instructions/metadata.instructions.md Outdated
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 22, 2026 14:07
@ericfennis
ericfennis merged commit 071e4d2 into main May 22, 2026
8 checks passed
@ericfennis
ericfennis deleted the copilot-reviews branch May 22, 2026 14:08

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

Comments suppressed due to low confidence (1)

.github/instructions/metadata.instructions.md:20

  • This section uses an H1 heading (# Categories) even though it’s a peer of “## Contributors/## Tags”, and the example category values include entries that aren’t valid per icon.schema.json (e.g. "interface" and "media" are not in the allowed enum; "multimedia" is). Align the heading level and examples with the schema’s allowed category list to avoid misleading guidance.
# Categories

The `categories` property is an array of strings that specify the categories to which the icon belongs, such as "devices", "interface", "media", etc. See the `categories` property in the `icon.schema.json` for more details on the allowed values. The categories should be chosen based on the use cases provided in the PR description and the existing categories in the repository. The categories should be relevant to the icon and should help users find the icon when searching for specific types of icons. The name of icon should not be included in the categories, as it is already specified. Suggest categories based on the name of the icon and the use cases provided in the PR description. Use the existing categories in the repository as a reference for consistency and to avoid duplicates. Categories should always be in lowercase and should not contain spaces.


The `tags` property is an array of strings that describe the icon and can be used for searching.
Validate the tags against the `icon.schema.json` to ensure they are correctly formatted and adhere to the defined structure.
Provide tag suggestions based on the name of the icon and the use cases provided in the PR description. Use the existing tags in the repository as a reference for consistency and to avoid duplicates. Don't suggest words like: 'icon' and preferably use single words. Tags should always be in lowercase and should not contain spaces. The name of icon should not be included in the tags, as it is already specified.
Comment on lines +3 to +8
When reviewing PRs, please respond in a friendly and constructive manner.

- First, thank the contributor for their contribution in an enthusiastic way.
- If you have any suggestions for improvement, provide them clearly and concisely.
- If you have any questions about the PR, ask them respectfully.
- Let the contributor know that we have many PRs to review and that we appreciate their patience while we review their contribution.
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.

2 participants