Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

tui3: a reply that is only a number and a full stop draws nothing

Ouverte Adaptée aux débutants
#1,072 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
88/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
go, markdown
Domaine
cli, testing-qa

Piste de recherche

Commencez par internal/tui2/prose/render.go, en particulier la méthode list, et reproduisez l’échec à l’aide du test proposé dans internal/tui2/prose/bare_number_test.go. Exécutez go test ./internal/tui2/prose -run TestABareNumberedReplyStillDraws. C’est terminé lorsque 32. et 1024. sont dessinés comme du texte littéral, que 1. reste une liste et que la suite de tests prose existante reste au vert.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

area:chat good first issue

What happens

Ask the chat something whose whole answer is a number, and the model replies 1024. or 32.. The turn folds to ▸ worked 5.1s · thought 0.2s · ctrl+e and nothing stands under it. ctrl+e opens the fold and shows only the thought row. The transcript has the text ("role":"assistant","content":"1024."), and the store has the message row, so the model answered and the surface dropped it.

Paris, 32 (no full stop), a fifteen-word sentence and a three-sentence answer all draw. Only <number>. vanishes.

Why

internal/tui2/prose hands the reply to Markdown, and 32. on a line of its own is an ordered list with one empty item. renderer.list (internal/tui2/prose/render.go, the list method) pushes the marker column, renders the empty item, and pops it with len(r.out) > before false, so the marker is discarded too. The reply renders to zero rows and the deck skips it.

Replication a stranger can run

Unit level, no model:

// internal/tui2/prose/bare_number_test.go
func TestABareNumberedReplyStillDraws(t *testing.T) {
	for _, in := range []string{"32.", "1024."} {
		if got := strings.TrimSpace(strings.Join(Render(in, Options{Width: 80}), "\n")); got == "" {
			t.Errorf("%q rendered to nothing", in)
		}
	}
}

Fails today on dev (80e985165) and on the shipped d8e9dd6b5: both "32." and "1024." render to "", while "32", "Paris" and "1. one" draw.

Live, any model: bin/codeaf in tmux, type what is 2 to the power 5? reply with only the number followed by a period, nothing else. The model says 32. (check the session's transcript.jsonl); the screen shows the worked chip and no answer.

Acceptance, end to end first

  1. Real binary in tmux, the ask above: the answer row under the chip reads 32. (or the number the model chose).
  2. go test ./internal/tui2/prose -run TestABareNumberedReplyStillDraws passes: a Markdown ordered-list marker with no item body is drawn as the literal text, never as an empty list.
  3. 1. one still draws as a list, and the existing internal/tui2/prose suite stays green.

Found on 2026-09-16 while running the journey suite proposed in #1068 against dev; its first journey (what is 2 to the power 10?) timed out waiting for 1024 on screen.

Langage dominant
Go
Étoiles
115
Forks
14
Merge moyen
9 h 38 min
PR mergées (30 j)
749

Préparer son environnement

Nous n'avons pas encore vérifié les fichiers d'installation de ce projet. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de Agent-Field/CodeAF

Toutes les issues de Agent-Field/CodeAF

Issues similaires

Plus d'issues Go

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.