fix: restore GitHub Agent update checks with paginated discovery

The GitHub release history exceeded the catalog response limit, preventing users from checking Agent updates. Read ten releases per page and stop at the first eligible catalog while preserving the existing 100-release search window and signature checks.

Release note: 修复选择 GitHub 来源时 Agent 更新检查提示发布目录超出大小限制的问题;镜像更新和已有本地包保持不变。
This commit is contained in:
mesalogo
2026-09-06 19:25:40 +08:00
parent e692362414
commit 7003141e56
4 changed files with 73 additions and 14 deletions
+5 -5
View File
@@ -1652,7 +1652,7 @@ describe('compound Agent packages', () => {
const transport = vi.fn(async (input: string | URL) => {
const url = input.toString()
requested.push(url)
if (url.includes('/releases?per_page=100')) {
if (url.includes('/releases?per_page=10&page=1')) {
return jsonResponse([{
tag_name: `agent-v${agentLock.agentVersion}`,
draft: false,
@@ -1713,7 +1713,7 @@ describe('compound Agent packages', () => {
})
expect(requested).toContain(
source === 'github'
? 'https://api.github.com/repos/mesalogo/goodbuddy/releases?per_page=100'
? 'https://api.github.com/repos/mesalogo/goodbuddy/releases?per_page=10&page=1'
: 'https://goodbuddy.oss-cn-beijing.aliyuncs.com/agent-releases/latest.json'
)
expect(requested).not.toContain(
@@ -1736,7 +1736,7 @@ describe('compound Agent packages', () => {
await manager.download('x64')
expect(requested).toContain(
source === 'github'
? 'https://api.github.com/repos/mesalogo/goodbuddy/releases?per_page=100'
? 'https://api.github.com/repos/mesalogo/goodbuddy/releases?per_page=10&page=1'
: 'https://goodbuddy.oss-cn-beijing.aliyuncs.com/agent-releases/latest.json'
)
expect(requested).toContain(
@@ -1769,7 +1769,7 @@ describe('compound Agent packages', () => {
let packageRequested = false
const transport = vi.fn(async (input: string | URL) => {
const url = input.toString()
if (url.includes('/releases?per_page=100')) {
if (url.includes('/releases?per_page=10&page=1')) {
return jsonResponse([{
tag_name: `agent-v${agentLock.agentVersion}`,
draft: false,
@@ -1838,7 +1838,7 @@ describe('compound Agent packages', () => {
let packageRequested = false
const transport = vi.fn(async (input: string | URL) => {
const url = input.toString()
if (url.includes('/releases?per_page=100')) {
if (url.includes('/releases?per_page=10&page=1')) {
return jsonResponse([{
tag_name: `agent-v${agentLock.agentVersion}`,
draft: false,