Copilot is great at autocompleting a for loop. It's terrible at understanding why your payment service has three different provider selection strategies depending on the customer's region, account age, and subscription tier.
This isn't a Copilot problem. It's a context problem. And it affects every AI coding tool — Cursor, Cline, Claude Code — the same way.
Where AI Coding Tools Actually Break Down
1. Cross-File Changes
Copilot sees the file you're in. Maybe a few neighbors if you're using Cursor with codebase indexing. But a typical feature ticket touches 5-15 files across 3-4 directories. The AI can't see the full picture.
Try this experiment: give Copilot a ticket that requires changes to an API endpoint, a database migration, a service layer function, a React component, and a test file. It'll give you reasonable suggestions for each file in isolation. But the suggestions won't be coordinated — the API response shape won't match the component's expectations, the migration won't match the service's queries.