fix(mcp): resolve story/task/product by code or id in agent tools #22
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/mcp-resolve-code-or-id"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Probleem
~30
mcp__scrum4me__*fouten waren"Story/Task/Product X not found or not accessible". De agent gaf human codes (ST-1427,T-1219), een product-naam (scrum4me), of een verkeerd-entity/stale id — maar de tools resolveden alleen op CUIDid(access.ts→findUnique({where:{id}})), dus codes faalden altijd. De foutmelding was niet-corrigerend, waardoor de agent bleef retryen.Fix
Nieuwe
src/lib/resolve-entity.tsmetresolveStoryRef/resolveTaskRef/resolveProductRef:id, dancode— gescoped op de toegankelijke producten van de user (codes zijn@@unique([product_id, code]));"'T-1219' is a task code, not a story…"(en vice versa);6 tools omgebouwd om de resolver te gebruiken en de resolved id overal te gebruiken:
log_implementation,log_commit,log_test_result(story),verify_task_against_plan,update_task_status(task),get_claude_context(product). Toegangscontrole blijft identiek (zelfdeOR:[user, members]-scope).Test
__tests__/lib/resolve-entity.test.ts: 9 tests (id-hit, code-hit, ambigu, cross-entity hint, not-found; story + task + product).tsc --noEmitclean.