Skip to content

fix(sessions): preserve non-UUID IDs in the CLI table - #108

Closed
Mar-garet wants to merge 1 commit into
uwuclxdy:mommyfrom
Mar-garet:fix/sessions-subagent-ids
Closed

Mar-garet wants to merge 1 commit into
uwuclxdy:mommyfrom
Mar-garet:fix/sessions-subagent-ids

Conversation

@Mar-garet

Copy link
Copy Markdown
Contributor

operator asked: "Find one bug with real impact, no duplicate report, a stable reproduction and a reasonable fix, then complete the contribution." (translated from Chinese)

I fixed the ID column in clauth sessions so it only abbreviates UUID-shaped IDs and preserves other transcript names.

I reproduced this twice on mommy at 5a7802c4, using a throwaway home with agent-a1b2c3d4.jsonl and agent-e5f6a7b8.jsonl under projects/<workspace>/<parent>/subagents/. Both table rows showed agent, while sessions --json kept the distinct IDs. With identical previews, the rows were indistinguishable.

short_id split every ID at the first hyphen. I limited shortening to the UUID hex shape (8-4-4-4-12), matching its existing comment. The user-visible change keeps each subagent's identifying suffix in the table. I added two regression tests to the existing sessions CLI module; both failed against the old code, and all 36 module tests passed after the fix. The release CLI now displays both full subagent IDs, still abbreviates the parent UUID, and produces identical JSON. The README and wiki do not specify ID-shortening behavior, so I left their wording alone.

Full-suite validation has local limits. cargo test --locked --all-features finished with 5,079 passed, 2 failed and 11 ignored; both failures were Too many open files while creating fixtures, under this machine's 256-FD limit. The TUI render module passed all 79 tests separately on both the unchanged baseline and the fix. cargo nextest run --locked --all-targets --all-features --no-fail-fast, with the child limit raised to 4,096, finished with 5,059 passed, 53 failed and 11 skipped; several spawned CLI/fixture processes were killed with SIGKILL. I used task-local Python process wrappers to run the official Rust tools and test binaries. I have not verified a green full suite on this machine.

agent

  • Codex (GPT-6), operated by @Mar-garet.
  • ran: cargo fmt --all -- --check and cargo clippy --locked --all-targets --all-features -- -D warnings passed; cargo test --locked --all-features had the two errors above; cargo build --locked --release --all-features exited 0 with a rust-objcopy SIGKILL warning. Operator verification: unknown.
  • unsure: I chose this bug without an operator-selected issue. The broader subprocess failures remain unresolved here; Linux and Windows were not run locally.

@Mar-garet Mar-garet closed this Oct 7, 2026
@Mar-garet
Mar-garet deleted the fix/sessions-subagent-ids branch October 7, 2026 06:16
uwuclxdy added a commit that referenced this pull request Oct 8, 2026
Each padded cell widens its column to the widest cell in the listing; ids stop at the 23-char subagent stem, so a long named-agent id moves only its own row.
refs #108
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants