Códigos de erro e de diagnóstico

Documentação da versão v0.1.0-beta.3Ver código-fonte no GitHub

Tradução da página original em inglês do OmsiLaunch 0.1.0-beta3. A página em inglês é a referência normativa: em caso de divergência, prevalecem a página em inglês e o código.

Esta página é a referência normativa de todos os códigos em PublicErrorCodes (src/OmsiLaunch.Api/PublicErrorCodes.cs): 142 códigos de erro OL_E_ e um aviso OL_W_, agrupados por categoria do catálogo, mais os códigos de diagnóstico informativos que não são erros. Para cada código indica onde o código atual o gera, o que significa, como chega ao utilizador (exceção lançada, campo de resultado, diagnóstico, resposta do plano de controlo ou envelope da CLI) e o que fazer. Os significados foram retirados dos pontos onde os códigos são gerados; quando um código está definido mas não tem nenhum caminho de geração atual, a página indica-o.

Páginas relacionadas: API pública, códigos de saída, LaunchSpec, ciclo de vida da sessão, transações e recuperação, plano de controlo local, controlo de runtime, perfis de sessão, plugin permanente.

Como os códigos chegam ao utilizador#

SuperfícieSignificado
LançadoUma exceção cuja Message começa pelo código (InvalidOperationException, IOException, TimeoutException, InvalidDataException, FileNotFoundException, ArgumentException, SessionProfileException). A CLI extrai o código da mensagem e mapeia-o para um código de saída (CliProgram.Classify).
Diagnóstico do planoUm LaunchDiagnostic em SessionPlan.Diagnostics; qualquer código OL_E_ torna IsRunnable falso (CLI: plano NOT RUNNABLE, saída 1).
Diagnóstico da sessãoUm LaunchDiagnostic em SessionStatus.Diagnostics; o estado da sessão é Failed (CLI: saída 1). OL_E_START_SESSION, OL_E_PROCESS_SUPERVISION e OL_E_RESTORE_FAILED envolvem um código interno na sua mensagem.
Resultado de runtimeRuntimeCommandResult.ErrorCode com Succeeded = false.
Detalhe de runtimeRuntimeCommandResult.ErrorCode = OL_E_RUNTIME_OPERATION_FAILED e o código específico como primeiro token de Values["detail"] (com Values["exception"]). É assim que é exposto cada código de InvalidOperationException/ArgumentException do lado do plugin.
Resposta de controloErrorCode de uma resposta do plano de controlo local (LocalControlResponse).
Envelope da CLIerror.code no envelope --json, ou <code>: <message> na consola; o código de saída é indicado.
TelemetriaUm nome de evento de runtime que o host mapeia para um diagnóstico da sessão.

Cli#

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_CANCELLEDCliProgram.ClassifyEscapou uma OperationCanceledException (Ctrl+C ou uma espera de cliente cancelada).Envelope da CLI, saída 7Repetir o comando.
OL_E_INTERNALCliProgram.ClassifyEscapou uma exceção sem código OL_E_: JSON de /spec malformado, um membro obrigatório da especificação nulo, uma falha inesperada.Envelope da CLI, saída 10Ler a mensagem e <root>\.omsilaunch\diagnostics\<sessionId>-host.log; corrigir a entrada; comunicar o problema se não tiver explicação.
OL_E_TIMEOUTCliProgram.Classify; LocalControlPlane.TryRequestAsyncEscapou uma TimeoutException sem código; ou o cliente de controlo local estava ligado a um proprietário que não respondeu dentro do timeout (o proprietário existe, pelo que isto não é comunicado como OL_E_NO_ACTIVE_SESSION). (Os timeouts da mailbox trazem, em vez disso, OL_E_RUNTIME_REQUEST_TIMEOUT.)Envelope da CLI, resposta de controlo; saída 5 a partir de Classify, saída 7 para uma resposta de controloRepetir; verificar se o OMSI e o proprietário estão a responder.
OL_E_WINDOWS_HOST_MISSINGCliProgram.RunAsync (/silent)OmsiLaunchW.exe não está ao lado de OmsiLaunch.exe.Envelope da CLI, saída 7Reinstalar o pacote.
OL_E_WINDOWS_HOST_START_FAILEDCliProgram.RunAsync (/silent)Process.Start de OmsiLaunchW.exe não devolveu nenhum processo.Envelope da CLI, saída 7Verificar os ficheiros e as permissões do pacote; executar sem /silent para ver a falha.

Compatibilidade#

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_BUILD_VALIDATION_FAILEDOmsiLaunchService.ApplyTelemetry em plugin.build.invalidA verificação da build dentro do processo feita pelo plugin (perfil Omsi23004_692EBFBF mais a sonda nativa da VMT) falhou apesar de o host ter aceitado o executável, por exemplo uma build Steam LAA da lista de permissões cuja disposição em memória difere, ou um OMSI modificado.Diagnóstico da sessão (Failed)Usar a build validada em runtime; ver compatibilidade.
OL_E_UNSUPPORTED_BUILDSessionPlanner (omsi.profile.OMSI23004 indisponível)Omsi.exe está em falta, ou o seu tamanho/SHA-256 não corresponde nem à impressão digital do perfil nem à lista de permissões.Diagnóstico do planoInstalar a build suportada do OMSI 2.3.004.
OL_E_UNSUPPORTED_OPERATING_SYSTEMSessionPlanner (runtime.current-windows-x64 indisponível); também lançado por CurrentWindowsX64Platform.ValidateCurrent, que o serviço não chamaNão é Windows 10 ou posterior, ou o sistema operativo ou o processo host não é x64.Diagnóstico do plano (CLI: saída 3 quando lançado)Executar em Windows 10 ou posterior de 64 bits.
OL_E_UNSUPPORTED_OS_ARCHITECTUREApenas CurrentWindowsX64Platform.ValidateCurrentA arquitetura do sistema operativo ou do host não é x64. O serviço não chama ValidateCurrent; não existe caminho de geração atual.Lançado (PlatformNotSupportedException) apenas por esse métodoVer o código-fonte src/OmsiLaunch.Process/RuntimePlatform.cs.

Conteúdo#

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_ENTRYPOINT_NOT_FOUNDLaunchValidationNEW_MAP sem EntrypointIdentity e com PresentedEntrypointIndex não definido ou negativo.Diagnóstico do planoDefinir PresentedEntrypointIndex (/entrypoint-index:<n>); descobrir os pontos de entrada com /list:entrypoints /map:<id>.
OL_E_ENTRYPOINT_REQUIREDSessionPlanner (world.presented-entrypoint indisponível)O mapa NEW_MAP foi resolvido, mas não há índice apresentado nem identidade. Acompanha sempre OL_E_ENTRYPOINT_NOT_FOUND.Diagnóstico do planoO mesmo.
OL_E_HOF_NOT_FOUNDSessionPlannerPlayerVehicle.Hof não é um Vehicles\...\*.hof instalado.Diagnóstico do planoUsar uma identidade de /list:hofs. (De qualquer forma, os campos do veículo do jogador não são executáveis nesta build.)
OL_E_MAP_NOT_FOUNDLaunchValidation; SessionPlannerValidação: NEW_MAP com MapIdentity não definido ou fora da forma maps\<dir>\global.cfg. Planeador: o mapa não está instalado.Diagnóstico do planoUsar uma identidade de /list:maps.
OL_E_NOT_FOUNDCliProgram.ClassifyEscapou uma FileNotFoundException/DirectoryNotFoundException sem código, por exemplo /list:repaints com um /vehicle-scope desconhecido, ou /list:entrypoints com um /map desconhecido.Envelope da CLI, saída 6Corrigir a identidade.
OL_E_REPAINT_NOT_FOUNDSessionPlannerPlayerVehicle.Repaint não é um item .cti do modelo (verificado apenas quando Model está definido).Diagnóstico do planoUsar uma identidade de /list:repaints /vehicle-scope:<bus>.
OL_E_SITUATION_MAP_NOT_FOUNDSessionPlannerO mapa referenciado dentro do .osn selecionado não está instalado.Diagnóstico do planoInstalar o mapa ou escolher outra situação.
OL_E_SITUATION_NOT_FOUNDLaunchValidation; SessionPlannerSAVED_SITUATION sem SituationIdentity, ou o .osn não está instalado.Diagnóstico do planoUsar uma identidade de /list:situations.
OL_E_VEHICLE_NOT_FOUNDSessionPlannerPlayerVehicle.Model não é um Vehicles\...\*.bus instalado.Diagnóstico do planoUsar uma identidade de /list:vehicles.

Instalação#

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_INSTALLATION_BUSYInstallationLease.Acquire; OmsiLaunchService.RecoverPendingAsync; FileConfigurationTransaction.RestorePendingAsyncA concessão da instalação (Local\OmsiLaunch.Installation.<hash>) está detida por outro proprietário nesta sessão de início de sessão do Windows, ou um processo OMSI registado no journal (PID + hora de criação + caminho do executável; ou qualquer Omsi.exe da raiz, para um journal para além de HandoffCreated sem PID) ainda está vivo.Início: diagnóstico da sessão através de OL_E_START_SESSION. Recuperação: lançado (InvalidOperationException / IOException). CLI: saída 7.Parar o outro proprietário (session stop) ou esperar que o OMSI termine e depois repetir ou executar /recover.
OL_E_INSTALLATION_NOT_FOUNDLaunchValidationInstallation.RootPath está vazio.Diagnóstico do planoIndicar o diretório da instalação.
OL_E_INSTALLATION_NOT_WRITABLESessionPlanner (transaction.exact-restore indisponível); também ValidateCurrentA raiz não existe, tem o atributo só de leitura, ou não tem diretório plugins\.Diagnóstico do planoApontar para uma instalação real do OMSI com permissão de escrita.
OL_E_PERMANENT_PLUGIN_HASH_MISMATCHRuntimeArtifactSet.ValidateInstalled (plano e início)Um ficheiro plugins\OmsiLaunch.* instalado difere do hash em release-manifest.json (ou do fecho de referência, sem manifesto).Diagnóstico do plano (plano não executável, CLI: saída 1); diagnóstico da sessão através de OL_E_START_SESSION apenas se os ficheiros mudarem entre o planeamento e o inícioReinstalar o pacote OmsiLaunch para que plugins\ e o manifesto coincidam.
OL_E_PERMANENT_PLUGIN_MANIFEST_INCOMPLETERuntimeArtifactSet.ValidateInstalled (plano e início)O manifesto não tem entrada para um ficheiro obrigatório do plugin.Diagnóstico do plano; diagnóstico da sessão através de OL_E_START_SESSION na mesma condição de corrida descrita acimaReinstalar o pacote.
OL_E_PERMANENT_PLUGIN_MISSINGRuntimeArtifactSet.ValidateInstalled (plano e início)Um ficheiro plugins\OmsiLaunch.* obrigatório está ausente da instalação do OMSI, ou um ficheiro plugins/ listado em release-manifest.json não está instalado.Diagnóstico do plano; diagnóstico da sessão através de OL_E_START_SESSION na mesma condição de corrida descrita acimaInstalar o fecho do plugin permanente (instalação).
OL_E_PLATFORM_CAPABILITY_MISSINGApenas CurrentWindowsX64Platform.ValidateCurrentCurrentPlatformSupported falso. Não é chamado pelo serviço; não existe caminho de geração atual.Lançado apenas por esse métodoVer o código-fonte.
OL_E_RELEASE_MANIFEST_INVALIDReleaseManifest.TryReadPluginHashes / ParsePluginHashesrelease-manifest.json está vazio, não é JSON, não tem uma matriz files, ou tem uma entrada sem path/sha256, um hash que não tem 64 dígitos hexadecimais, um caminho absoluto, que contém :, um segmento vazio, . ou .., ou um caminho listado duas vezes (comparação sem distinção entre maiúsculas e minúsculas, / e \ equivalentes). É aceite um BOM UTF-8.Plano: envolvido em OL_E_RUNTIME_ARTIFACT_MISSING; início: através de OL_E_START_SESSIONReinstalar o pacote.

