Skip to content

fix(session): route attach socket through symlink - #1477

Merged
kurtisc merged 1 commit into
mainfrom
kurtisc/deep-path
Jul 22, 2026
Merged

fix(session): route attach socket through symlink#1477
kurtisc merged 1 commit into
mainfrom
kurtisc/deep-path

Conversation

@kurtisc

@kurtisc kurtisc commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Linked Issue

Closes #1465

Summary

Routes attach sockets through a symlink to avoid paths which are too long (i.e. >SUN_LEN)

Test Plan

export XDG_STATE_HOME="$HOME/$(printf '-%.0s' {1..80})"
mkdir -p "XDG_STATE_HOME"
nono run --detached -- yes

Checklist

  • An issue exists and is linked above
  • All commits are signed-off, using DCO
  • All new code follows the project's coding standards (CLAUDE.md) and is covered by tests
  • Public-facing changes are paired with documentation updates
  • Release note has been added to CHANGELOG.md if needed

@github-actions github-actions Bot added bug Something isn't working nono-cli size/large labels Jul 21, 2026
@github-actions

Copy link
Copy Markdown
Contributor

PR Review Summary

Size

Metric Value
Lines added +308
Lines removed -8
Total changed 316
Classification Large (> 300 lines)

Affected crates

  • crates/nono-cli — CLI changes. Verify argument parsing, flag documentation, and UX behaviour across supported platforms.

Blast radius — Contained

This PR touches: source code


Updated automatically on each push to this PR.

Addresses the socket through a short per-user directory symlink
(<XDG_RUNTIME_DIR|/tmp>/nono-<uid>-<hash>) so the sun_path stays in
bounds, while the socket inode still lives at the canonical path.

Adds tests covering the over-limit bind/connect round-trip and the link
creation, reuse, stale-replacement, and refusal paths.

Signed-off-by: Kurtis Charnock <kurtis@nono.ai>
@kurtisc
kurtisc force-pushed the kurtisc/deep-path branch from ea54068 to 701dcde Compare July 22, 2026 12:16
@kurtisc
kurtisc marked this pull request as ready for review July 22, 2026 12:16
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Caution

The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased.

@connrg connrg 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.

lgtm

@nogent-nolabs-ai nogent-nolabs-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

nogent code review

No blocking issues; 0 findings.

Findings: none flagged in scope.

Automated code + security review. CI already covers clippy, rustfmt, tests, cargo-audit and commit-lint.

@kurtisc
kurtisc merged commit 9283495 into main Jul 22, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working nono-cli size/large

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Detached sessions fail when $XDG_STATE_HOME is too long

2 participants