phodal / shire

Shire - AI Coding Agent Language (编程智能体语言), which can enables communication between an LLM and control IDE for automated programming.
https://shire.phodal.com/
Mozilla Public License 2.0
133 stars 17 forks source link

Light files should have PSI only in one project #108

Closed kenneth-bro closed 2 weeks ago

kenneth-bro commented 2 weeks ago

Describe the bug image

java.lang.Throwable: Light files should have PSI only in one project, existing=com.intellij.psi.SingleRootFileViewProvider{vFile=LightVirtualFile: /TestController.java, content=com.intellij.psi.AbstractFileViewProvider$PsiFileContent@47f97906, eventSystemEnabled=false} in Project(name=2-invest-SpringBoot-SDK, containerState=COMPONENT_CREATED, componentStore=/Users/kenneth/My/Codes/Investoday/2-invest-SpringBoot-SDK), requested in Project(name=2-invest-SpringBoot-temp, containerState=COMPONENT_CREATED, componentStore=/Users/kenneth/My/Codes/Investoday/2-invest-SpringBoot-temp); psiFiles: class com.intellij.psi.impl.source.PsiJavaFileImpl [Language: JAVA] at com.intellij.openapi.diagnostic.Logger.error(Logger.java:376) at com.intellij.psi.impl.file.impl.FileManagerImpl.checkLightFileHasNoOtherPsi(FileManagerImpl.java:229) at com.intellij.psi.impl.file.impl.FileManagerImpl.findViewProvider(FileManagerImpl.java:217) at com.intellij.psi.impl.file.impl.FileManagerImpl.findFile(FileManagerImpl.java:381) at com.intellij.psi.impl.PsiManagerImpl.findFile(PsiManagerImpl.java:163) at com.phodal.shirelang.actions.ShireFileListener$onUpdated$1.invoke(ShireFileChangesProvider.kt:121) at com.phodal.shirelang.actions.ShireFileListener$onUpdated$1.invoke(ShireFileChangesProvider.kt:120) at com.phodal.shirelang.actions.ShireFileModifier.startup$lambda$3$lambda$1(ShireFileModifier.kt:76) at com.intellij.util.messages.impl.MessageBusImplKt.invokeMethod(MessageBusImpl.kt:722) at com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:682) at com.intellij.util.messages.impl.MessageBusImplKt.deliverMessage(MessageBusImpl.kt:445) at com.intellij.util.messages.impl.MessageBusImplKt.pumpWaiting(MessageBusImpl.kt:424) at com.intellij.util.messages.impl.MessageBusImplKt.access$pumpWaiting(MessageBusImpl.kt:1) at com.intellij.util.messages.impl.MessagePublisher.invoke(MessageBusImpl.kt:483) at jdk.proxy34/jdk.proxy34.$Proxy319.onUpdated(Unknown Source) at com.phodal.shirelang.actions.ShireFileListener.onUpdated(ShireFileChangesProvider.kt:120) at com.phodal.shirelang.actions.ShireFileModifcationListener.onUpdated(ShireFileChangesProvider.kt:60) at com.phodal.shirelang.actions.ShireFileModifcationListener.documentChanged(ShireFileChangesProvider.kt:64) at com.intellij.openapi.editor.impl.event.EditorEventMulticasterImpl$1.lambda$documentChanged$1(EditorEventMulticasterImpl.java:47) at com.intellij.openapi.extensions.ExtensionPointName.forEachExtensionSafe(ExtensionPointName.kt:61) at com.intellij.openapi.editor.impl.event.EditorEventMulticasterImpl$1.documentChanged(EditorEventMulticasterImpl.java:47) at com.intellij.openapi.editor.impl.DocumentImpl.lambda$changedUpdate$1(DocumentImpl.java:924) at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeNonCancelableSection$3(CoreProgressManager.java:269) at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:684) at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$computeInNonCancelableSection$4(CoreProgressManager.java:277) at com.intellij.openapi.progress.Cancellation.computeInNonCancelableSection(Cancellation.java:58) at com.intellij.openapi.progress.impl.CoreProgressManager.computeInNonCancelableSection(CoreProgressManager.java:277) at com.intellij.openapi.progress.impl.CoreProgressManager.executeNonCancelableSection(CoreProgressManager.java:268) at com.intellij.openapi.editor.impl.DocumentImpl.changedUpdate(DocumentImpl.java:921) at com.intellij.openapi.editor.impl.DocumentImpl.updateText(DocumentImpl.java:825) at com.intellij.openapi.editor.impl.DocumentImpl.replaceString(DocumentImpl.java:665) at com.intellij.openapi.editor.impl.DocumentImpl.replaceString(DocumentImpl.java:598) at com.intellij.psi.impl.PsiToDocumentSynchronizer.doCommitTransaction(PsiToDocumentSynchronizer.java:212) at com.intellij.psi.impl.PsiToDocumentSynchronizer.lambda$commitTransaction$1(PsiToDocumentSynchronizer.java:188) at com.intellij.psi.impl.PsiToDocumentSynchronizer.lambda$doSync$0(PsiToDocumentSynchronizer.java:106) at com.intellij.psi.impl.PsiToDocumentSynchronizer.performAtomically(PsiToDocumentSynchronizer.java:124) at com.intellij.psi.impl.PsiToDocumentSynchronizer.doSync(PsiToDocumentSynchronizer.java:106) at com.intellij.psi.impl.PsiToDocumentSynchronizer.commitTransaction(PsiToDocumentSynchronizer.java:188) at com.intellij.pom.core.impl.PomModelImpl.commitTransaction(PomModelImpl.java:195) at com.intellij.pom.core.impl.PomModelImpl.lambda$runTransaction$1(PomModelImpl.java:151) at com.intellij.psi.impl.DebugUtil.performPsiModification(DebugUtil.java:535) at com.intellij.pom.core.impl.PomModelImpl.lambda$runTransaction$2(PomModelImpl.java:103) at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeNonCancelableSection$3(CoreProgressManager.java:269) at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:735) at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:691) at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$computeInNonCancelableSection$4(CoreProgressManager.java:277) at com.intellij.openapi.progress.Cancellation.computeInNonCancelableSection(Cancellation.java:62) at com.intellij.openapi.progress.impl.CoreProgressManager.computeInNonCancelableSection(CoreProgressManager.java:277) at com.intellij.openapi.progress.impl.CoreProgressManager.executeNonCancelableSection(CoreProgressManager.java:268) at com.intellij.pom.core.impl.PomModelImpl.runTransaction(PomModelImpl.java:92) at com.intellij.pom.core.impl.PomModelImpl.lambda$reparseFile$3(PomModelImpl.java:240) at com.intellij.codeInsight.completion.OffsetsInFile.replaceInCopy$lambda$2(OffsetsInFile.kt:54) at com.intellij.codeInsight.completion.CompletionInitializationUtil.lambda$doInsertDummyIdentifier$6(CompletionInitializationUtil.java:148) at com.intellij.codeInsight.completion.CompletionInitializationUtil.lambda$skipWriteLockIfNeeded$7(CompletionInitializationUtil.java:161) at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteAction(AnyThreadWriteThreadingSupport.kt:328) at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteAction(AnyThreadWriteThreadingSupport.kt:322) at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:900) at com.intellij.openapi.application.WriteAction.compute(WriteAction.java:95) at com.intellij.codeInsight.completion.CompletionInitializationUtil.lambda$skipWriteLockIfNeeded$8(CompletionInitializationUtil.java:161) at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.lambda$scheduleContributorsAfterAsyncCommit$6(CodeCompletionHandlerBase.java:319) at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$safeTransferToEdt$7(NonBlockingReadActionImpl.java:717) at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:229) at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:22) at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:191) at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runIntendedWriteActionOnCurrentThread$lambda$1(AnyThreadWriteThreadingSupport.kt:184) at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:84) at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runIntendedWriteActionOnCurrentThread(AnyThreadWriteThreadingSupport.kt:183) at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:836) at com.intellij.openapi.application.impl.ApplicationImpl$2.run(ApplicationImpl.java:424) at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWithImplicitRead(AnyThreadWriteThreadingSupport.kt:122) at com.intellij.openapi.application.impl.ApplicationImpl.runWithImplicitRead(ApplicationImpl.java:1162) at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:78) at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:119) at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:41) at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:781) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:728) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722) at java.base/java.security.AccessController.doPrivileged(AccessController.java:400) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:750) at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:696) at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$16(IdeEventQueue.kt:590) at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWithoutImplicitRead(AnyThreadWriteThreadingSupport.kt:117) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:590) at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:73) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1$1.compute(IdeEventQueue.kt:357) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1$1.compute(IdeEventQueue.kt:356) at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:843) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.invoke(IdeEventQueue.kt:356) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.invoke(IdeEventQueue.kt:351) at com.intellij.ide.IdeEventQueueKt$performActivity$runnableWithWIL$1.invoke$lambda$0(IdeEventQueue.kt:1035) at com.intellij.openapi.application.WriteIntentReadAction.lambda$run$0(WriteIntentReadAction.java:24) at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:84) at com.intellij.openapi.application.impl.ApplicationImpl.runWriteIntentReadAction(ApplicationImpl.java:910) at com.intellij.openapi.application.WriteIntentReadAction.compute(WriteIntentReadAction.java:55) at com.intellij.openapi.application.WriteIntentReadAction.run(WriteIntentReadAction.java:23) at com.intellij.ide.IdeEventQueueKt$performActivity$runnableWithWIL$1.invoke(IdeEventQueue.kt:1035) at com.intellij.ide.IdeEventQueueKt$performActivity$runnableWithWIL$1.invoke(IdeEventQueue.kt:1035) at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:1036) at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:106) at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1036) at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$10(IdeEventQueue.kt:351) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:397) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)

To Reproduce Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior A clear and concise description of what you expected to happen.

Screenshots If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

Additional context Add any other context about the problem here.

phodal commented 2 weeks ago

already fix, will publish new version soon