aaif-goose / aaif-goose/goose

bug(summon): unmatched extension filters silently spawn tool-less workers

Abierto
#11,803 0 comentarios 0 reacciones 1 asignado Reclamado por @jamadeo Ver en GitHub
Lenguaje dominante
Rust
Estrellas
54.2k
Forks
6.2k
Merge medio
3 d 4 h
PR fusionados (30 d)
240

Descripción

## Summary

An explicit delegate extensions filter compares strings only against ExtensionConfig.name and merely logs unmatched names. A config key such as exasearch therefore creates a child with zero tools when the extension name is Exa Search.

## Reproduction

With an enabled entry keyed exasearch and named Exa Search, extensions set to exasearch starts a child with zero tools while Exa Search exposes the tool. Platform names add another shape: developer works while Developer does not.

## Source evidence

build_task_config in crates/goose/src/agents/platform_extensions/summon.rs retains entries with filter.contains(ext.name()). Unmatched names produce only an internal warning. ExtensionConfig.key and name_to_key already define a normalized key shape.

## Expected

Accept normalized keys and names consistently. Any unmatched explicit extension should fail before provider or session work begins and list available names. An empty list should still mean no extensions.

## Verification

- display name and normalized key select the same extension
- unknown names return a visible error and spawn no child
- mixed valid and invalid filters fail
- empty disables all and omitted inherits

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

The issue is in crates/goose/src/agents/platform_extensions/summon.rs, specifically the build_task_config function. Start by examining ExtensionConfig.key and name_to_key to understand the normalized key shape. Then, modify the filter matching logic to compare against both name and normalized key, and ensure unmatched names produce a visible error before spawning a child. Run existing tests to verify the changes.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
rust
Área
cli, tooling
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Activo
Claridad
Bien especificado
Aptitud para principiantes
65/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.