[Bug] Android sessions never get auto titles on 1.0.7+ hosts: legacy APK placeholder "Remote Code Session" is persisted as user-edited

Aberta
#3,809 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
49/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
kotlin, rust
Domínio
backend, mobile

Direção de pesquisa

Start with create_agent_session_from_runtime_request and update_session_title_if_current in coordinator.rs, then check the legacy SessionNaming.wireSessionName behavior in SessionListPolicy.kt. Reproduce the Android session title flow and add a focused unit test for the three legacy placeholders; done when those sessions receive automatic titles and the existing explicit-title behavior remains intact. The logging request and unverified rename hypothesis may need separate investigation.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Summary

Sessions created from the published Android APK never get an automatic title: they stay named Remote Code Session forever. Host: OpenBitFun CLI 1.0.9 daemon (Linux x86_64). Client: OpenBitFun-Mobile-1.0.0-android-debug.apk (release mobile-v1.0.0, the latest Android build published).

Root cause (source-verified)
  1. The mobile-v1.0.0 APK sends a literal placeholder when the user typed no title: SessionNaming.wireSessionName returns "Remote Code Session" / "Remote Cowork Session" / "Remote Assistant Session" (src/apps/mobile/shared/core-domain/.../SessionListPolicy.kt at tag mobile-v1.0.0).
  2. Since v1.0.7 the host treats any non-empty session_name from remote_relay/bot as an explicit user title and persists {"titleSource":"text","titleUserEdited":true} (create_agent_session_from_runtime_request in coordinator.rs, still present on main).
  3. update_session_title_if_current then returns early on titleUserEdited, so the first-turn auto title is never applied.

The client side was fixed in 6f931e418 (#3406, 2026-10-16: blank wire name, host picks the default), but no Android build containing it has been published, so every current Android user hits this with any 1.0.7+ host.

Evidence on my host
  • Every session whose first turn id starts with mobile- has sessionName: "Remote Code Session", titleSource: "text", titleUserEdited: true; locally created sessions get generated titles normally (re-tested on 1.0.9: Session title updated: ... title=Reply With OK).
  • Daemon log for the Android sessions: Skipped auto session title update because title changed. This wording is misleading: the same message is logged for the titleUserEdited early return, not only for a real title race.
Requests
  1. Publish an Android build that includes 6f931e418, or
  2. Host-side compatibility: treat exactly these three legacy placeholders from remote_relay/bot as the default-title path. I have a small patch with a unit test against v1.0.9 (built and tested locally) and can open a PR if that approach is acceptable.
  3. Log a distinct message when the skip is caused by titleUserEdited.
Possibly related, not reproduced yet

In remote_surface/table.rs, update_session_title is CLI_NOT_IMPLEMENTED for the CLI peer host (only rename_session is handled), while the desktop LocalSessionDriver.renameSession invokes update_session_title. If the desktop uses that path when controlling a CLI peer host, rename would be refused. I could not capture the desktop request, so please treat this as a hypothesis.

Linguagem predominante
Rust
Estrelas
2.3k
Forks
236
Merge médio
12h 20min
PRs com merge (30d)
373

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de GCWing/OpenBitFun

Todas as issues de GCWing/OpenBitFun

Issues semelhantes

Mais issues de Rust

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.