Found during dogfooding
pool_recall(task_id="cq-gitops-engine-1775407580966305000") returned "task log not found" even though the task was completed.
Root cause
pool_recall is an expert tool registered via RegisterExpertTools. It reads from {expertDir}/logs/{task-id}.json where expertDir is the calling expert's directory — not the target expert's directory.
When the concierge calls pool_recall, it looks in {poolDir}/concierge/logs/ (the concierge's own log dir), not {poolDir}/experts/gitops-engine/logs/ where the actual log lives.
Fix
Either:
- Add a concierge-specific
get_result tool that takes expert + task_id and resolves the correct expert dir
- Or make
pool_recall accept an optional expert param that overrides the default expertDir
Option 1 is cleaner — pool_collect already does this correctly for dispatched tasks.
Found during dogfooding
pool_recall(task_id="cq-gitops-engine-1775407580966305000")returned "task log not found" even though the task was completed.Root cause
pool_recallis an expert tool registered viaRegisterExpertTools. It reads from{expertDir}/logs/{task-id}.jsonwhereexpertDiris the calling expert's directory — not the target expert's directory.When the concierge calls
pool_recall, it looks in{poolDir}/concierge/logs/(the concierge's own log dir), not{poolDir}/experts/gitops-engine/logs/where the actual log lives.Fix
Either:
get_resulttool that takesexpert+task_idand resolves the correct expert dirpool_recallaccept an optionalexpertparam that overrides the default expertDirOption 1 is cleaner —
pool_collectalready does this correctly for dispatched tasks.