InvalidArgument#

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_INVALID_ARGUMENTLaunchValidation; CliInput.Parse/ClassifyValidação: Date.Value/Time.Value definido quando o modo não é Explicit. CLI: flag desconhecida, valor em falta, inteiro ou intervalo inválido, /saved combinado com /map//entrypoint, rota de comando desconhecida, qualquer ArgumentException/FormatException sem código.Diagnóstico do plano; envelope da CLI, saída 2Corrigir o argumento.
OL_E_INVALID_SETTING_VALUEConfigurationCatalog.CreatePatch (início)Um valor de definição semântica está fora do intervalo, não é booleano, não pertence ao conjunto permitido, ou está malformado (graphics.particles precisa de quatro campos). Os valores não são validados no momento do planeamento.Diagnóstico da sessão através de OL_E_START_SESSIONUsar um valor da tabela de definições.
OL_E_SETTING_NOT_WRITABLESessionPlanner; CliInput.BuildSpecAsync; BuildTransactionalOverlaysA chave existe mas não permite escrita (advanced.multithreadingCalculate, advanced.multithreadingTextureLoad, graphics.texture, graphics.textureFilter).Diagnóstico do plano; CLI: saída 2Remover a chave.
OL_E_UNKNOWN_SETTINGSessionPlanner; CliInput.BuildSpecAsync; BuildTransactionalOverlaysA chave não está em ConfigurationCatalog.Diagnóstico do plano; CLI: saída 2Usar uma chave do catálogo.

LaunchSpec#

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_SPEC_INVALIDLaunchSpecJson.ParseA raiz não é um objeto JSON, ou a desserialização não produziu nenhum registo.Lançado (InvalidDataException), CLI: saída 2Corrigir o ficheiro (LaunchSpec).
OL_E_SPEC_NOT_FOUNDLaunchSpecJson.LoadAsyncO ficheiro /spec não existe.Lançado (FileNotFoundException), CLI: saída 6Verificar o caminho.
OL_E_SPEC_TOO_LARGELaunchSpecJson.LoadAsyncO ficheiro excede 1 MiB.Lançado (InvalidDataException), CLI: saída 2Reduzir o ficheiro.
OL_E_SPEC_UNKNOWN_PROPERTYLaunchSpecJson.ValidateUm membro que não é uma propriedade pública do registo nessa posição; mensagem OL_E_SPEC_UNKNOWN_PROPERTY: $.Path.Name.Lançado (InvalidDataException), CLI: saída 2Remover ou mudar o nome do membro.

LocalControl#

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_CONTROL_COMMAND_UNKNOWNHandler do proprietário (OwnerSession)O comando não é session.status, session.events, session.stop nem runtime.execute com um argumento operation.Resposta de controlo; CLI: saída 7Usar um comando suportado.
OL_E_CONTROL_FAILEDCliente da CLI (ReportForwarded, CliEventWatch)O proprietário respondeu Ok = false sem código de erro.Envelope da CLI, saída 7Ler a mensagem; verificar a consola/os diagnósticos do proprietário.
OL_E_CONTROL_HANDLER_FAILEDLocalControlPlane.ServeAsyncO handler do proprietário lançou uma exceção cuja mensagem não traz nenhum código OL_E_ (por exemplo, a sessão já estava fechada), ou a resposta do handler não pôde ser serializada.Resposta de controloLer session status; reiniciar o proprietário se já não existir.
OL_E_CONTROL_MESSAGE_INVALIDLocalControlPlane (ambas as extremidades)Prefixo de comprimento negativo ou superior a 64 KiB (incluindo um frame de pedido demasiado grande), frame vazio, JSON null, um pedido sem Command, ou JSON que não pôde ser descodificado.Resposta de controlo / envelope da CLIUsar o protocolo documentado (plano de controlo local).
OL_E_CONTROL_MESSAGE_TOO_LARGELocalControlPlane.TryRequestAsync (cliente)O próprio pedido serializado do cliente excede 64 KiB. É comunicado ao chamador; nada é enviado.Resposta de controlo / envelope da CLIReduzir o pedido.
OL_E_CONTROL_RESPONSE_TOO_LARGELocalControlPlane.ServeAsync (proprietário)A resposta do proprietário não cabe no frame de 64 KiB. O proprietário responde com este erro tipado em vez de descartar a resposta. session.status e session.events nunca o atingem: o seu histórico de eventos é aparado a partir dos mais antigos até caber.Resposta de controlo / envelope da CLIRepetir; para eventos, ler com mais frequência.
OL_E_CONTROL_PROTOCOLLocalControlPlane, TryRequestBoundAsyncO ProtocolVersion do pedido não é 0.1; a resposta do proprietário não pôde ser descodificada ou estava vazia; o proprietário fechou a ligação sem responder ou a ligação quebrou depois de estabelecida; o proprietário não comunicou nenhum SessionId.Resposta de controlo / envelope da CLIFazer coincidir as versões do cliente e do proprietário; ler session status.
OL_E_CONTROL_SESSION_MISMATCHHandler do proprietáriosession.stop ou runtime.execute sem um session_id igual ao da sessão ativa.Resposta de controlo; CLI: saída 7Ler primeiro session.status e associar o pedido à sessão (a CLI fá-lo automaticamente).

Outros#

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_PLAN_NOT_RUNNABLEOmsiLaunchService.StartSessionAsyncO plano recebido tem IsRunnable = false, ou o novo planeamento no início não é executável (Omsi.exe alterado, conteúdo removido, fecho do plugin em falta); a mensagem lista os códigos OL_E_ atuais.Lançado (InvalidOperationException); CLI: saída 1Planear novamente e corrigir os diagnósticos listados.

Apresentação#

Todos gerados por SessionVisualAssets (src/OmsiLaunch.Core/SessionVisualAssets.cs). No momento do planeamento são envolvidos em OL_E_SESSION_PRESENTATION_INVALID (a mensagem traz o código); no início surgem através de OL_E_START_SESSION.

CódigoSignificado / causa típicaO que fazer
OL_E_ITX_PROFILE_INVALIDO ficheiro .itx está vazio, tem um número ímpar de linhas não vazias, ou uma linha de URL não é um URL http/https absoluto.Usar pares de linhas URL/destino.
OL_E_ITX_PROFILE_MISSINGOverrideProfilePath (resolvido relativamente ao diretório de trabalho do processo) não existe. Lançado como FileNotFoundException.Indicar um caminho .itx existente.
OL_E_ITX_PROFILE_REQUIREDInternetTextures.Mode é Override sem OverrideProfilePath. CLI: saída 2 quando lançado.Indicar /internet-textures-profile:<file.itx>.
OL_E_ITX_TARGET_OUTSIDE_TEXTURE_PATHUma linha de destino é absoluta, contém .., começa por \, resolve-se para fora da instalação, não tem um componente Texture\, ou atravessa uma junção/ligação simbólica.Usar destinos relativos Texture\....
OL_E_SPLASH_ASSET_DIRECTORY_MISSINGCustomAssetDirectory não existe.Corrigir o diretório.
OL_E_SPLASH_ASSET_MISSINGENG.bmp ou <LANG>.bmp está em falta no diretório de recursos, ou um assets\splash\<LANG>.bmp do pacote está em falta ao preencher .omsilaunch\assets\splash.Fornecer os BMP / reinstalar o pacote.
OL_E_SPLASH_FORMAT_UNSUPPORTEDUm BMP de splash não é um bitmap BM de 640×480 a 24 bits.Converter a imagem.

