Skip to content

fix(chat): resolve local home paths before history reload - #379

Merged
atishpatel merged 1 commit into
mainfrom
atish/resolve-reload-tilde
Oct 7, 2026
Merged

atishpatel merged 1 commit into
mainfrom
atish/resolve-reload-tilde

Conversation

@atishpatel

Copy link
Copy Markdown
Contributor

Summary

An attached local workspace such as ~/goose artifacts can override the saved absolute directory after compaction. The agent backend rejects the literal ~, so Berd keeps the old transcript and warns that refreshed history was not received.

Resolve the local home prefix before any history load. Preserve the rest of the path, including filename spaces, and leave remote paths unchanged. Home resolution uses the existing timeout and connection guards; history replay remains unbounded.

Add regression coverage for the attached artifacts workspace, local path sources, Windows home prefixes, remote backend ownership, resolution failures, timeouts, and detached connections. Session creation and forks are unchanged.

Affected laws: LAWS/CHAT.md and LAWS/AGENTS.md. The fix preserves serialized session operations and provider/model requirements; no law changes are needed.

Related issue

Follow-up to #376, which recovers missing or blank directories but leaves explicit home-relative paths unchanged.

Testing

No manual testing. No visible UI changes.

Generated with Goose

@atishpatel
atishpatel marked this pull request as ready for review October 7, 2026 23:02
@atishpatel
atishpatel requested a review from a team October 7, 2026 23:02
@atishpatel
atishpatel enabled auto-merge (squash) October 7, 2026 23:02

@morgmart morgmart left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

🤖 Automated code review

APPROVE. The exact three-dot comparison safely resolves home-relative working directories only for local session history loads, preserves remote-backend path ownership, and includes discriminating coverage for local path sources, timeout, detachment, failure, and compaction replay. No publishable findings or escalations remain. The supplied GitHub evidence reports all 11 check runs completed successfully at the reviewed head SHA; required checks still independently govern merge readiness.

Deterministic publication result: 0 blocking and 0 non-blocking inline finding(s) publishable; 0 duplicate(s) suppressed; 0 blocking screenshot-evidence requirement(s) in this review body.

Pending checks: 1 check(s) are not complete.

This approval reflects the completed code review only; merge readiness remains governed by the repository's required checks.

@atishpatel
atishpatel merged commit 5bcf29b into main Oct 7, 2026
11 checks passed
@atishpatel
atishpatel deleted the atish/resolve-reload-tilde branch October 7, 2026 23:15
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