Copilot instruction and chi compliance clarifications#15
Copilot instruction and chi compliance clarifications#15gundersen-lumn wants to merge 8 commits intomainfrom
Conversation
…ce for Vue UI and Java logging, and clarify deliverables and instructions for modernization assessments.
…eview template to include valid implementation patterns and scoring guidelines.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Generate artifacts from scratch. Deprioritize logging issues in tests.
…ate guidelines for existing files
There was a problem hiding this comment.
Pull request overview
This pull request updates GitHub issue templates to improve clarity and completeness of instructions for Copilot-based codebase reviews and instruction file creation. The changes focus on standardizing the location of copilot-instructions.md files and expanding Chi design system compliance reporting requirements for Vue-based UIs.
Changes:
- Standardizes copilot-instructions.md file location to the .github directory
- Expands Chi compliance reporting to explicitly document CDN versions, npm package versions, and semver validation
- Clarifies the distinction between Chi loaded via CDN versus npm packages
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| .github/ISSUE_TEMPLATE/create-copilot-instructions.yml | Updates instructions to place copilot-instructions.md in .github directory and handle migration of existing files |
| .github/ISSUE_TEMPLATE/comprehensive-codebase-review.yml | Expands chi-compliance.md requirements with detailed instructions for reporting Chi CDN versions, npm package versions, and semver validation |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| * Explicitly state Chi is CDN-loaded, NOT an npm package | ||
| * Report the exact @centurylinkfederal/eis-vue version from package-lock.json by searching for "node_modules/@centurylinkfederal/eis-vue" and extracting the "version" field | ||
| * Include both npm package versions (@centurylink/chi-vue) and the CDN-loaded Chi version separately | ||
| * evaluate every view, page, and component for adherence to the Chi design system (https://assets.ctl.io/chi/5.78.0/getting-started/?theme=Portal) using any of these valid implementation patterns: 1. Chi HTML Blueprint - Using Chi CSS classes (.chi-data-table, .chi-button, etc.) with proper HTML/div structure as documented at https://assets.ctl.io/chi/5.78.0/getting-started/ 2. Chi Web Components - Using Chi's custom elements (<chi-button>, <chi-modal>, etc.) 3. Chi Vue Components - Using Vue wrappers from @centurylink/chi-vue package (ChiDataTable, ChiButton, etc.). Score compliance based on correct usage of ANY of these patterns. Flag as non-compliant only when components bypass Chi entirely with custom implementations. For partially compliant, note when a component uses one Chi pattern (e.g., CSS classes) but could benefit from a higher-level pattern (e.g., Vue component) for better maintainability., catalog deviations, and prioritize remediation steps before upgrading the Chi version. Generate a score 1-10 for this as well. In the package.json also ensure the semver reference to @centurylinkfederal/eis-vue is using ~ instead of ^ to ensure only patch versions are updated to avoid minor version change issues, for example correct is "@centurylinkfederal/eis-vue": "~1.2.148" and incorrect is "@centurylinkfederal/eis-vue": "^1.2.148". |
There was a problem hiding this comment.
Line 146 is extremely long and combines multiple distinct concerns (evaluation patterns, compliance scoring, remediation steps, and semver requirements) into a single run-on sentence. This makes the instructions difficult to parse and maintain. Consider breaking this into separate bullet points for each concern: one for evaluation patterns, one for scoring compliance, one for remediation steps, and one for package.json semver requirements.
| * evaluate every view, page, and component for adherence to the Chi design system (https://assets.ctl.io/chi/5.78.0/getting-started/?theme=Portal) using any of these valid implementation patterns: 1. Chi HTML Blueprint - Using Chi CSS classes (.chi-data-table, .chi-button, etc.) with proper HTML/div structure as documented at https://assets.ctl.io/chi/5.78.0/getting-started/ 2. Chi Web Components - Using Chi's custom elements (<chi-button>, <chi-modal>, etc.) 3. Chi Vue Components - Using Vue wrappers from @centurylink/chi-vue package (ChiDataTable, ChiButton, etc.). Score compliance based on correct usage of ANY of these patterns. Flag as non-compliant only when components bypass Chi entirely with custom implementations. For partially compliant, note when a component uses one Chi pattern (e.g., CSS classes) but could benefit from a higher-level pattern (e.g., Vue component) for better maintainability., catalog deviations, and prioritize remediation steps before upgrading the Chi version. Generate a score 1-10 for this as well. In the package.json also ensure the semver reference to @centurylinkfederal/eis-vue is using ~ instead of ^ to ensure only patch versions are updated to avoid minor version change issues, for example correct is "@centurylinkfederal/eis-vue": "~1.2.148" and incorrect is "@centurylinkfederal/eis-vue": "^1.2.148". | |
| * Evaluate every view, page, and component for adherence to the Chi design system (https://assets.ctl.io/chi/5.78.0/getting-started/?theme=Portal) using any of these valid implementation patterns: | |
| - Chi HTML Blueprint — using Chi CSS classes (.chi-data-table, .chi-button, etc.) with proper HTML/div structure as documented at https://assets.ctl.io/chi/5.78.0/getting-started/ | |
| - Chi Web Components — using Chi's custom elements (<chi-button>, <chi-modal>, etc.) | |
| - Chi Vue Components — using Vue wrappers from the @centurylink/chi-vue package (ChiDataTable, ChiButton, etc.) | |
| * Score Chi compliance based on correct usage of any of these patterns. Flag as non-compliant only when components bypass Chi entirely with custom implementations. For partially compliant cases, note when a component uses one Chi pattern (e.g., CSS classes) but could benefit from a higher-level pattern (e.g., Vue component) for better maintainability. | |
| * Catalog deviations from the Chi design system, and prioritize remediation steps. Recommend addressing critical remediation items before upgrading the Chi version. Generate a score from 1 to 10 for overall Chi compliance. | |
| * In package.json, ensure the semver reference to @centurylinkfederal/eis-vue uses ~ instead of ^ so that only patch versions are updated, avoiding minor version change issues. For example, the correct form is "@centurylinkfederal/eis-vue": "~1.2.148" and the incorrect form is "@centurylinkfederal/eis-vue": "^1.2.148". |
| - chi-compliance.md — generated only when the repository includes a Vue-based UI; | ||
| * FIRST, check index.html for Chi CDN references (CSS/JS URLs) - this is the authoritative Chi version | ||
| * Report the Chi version from index.html CDN URLs (e.g., https://lib.lumen.com/chi/5.78.0/chi-portal.css) | ||
| * Explicitly state Chi is CDN-loaded, NOT an npm package | ||
| * Report the exact @centurylinkfederal/eis-vue version from package-lock.json by searching for "node_modules/@centurylinkfederal/eis-vue" and extracting the "version" field | ||
| * Include both npm package versions (@centurylink/chi-vue) and the CDN-loaded Chi version separately | ||
| * evaluate every view, page, and component for adherence to the Chi design system (https://assets.ctl.io/chi/5.78.0/getting-started/?theme=Portal) using any of these valid implementation patterns: 1. Chi HTML Blueprint - Using Chi CSS classes (.chi-data-table, .chi-button, etc.) with proper HTML/div structure as documented at https://assets.ctl.io/chi/5.78.0/getting-started/ 2. Chi Web Components - Using Chi's custom elements (<chi-button>, <chi-modal>, etc.) 3. Chi Vue Components - Using Vue wrappers from @centurylink/chi-vue package (ChiDataTable, ChiButton, etc.). Score compliance based on correct usage of ANY of these patterns. Flag as non-compliant only when components bypass Chi entirely with custom implementations. For partially compliant, note when a component uses one Chi pattern (e.g., CSS classes) but could benefit from a higher-level pattern (e.g., Vue component) for better maintainability., catalog deviations, and prioritize remediation steps before upgrading the Chi version. Generate a score 1-10 for this as well. In the package.json also ensure the semver reference to @centurylinkfederal/eis-vue is using ~ instead of ^ to ensure only patch versions are updated to avoid minor version change issues, for example correct is "@centurylinkfederal/eis-vue": "~1.2.148" and incorrect is "@centurylinkfederal/eis-vue": "^1.2.148". |
There was a problem hiding this comment.
The chi-compliance.md entry uses asterisk bullets (*) for sub-items starting on line 141, which is inconsistent with the formatting of all other deliverables in the list (lines 130-139, 147). The other entries use a simple dash format: "- filename.md — description". Consider using consistent formatting throughout the deliverables list, either by converting the asterisk bullets to a continuous description (like other entries) or restructuring the entire list to support nested bullets uniformly.
| - chi-compliance.md — generated only when the repository includes a Vue-based UI; | |
| * FIRST, check index.html for Chi CDN references (CSS/JS URLs) - this is the authoritative Chi version | |
| * Report the Chi version from index.html CDN URLs (e.g., https://lib.lumen.com/chi/5.78.0/chi-portal.css) | |
| * Explicitly state Chi is CDN-loaded, NOT an npm package | |
| * Report the exact @centurylinkfederal/eis-vue version from package-lock.json by searching for "node_modules/@centurylinkfederal/eis-vue" and extracting the "version" field | |
| * Include both npm package versions (@centurylink/chi-vue) and the CDN-loaded Chi version separately | |
| * evaluate every view, page, and component for adherence to the Chi design system (https://assets.ctl.io/chi/5.78.0/getting-started/?theme=Portal) using any of these valid implementation patterns: 1. Chi HTML Blueprint - Using Chi CSS classes (.chi-data-table, .chi-button, etc.) with proper HTML/div structure as documented at https://assets.ctl.io/chi/5.78.0/getting-started/ 2. Chi Web Components - Using Chi's custom elements (<chi-button>, <chi-modal>, etc.) 3. Chi Vue Components - Using Vue wrappers from @centurylink/chi-vue package (ChiDataTable, ChiButton, etc.). Score compliance based on correct usage of ANY of these patterns. Flag as non-compliant only when components bypass Chi entirely with custom implementations. For partially compliant, note when a component uses one Chi pattern (e.g., CSS classes) but could benefit from a higher-level pattern (e.g., Vue component) for better maintainability., catalog deviations, and prioritize remediation steps before upgrading the Chi version. Generate a score 1-10 for this as well. In the package.json also ensure the semver reference to @centurylinkfederal/eis-vue is using ~ instead of ^ to ensure only patch versions are updated to avoid minor version change issues, for example correct is "@centurylinkfederal/eis-vue": "~1.2.148" and incorrect is "@centurylinkfederal/eis-vue": "^1.2.148". | |
| - chi-compliance.md — generated only when the repository includes a Vue-based UI; first, check index.html for Chi CDN references (CSS/JS URLs) and treat this as the authoritative Chi version; report the Chi version from index.html CDN URLs (e.g., https://lib.lumen.com/chi/5.78.0/chi-portal.css); explicitly state that Chi is CDN-loaded, not an npm package; report the exact @centurylinkfederal/eis-vue version from package-lock.json by searching for "node_modules/@centurylinkfederal/eis-vue" and extracting the "version" field; include both npm package versions (@centurylink/chi-vue) and the CDN-loaded Chi version separately; evaluate every view, page, and component for adherence to the Chi design system (https://assets.ctl.io/chi/5.78.0/getting-started/?theme=Portal) using any of these valid implementation patterns: (1) Chi HTML Blueprint – using Chi CSS classes (.chi-data-table, .chi-button, etc.) with proper HTML/div structure as documented at https://assets.ctl.io/chi/5.78.0/getting-started/, (2) Chi Web Components – using Chi's custom elements (<chi-button>, <chi-modal>, etc.), or (3) Chi Vue Components – using Vue wrappers from the @centurylink/chi-vue package (ChiDataTable, ChiButton, etc.); score compliance based on correct usage of any of these patterns, flag as non-compliant only when components bypass Chi entirely with custom implementations, and for partially compliant cases note when a component uses one Chi pattern (e.g., CSS classes) but could benefit from a higher-level pattern (e.g., Vue component) for better maintainability; catalog deviations and prioritize remediation steps before upgrading the Chi version; generate a score 1-10 for this as well; and in package.json ensure the semver reference to @centurylinkfederal/eis-vue uses ~ instead of ^ so that only patch versions are updated (for example, correct is "@centurylinkfederal/eis-vue": "~1.2.148" and incorrect is "@centurylinkfederal/eis-vue": "^1.2.148"). |
| * Report the exact @centurylinkfederal/eis-vue version from package-lock.json by searching for "node_modules/@centurylinkfederal/eis-vue" and extracting the "version" field | ||
| * Include both npm package versions (@centurylink/chi-vue) and the CDN-loaded Chi version separately | ||
| * evaluate every view, page, and component for adherence to the Chi design system (https://assets.ctl.io/chi/5.78.0/getting-started/?theme=Portal) using any of these valid implementation patterns: 1. Chi HTML Blueprint - Using Chi CSS classes (.chi-data-table, .chi-button, etc.) with proper HTML/div structure as documented at https://assets.ctl.io/chi/5.78.0/getting-started/ 2. Chi Web Components - Using Chi's custom elements (<chi-button>, <chi-modal>, etc.) 3. Chi Vue Components - Using Vue wrappers from @centurylink/chi-vue package (ChiDataTable, ChiButton, etc.). Score compliance based on correct usage of ANY of these patterns. Flag as non-compliant only when components bypass Chi entirely with custom implementations. For partially compliant, note when a component uses one Chi pattern (e.g., CSS classes) but could benefit from a higher-level pattern (e.g., Vue component) for better maintainability., catalog deviations, and prioritize remediation steps before upgrading the Chi version. Generate a score 1-10 for this as well. In the package.json also ensure the semver reference to @centurylinkfederal/eis-vue is using ~ instead of ^ to ensure only patch versions are updated to avoid minor version change issues, for example correct is "@centurylinkfederal/eis-vue": "~1.2.148" and incorrect is "@centurylinkfederal/eis-vue": "^1.2.148". | ||
| - logging-review.md — generated only when the repository contains Java code; inspect logging usage for noisy or frivolous events, confirm true exceptions include full stack context, and flag swallowed errors. Generate a score 1-10 for this as well. Logging issues found within tests should still mentioned at the bottom of the artifact, but not prioritized. |
There was a problem hiding this comment.
The phrase "Logging issues found within tests should still mentioned" is missing the word "be" before "mentioned". It should read "should still be mentioned" to be grammatically correct.
| - logging-review.md — generated only when the repository contains Java code; inspect logging usage for noisy or frivolous events, confirm true exceptions include full stack context, and flag swallowed errors. Generate a score 1-10 for this as well. Logging issues found within tests should still mentioned at the bottom of the artifact, but not prioritized. | |
| - logging-review.md — generated only when the repository contains Java code; inspect logging usage for noisy or frivolous events, confirm true exceptions include full stack context, and flag swallowed errors. Generate a score 1-10 for this as well. Logging issues found within tests should still be mentioned at the bottom of the artifact, but not prioritized. |
| description: Purpose of this issue | ||
| value: | | ||
| Please create a `copilot-instructions.md` file for this repository. The instructions should be generated based on a thorough analysis of the entire codebase and should provide clear, actionable guidance for GitHub Copilot and future contributors. | ||
| Please create a `copilot-instructions.md` file for this repository under the '.github' root directory. The instructions should be generated based on a thorough analysis of the entire codebase and should provide clear, actionable guidance for GitHub Copilot and future contributors. If a copilot-instructions.md file already exists elsewhere (like in the root of the repo) use it as a basis, update it, and move it under the '.github' folder. |
There was a problem hiding this comment.
The phrase "'.github' root directory" is confusing. The '.github' directory is not a root directory; it's a subdirectory of the repository root. Consider rewording to "'.github' directory" or "'.github' subdirectory" for clarity.
| Please create a `copilot-instructions.md` file for this repository under the '.github' root directory. The instructions should be generated based on a thorough analysis of the entire codebase and should provide clear, actionable guidance for GitHub Copilot and future contributors. If a copilot-instructions.md file already exists elsewhere (like in the root of the repo) use it as a basis, update it, and move it under the '.github' folder. | |
| Please create a `copilot-instructions.md` file for this repository under the '.github' directory. The instructions should be generated based on a thorough analysis of the entire codebase and should provide clear, actionable guidance for GitHub Copilot and future contributors. If a copilot-instructions.md file already exists elsewhere (like in the root of the repo) use it as a basis, update it, and move it under the '.github' folder. |
| * Explicitly state Chi is CDN-loaded, NOT an npm package | ||
| * Report the exact @centurylinkfederal/eis-vue version from package-lock.json by searching for "node_modules/@centurylinkfederal/eis-vue" and extracting the "version" field | ||
| * Include both npm package versions (@centurylink/chi-vue) and the CDN-loaded Chi version separately | ||
| * evaluate every view, page, and component for adherence to the Chi design system (https://assets.ctl.io/chi/5.78.0/getting-started/?theme=Portal) using any of these valid implementation patterns: 1. Chi HTML Blueprint - Using Chi CSS classes (.chi-data-table, .chi-button, etc.) with proper HTML/div structure as documented at https://assets.ctl.io/chi/5.78.0/getting-started/ 2. Chi Web Components - Using Chi's custom elements (<chi-button>, <chi-modal>, etc.) 3. Chi Vue Components - Using Vue wrappers from @centurylink/chi-vue package (ChiDataTable, ChiButton, etc.). Score compliance based on correct usage of ANY of these patterns. Flag as non-compliant only when components bypass Chi entirely with custom implementations. For partially compliant, note when a component uses one Chi pattern (e.g., CSS classes) but could benefit from a higher-level pattern (e.g., Vue component) for better maintainability., catalog deviations, and prioritize remediation steps before upgrading the Chi version. Generate a score 1-10 for this as well. In the package.json also ensure the semver reference to @centurylinkfederal/eis-vue is using ~ instead of ^ to ensure only patch versions are updated to avoid minor version change issues, for example correct is "@centurylinkfederal/eis-vue": "~1.2.148" and incorrect is "@centurylinkfederal/eis-vue": "^1.2.148". |
There was a problem hiding this comment.
The text "For partially compliant," is missing the word "components" after "compliant". It should read "For partially compliant components," to be grammatically correct and clear.
| * evaluate every view, page, and component for adherence to the Chi design system (https://assets.ctl.io/chi/5.78.0/getting-started/?theme=Portal) using any of these valid implementation patterns: 1. Chi HTML Blueprint - Using Chi CSS classes (.chi-data-table, .chi-button, etc.) with proper HTML/div structure as documented at https://assets.ctl.io/chi/5.78.0/getting-started/ 2. Chi Web Components - Using Chi's custom elements (<chi-button>, <chi-modal>, etc.) 3. Chi Vue Components - Using Vue wrappers from @centurylink/chi-vue package (ChiDataTable, ChiButton, etc.). Score compliance based on correct usage of ANY of these patterns. Flag as non-compliant only when components bypass Chi entirely with custom implementations. For partially compliant, note when a component uses one Chi pattern (e.g., CSS classes) but could benefit from a higher-level pattern (e.g., Vue component) for better maintainability., catalog deviations, and prioritize remediation steps before upgrading the Chi version. Generate a score 1-10 for this as well. In the package.json also ensure the semver reference to @centurylinkfederal/eis-vue is using ~ instead of ^ to ensure only patch versions are updated to avoid minor version change issues, for example correct is "@centurylinkfederal/eis-vue": "~1.2.148" and incorrect is "@centurylinkfederal/eis-vue": "^1.2.148". | |
| * evaluate every view, page, and component for adherence to the Chi design system (https://assets.ctl.io/chi/5.78.0/getting-started/?theme=Portal) using any of these valid implementation patterns: 1. Chi HTML Blueprint - Using Chi CSS classes (.chi-data-table, .chi-button, etc.) with proper HTML/div structure as documented at https://assets.ctl.io/chi/5.78.0/getting-started/ 2. Chi Web Components - Using Chi's custom elements (<chi-button>, <chi-modal>, etc.) 3. Chi Vue Components - Using Vue wrappers from @centurylink/chi-vue package (ChiDataTable, ChiButton, etc.). Score compliance based on correct usage of ANY of these patterns. Flag as non-compliant only when components bypass Chi entirely with custom implementations. For partially compliant components, note when a component uses one Chi pattern (e.g., CSS classes) but could benefit from a higher-level pattern (e.g., Vue component) for better maintainability., catalog deviations, and prioritize remediation steps before upgrading the Chi version. Generate a score 1-10 for this as well. In the package.json also ensure the semver reference to @centurylinkfederal/eis-vue is using ~ instead of ^ to ensure only patch versions are updated to avoid minor version change issues, for example correct is "@centurylinkfederal/eis-vue": "~1.2.148" and incorrect is "@centurylinkfederal/eis-vue": "^1.2.148". |
This pull request updates the GitHub issue templates to provide clearer and more actionable instructions regarding codebase reviews and the creation of Copilot instructions. The main focus is on improving the accuracy and completeness of compliance reporting for Chi design system usage and ensuring Copilot instructions are managed in a consistent location.
Enhancements to Chi compliance review and Copilot instructions:
Chi Compliance Reporting:
chi-compliance.mdsection in the comprehensive codebase review template to require explicit reporting of Chi CDN versions fromindex.html, npm package versions (including both@centurylink/chi-vueand@centurylinkfederal/eis-vue), and to clarify that Chi may be loaded via CDN rather than npm. Also added a check to ensure that the semver reference to@centurylinkfederal/eis-vueinpackage.jsonuses~instead of^to avoid minor version update issues.Copilot Instructions Management:
copilot-instructions.mdfile should be placed under the.githubdirectory. If an existing file is found elsewhere, it should be updated and moved to.github..github/copilot-instructions.mdfor consistency.