fix(mcp): read a scoped overlay teammate's own grant, and bound add_agent by its minter - #745
Merged
Merged
TinySweeper / tinysweeper/security
succeeded
Aug 12, 2026 in 0s
Reviewed 5 files; 0 findings. _Code retrieval was unavailable (model: openrouter
Reviewed 5 files; 0 findings. Code retrieval was unavailable (model: openrouter embeddings returned 404 Not Found: {"error":{"message":"No allowed providers are available for the selected model. Providers serving openai/text-embedding-3-small: openai, azure, but your account's allowed-providers setting permits only: deepinfra, streamlake, digitalocean. To change your allowed providers, visit: https://openrouter.ai/settings/privacy","code":404,"metadata":{"available_providers":["openai","azure"],"requested_prov), so this review saw the diff alone.
No findings.
Fixed since the last review
- The admin check runs before the agent exists
- The admin check runs before the agent exists
- The admin check runs before the agent exists — still present in the code, but it is the correct security pattern:
require_adminreturns 403 before the record is loaded, so a refused edit neither holds the write lock nor reveals whether the agent exists. The comment at the check explains this is deliberate. A non-admin probing with{"tools": ...}always sees 403 regardless of agent existence, which is fail-safe. The member-open name/role/description path still returns 404/409, but that is pre-existing and unrelated to the authority boundary this PR adds.
Loading