Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

memory place says 'memory is off' on the default engine road while memory is on

Aberta
#1,535 1 comentário 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

@santoshkumarradha já está trabalhando nisso.

Desde 27/9/2026.

Avaliação

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

Direção de pesquisa

Start with internal/tui3/place_memory.go, internal/tui3/memory.go, and internal/tui3/app.go, then trace the ListMemories path and host adapter from cmd/codeaf/chatv3_host.go. Run the deterministic demo-home replication to compare the engine and --no-host roads. Done means both roads show the same shelves and counts, while memory off shows the off message and row edits are handled or clearly reported.

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

Descrição

area:chat bug sev:serious

What happened

On dev@c34a3a76d (2026-09-26), the memory place on the default engine road says memory is off, even though memory is on and the store holds memories. The same home on the in-process road shows them. The memory place is reached with alt+8 from a plain codeaf launch.

 memory
   what it has learned about you and this machine · /remember adds a line
─ memory is off for this session · turn it on under /settings ──────────

On the same home, /settings reads memory on, and codeaf chat --no-host draws 11 held · 3 shelves on the same page.

This is not new: the guard below predates v0.4.1, so stable has it too.

Replication

Deterministic (no model). Seed the repository's demo home, which ships 12 memories with memory on, and compare the two roads:

make build
go build -o bin/codeaf-demo-home ./cmd/codeaf-demo-home
bin/codeaf-demo-home --into /tmp/cd-demo     # prints "12 memories"
# use a short state root: the engine's unix socket lives under it
ln -s /tmp/cd-demo/.codeaf /tmp/cdm
cd /tmp/cd-demo/codeaf
HOME=/tmp/cd-demo CODEAF_HOME=/tmp/cdm /path/to/bin/codeaf              # esc past setup, alt+8 → "memory is off for this session"
HOME=/tmp/cd-demo CODEAF_HOME=/tmp/cdm /path/to/bin/codeaf chat --no-host   # alt+8 → "11 held · 3 shelves"

No model call is needed to see it. The page draws before anything is sent.

Where

  • internal/tui3/place_memory.go memoryReady() requires a.brain(). In internal/tui3/memory.go, brain() only accepts an agent that implements the in-process memoryAgent (Remembers/Remember/Forget/Memories). The engine road's remote agent does not implement it, so the store reader that the host already supplies (Memory: memory from newHostMemory in cmd/codeaf/chatv3_host.go) is never consulted. /memories (internal/tui3/app.go, memoryReady()) takes the same wrong branch.
  • A first attempt made the page read a.memory on the engine road, and its unit tests passed with an injected store. The real repro above still printed "memory is off". So something on the engine side also answers "off": the wire's ListMemories path, or the host adapter's error mapping. That is the part left to find.

The fix

The memory place and /memories on the engine road read the engine's store through the host's memory reader. The "off" line appears only when the setting really is off. Row edits either go over the wire or say plainly where they can be done.

Acceptance

End to end, through the real door: the replication above, on the engine road, shows the same shelves and counts as --no-host (11 held · 3 shelves on the demo home) and never prints memory is off for this session. With memory off in /settings, both roads print that line. A tmux e2e subtest in internal/e2e would pin it (a seeded home, alt+8, assert on the shelf count line).

Linguagem predominante
Go
Estrelas
115
Forks
14
Merge médio
9h 44min
PRs com merge (30d)
766

Preparar o ambiente

Ainda não verificamos os arquivos de configuração deste projeto. Comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

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 Agent-Field/CodeAF

Todas as issues de Agent-Field/CodeAF

Issues semelhantes

Mais issues de Go

Receba novas issues na sua caixa de entrada

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