Processo#

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_PROCESS_CLEANUP_FAILEDOmsiLaunchService (caminhos de falha de início e de falha do supervisor)Terminar o OMSI ou esperar por ele durante a limpeza após erro lançou uma exceção; segue-se a mensagem interna.Diagnóstico da sessão (adicionado a uma sessão Failed)Garantir que não resta nenhum Omsi.exe e depois executar /recover se houver um journal pendente.
OL_E_PROCESS_CREATION_TIME_FAILEDCurrentWindowsX64Platform.StartAsyncGetProcessTimes falhou logo após CreateProcessW (Win32=<code>); o processo é terminado.Diagnóstico da sessão através de OL_E_START_SESSIONRepetir; verificar o antivírus/as permissões.
OL_E_PROCESS_EXITED_EARLYOmsiLaunchService.SuperviseAsyncO OMSI terminou antes de gameplay.entered (falha abrupta, uma caixa de diálogo de erro do OMSI foi fechada, a janela foi fechada).Diagnóstico da sessão (Failed); o restauro é executadoConsultar os registos do próprio OMSI e logfile.txt; ver RuntimeEvents para o último evento do plugin.
OL_E_PROCESS_START_FAILEDCurrentWindowsX64Platform.StartAsyncCreateProcessW falhou (Win32=<code> na mensagem).Diagnóstico da sessão através de OL_E_START_SESSIONResolver o erro Win32 (ficheiro em falta, acesso negado, política).
OL_E_PROCESS_SUPERVISIONOmsiLaunchService.SuperviseAsyncO ciclo do supervisor lançou uma exceção (leitura de telemetria, espera/terminação do processo, escrita do journal); o OMSI é terminado e tenta-se o restauro.Diagnóstico da sessão (Failed)Ler a mensagem interna e o registo do host.
OL_E_PROCESS_TERMINATE_FAILEDCurrentWindowsX64Platform.TerminateTerminateProcess falhou (Win32=<code>).Dentro das mensagens de OL_E_PROCESS_SUPERVISION / OL_E_PROCESS_CLEANUP_FAILEDTerminar o OMSI manualmente e depois executar /recover.
OL_E_PROCESS_WAIT_FAILEDCurrentWindowsX64Platform.WaitForExitAsyncWaitForSingleObject sobre o handle do processo falhou.Dentro das mensagens de OL_E_PROCESS_SUPERVISION / OL_E_PROCESS_CLEANUP_FAILEDO mesmo.

Runtime#

