MainActor is an isolation choice, not a universal concurrency repair. Inspect ownership and work placement before applying an annotation.

State owner → Mutation sites → Isolation decision → Compiler check
  1. 1State owner
  2. 2Mutation sites
  3. 3Isolation decision
  4. 4Compiler check

Work through the example

Prompt: Identify who owns this UI-observed state and where it is mutated. Explain the actor boundary before changing annotations.

One practical example

Use the prompt above on one small, named part of your app. Before accepting an edit, ask the agent to point to the source or configuration that supports its answer. If it cannot locate that context, resolve the missing input before expanding the task.

In the diagram, each arrow represents a handoff you can inspect. Keep the intermediate result rather than jumping directly to the final claim. For example, a reported finding should retain its location, and an executed check should retain its outcome. This gives the next attempt a concrete starting point and makes a misleading completion message easier to challenge.

Apply it to your project

Prompt: Identify who owns this UI-observed state and where it is mutated. Explain the actor boundary before changing annotations. Then compare the resulting diff with the original request. If it changed a neighboring concern, ask why that change was necessary. Save the result only after the relevant check has run, and record any part that remains unverified.

Evidence and limits

No evidence supports the original claim that one prompt fixes half of all concurrency errors.

This is an educational guide. Its presence in the series does not certify a completed client-specific lab. The series evidence record separates executed checks from exercises and blocked environments.

Inspect the source used in this lesson.

What to do next

Next: "Show me the screenshot" as a standing instruction