π‘ [Feature]: Add LLM Tool which will generate and SPFx Upgrade report and use GitHub Agent to execute it
π― Aim of the feature
Currently, we have an upgrade action that allows you to generate a md report (or a code tour report as well) with the changes you need to do manually to update your current SPFx project to the latest version.
The idea is to now add this as a LLM Tool and instruct GitHub Copilot Agent to use this context to execute those steps, either manual code changes or terminal commands) to perform the upgrade for us.
We could check if maybe we will get better results with json output mode instead of md which is also possible for this command.
π· Images (if possible) with expected result
No response
π€ Additional remarks or comments
When this will turn out possible to develop we should already do the same for validate action if it is quite easy and if not create a follow up issue for this action as well
great idea, let's give it a go..
I just checked a few complex upgrades and most steps seems possible to automate - executing commands is simple, editing files could be tricky but should be possible. It would be a time consuming process, especially npm dedupe and we will have to run it blindly because not sure if we can check the below conditional logic:
I am a bit worried on the time this process could take. would the agent be able to handle it without timing out? And, how will new users react to a long silent wait for the upgrade process?
let's start implementing and see how it goes :)
@Saurabh7019 from my experience GH agent may work (think) several minutes and then go to an conclusion to even restart everything from scratch.
It may handle complex condition operations, also based on errors that happened in terminal that was created by GH copilot.
Most of the commands may be run in just 2 or 3 lines, usually it is npm install.... then npm uninstall.... then npm dedupe and wait
we could instruct the GH agent to start with manual steps first on files and then do the once in terminal π€.
I think the input would be the summary of the SPFx upgrade command.
Thanks for your input π