Start new workspaces from pasted pull requests (#2290)
* fix(workspaces): start pasted pull requests from their branch Recognized pull request links now select their branch directly instead of waiting for a separate confirmation. Ensure single-branch clones also record the fetched branch so the new worktree can track it. * fix(workspaces): keep pasted PR checkout target-safe * fix(workspaces): make pasted PR resolution deterministic * fix(workspaces): preserve explicit checkout selection A recognized pull request selects itself only when its attachment is added. Once the user chooses a branch, later composer edits must not derive checkout state from existing attachments. * fix(composer): ignore stale pull request lookups A lookup may finish after the workspace target changes. Only apply its attachment and selection event when the host, working directory, client, and remote still match the target that started it. * fix(workspaces): make checkout choices authoritative Arm automatic pull request selection only when a new PR link is detected. An explicit picker choice cancels that pending selection, existing draft attachments never infer checkout state, and target changes suppress carried-over lookups. * fix(workspaces): stabilize pull request auto-selection Keep the first PR selected when one edit contains several links, and accept a completed lookup when only the transport client changed for the same host and checkout. * fix(composer): release removed pull request lookups Release each auto-attach invocation when its composer state is abandoned, while continuing to discard any stale response.
This commit is contained in:
@@ -985,9 +985,6 @@ export const ar: TranslationResources = {
|
||||
refPicker: {
|
||||
startingRef: "بدء المرجع",
|
||||
chooseStart: "اختر من أين تبدأ",
|
||||
checkoutHint: "تحقق من {{noun}} {{numberPrefix}}{{number}}؟",
|
||||
checkoutPr: "تحقق من {{noun}} {{numberPrefix}}{{number}}",
|
||||
dismissCheckoutHint: "تجاهل تلميح الخروج {{noun}} {{numberPrefix}}{{number}}",
|
||||
intoBase: "إلى {{baseRef}}",
|
||||
searching: "جارٍ البحث...",
|
||||
noMatchingRefs: "لا توجد مراجع مطابقة.",
|
||||
|
||||
@@ -995,9 +995,6 @@ export const en = {
|
||||
refPicker: {
|
||||
startingRef: "Starting ref",
|
||||
chooseStart: "Choose where to start from",
|
||||
checkoutHint: "Check out {{noun}} {{numberPrefix}}{{number}}?",
|
||||
checkoutPr: "Check out {{noun}} {{numberPrefix}}{{number}}",
|
||||
dismissCheckoutHint: "Dismiss {{noun}} {{numberPrefix}}{{number}} checkout hint",
|
||||
intoBase: "into {{baseRef}}",
|
||||
searching: "Searching...",
|
||||
noMatchingRefs: "No matching refs.",
|
||||
|
||||
@@ -1016,9 +1016,6 @@ export const es: TranslationResources = {
|
||||
refPicker: {
|
||||
startingRef: "Árbitro inicial",
|
||||
chooseStart: "Elige por dónde empezar",
|
||||
checkoutHint: "¿Mira {{noun}} {{numberPrefix}}{{number}}?",
|
||||
checkoutPr: "Echa un vistazo a {{noun}} {{numberPrefix}}{{number}}",
|
||||
dismissCheckoutHint: "Descartar la sugerencia de pago de {{noun}} {{numberPrefix}}{{number}}",
|
||||
intoBase: "en {{baseRef}}",
|
||||
searching: "Búsqueda...",
|
||||
noMatchingRefs: "No hay árbitros coincidentes.",
|
||||
|
||||
@@ -1015,9 +1015,6 @@ export const fr: TranslationResources = {
|
||||
refPicker: {
|
||||
startingRef: "Réf de départ",
|
||||
chooseStart: "Choisissez par où commencer",
|
||||
checkoutHint: "Découvrez {{noun}} {{numberPrefix}}{{number}} ?",
|
||||
checkoutPr: "Découvrez {{noun}} {{numberPrefix}}{{number}}",
|
||||
dismissCheckoutHint: "Ignorer l'indice de paiement {{noun}} {{numberPrefix}}{{number}}",
|
||||
intoBase: "dans {{baseRef}}",
|
||||
searching: "Recherche...",
|
||||
noMatchingRefs: "Aucune référence correspondante.",
|
||||
|
||||
@@ -996,9 +996,6 @@ export const ja: TranslationResources = {
|
||||
refPicker: {
|
||||
startingRef: "開始Ref",
|
||||
chooseStart: "開始点を選択",
|
||||
checkoutHint: "{{noun}} {{numberPrefix}}{{number}}をチェックアウトしますか?",
|
||||
checkoutPr: "{{noun}} {{numberPrefix}}{{number}}をチェックアウト",
|
||||
dismissCheckoutHint: "{{noun}} {{numberPrefix}}{{number}}のチェックアウトヒントを閉じる",
|
||||
intoBase: "{{baseRef}}に",
|
||||
searching: "検索中...",
|
||||
noMatchingRefs: "一致するRefがありません。",
|
||||
|
||||
@@ -1007,9 +1007,6 @@ export const ptBR: TranslationResources = {
|
||||
refPicker: {
|
||||
startingRef: "Ref inicial",
|
||||
chooseStart: "Escolha de onde começar",
|
||||
checkoutHint: "Fazer checkout da {{noun}} {{numberPrefix}}{{number}}?",
|
||||
checkoutPr: "Fazer checkout da {{noun}} {{numberPrefix}}{{number}}",
|
||||
dismissCheckoutHint: "Dispensar dica de checkout da {{noun}} {{numberPrefix}}{{number}}",
|
||||
intoBase: "em {{baseRef}}",
|
||||
searching: "Buscando...",
|
||||
noMatchingRefs: "Nenhuma ref correspondente.",
|
||||
|
||||
@@ -1007,10 +1007,6 @@ export const ru: TranslationResources = {
|
||||
refPicker: {
|
||||
startingRef: "Начальная ссылка",
|
||||
chooseStart: "Выберите, с чего начать",
|
||||
checkoutHint: "Проверьте {{noun}} {{numberPrefix}}{{number}}?",
|
||||
checkoutPr: "Проверьте {{noun}} {{numberPrefix}}{{number}}",
|
||||
dismissCheckoutHint:
|
||||
"Отклонить подсказку по оформлению заказа {{noun}} {{numberPrefix}}{{number}}",
|
||||
intoBase: "в {{baseRef}}",
|
||||
searching: "Идет поиск...",
|
||||
noMatchingRefs: "Нет подходящих ссылок.",
|
||||
|
||||
@@ -974,9 +974,6 @@ export const zhCN: TranslationResources = {
|
||||
refPicker: {
|
||||
startingRef: "起始 ref",
|
||||
chooseStart: "选择起始位置",
|
||||
checkoutHint: "Checkout {{noun}} {{numberPrefix}}{{number}}?",
|
||||
checkoutPr: "Checkout {{noun}} {{numberPrefix}}{{number}}",
|
||||
dismissCheckoutHint: "忽略 {{noun}} {{numberPrefix}}{{number}} checkout 提示",
|
||||
intoBase: "进入 {{baseRef}}",
|
||||
searching: "正在搜索...",
|
||||
noMatchingRefs: "没有匹配的 refs。",
|
||||
|
||||
Reference in New Issue
Block a user