"Detalhe de runtime" significa ErrorCode = OL_E_RUNTIME_OPERATION_FAILED com o código no início de Values["detail"].

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_CAMERA_PRESET_FAMILY_UNSUPPORTEDOmsiCameraLockWritercamera.lock com preset quando family é 2 (exterior) ou 3 (mapa); as predefinições existem apenas para motorista (0) e passageiro (1).Detalhe de runtimeOmitir preset ou usar a família 0/1.
OL_E_DATE_TIME_APPLY_FAILEDLaunchValidationModo Explicit de Date/Time sem valor ou com componentes fora do intervalo. O nome é histórico; é um erro de validação no momento do planeamento.Diagnóstico do planoCorrigir o valor (e ter em conta que a data/hora explícita não é executável nesta build).
OL_E_MAKEVEHICLE_BUS_NOT_FOUNDCurrentRuntimeControl.MakeBasicRoadVehicleroad-vehicles.spawn: o caminho .bus não existe sob o diretório de trabalho do OMSI (verificado antes da chamada nativa para que o OMSI não possa substituir por uma alternativa).Detalhe de runtimeUsar uma identidade de vehicles list//list:vehicles.
OL_E_MAKEVEHICLE_DELTA_MULTIPLEidemO MakeVehicle nativo alterou a coleção de veículos rodoviários em mais de um objeto.Detalhe de runtime (native_status, contagens na mensagem)Comunicar o problema; os objetos criados permanecem até ao fim da sessão.
OL_E_MAKEVEHICLE_DELTA_ZEROidemA coleção não mudou; o OMSI recusou o veículo silenciosamente.Detalhe de runtimeVerificar o ficheiro .bus; experimentar outro modelo.
OL_E_MAKEVEHICLE_NATIVE_FAILEDidemQualquer outro estado nativo diferente de zero.Detalhe de runtimeComunicar o problema com as contagens da mensagem.
OL_E_PLACE_RANDOM_BUS_FAILEDCurrentRuntimeControl.PlaceRandomBusA chamada perfilada PlaceRandomBus devolveu um estado de falha.Detalhe de runtimeRepetir quando o jogo estiver estável; comunicar o problema.
OL_E_RUNTIME_ARGUMENT_REQUIREDPublicCapabilityRegistry.ValidateRuntimeArguments; verificações do lado do plugin (time.set sem hour/minute/second; camera.set sem family/field_of_view; camera.lock sem uma family interpretável; operações de veículos/curvas)Falta um argumento obrigatório ou está em branco.Resultado de runtime (registo; CLI: saída 2) ou detalhe de runtime (plugin)Fornecer o argumento (controlo de runtime).
OL_E_RUNTIME_ARTIFACT_MISSINGOmsiLaunchService.PlanSessionAsyncO diretório/ficheiro de referência do fecho do plugin ou a ponte nativa indicados em OmsiLaunchRuntimePaths não podem ser carregados (pode envolver OL_E_RELEASE_MANIFEST_INVALID).Diagnóstico do planoExecutar a partir de um pacote intacto.
OL_E_RUNTIME_BASELINE_UNAVAILABLERuntimeBatch (/runtime-write-batch, harness INTERNAL)O time.read/camera.read de base falhou, pelo que o teste de escrita foi ignorado.Apenas artefacto do loteNão se destina ao utilizador.
OL_E_RUNTIME_BUS_IDENTITY_INVALIDCurrentRuntimeControl.ValidateBasicBusIdentitymodel está vazio, tem mais de 240 caracteres, contém NUL ou .., não começa por Vehicles\ ou não termina em .bus.Detalhe de runtimeIndicar Vehicles\<dir>\<file>.bus.
OL_E_RUNTIME_CHANNEL_BUSYnenhum (mantido por compatibilidade)Já não é emitido. Builds anteriores geravam-no quando um pedido cancelado ficava no slot; agora todos os caminhos terminais de um pedido repõem o slot, e um pedido ou resposta remanescente encontrado no início de um novo pedido é limpo.——
OL_E_RUNTIME_CHANNEL_CLOSEDOmsiLaunchService.LiveSession.RequestRuntimeAsyncA mailbox foi descartada porque a sessão está a terminar.Lançado (InvalidOperationException)Nada; a sessão terminou.
OL_E_RUNTIME_CHANNEL_STATE_INVALIDCurrentRuntimeCommandStore.RequestAsyncO slot da mailbox continha um valor de estado que não é inativo, pedido nem respondido (corrupção). O slot é reposto e o erro é gerado; o pedido seguinte funciona normalmente.Lançado (InvalidDataException)Repetir; comunicar o problema se persistir.
OL_E_RUNTIME_CONSTANTS_UNAVAILABLEOmsiRuntimeReadersO ponteiro do bloco de constantes do veículo é nulo.Detalhe de runtimeO veículo não tem constantes; não há nada a fazer.
OL_E_RUNTIME_CONSTANT_NOT_FOUNDOmsiRuntimeReadersname não está na tabela de constantes do veículo.Detalhe de runtimeListar primeiro as constantes.
OL_E_RUNTIME_CREATED_OBJECT_INVALIDOmsiRuntimeReaders.RegisterRoadVehicleHandleAsyncO objeto criado pelo spawn tem uma VMT fora do intervalo da imagem do OMSI.Detalhe de runtimeComunicar o problema.
OL_E_RUNTIME_CREATED_OBJECT_NOT_IN_COLLECTIONidemO objeto criado não está na coleção de veículos rodoviários.Detalhe de runtimeComunicar o problema.
OL_E_RUNTIME_CURVE_DEGENERATEOmsiRuntimeReaders.EvaluateRoadVehicleCurveAsyncDois pontos consecutivos da curva têm o mesmo X.Detalhe de runtimeProblema de conteúdo na curva do veículo.
OL_E_RUNTIME_CURVE_EMPTYidemA curva não tem pontos.Detalhe de runtimeO mesmo.
OL_E_RUNTIME_CURVE_INVALIDidemNenhum segmento da curva contém x.Detalhe de runtimeAvaliar dentro do domínio da curva.
OL_E_RUNTIME_CURVE_NOT_FOUNDidemname é desconhecido ou o seu ponteiro de função é nulo.Detalhe de runtimeListar primeiro as curvas.
OL_E_RUNTIME_HOF_UNAVAILABLEOmsiRuntimeReaders.ReadRoadVehicleHofsAsyncO ponteiro da definição do veículo é nulo.Detalhe de runtimeO handle refere-se a um veículo sem dados de definição.
OL_E_RUNTIME_INSTALLATION_INCOMPLETECliProgram.RunAsync (modo proprietário)plugins\OmsiLaunch.Plugin.opl ou plugins\OmsiLaunch.Native.x86.dll está em falta ao lado do executável.Envelope da CLI, saída 7Reinstalar o pacote.
OL_E_RUNTIME_OBJECT_HANDLE_REQUIREDCurrentRuntimeControlhandle em falta ou em branco para road-vehicle.read, human.read, vehicle.variables.list, vehicle.string-variables.list, vehicle.constants.list, vehicle.curves.list (normalmente o registo rejeita-os primeiro com OL_E_RUNTIME_ARGUMENT_REQUIRED).Detalhe de runtimeFornecer o handle.
OL_E_RUNTIME_OBJECT_HANDLE_STALEOmsiRuntimeReadersO handle é desconhecido, o objeto saiu da coleção, a geração do endereço avançou, ou a impressão digital do objeto (VMT + identidade de definição/modelo) mudou porque o endereço foi reutilizado. Ponto cego residual: mesma classe e mesmo modelo recriados no mesmo endereço entre duas leituras da lista.Detalhe de runtimeExecutar novamente road-vehicles.list/humans.list e usar o novo handle.
OL_E_RUNTIME_OPERATION_FAILEDCurrentRuntimeControl.Execute; CurrentRuntimeCommandMailbox.TryDispatch; alternativa de D3DRuntimeApiInvólucro genérico de falhas do lado do plugin; Values["detail"] contém a mensagem (muitas vezes um código mais específico) e Values["exception"] o tipo da exceção. Uma exceção que escapa de uma operação dentro do despachante da mailbox também é respondida com este código (sem valores), em vez de deixar o pedido sem resposta.Resultado de runtimeLer detail.
OL_E_RUNTIME_OPERATION_UNAVAILABLECurrentRuntimeControl.ExecuteO plugin não tem implementação para uma operação que o registo permitiu (divergência de versões entre registo e plugin).Detalhe de runtimeReinstalar um pacote consistente.
OL_E_RUNTIME_OPERATION_UNKNOWNPublicCapabilityRegistry.ValidateRuntimeArgumentsA operação não está em PublicRuntimeOperationIds, incluindo todas as operações internal.*. Verificado antes da procura da sessão.Resultado de runtime; resposta de controlo; CLI: saída 2Usar um id de operação pública.
OL_E_RUNTIME_PLAYER_VEHICLE_UNAVAILABLEOmsiCameraLockWritercamera.lock com preset quando não há veículo do jogador (as sessões headless não têm nenhum). Também comunicado como code do evento camera.lock.degraded quando a reaplicação falha.Detalhe de runtime / evento de runtimeBloquear sem predefinição, ou usar uma sessão com veículo do jogador.
OL_E_RUNTIME_PROTOCOL_MISMATCHD3DRuntimeApiUm resultado D3D bem-sucedido não tinha valores, ou tinha uma string de estado do dispositivo desconhecida.Lançado (OmsiRuntimeException)Fazer coincidir as versões do host e do plugin.
OL_E_RUNTIME_REQUEST_ID_REUSEDCurrentRuntimeCommandStore.RequestAsyncO slot contém uma resposta obsoleta com o mesmo id de pedido que o novo pedido. A resposta obsoleta é limpa antes de o erro ser gerado.Lançado (InvalidOperationException)Usar ids de pedido estritamente crescentes.
OL_E_RUNTIME_REQUEST_TIMEOUTCurrentRuntimeCommandStore.RequestAsyncNenhuma resposta dentro de timeout; o slot é reposto e uma resposta tardia é descartada.Lançado (TimeoutException); CLI: saída 5Repetir com um timeout maior; verificar se o OMSI não está bloqueado (caixa de diálogo modal, carregamento).
OL_E_RUNTIME_RESPONSE_INVALIDCurrentRuntimeCommandStoreO envelope da resposta está corrompido, tem um comprimento inválido (negativo, zero ou maior do que o slot), um id de sessão alheio ou um id de pedido diferente. O slot é reposto antes de o erro ser gerado, pelo que o pedido seguinte funciona normalmente.Lançado (InvalidDataException)Repetir; comunicar o problema se persistir.
OL_E_RUNTIME_RESPONSE_TOO_LARGECurrentRuntimeCommandMailbox.TryDispatchO resultado serializado excede a mailbox de 64 KiB. Os resultados de listas limitadas (os que têm returned_count e truncated) são, em vez disso, encurtados até caberem (auditoria de documentação BUG-05); na prática, o código continua alcançável para timetable.logs.read, que não é limitado.Resultado de runtimeUsar uma operação mais restrita (por exemplo road-vehicles.read em vez de road-vehicles.list em coleções enormes).
OL_E_RUNTIME_SCRIPT_OBJECT_UNAVAILABLEOmsiRuntimeReadersO ponteiro da definição ou do estado do script do veículo é nulo.Detalhe de runtimeO veículo não tem objetos de script.
OL_E_RUNTIME_SESSION_MISMATCHOmsiLaunchService.ExecuteRuntimeAsync; CurrentRuntimeCommandStore; mailbox do pluginRuntimeCommand.SessionId difere do id de sessão do handle (lançado pelo host), ou um pedido chegou a um plugin associado a outra sessão (devolvido pelo plugin como resultado tipado).Lançado (InvalidOperationException) / resultado de runtimeConstruir o comando com session.SessionId.
OL_E_RUNTIME_SETTING_NOT_PERSISTENTCurrentRuntimeControl.SetWeatherweather.set é sempre rejeitado: o OMSI sobrescreve os campos meteorológicos perfilados no seu ciclo meteorológico seguinte, pelo que uma escrita não pode ser comunicada como alteração semântica.Resultado de runtimeNada; weather.set é UNAVAILABLE.
OL_E_RUNTIME_SETTING_UNAVAILABLEOmsiWeatherWriterNome de campo meteorológico desconhecido. Atualmente inalcançável porque weather.set é rejeitado antes.Detalhe de runtime (definido)Ver o código-fonte src/OmsiLaunch.Interop/OmsiWeatherWriter.cs.
OL_E_RUNTIME_STRING_VARIABLE_NOT_FOUNDOmsiRuntimeReadersname não está na tabela de variáveis de string.Detalhe de runtimeListar primeiro as variáveis de string.
OL_E_RUNTIME_VALUE_INVALIDOmsiWeatherWriter.ParseBooleanUm booleano meteorológico não é true/false/1/0. Atualmente inalcançável (ver acima).Detalhe de runtime (definido)Ver o código-fonte.
OL_E_RUNTIME_VALUE_OUT_OF_RANGECurrentRuntimeControl, OmsiCameraWriter, OmsiCameraLockWriter, OmsiRuntimeReaders, OmsiWeatherWritertime.set: hour 0..23, minute 0..59, second 0..59.999; camera.set: family 0..3, field_of_view 10..170; camera.lock: preset não é um inteiro, family 0..3, preset 0..255; road-vehicles.place-random: ai_type 0..255, group/type/tour/line 0..65535 (type pode ser -1), scheduled 0..1; vehicle.variable.set: value não finito; vehicle.curve.evaluate: x não finito.Detalhe de runtimeUsar um valor dentro do intervalo.
OL_E_RUNTIME_VARIABLE_NOT_FOUNDOmsiRuntimeReadersname não está na tabela de variáveis numéricas.Detalhe de runtimeListar primeiro as variáveis.
OL_E_RUNTIME_VARIABLE_UNAVAILABLEOmsiRuntimeReadersO slot da variável ou o endereço do valor é nulo.Detalhe de runtimeA variável não está materializada para este veículo.
OL_E_TIME_APPLY_FAILEDCurrentRuntimeControl.SetTimeOs escalares do relógio foram escritos, mas a chamada nativa perfilada SetTime devolveu falha.Detalhe de runtimeRepetir; confirmar por leitura com time.read.

