feat: server-side GitHub search for issue/PR pickers (#1352)
Replace local-only filtering in GitHub issue/PR picker dialogs with server-side GitHub Search API queries. Search text is sent as a query parameter to the server, which uses the GitHub Search API (issuesAndPullRequests endpoint) with repo: qualifiers including fork network support. Results are debounced at 350ms to respect API rate limits. - Add query parameter to GitHubAPI issuesList/prsList interface - Server routes use Search API when query is present, standard list endpoint when absent - Fork networks handled via repo:owner/repo OR repo:owner/upstream - PR search fetches full PR details after Search API for head/base/draft fields - Remove local filter memos from all three picker dialogs - Add debounced search effect with abort controller cleanup - Update VS Code backend and webview API for parity - Update search placeholders in all locales Closes #1350 Co-authored-by: Bohdan Triapitsyn <artmore@protonmail.com>
This commit is contained in:
committed by
GitHub
co-authored by
Bohdan Triapitsyn
parent
5589ca991a
commit
7b1b3167a4
@@ -1403,7 +1403,7 @@ export const dict: Record<I18nKey, string> = {
|
||||
"session.githubIssuePicker.title.createSession": "Нова сесія з GitHub issue",
|
||||
"session.githubIssuePicker.description.select": "Виберіть issue, щоб пов’язати її з цією сесією.",
|
||||
"session.githubIssuePicker.description.createSession": "Запускає нову сесію із прихованим контекстом issue: заголовком, текстом, мітками й коментарями.",
|
||||
"session.githubIssuePicker.searchPlaceholder": "Шукайте за назвою або №123, чи вставте URL issue",
|
||||
"session.githubIssuePicker.searchPlaceholder": "Пошук за допомогою синтаксису пошуку коду GitHub",
|
||||
"session.githubIssuePicker.empty.noActiveProject": "Не вибрано жодного активного проєкту.",
|
||||
"session.githubIssuePicker.empty.runtimeUnavailable": "GitHub API недоступний.",
|
||||
"session.githubIssuePicker.empty.notConnected": "GitHub не підключено. Підключіть обліковий запис GitHub у налаштуваннях.",
|
||||
@@ -1430,7 +1430,7 @@ export const dict: Record<I18nKey, string> = {
|
||||
"session.githubPrPicker.toast.loadDetailsFailed": "Не вдалося завантажити деталі PR",
|
||||
"session.githubPrPicker.title": "Пов’язати GitHub PR",
|
||||
"session.githubPrPicker.description": "Виберіть PR, щоб додати контекст рев’ю до цього повідомлення.",
|
||||
"session.githubPrPicker.searchPlaceholder": "Шукайте за назвою або #123, чи вставте URL PR",
|
||||
"session.githubPrPicker.searchPlaceholder": "Пошук за допомогою синтаксису пошуку коду GitHub",
|
||||
"session.githubPrPicker.includeDiffAria": "Додати diff PR у вкладений контекст",
|
||||
"session.githubPrPicker.includeDiff": "Додати diff PR",
|
||||
"session.githubPrPicker.empty.noActiveProject": "Не вибрано жодного активного проєкту.",
|
||||
@@ -1497,8 +1497,8 @@ export const dict: Record<I18nKey, string> = {
|
||||
"session.githubIntegration.connect.title": "Підключитися до GitHub",
|
||||
"session.githubIntegration.connect.description": "Пов’яжіть issue або PR, щоб автоматично заповнити деталі worktree",
|
||||
"session.githubIntegration.connect.action": "Підключити GitHub",
|
||||
"session.githubIntegration.search.issuesPlaceholder": "Знайдіть issue або введіть #123...",
|
||||
"session.githubIntegration.search.prsPlaceholder": "Знайдіть PR або введіть #456...",
|
||||
"session.githubIntegration.search.issuesPlaceholder": "Пошук за допомогою синтаксису пошуку коду GitHub",
|
||||
"session.githubIntegration.search.prsPlaceholder": "Пошук за допомогою синтаксису пошуку коду GitHub",
|
||||
"session.githubIntegration.empty.noIssuesFound": "Issue не знайдено",
|
||||
"session.githubIntegration.empty.noPullRequestsFound": "PR не знайдено",
|
||||
"session.githubIntegration.actions.loadMore": "Завантажити ще",
|
||||
|
||||
Reference in New Issue
Block a user