Skip to content

Commit efd4783

Browse files
authored
Merge pull request #46404 from github/repo-sync
Repo sync
2 parents cca0c9d + b8c6308 commit efd4783

227 files changed

Lines changed: 5068 additions & 2175 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.github/actions/node-npm-setup/action.yml‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@ runs:
1313
SEGMENT_DOWNLOAD_TIMEOUT_MINS: '1'
1414
with:
1515
path: node_modules
16-
# The postinstall script applies patches/ during npm ci, so patch changes must miss the cache.
17-
key: ${{ runner.os }}-node_modules-${{ hashFiles('package*.json', 'patches/**') }}-${{ hashFiles('.github/actions/node-npm-setup/action.yml') }}
16+
key: ${{ runner.os }}-node_modules-${{ hashFiles('package*.json') }}-${{ hashFiles('.github/actions/node-npm-setup/action.yml') }}
1817

1918
# The npm download cache only helps npm ci, so skip its 153 MB restore when node_modules hits.
2019
- name: Setup Node.js

‎.github/instructions/code.instructions.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
applyTo: "src/**,.github/**,config/**,.devcontainer/**,**Dockerfile,package*.json"
2+
applyTo: "src/**,.github/**,config/**,.devcontainer/**,**Dockerfile,.dockerignore,package*.json"
33
---
44

55
# Copilot code instructions for docs.github.com

‎.github/workflows/lint-entire-content-data-markdown.yml‎

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,23 @@ jobs:
3434
run: npm run lint-content -- --paths content data --output-file /tmp/lint-results.json
3535

3636
- name: Open issue in docs-content
37-
if: ${{ always() && steps.linting-content-data.outcome == 'failure' }}
37+
if: ${{ always() && steps.linting-content-data.outcome != 'skipped' }}
3838
env:
3939
GITHUB_TOKEN: ${{ secrets.DOCS_BOT_PAT_BASE }}
4040
REPORT_AUTHOR: docs-bot
4141
REPORT_LABEL: broken content markdown report
4242
REPORT_REPOSITORY: github/docs-content
43-
run: npm run lint-report -- --path /tmp/lint-results.json
43+
LINT_OUTCOME: ${{ steps.linting-content-data.outcome }}
44+
# The linter exits 0 with warnings only, and writes no results file when the content is clean.
45+
run: |
46+
if [ -f /tmp/lint-results.json ]; then
47+
npm run lint-report -- --path /tmp/lint-results.json
48+
elif [ "$LINT_OUTCOME" != success ]; then
49+
echo "Content linter failed without writing /tmp/lint-results.json"
50+
exit 1
51+
else
52+
echo "No lint results to report"
53+
fi
4454
4555
- uses: ./.github/actions/create-workflow-failure-issue
4656
id: create-failure-issue

‎.github/workflows/reviewers-docs-engineering.yml‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ on:
2323
- 'config/**'
2424
- '.devcontainer/**'
2525
- '**Dockerfile'
26+
- '.dockerignore'
2627
- 'package*.json'
2728
- .github/workflows/reviewers-docs-engineering.yml
2829

@@ -85,7 +86,7 @@ jobs:
8586
exit 0
8687
fi
8788
lockfile=$(echo "$changed" | grep -c '^package-lock\.json$' || true)
88-
other_eng=$(echo "$changed" | grep -cE '(\.tsx?$|\.scss$|^src/|^package\.json$|^\.github/|^config/|^\.devcontainer/|Dockerfile)' || true)
89+
other_eng=$(echo "$changed" | grep -cE '(\.tsx?$|\.scss$|^src/|^package\.json$|^\.github/|^config/|^\.devcontainer/|Dockerfile|^\.dockerignore$)' || true)
8990
if [ "$lockfile" -gt 0 ] && [ "$other_eng" -eq 0 ]; then
9091
echo "lockfile_only=true" >> "$GITHUB_OUTPUT"
9192
else

‎Dockerfile‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ FROM base AS all_deps
4343
USER node:node
4444
WORKDIR $APP_HOME
4545
COPY --chown=node:node package.json package-lock.json ./
46-
COPY --chown=node:node patches patches/
4746
RUN npm ci --registry https://registry.npmjs.org/
4847

4948
FROM all_deps AS prod_deps
-6 Bytes
Loading
4 Bytes
Loading

‎content/billing/how-tos/products/view-productlicense-use.md‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,8 @@ You can use the view to answer questions such as:
107107

108108
For information about {% data variables.product.prodname_copilot_short %} allowances and how {% data variables.product.prodname_ai_credits_short %} are pooled across your enterprise, see [AUTOTITLE](/copilot/concepts/billing-and-usage/organizations-and-enterprises/billing).
109109

110+
App attribution is not available in the **AI usage** view. To identify usage from a {% data variables.product.prodname_github_app %} installed on an organization, download an AI usage report. Use the “List app installations for an organization” REST API endpoint and match `app_client_id` in the report to `client_id` in the response. The response’s `app_slug` identifies the app, and `id` identifies the installation. See [AUTOTITLE](/rest/orgs/orgs#list-app-installations-for-an-organization). For report field definitions, see [AUTOTITLE](/billing/reference/billing-reports#usage-report-fields).
111+
110112
For information about {% data variables.product.prodname_AS %} AI-credit billing, see [AUTOTITLE](/billing/concepts/product-billing/github-advanced-security#how-ai-feature-usage-is-billed).
111113

112114
{% endif %}

‎content/billing/reference/billing-reports.md‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,9 @@ The usage reports contain the following fields.
6868
| `net_amount` | The billable amount of usage after applying the `discount_amount`. This is the amount that your account will be billed. `gross_amount - discount_amount = net_amount` |
6969
| `username` | The user associated with the usage, if applicable. <br><br> Not included in the `Summarized usage report`. |
7070
| `organization` | The organization associated with the usage, if applicable. |
71+
| {% ifversion copilot %} |
72+
| `app_client_id` | The client ID of the {% data variables.product.prodname_github_app %} associated with usage billed directly to an organization. Use this field with `organization` to identify an app installation. The field is empty for usage attributed to a user, {% data variables.product.prodname_actions %}, other {% data variables.product.company_short %}-owned apps, and usage from before app attribution was available. <br><br>Only available in the `AI usage report` |
73+
| {% endif %} |
7174
| `repository` | The repository associated with the usage, if applicable. |
7275
| `workflow_path` | The path of the {% data variables.product.prodname_actions %} workflow that generated the usage, if applicable. <br><br>Only available in the `Detailed usage report` |
7376
| `cost_center_name` | The cost center associated with the usage, if applicable. |

‎content/copilot/concepts/billing-and-usage/organizations-and-enterprises/billing.md‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,14 @@ The cost of an interaction depends on two things: the model and the number of to
2929

3030
Code completions and {% data variables.copilot.next_edit_suggestions %} are **not** billed in {% data variables.product.prodname_ai_credits_short %}. They remain unlimited for all paid plans.
3131

32+
## How is {% data variables.product.prodname_github_app %} usage billed?
33+
34+
A {% data variables.product.prodname_github_app %} installed on an organization can use an installation access token to make {% data variables.product.prodname_copilot_short %} requests without a user signing in. The organization that owns the installation pays for the usage, and the organization’s model policies and spending controls apply.
35+
36+
You cannot create a budget for an individual app or installation. This authentication method does not require the **Allow use of Copilot CLI billed to the organization** policy, which applies to a different authentication path.
37+
38+
For information about approving access, identifying app usage, and blocking an app, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/manage-app-copilot-access).
39+
3240
## How do {% data variables.product.prodname_ai_credits_short %} work?
3341

3442
Each assigned {% data variables.product.prodname_copilot_short %} license comes with a monthly amount of **included {% data variables.product.prodname_ai_credits_short %}**:

0 commit comments

Comments
 (0)