RuntimeD3D#

Todos gerados por CurrentRuntimeControl (mapeamento ThrowD3D do estado nativo; detail traz a operação e o HRESULT, native_status o estado numérico). Superfície: resultado de runtime com o código em ErrorCode; D3DRuntimeApi relança-o como OmsiRuntimeException.

CódigoEstado nativo / causaO que fazer
OL_E_D3D_DEVICE_LOST8: o dispositivo Direct3D foi perdido.Esperar por d3d.restored; recriar as texturas (a geração mudou).
OL_E_D3D_INVALID_ARGUMENT14: width, height, level, x, y, format ou handle em falta ou inválido (intervalos: width/height 1..4096, levels 0..16, level 0..15, x/y 0..4095).Corrigir os argumentos.
OL_E_D3D_INVALID_PIXEL_BUFFERpixels_base64 não é Base64 válido ou excede 48 KiB.Enviar retângulos mais pequenos.
OL_E_D3D_INVALID_TEXTURE_FORMAT6, ou um nome de format desconhecido (válidos: A8R8G8B8, X8R8G8B8, R5G6B5, X1R5G5B5, A1R5G5B5, A4R4G4B4, A8, L8, A8L8).Usar um formato listado.
OL_E_D3D_NATIVE_CALL_FAILEDQualquer outro estado; o HRESULT está em detail.Comunicar o problema com o HRESULT.
OL_E_D3D_NOT_READY7: o dispositivo não está pronto (antes do primeiro frame ou durante a paragem).Repetir após d3d.ready.
OL_E_D3D_RESET_IN_PROGRESS9: está em curso uma reposição do dispositivo (reset).Repetir após d3d.restored.
OL_E_D3D_RESOURCE_RELEASED13: o handle da textura já foi libertado.Não reutilizar handles libertados.
OL_E_D3D_STALE_RESOURCE_HANDLE12: o handle pertence a uma geração anterior do dispositivo; ou a string do handle não é d3dtex-<session>-<hex> / é zero.Recriar a textura.

