forked from github/docs
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request github#35542 from github/repo-sync
Repo sync
- Loading branch information
Showing
13 changed files
with
431 additions
and
29 deletions.
There are no files selected for viewing
127 changes: 127 additions & 0 deletions
127
...y-analysis-and-feature-suggestions/analyzing-and-incorporating-user-feedback.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,127 @@ | ||
--- | ||
title: 'Analyzing and incorporating user feedback' | ||
shortTitle: Incorporate feedback | ||
intro: '{% data variables.product.prodname_copilot_chat_short %} can enhance the process of incorporating user feedback into your project.' | ||
versions: | ||
feature: copilot | ||
category: | ||
- 'Functionality analysis' | ||
complexity: | ||
- Intermediate | ||
octicon: lightbulb | ||
topics: | ||
- Copilot | ||
--- | ||
|
||
Gathering and incorporating user feedback is crucial for product development, but it can be a challenging process. Developers and product teams often struggle to effectively analyze user feedback, prioritize it, and implement changes based on that feedback without disrupting existing workflows or introducing new issues. | ||
|
||
## Analyzing user feedback | ||
|
||
User feedback can be overwhelming and it may be difficult to identify what you should respond to. | ||
|
||
### Example scenario | ||
|
||
Imagine you are a maintainer of a popular open source repository. Because the community is very invested in your project, they often open issues to provide feedback. They also frequently interact with open issues. You want to respond to this feedback, but you aren't sure where to start. | ||
|
||
### Example prompt | ||
|
||
This example assumes that you use labels to track issues related to user feedback in your repository. | ||
|
||
Navigate to the **Issues** tab in your repository, then type: | ||
|
||
`Find the issues with the feedback label that have the most reactions, and categorize them based on sentiment.` | ||
|
||
>[!TIP] To try out this prompt, you can go to the [`microsoft/vscode`](https://github.com/microsoft/vscode/issues) repository, which uses labels to track feature requests, and type: `Find the issues with the feature-request label that have the most reactions, and categorize them based on sentiment.` | ||
### Example response | ||
|
||
{% data reusables.copilot.example-prompts.response-is-an-example %} | ||
|
||
{% data variables.product.prodname_copilot_short %} lists the issues with the most reactions, and provides a sentiment analysis for each issue. You can use this list to make more informed decisions when you are prioritizing your work. | ||
|
||
For example: | ||
|
||
```text | ||
1. [Feedback] CLI error messages are difficult to understand | ||
* Issue URL: #321 | ||
* Reactions: 543 | ||
* Sentiment: Negative | ||
1. [Feedback] Add API to enable third party integration | ||
* Issue URL: #210 | ||
* Reactions: 482 | ||
* Sentiment: Positive | ||
1. [Feedback] Shortcut for --with-token CLI option | ||
* Issue URL: #426 | ||
* Reactions: 187 | ||
* Sentiment: Neutral to slightly positive | ||
``` | ||
|
||
## Generating feature specifications | ||
|
||
Feature specifications provide a plan for development and are useful for communication and alignment prior to implementing a new feature. | ||
|
||
### Example scenario | ||
|
||
In this scenario, you've chosen a piece of user feedback to address. Someone requested a shortcut to an existing CLI option. Now you want to create a plan for how you'll implement this. | ||
|
||
### Example prompt | ||
|
||
This example assumes you are asking about an issue in the same repository where you are using {% data variables.product.prodname_copilot_chat_short %}. | ||
|
||
`Write a feature specification for Issue #426.` | ||
|
||
### Example response | ||
|
||
{% data reusables.copilot.example-prompts.response-is-an-example %} | ||
|
||
{% data variables.product.prodname_copilot_short %} generates a feature specification, similar to the following. | ||
|
||
```text | ||
# Feature Specification for Issue #426: Shortcut for --with-token CLI option | ||
## Description: | ||
Currently, the --with-token option is used to to pass in a token to commands. Typing --with-token each time is cumbersome. This feature proposes a new flag -wt as a shortcut to quickly specify the --with-token option when running various commands. | ||
## Problem: | ||
Typing --with-token repeatedly is time-consuming and inconvenient for users who frequently use this option. | ||
## Solution: | ||
Introduce a new flag -wt that serves as a shortcut for the --with-token option. | ||
## Feature Details: | ||
### 1. Flag Introduction: | ||
-wt will be introduced as a shorthand for --with-token. | ||
Usage: <command> -wt <token> | ||
### 2. Commands Affected: | ||
All commands that currently support the --with-token option. | ||
### 3. Backward Compatibility: | ||
- The existing --with-token option will continue to work as before. | ||
- No existing functionality will be removed or altered. | ||
### 4. Documentation: | ||
- Update documentation to include the new -wt flag. | ||
- Provide examples and usage scenarios for the new flag. | ||
### 5. Testing: | ||
- Ensure thorough testing of the -wt flag across various commands. | ||
- Test cases should include: | ||
- Valid and invalid tokens. | ||
- Interaction with other options. | ||
- Ensuring no regression in current --with-token functionality. | ||
## Benefits: | ||
- Improved user experience by reducing the amount of typing required. | ||
- Streamlined command execution for users who frequently use the --with-token option. | ||
## Potential Risks: | ||
Minimal risk as this feature is an addition and does not alter existing functionality. | ||
``` | ||
|
||
## Further reading | ||
|
||
{% data reusables.copilot.example-prompts.further-reading-items %} |
126 changes: 126 additions & 0 deletions
126
...analysis-and-feature-suggestions/exploring-potential-feature-implementations.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,126 @@ | ||
--- | ||
title: Exploring potential feature implementations | ||
shortTitle: Explore feature implementations | ||
intro: >- | ||
{% data variables.product.prodname_copilot_chat_short %} can help explore | ||
different approaches for implementing a single feature. | ||
versions: | ||
feature: copilot | ||
category: | ||
- 'Functionality analysis' | ||
complexity: | ||
- Intermediate | ||
octicon: lightbulb | ||
topics: | ||
- Copilot | ||
--- | ||
|
||
When tasked with implementing new features or enhancing existing ones, developers often face decisions about the best approach to take. {% data variables.product.prodname_copilot_chat_short %} can assist by analyzing the problem and generating implementation options so that you can explore multiple solutions. | ||
|
||
## Example scenario | ||
|
||
You're assigned the task of creating a new feature that displays the most recently viewed items on a user dashboard. Below is an example issue for implementing this functionality: | ||
|
||
```text | ||
[Feature Request] Add "Recent Items" section to user dashboard #753 | ||
## Issue Description | ||
Users have requested a "Recent Items" section on their dashboard to quickly access the most recently viewed documents, projects, or files. This section should display the ten most recent items, sorted by the last access time. | ||
## Requirements | ||
* Display up to ten items that the user has accessed recently. | ||
* Items must be sorted by the time they were last accessed. | ||
* The solution should minimize database load. | ||
* Data should reflect updates in near real-time. | ||
* The solution should prioritize performance, especially for large datasets of items. | ||
## Acceptance Criteria | ||
* Dashboard loads the "Recent Items" section within 200ms under normal load. | ||
* The solution must not degrade performance for users with thousands of items. | ||
``` | ||
|
||
## Example prompt | ||
|
||
You want to evaluate different approaches to this implementation to see whether they fit with your needs and constraints. Here we'll ask {% data variables.product.prodname_copilot_chat_short %} to suggest different approaches. | ||
|
||
Navigate to the issue, then type: | ||
|
||
`Given the criteria in Issue #753, list options for implementation and tradeoffs for each option.` | ||
|
||
>[!TIP] When you are using {% data variables.product.prodname_copilot_short %} to help identify implementation options, it's good practice to start with a general prompt to spark ideas, like in this example. Then you can follow up with more specific questions to dive more deeply into the options it suggests. | ||
## Example response | ||
|
||
{% data reusables.copilot.example-prompts.response-is-an-example %} | ||
|
||
{% data variables.product.prodname_copilot_short %} lists several different options for implementing this dashboard, along with tradeoffs for each option. Then it makes a recommendation. | ||
|
||
For example: | ||
|
||
```text | ||
# Implementation Options and Tradeoffs for "Recent Items" Section | ||
## 1. Client-Side Storage | ||
- Description: Store recent items data in the user's browser using LocalStorage or IndexedDB. | ||
- Tradeoffs: | ||
- Pros: | ||
- Reduces server load by handling data storage and retrieval on the client side. | ||
- Immediate updates and access without server communication. | ||
- Cons: | ||
- Limited by browser storage capacity. | ||
- Data lost if the user clears browser storage or switches devices. | ||
- Security concerns with storing sensitive data on the client side. | ||
## 2. Server-Side Storage with Database Indexing | ||
- Description: Store recent items in the database and use indexing to quickly retrieve the most recent items. | ||
- Tradeoffs: | ||
- Pros: | ||
- Centralized data storage, accessible from any device. | ||
- Scalable and can handle large datasets efficiently with proper indexing. | ||
- Cons: | ||
- Increased database load, especially for frequent access updates. | ||
- Potential latency in updating the recent items list. | ||
## 3. In-Memory Caching (e.g., Redis) | ||
- Description: Use an in-memory data store like Redis to cache recent items for fast retrieval. | ||
- Tradeoffs: | ||
- Pros: | ||
- Extremely fast data access and updates. | ||
- Reduces database load by offloading frequent read operations. | ||
- Cons: | ||
- Requires additional infrastructure and maintenance. | ||
- Data may be lost if the cache is cleared or server restarts. | ||
## 4. Hybrid Approach | ||
- Description: Combine server-side storage with in-memory caching to balance performance and persistence. | ||
- Tradeoffs: | ||
- Pros: | ||
- Fast access through caching, with persistent storage in the database. | ||
- Can handle large datasets and frequent updates efficiently. | ||
- Cons: | ||
- Increased complexity in implementation and maintenance. | ||
- Potential consistency issues between cache and database. | ||
## 5. Event-Driven Updates | ||
- Description: Use event-driven architecture to update recent items in real-time as users access documents. | ||
- Tradeoffs: | ||
- Pros: | ||
- Near real-time updates with minimal delay. | ||
- Efficient handling of updates through events rather than periodic polling. | ||
- Cons: | ||
- Requires setting up event handling infrastructure (e.g., message queues). | ||
- Increased complexity in managing events and ensuring consistency. | ||
## Recommendation | ||
The hybrid approach (option 4) is a balanced solution, offering fast access through caching and persistence through database storage. It meets performance requirements and scales well with a large dataset, although it involves a more complex implementation. | ||
``` | ||
|
||
## Further reading | ||
|
||
{% data reusables.copilot.example-prompts.further-reading-items %} |
11 changes: 11 additions & 0 deletions
11
...for-github-copilot-chat/functionality-analysis-and-feature-suggestions/index.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
--- | ||
title: Functionality analysis and feature suggestions | ||
intro: 'Discover ways that you can use {% data variables.product.prodname_copilot %} to improve the functionality of your project.' | ||
versions: | ||
feature: copilot | ||
topics: | ||
- Copilot | ||
children: | ||
- /exploring-potential-feature-implementations | ||
- /analyzing-and-incorporating-user-feedback | ||
--- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
24 changes: 0 additions & 24 deletions
24
...g-organization-settings/disabling-insights-for-projects-in-your-organization.md
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
date: '2024-12-03' | ||
sections: | ||
security_fixes: | ||
- | | ||
Packages have been updated to the latest security versions. | ||
bugs: | ||
- | | ||
Creating a new comment on a pull request could incorrectly emit a `pull_request_review_comment.edited` webhook event. | ||
- | | ||
In some cases, ambiguous commit OIDs within a repository caused errors when selecting commits to view in a pull request. | ||
known_issues: | ||
- | | ||
Custom firewall rules are removed during the upgrade process. | ||
- | | ||
During the validation phase of a configuration run, a `No such object` error may occur for the Notebook and Viewscreen services. This error can be ignored as the services should still correctly start. | ||
- | | ||
If the root site administrator is locked out of the Management Console after failed login attempts, the account does not unlock automatically after the defined lockout time. Someone with administrative SSH access to the instance must unlock the account using the administrative shell. For more information, see "[AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/troubleshooting-access-to-the-management-console#unlocking-the-root-site-administrator-account)." | ||
- | | ||
The `mbind: Operation not permitted` error in the `/var/log/mysql/mysql.err` file can be ignored. MySQL 8 does not gracefully handle when the `CAP_SYS_NICE` capability isn't required, and outputs an error instead of a warning. | ||
- | | ||
{% data reusables.release-notes.2023-11-aws-system-time %} | ||
- | | ||
On an instance with the HTTP `X-Forwarded-For` header configured for use behind a load balancer, all client IP addresses in the instance's audit log erroneously appear as 127.0.0.1. | ||
- | | ||
{% data reusables.release-notes.2023-10-git-push-made-but-not-registered %} | ||
- | | ||
{% data reusables.release-notes.large-adoc-files-issue %} | ||
- | | ||
{% data reusables.release-notes.2024-01-haproxy-upgrade-causing-increased-errors %} | ||
- | | ||
Repositories originally imported using ghe-migrator will not correctly track Advanced Security contributions. | ||
- | | ||
The `reply.[hostname]` subdomain is falsely always displaying as having no ssl and dns record, when testing the domain settings via management console **without subdomain isolation**. When regenerating the certificates with management console, the `subdomain reply.[hostname]` is missing from the ssl certification. | ||
- | | ||
Admin stats REST API endpoints may timeout on appliances with many users or repositories. Retrying the request until data is returned is advised. | ||
- | | ||
{% data reusables.release-notes.2024-06-possible-frontend-5-minute-outage-during-hotpatch-upgrade %} | ||
- | | ||
When restoring from a backup snapshot, a large number of `mapper_parsing_exception` errors may be displayed. | ||
- | | ||
Services may respond with a `503` status due to an out of date `haproxy` configuration. This can usually be resolved with a `ghe-config-apply` run. | ||
- | | ||
Attempting to stop replications after stopping GitHub Actions on a GitHub Enterprise Server instance would fail, reporting that MSSQL was not responding. The can be avoided by start MSSQL prior to stopping replication `/usr/local/share/enterprise/ghe-nomad-jobs queue /etc/nomad-jobs/mssql/mssql.hcl` | ||
- | | ||
Some customers upgrading from 3.11.x or 3.12.x may experience a bug with the feature "Automatic update checks", filling the root disk with logs causing a system degradation. To prevent this, you can turn off the feature "[Enable automatic update check](/admin/upgrading-your-instance/preparing-to-upgrade/enabling-automatic-update-checks#enabling-automatic-update-checks)" in the management console. |
Oops, something went wrong.