aaif-goose / aaif-goose/goose

Define transitive trust for referenced sub-recipes

Open
#11,703 0 comments 0 reactions 1 assignee Assigned to @jbg View on GitHub
Dominant language
Rust
Stars
54.2k
Forks
6.2k
Avg merge
3d 4h
Merged PRs (30d)
240

Description

**What problem would this solve?**

Desktop recipe trust currently identifies the top-level recipe, while referenced sub-recipes are loaded later from their paths. If referenced content changes after the top-level recipe was accepted, the prior decision does not clearly define whether the changed child is still trusted.

**What would a good outcome look like?**

Goose has an explicit transitive trust model for referenced recipes. A user’s acceptance applies to identifiable content, and any relevant child change is detected before delegation without leaving a time-of-check/time-of-use gap.

**Possible approaches**

- Snapshot and hash the complete resolved recipe graph when trust is granted, then revalidate the relevant child at delegation.
- Store recursive content digests and invalidate acceptance when any referenced recipe changes.
- Require an independent trust decision for each referenced recipe when it is first delegated to.

The design should define cycles, missing or remote references, nested recipes, and compatibility with existing accepted-recipe records.

**Additional context**

- [x] I have verified this does not duplicate an existing feature request

Do not begin implementation until the issue reaches **Ready** on the [Goose Issues board](https://github.com/orgs/aaif-goose/projects/1).

Contributor guide

Open the contributing guide

Research direction

The issue concerns the trust model for referenced sub-recipes in the Goose AI agent. Start by examining the code that loads and validates recipes, likely in a module like `recipe_loader` or `trust_manager`. Look for existing trust decisions and how referenced recipes are resolved. Understanding the current graph resolution and delegation logic is key. A successful outcome would be a design document specifying the transitive trust model, handling cycles, missing references, and compatibility with existing records.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
ai-infra-agents, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.