Preserve opened subagents when parents are archived (#3279)
* fix(subagents): preserve opened children on parent archive Opening a managed child represents user ownership only while that client's tab remains open. Track that intent per client, detach surviving children during parent archive, and keep single and bulk tab-close behavior consistent. * fix(subagents): mark generic tab openings Centralize managed child tab ownership in agent navigation so list, command-center, deep-link, notification, and subagent-track openings all mark ownership before creating the tab. Use stable localized errors for lifecycle failures. * fix(subagents): classify cold tab openings Fetch uncached agents before deciding whether tab ownership must be recorded, so notification, desktop, and cold-route openings cannot bypass parent archive protection. * fix(app): translate navigation fallback errors * fix(navigation): allow offline workspace intents * refactor(app): derive subagent ownership from open tabs * fix(server): serialize subagent lifecycle ownership
This commit is contained in:
@@ -614,6 +614,7 @@ export const ar: TranslationResources = {
|
||||
reloadingAgent: "وكيل إعادة التحميل...",
|
||||
reloadedAgent: "وكيل إعادة تحميل",
|
||||
failedToReloadAgent: "فشل في إعادة تحميل الوكيل",
|
||||
failedToCloseAgent: "فشل في إغلاق الوكيل",
|
||||
},
|
||||
confirmations: {
|
||||
unsavedTitle: "تغييرات غير محفوظة",
|
||||
|
||||
@@ -613,6 +613,7 @@ export const en = {
|
||||
reloadingAgent: "Reloading agent...",
|
||||
reloadedAgent: "Reloaded agent",
|
||||
failedToReloadAgent: "Failed to reload agent",
|
||||
failedToCloseAgent: "Failed to close agent",
|
||||
},
|
||||
confirmations: {
|
||||
close: "Close",
|
||||
|
||||
@@ -619,6 +619,7 @@ export const es: TranslationResources = {
|
||||
reloadingAgent: "Agente de recarga...",
|
||||
reloadedAgent: "Agente recargado",
|
||||
failedToReloadAgent: "No se pudo recargar el agente",
|
||||
failedToCloseAgent: "No se pudo cerrar el agente",
|
||||
},
|
||||
confirmations: {
|
||||
unsavedTitle: "Cambios sin guardar",
|
||||
|
||||
@@ -619,6 +619,7 @@ export const fr: TranslationResources = {
|
||||
reloadingAgent: "Agent de rechargement...",
|
||||
reloadedAgent: "Agent rechargé",
|
||||
failedToReloadAgent: "Échec du rechargement de l'agent",
|
||||
failedToCloseAgent: "Échec de la fermeture de l'agent",
|
||||
},
|
||||
confirmations: {
|
||||
unsavedTitle: "Modifications non enregistrées",
|
||||
|
||||
@@ -619,6 +619,7 @@ export const ja: TranslationResources = {
|
||||
reloadingAgent: "エージェントを再読み込み中...",
|
||||
reloadedAgent: "エージェントを再読み込みしました",
|
||||
failedToReloadAgent: "エージェントの再読み込みに失敗しました",
|
||||
failedToCloseAgent: "エージェントを閉じられませんでした",
|
||||
},
|
||||
confirmations: {
|
||||
unsavedTitle: "未保存の変更",
|
||||
|
||||
@@ -616,6 +616,7 @@ export const ko: TranslationResources = {
|
||||
reloadingAgent: "에이전트 다시 로드 중...",
|
||||
reloadedAgent: "에이전트를 다시 로드했습니다",
|
||||
failedToReloadAgent: "에이전트를 다시 로드하지 못했습니다",
|
||||
failedToCloseAgent: "에이전트를 닫지 못했습니다",
|
||||
},
|
||||
confirmations: {
|
||||
close: "닫기",
|
||||
|
||||
@@ -618,6 +618,7 @@ export const ptBR: TranslationResources = {
|
||||
reloadingAgent: "Recarregando agente...",
|
||||
reloadedAgent: "Agente recarregado",
|
||||
failedToReloadAgent: "Falha ao recarregar agente",
|
||||
failedToCloseAgent: "Falha ao fechar agente",
|
||||
},
|
||||
confirmations: {
|
||||
unsavedTitle: "Alterações não salvas",
|
||||
|
||||
@@ -618,6 +618,7 @@ export const ru: TranslationResources = {
|
||||
reloadingAgent: "Перезагрузка агента...",
|
||||
reloadedAgent: "Перезагруженный агент",
|
||||
failedToReloadAgent: "Не удалось перезагрузить агент",
|
||||
failedToCloseAgent: "Не удалось закрыть агент",
|
||||
},
|
||||
confirmations: {
|
||||
unsavedTitle: "Несохранённые изменения",
|
||||
|
||||
@@ -614,6 +614,7 @@ export const zhCN: TranslationResources = {
|
||||
reloadingAgent: "正在重新加载 Agent...",
|
||||
reloadedAgent: "已重新加载 Agent",
|
||||
failedToReloadAgent: "重新加载 Agent 失败",
|
||||
failedToCloseAgent: "关闭 Agent 失败",
|
||||
},
|
||||
confirmations: {
|
||||
unsavedTitle: "未保存的更改",
|
||||
|
||||
Reference in New Issue
Block a user