Sessão#

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_CAPABILITY_UNAVAILABLESessionPlanner; ApplyTelemetry em plugin.request.unsupportedPlano: foram pedidos LastMapState, EntrypointIdentity, modo de data/hora/ano, modo meteorológico, campos do veículo do jogador ou documentos de entrada (Requested capability unavailable: <name>). Telemetria: o plugin rejeitou o handoff (não pode acontecer para um plano executável).Diagnóstico do plano; diagnóstico da sessãoRemover o pedido não suportado (limitações conhecidas).
OL_E_HEADLESS_ARM_FAILEDApplyTelemetry em headless.arm.failedO plugin não conseguiu armar no OMSI o hook de arranque headless de utilização única.Diagnóstico da sessão (Failed)Verificar a build; comunicar o problema.
OL_E_NO_ACTIVE_SESSIONCliente da CLI (ReportForwarded, CliEventWatch)Nenhum proprietário responde no pipe de controlo da instalação (não há sessão, ou o proprietário ainda está a iniciar/validar).Envelope da CLI, saída 4Iniciar uma sessão, ou esperar até que esteja em Running.
OL_E_PLUGIN_NOT_LOADEDSuperviseAsyncStartupTimeoutSeconds esgotou-se antes de plugin.started (o OMSI não carregou plugins\OmsiLaunch.Plugin.opl, ou está bloqueado antes da inicialização do plugin).Diagnóstico da sessão (Failed)Verificar o fecho do plugin, plugins\OmsiLaunch.Plugin.opl e o logfile.txt do OMSI.
OL_E_PLUGIN_PROTOCOL_MISMATCHApplyTelemetry em plugin.handoff.invalid ou JSON de telemetria não interpretávelO plugin não conseguiu ler/verificar o handoff de arranque (versão 3/4, SHA-256), ou enviou telemetria inválida.Diagnóstico da sessão (Failed)Fazer coincidir as versões do host e do plugin (reinstalar o pacote).
OL_E_SESSION_ALREADY_ACTIVECliProgram.RunAsyncUm proprietário já responde a session.status para esta instalação.Envelope da CLI, saída 7Usar comandos de cliente (session status, session stop, comandos de runtime).
OL_E_SESSION_NOT_RUNNINGOmsiLaunchService.ExecuteRuntimeAsyncO estado da sessão não é Running.Lançado (InvalidOperationException)Chamar primeiro WaitForAsync(session, SessionState.Running, ...).
OL_E_SESSION_PRESENTATION_INVALIDSessionPlannerNão foi possível construir o plano de splash/ITX; a mensagem traz o código de apresentação.Diagnóstico do planoVer Apresentação.
OL_E_SESSION_START_FAILEDWindowsHost.ShowFailure (caixa de diálogo do OmsiLaunchW)Código alternativo mostrado quando um plano de lançamento não é executável ou a sessão não chegou ao jogo, e não existe nenhum diagnóstico OL_E_.Apenas caixa de mensagemLer .omsilaunch\diagnostics.
OL_E_SITUATION_LOAD_FAILEDApplyTelemetry em world.situation.failedO início nativo da situação guardada devolveu uma falha (native_status no evento).Diagnóstico da sessão (Failed)Verificar o .osn e o respetivo mapa.
OL_E_STARTUP_TIMEOUTSuperviseAsyncO plugin iniciou, mas Running não foi alcançado dentro de StartupTimeoutSeconds.Diagnóstico da sessão (Failed)Aumentar /startup-timeout para mapas grandes; ver RuntimeEvents para o último evento do mundo.
OL_E_START_SESSIONOmsiLaunchService.StartAsyncQualquer exceção no caminho de início; a mensagem é a mensagem interna (normalmente a começar pelo código interno).Diagnóstico da sessão (Failed)Agir de acordo com o código interno.
OL_E_WORLD_START_FAILEDApplyTelemetry em world.failedO início nativo NEW_MAP devolveu uma falha (native_status no evento).Diagnóstico da sessão (Failed)Verificar o mapa, o índice do ponto de entrada e os registos do OMSI.

SessionProfile#

Todos gerados por SessionProfileCompiler (src/OmsiLaunch.Core/SessionProfiles.cs) ou CliInput, lançados como SessionProfileException (uma IOException com Code), CLI: saída 2. Ver perfis de sessão.

CódigoSignificado / causa típicaO que fazer
OL_E_SESSION_PROFILE_ASSET_MISSINGO diretório assets de splash da predefinição ou o ficheiro profile de Internet Textures não existe dentro do pacote.Adicionar o recurso.
OL_E_SESSION_PROFILE_INVALIDViolação estrutural ou de limite: mais de 256 KiB, não exatamente um mapeamento raiz, âncoras YAML, chave desconhecida, chave obrigatória em falta, valor não escalar onde é exigido um escalar, id diferente do nome do diretório, predefinições fora de 1..5 ou index duplicado, timeouts não positivos, modo meteorológico/de splash/de Internet Textures não suportado, data/hora diferente de explicit, YAML inválido, erros de interpretação de números/datas.Corrigir o YAML de acordo com a mensagem.
OL_E_SESSION_PROFILE_MAP_MISMATCHcompatibility.maps não está vazio e não contém o mapa selecionado (NEW_MAP) nem o mapa da situação selecionada (SAVED_SITUATION).Escolher um mundo compatível.
OL_E_SESSION_PROFILE_NOT_FOUND<root>\.omsilaunch\session-profiles\<id>\profile.yaml não existe.Verificar o id.
OL_E_SESSION_PROFILE_OVERRIDE_CONFLICTUm argumento explícito da CLI visa um campo pertencente ao perfil/predefinição selecionado.Retirar a flag ou escolher outra predefinição.
OL_E_SESSION_PROFILE_PATH_ESCAPEO id contém \, /, : ou ..; ou um caminho de recurso é absoluto, sai do pacote ou atravessa uma junção/ligação simbólica.Manter os caminhos dentro do pacote.
OL_E_SESSION_PROFILE_PRESET_NOT_FOUND/predefined-profile-index em falta, fora de 1..5, ou não declarado pelo perfil.Usar um índice de predefinição declarado.
OL_E_SESSION_PROFILE_SCHEMA_UNSUPPORTEDschema não é omsilaunch.session-profile/v1.Usar o esquema suportado.
OL_E_SESSION_PROFILE_SETTING_NOT_WRITABLEUma chave de definição da predefinição é conhecida mas não permite escrita.Remover a chave.
OL_E_SESSION_PROFILE_SETTING_UNKNOWNUma chave de definição da predefinição não está no catálogo.Usar uma chave do catálogo.

