Start with a small behavior you can prove stayed the same. A changed TargetFramework is only one part of a migration.
Inventory what the project file can tell you
The migration planner extracts the declared SDK, target frameworks, assembly references, and package references from one .csproj. It does not read your repository, resolve imported properties, or certify package compatibility.
Use the generated inventory to ask better questions. Where are package versions defined? Which projects share a library? What runs only on Windows? Which dependencies are maintained? Verify direct and transitive dependencies against the target before asking an agent to edit them.
Choose a boundary with observable behavior
For a large ASP.NET Framework application, an incremental approach can let an ASP.NET Core front door route requests to the existing application while selected functionality moves over. Routing alone does not solve authentication, session state, or System.Web dependencies.
Pick one endpoint with a clear contract and a manageable dependency chain. Record its status codes, headers, authorization behavior, serialization, and side effects. Use that record as the acceptance criteria for the agent's task.
Write a bounded implementation brief
Give the agent the endpoint, its callers, relevant configuration, and tests. Supplying only the controller encourages it to guess about behavior implemented elsewhere.
Migrate this one endpoint to the agreed target runtime. Preserve request and response contracts and authorization. Before editing: - Identify framework-specific dependencies. - List assumptions and unresolved compatibility questions. - Propose the smallest set of changes. Done means: - Contract and integration tests pass. - Existing traffic still has a rollback route. - No unrelated formatting or architecture changes.
Review the migration as a behavior change
Review redirects, cookie settings, exception handling, and asynchronous behavior even when the code looks equivalent. Run old and new paths against representative cases. A passing compilation is useful evidence, but it cannot establish that users experience the same application.