feat: persist workspace port assignments across restarts (Refs: beans-ocss)#171
Merged
feat: persist workspace port assignments across restarts (Refs: beans-ocss)#171
Conversation
…-ocss) - Add AllocateSpecific to portalloc for restoring specific ports - Add Port field to worktreeMeta with SavePort/GetPort on Manager - Restore persisted ports on startup, fall back to fresh allocation - Persist port in CreateWorktree resolver - Document worktree metadata pattern in CLAUDE.md
- Remove redundant nil check on WorktreeMgr in CreateWorktree resolver - Use allocateNext helper in Allocate to avoid logic duplication - Always persist actual port on startup (handles conflict fallback) - Remove extra blank line in worktree.go
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
beans serverestarts by persisting the allocated port in each worktree's existing<id>.meta.jsonmetadata fileAllocateSpecifictoportalloc.Allocatorfor restoring a specific port (with conflict fallback)Test plan
AllocateSpecific: happy path, idempotency, conflict handling, nextIndex advancementbeans serve, verify ports are preserved