Transação#

Ver transações e recuperação.

CódigoGerado porSignificado / causa típicaSuperfícieO que fazer
OL_E_CLOSECHECK_REMOVE_FAILEDOmsiLaunchService.RemoveStaleClosecheckUm closecheck obsoleto ainda existe após File.Delete.Diagnóstico da sessão através de OL_E_START_SESSIONRemover <root>\closecheck manualmente (permissões).
OL_E_RECOVERY_ABSENT_OWNERSHIP_MISMATCHFileConfigurationTransaction.RestoreAsyncUm caminho que não existia antes da sessão contém agora conteúdo diferente do que a sessão aplicou; não é removido e o journal é mantido.Lançado (IOException); dentro de OL_E_RESTORE_FAILED / OL_E_START_SESSION; CLI: saída 8Inspecionar o ficheiro; removê-lo ou movê-lo e depois executar /recover.
OL_E_RECOVERY_ABSENT_OWNERSHIP_UNVERIFIEDRestoreAsync (journal anterior à impressão digital)O journal não tem impressão digital do conteúdo aplicado para um caminho originalmente ausente que não é de eliminação, pelo que a propriedade não pode ser provada. No início da sessão a recuperação é adiada e repetida com os bytes planeados desta sessão; através de RecoverPendingAsync é lançado.Lançado (IOException); CLI: saída 8Iniciar uma sessão com a mesma especificação (fornece os bytes), ou inspecionar e remover o ficheiro e depois executar /recover.
OL_E_RECOVERY_BACKUP_CORRUPTRestoreAsyncO SHA-256 de uma cópia de segurança não corresponde ao snapshot registado no journal; nada é escrito.Lançado; dentro de OL_E_RESTORE_FAILED; CLI: saída 8Restaurar o ficheiro a partir de uma cópia de segurança própria; depois eliminar o journal apenas quando houver certeza.
OL_E_RECOVERY_JOURNAL_MISSINGRestoreAsyncExistem snapshots em memória, mas journal.json desapareceu (eliminado durante a sessão).Lançado; dentro de OL_E_RESTORE_FAILEDVerificar manualmente os ficheiros da sessão.
OL_E_RECOVERY_JOURNAL_REMOVE_FAILEDFileConfigurationTransaction.RemoveJournaljournal.json ainda existe após a eliminação (o próprio restauro foi bem-sucedido e verificado).Lançado; dentro de OL_E_RESTORE_FAILED; CLI: saída 8Eliminar <root>\.omsilaunch\journal.json (permissões) ou executar /recover novamente (idempotente).
OL_E_RESTORE_DEFERREDOmsiLaunchService (falha de início / supervisor)Não foi possível confirmar a saída do OMSI, pelo que os ficheiros não foram substituídos enquanto o OMSI ainda os pode estar a usar; o journal é mantido.Diagnóstico da sessão (Failed)Depois de Omsi.exe ter terminado, executar /recover (ou o próximo início recupera automaticamente).
OL_E_RESTORE_FAILEDOmsiLaunchService (falha de início / supervisor)RestoreAsync lançou uma exceção; a mensagem traz o código interno; o journal é mantido.Diagnóstico da sessão (Failed); CLI: saída 8 quando lançado a partir de /recoverAgir de acordo com o código interno e depois executar /recover.

Aviso#

CódigoGerado porSignificadoSuperfícieO que fazer
OL_W_RESTORE_FOREIGN_FILE_RETAINEDFileConfigurationTransaction.RestoreAsyncUm caminho de eliminação da sessão (destino ITX, Texture\standard.ipr, closecheck) não existia antes da sessão e existe agora, mas nenhum processo OMSI chegou a iniciar sob este journal, pelo que o ficheiro não pode ser um subproduto da sessão. É mantido e comunicado (mensagem = caminho relativo, Data["sha256"]); a transação conclui-se na mesma.Diagnóstico da sessão / RecoveryStatus.Diagnostics (o estado não é afetado)Inspecionar o ficheiro; removê-lo manualmente se não for desejado.

Códigos de diagnóstico que não são erros#

CódigoEmitido porMensagem / dadosSignificado
process.startedOmsiLaunchService.LiveSession.Attachmensagem = PID; Data["thread_id"], Data["creation_utc"] (ISO 8601)Omsi.exe foi criado e a sua identidade foi registada. Diagnóstico da sessão.
closecheck.stale-removedOmsiLaunchService.RemoveStaleClosecheckmensagem = SHA-256 do ficheiro removidoUm closecheck que existia antes da sessão foi removido permanentemente (SuppressStaleClosecheckWarning = true). Diagnóstico da sessão.
restore.session-artifact-removedFileConfigurationTransaction.RestoreAsyncmensagem = caminho relativo; Data["sha256"]Um caminho de eliminação da sessão foi recriado pelo OMSI durante uma sessão cujo processo tinha iniciado; foi removido para restaurar a ausência original. Diagnóstico da sessão / RecoveryStatus.Diagnostics.
plugin.integrity.referenceOmsiLaunchService.PlanSessionAsyncmensagem = manifest ou selfQue referência a validação do plugin permanente usa. Diagnóstico do plano.
session_profile.selectedSessionPlannermensagem = id do perfil; Data["session_profile.id|name|version|author|preset_id|preset_index|preset_name|path"]Proveniência de uma sessão compilada a partir de um perfil de sessão. Diagnóstico do plano.

Os nomes dos eventos de runtime (RuntimeEvent.Type, que não são diagnósticos) estão listados no ciclo de vida da sessão.