Skip to content

fix(fork): print confirmation with forked session name (#576)#600

Closed
merchloubna70-dot wants to merge 1 commit into
Hmbown:mainfrom
merchloubna70-dot:fix/fork-ux-576
Closed

fix(fork): print confirmation with forked session name (#576)#600
merchloubna70-dot wants to merge 1 commit into
Hmbown:mainfrom
merchloubna70-dot:fix/fork-ux-576

Conversation

@merchloubna70-dot

Copy link
Copy Markdown

Closes #576.

Root cause: After forking a session, the TUI gave no visual feedback about what was created, leaving users unsure if the fork succeeded.

Fix: Print a brief confirmation line after successful fork showing the new session name, so users know it worked and can deepseek resume <name> immediately.

Implemented using deepseek exec --model deepseek-v4-flash. 🐋

After a successful fork, print a brief confirmation line showing the
new session name so the user knows what was created and can resume it.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds a notification message when forking a session in the TUI, displaying the source title and truncated IDs for both the source and the new session. A review comment suggests optimizing the truncate_id helper function by returning a string slice to avoid unnecessary allocations and using a safer slicing method.

Comment thread crates/tui/src/main.rs
Comment on lines +2482 to +2485
fn truncate_id(id: &str) -> String {
let limit = id.len().min(8);
format!("{}", &id[..limit])
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The truncate_id function can be simplified to avoid unnecessary allocations and the use of format!. Returning a &str instead of a String is more efficient since the result is only used for printing. Additionally, using get(..8) is a safer way to handle potential slicing issues.

fn truncate_id(id: &str) -> &str {
    id.get(..8).unwrap_or(id)
}

kibuniverse pushed a commit to kibuniverse/DeepSeek-TUI that referenced this pull request May 5, 2026
…wn#600)

Implemented using `deepseek exec --model deepseek-v4-flash`. 🐋
MMMarcinho pushed a commit to MMMarcinho/DeepSeek-TUI that referenced this pull request May 6, 2026
…wn#600)

Implemented using `deepseek exec --model deepseek-v4-flash`. 🐋
@Hmbown Hmbown closed this May 6, 2026
@Hmbown Hmbown reopened this May 6, 2026
Hmbown added a commit that referenced this pull request May 7, 2026
After `deepseek fork` saves the forked session, surface the source
session title and the truncated source/new session ids so the user
sees what was created before the TUI takes over the screen.

Implementation differs slightly from the original PR:
- Reuse the existing `session_manager::truncate_id` helper instead of
  defining a second copy in `main.rs`.
- Guard against an empty saved-title string so the line stays
  readable for unnamed sessions.

This is a UX-only addition that does not address the broader
`/fork` request from #576; that one is asking for an in-TUI fork
picker, which is out of scope for v0.8.15.

Integrates #600.

Co-authored-by: macworkers <Mann_Juarezxgs@cash4u.com>
@Hmbown

Hmbown commented May 7, 2026

Copy link
Copy Markdown
Owner

Integrated as #919 and merged into main. Thanks!

The fork confirmation slice landed as feat(fork): print confirmation with new session id. Two small differences from the original diff:

  • Reuses the existing crate::session_manager::truncate_id helper instead of defining a second truncate_id in main.rs. Same 8-char output, no duplicate definition.
  • Guards against an empty saved-session title so the line stays readable for unnamed sessions.

This does not address the broader /fork-picker request from #576 ("interactive in-TUI fork picker") — that's a larger UX surface that we'll likely tackle as a separate /fork modal post-v0.8.15.

Closing as integrated.

@Hmbown Hmbown closed this May 7, 2026
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.

Feature Request: Improve Fork UX

2 participants