github / github/app

[Bug] Copilot-internal endpoints hardcoded to api.github.com fail (403/404) for GHE.com data-residency subscriptions

未关闭
#2,717 0 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
没有语言数据
星标
2.1k
派生
153
PR 合并指标
30 天内没有已合并 PR

描述

### Short summary
Internal Copilot endpoints are hardcoded to api.github.com and fail (403/404) when the Copilot subscription lives on a GHE.com data-residency account

### Affected version or release
1.1.6 (commit a9706b2)

### Installation context
Windows 11 x64. Primary account: GHE.com data residency (`9altitudes.ghe.com`) holding the Copilot subscription. Secondary github.com account added, no Copilot license.

### What happened?
Several app features call Copilot-internal endpoints on `api.github.com` regardless of which host holds the Copilot subscription:

```
github_app::github::repos: copilot repo search returned error
url=https://api.github.com/copilot_internal/repository_search status=404 Not Found

github_app::github::client: github API request failed status=403
url=https://api.github.com/cmc_internal/api/agents/automations/triggers
error=GitHub API request failed (403 Forbidden): This API requires a valid Copilot license.
```

Because my Copilot license is on the GHE.com tenant (not on the github.com account), these calls fail on every app start: repository search 404s and cloud workflow/automations metadata 403s ("requires a valid Copilot license"). The features backing them silently degrade for data-residency customers.

### Steps to reproduce
1. Have your Copilot subscription on a GHE.com data-residency account; add it to the app (optionally also a github.com account without a Copilot seat).
2. Start the app and watch `~/.copilot/logs/github-app..log`.
3. Observe 404 on `api.github.com/copilot_internal/repository_search` and 403 on `api.github.com/cmc_internal/api/agents/automations/*`.

### Expected behavior
Copilot-internal endpoints should be resolved against the host/tenant that holds the Copilot subscription (or the data-residency equivalent), not hardcoded to api.github.com.

### Additional context
- Request ID example: `D49F:1D5EDB:4C4B17F:49B7142:6A76E1CA` (403, cmc_internal/api/agents/automations/tools)
- Companion issue about unauthenticated calls to the GHE.com API itself: #2716
- Related: #1131 (GHEC data residency OAuth scope)

贡献指南

打开贡献指南

调研方向

首先在 ~/.copilot/logs/github-app..log 中重现请求失败,并跟踪对 /copilot_internal/repository_search 和 /cmc_internal/api/agents/automations/* 的调用;issue 未指定源文件或测试。完成标准是:这些端点使用持有 Copilot 订阅的主机或租户,包括 GHE.com 数据驻留的情况,且不再出现报告中的 403/404 失败。

由索引模型根据 Issue 内容生成。

评估

技术栈
github
领域
api, backend
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
冷清
描述清晰度
基本清楚
新手友好度
45/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。