fix: goose recipe list can return duplicated entries#5645
Merged
DOsinga merged 1 commit intoblock:mainfrom Nov 10, 2025
Merged
Conversation
Signed-off-by: Abhijay007 <Abhijay007j@gmail.com>
DOsinga
approved these changes
Nov 10, 2025
Collaborator
DOsinga
left a comment
There was a problem hiding this comment.
I suppose this can still create dupes through github, but hey, this is a great improvement
Collaborator
Author
okay I will look into this, thanks for the feedback :) |
Collaborator
|
nah, don't worry about it. that's just nitpicking |
Rodriguespn
pushed a commit
to Rodriguespn/goose
that referenced
this pull request
Nov 10, 2025
Signed-off-by: Abhijay007 <Abhijay007j@gmail.com> Signed-off-by: Pedro Rodrigues <pedro.rodrigues@supabase.io>
tiensi
added a commit
to tiensi/goose
that referenced
this pull request
Nov 11, 2025
* main: (83 commits) silence copilot on minor text issues (block#5665) fix: disallow runaway subagent chains (block#5659) chore: remove usage of non-existent env var for log dir (block#5658) clarify agent instructions (block#5655) feat: add check-everything for unified style checks (block#5650) Show errors on failure (block#5643) custom instructions for copilot reviews (block#5646) fix: prevent repeated 404 errors when accessing deleted sessions (block#5644) Flake.nix corrected main (block#5600) fix: goose recipe list can return duplicated entries (block#5645) fix: bedrock creds refresh (block#5599) Fix Claude Code provider to default to Auto mode (block#5638) (block#5642) Scheduler cleanup (block#5571) Better search paths and handling of CLI providers (block#5554) docs: description required for "Add Extension" in cli - phase 2 (block#5635) Remove some logging (block#5631) Use session IDs as task IDs for subagents instead of UUIDs (block#5398) Fix the naming (block#5628) fix: default tetrate model is broken, replace with haiku-4.5 (block#5535) (block#5587) Fetch less and use the right SHA (block#5621) ...
michaelneale
added a commit
that referenced
this pull request
Nov 11, 2025
* main: silence copilot on minor text issues (#5665) fix: disallow runaway subagent chains (#5659) chore: remove usage of non-existent env var for log dir (#5658) clarify agent instructions (#5655) feat: add check-everything for unified style checks (#5650) Show errors on failure (#5643) custom instructions for copilot reviews (#5646) fix: prevent repeated 404 errors when accessing deleted sessions (#5644) Flake.nix corrected main (#5600) fix: goose recipe list can return duplicated entries (#5645) fix: bedrock creds refresh (#5599)
Surendhar-N-D
pushed a commit
to Surendhar-N-D/goose
that referenced
this pull request
Nov 17, 2025
Signed-off-by: Abhijay007 <Abhijay007j@gmail.com>
arul-cc
pushed a commit
to arul-cc/goose
that referenced
this pull request
Nov 17, 2025
Signed-off-by: Abhijay007 <Abhijay007j@gmail.com>
BlairAllan
pushed a commit
to BlairAllan/goose
that referenced
this pull request
Nov 29, 2025
Signed-off-by: Abhijay007 <Abhijay007j@gmail.com> Signed-off-by: Blair Allan <Blairallan@icloud.com>
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.
Closes: #5293
Pull Request Description
This PR addresses an issue where running goose recipe list resulted in duplicate recipe entries when the
GOOSE_RECIPE_PATHenvironment variable was set to the same directory as the default global recipe directory (~/.config/goose/recipes).The root cause was that the duplication occurred because the
local_recipe_dirs()function aggregates recipe directories from multiple sources: the current working directory, directories specified viaGOOSE_RECIPE_PATH, the global recipe directory, and local project-specific recipe directories. WhenGOOSE_RECIPE_PATHpointed to the default global recipe directory, the same path was included more than once. Since these paths were not normalized before being processed, the application scanned the same directory multiple times, resulting in duplicate entries when listing recipes.Changes Made
To resolve this issue, deduplication logic was added to the local_recipe_dirs() function. The solution works as follows:
This ensures that each recipe directory is processed exactly once.
NOTE: this could be solved with HashSet too, but I saw that sort and dedup is used in
lead_worked.rsso I used a similar approachType of Change
AI Assistance
Testing
Tested with the same command shared in the issue