Подключение из списка отключает рабочий сервер до проверки нового профиля
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 75/100
Línea de trabajo
Read ConnectionsViewModel.cs around ConnectTo (lines 267–287) and ConnectionManager.cs around ConnectAsync (lines 234–235), then inspect the existing tests for the list connection command. Add a test using a fake engine where profile A is connected and incompatible profile B is selected; done means B reports the preset error while A remains connected.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Приоритет P1 · milestone 0.4.1
Кнопка «Подключить» в списке серверов рвёт рабочую сессию, если новый профиль несовместим с текущим пресетом. Прямой путь в ConnectionManager уже исправлен в #266, но команда списка обходит этот порядок.
Воспроизведение
- Выбрать пресет маршрутизации, требующий sing-box, и подключить совместимый профиль A.
- В «Подключениях» нажать «Подключить» у профиля B, который требует Xray, например VLESS XHTTP.
- Получить ошибку несовместимого пресета. Активная сессия A уже отключена.
Причина и доказательство: кнопка вызывает ConnectToCommand (ConnectionsView.axaml:138). ConnectionsViewModel.ConnectTo (ConnectionsViewModel.cs:267–287) явно вызывает DisconnectAsync перед ConnectAsync. Проверка CreateFor внутри ConnectionManager.ConnectAsync (ConnectionManager.cs:234–235) стоит перед его собственным отключением, но на момент проверки A уже остановлен. Ошибка возвращается в EngineRegistry.cs:60. Проверено трассировкой кода, реальные подключения не запускались.
Ожидаемо: приложение показывает ошибку B и сохраняет подключение A.
Направление исправления: вызвать проверенный путь переключения ConnectionManager без предварительного DisconnectAsync. Добавить тест команды списка с несовместимым B и рабочим A на фейковом движке.
Связано: #266, #141.
Аудит ffa65648867139f9e45c15f4b635a83c1ff52c1b.
- Lenguaje dominante
- C#
- Estrellas
- 5
- Forks
- 1
- Merge medio
- 30 min
- PR fusionados (30 d)
- 171
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de endercodezz/BYDLO
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
endercodezz/BYDLO#396 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 72/100
endercodezz/BYDLO#395 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 38/100
endercodezz/BYDLO#394 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 48/100
endercodezz/BYDLO#393 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 15/100
endercodezz/BYDLO#392 ·
Los mantenedores suelen responder en 1 día
Todos los issues de endercodezz/BYDLO
Issues similares
-
needs attention untriaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet#3666 ·
Los mantenedores suelen responder en 3 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 73/100
MicrosoftLearning/eShopOnWeb#466 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
stryker-mutator/stryker-net#3974 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 73/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
JiaFeiMiao-K-Cat/DiscImageStudio#171 · 3 comentarios ·
Los mantenedores suelen responder en 1 día