Skip to content

Diagnose: Monthly cost cursor stays mid-text after a refused value #231

Closed

Description

@a1exk-dev

Question

Why does the Monthly cost field keep the cursor mid-text after a refused -5, so clearing it and typing 250 saves 2500?

Reproduce it live on 2.1.292 under the map's Notes, at release/0.5.0 and at v0.4.0, and find the root cause.

Resolve with one of:

  • ctui bug: a new ready-for-agent fix ticket (child of the map, label ready-for-agent) in the shape of "Sidebar glass draws light grey under tmux without truecolor": what happens, why, the ask, the test seam, and a bugfix/<name> branch cut from release/0.5.0 with its pull request into it.
  • Engine limit ctui can't work around: a new wayfinder:grilling child ticket putting defer-to-0.6.0 vs drop to the human, with the evidence.

If the engine moved since a MEMORY.md entry was checked, say which entry is stale.

Activity

  1. self-assigned this
    on Oct 9, 2026
  2. a1exk-dev commented on Oct 9, 2026

    @a1exk-dev
    OwnerAuthor

    Resolution: ctui bug since v0.4.0. Fix in Monthly cost keeps the refused text's cursor offset.

    Live on 2.1.292 under tmux, the tmux hardware cursor shows the field's edit point. Walking into the field gives 100|. After a refused -5 the new field shows 10|0, offset 2, the length of the refused text. Three backspaces and 250 give 250|0, and settings.json gets 2500. Same at v0.4.0.

    Cause: after a refusal, ctui bumps menu.entry and focuses the new menu-monthly-<entry> field. The ring never leaves the field's index, and the engine keeps the old Input's cursor offset for the new one. Input has no cursor prop. Focus walking onto an Input from another row puts the cursor at the end, and a probe that focused Cost and then the new field fixed it (saved 250).

    MEMORY.md: "/ctui is one instant menu…" is incomplete, not stale. Its "…and focus it" needs the move through Cost; the fix ticket carries that edit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions