@codeyam/codeyam-cli 0.1.0-staging.596f0eb → 0.1.0-staging.6e699e5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/analyzer-template/.build-info.json +8 -8
- package/analyzer-template/common/execAsync.ts +1 -1
- package/analyzer-template/log.txt +3 -3
- package/analyzer-template/package.json +10 -6
- package/analyzer-template/packages/ai/index.ts +10 -3
- package/analyzer-template/packages/ai/package.json +1 -1
- package/analyzer-template/packages/ai/src/lib/__mocks__/completionCall.ts +122 -0
- package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +128 -6
- package/analyzer-template/packages/ai/src/lib/astScopes/arrayDerivationDetector.ts +199 -0
- package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +138 -1
- package/analyzer-template/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.ts +644 -0
- package/analyzer-template/packages/ai/src/lib/astScopes/methodSemantics.ts +140 -6
- package/analyzer-template/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.ts +18 -0
- package/analyzer-template/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.ts +38 -1
- package/analyzer-template/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.ts +181 -1
- package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +1239 -104
- package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +304 -0
- package/analyzer-template/packages/ai/src/lib/checkAllAttributes.ts +29 -10
- package/analyzer-template/packages/ai/src/lib/completionCall.ts +216 -36
- package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +1501 -138
- package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.ts +2 -1
- package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.ts +976 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.ts +243 -77
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +19 -1
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.ts +103 -6
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +23 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.ts +98 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +42 -2
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.ts +129 -0
- package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +156 -0
- package/analyzer-template/packages/ai/src/lib/deepEqual.ts +30 -0
- package/analyzer-template/packages/ai/src/lib/e2eDataTracking.ts +334 -0
- package/analyzer-template/packages/ai/src/lib/extractCriticalDataKeys.ts +120 -0
- package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarioData.ts +74 -7
- package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarios.ts +89 -112
- package/analyzer-template/packages/ai/src/lib/generateEntityDataStructure.ts +6 -0
- package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +1111 -91
- package/analyzer-template/packages/ai/src/lib/generateEntityScenarios.ts +207 -104
- package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +570 -0
- package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.ts +528 -0
- package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionals.ts +1977 -0
- package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.ts +239 -0
- package/analyzer-template/packages/ai/src/lib/getConditionalUsagesFromCode.ts +143 -31
- package/analyzer-template/packages/ai/src/lib/guessScenarioDataFromDescription.ts +8 -2
- package/analyzer-template/packages/ai/src/lib/isolateScopes.ts +276 -3
- package/analyzer-template/packages/ai/src/lib/mergeStatements.ts +33 -3
- package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +7 -0
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.ts +1 -1
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.ts +32 -102
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChunkPrompt.ts +82 -0
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateCriticalKeysPrompt.ts +103 -0
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +90 -6
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.ts +14 -53
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.ts +58 -0
- package/analyzer-template/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.ts +28 -2
- package/analyzer-template/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.ts +391 -0
- package/analyzer-template/packages/ai/src/lib/resolvePathToControllable.ts +812 -0
- package/analyzer-template/packages/ai/src/lib/splitOutsideParentheses.ts +5 -1
- package/analyzer-template/packages/ai/src/lib/validateExecutionFlowPaths.ts +531 -0
- package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +123 -0
- package/analyzer-template/packages/ai/src/lib/worker/analyzeScopeWorker.ts +8 -1
- package/analyzer-template/packages/analyze/src/lib/FileAnalyzer.ts +14 -0
- package/analyzer-template/packages/analyze/src/lib/analysisContext.ts +44 -4
- package/analyzer-template/packages/analyze/src/lib/asts/nodes/index.ts +1 -0
- package/analyzer-template/packages/analyze/src/lib/asts/nodes/isAsyncFunction.ts +67 -0
- package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +455 -267
- package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +18 -0
- package/analyzer-template/packages/analyze/src/lib/files/analyze/findOrCreateEntity.ts +3 -0
- package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +33 -7
- package/analyzer-template/packages/analyze/src/lib/files/analyzeChange.ts +31 -15
- package/analyzer-template/packages/analyze/src/lib/files/analyzeEntity.ts +11 -7
- package/analyzer-template/packages/analyze/src/lib/files/analyzeInitial.ts +11 -12
- package/analyzer-template/packages/analyze/src/lib/files/enums/steps.ts +1 -1
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts +265 -0
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.ts +102 -0
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +588 -52
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.ts +1 -1
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.ts +28 -62
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +336 -133
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts +156 -0
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarioData.ts +78 -83
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarios.ts +4 -8
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +461 -94
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.ts +56 -11
- package/analyzer-template/packages/aws/codebuild/index.ts +1 -0
- package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts +11 -1
- package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.d.ts.map +1 -1
- package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js +29 -18
- package/analyzer-template/packages/aws/dist/src/lib/codebuild/waitForBuild.js.map +1 -1
- package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts +2 -2
- package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.d.ts.map +1 -1
- package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js +2 -2
- package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsDefineContainer.js.map +1 -1
- package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts +8 -18
- package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.d.ts.map +1 -1
- package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js +17 -61
- package/analyzer-template/packages/aws/dist/src/lib/ecs/ecsTaskFactory.js.map +1 -1
- package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts +15 -0
- package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.d.ts.map +1 -0
- package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js +31 -0
- package/analyzer-template/packages/aws/dist/src/lib/s3/checkS3ObjectExists.js.map +1 -0
- package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.d.ts.map +1 -1
- package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js +8 -1
- package/analyzer-template/packages/aws/dist/src/lib/s3/uploadFileToS3.js.map +1 -1
- package/analyzer-template/packages/aws/package.json +3 -3
- package/analyzer-template/packages/aws/s3/index.ts +1 -0
- package/analyzer-template/packages/aws/src/lib/codebuild/waitForBuild.ts +43 -19
- package/analyzer-template/packages/aws/src/lib/ecs/ecsDefineContainer.ts +3 -3
- package/analyzer-template/packages/aws/src/lib/ecs/ecsTaskFactory.ts +17 -69
- package/analyzer-template/packages/aws/src/lib/s3/checkS3ObjectExists.ts +47 -0
- package/analyzer-template/packages/aws/src/lib/s3/uploadFileToS3.ts +8 -1
- package/analyzer-template/packages/database/src/lib/kysely/db.ts +4 -4
- package/analyzer-template/packages/database/src/lib/kysely/tableRelations.ts +2 -2
- package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +36 -9
- package/analyzer-template/packages/database/src/lib/loadReadyToBeCapturedAnalyses.ts +7 -3
- package/analyzer-template/packages/generate/index.ts +3 -0
- package/analyzer-template/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.ts +17 -1
- package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.ts +193 -0
- package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.ts +73 -0
- package/analyzer-template/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.ts +9 -4
- package/analyzer-template/packages/generate/src/lib/deepMerge.ts +26 -1
- package/analyzer-template/packages/generate/src/lib/scenarioComponentForServer.ts +114 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +2 -2
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +2 -2
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tableRelations.d.ts +2 -2
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts +1 -11
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/analysesTable.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +30 -7
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js +9 -3
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts +1 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/entitiesTable.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts +2 -6
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js +7 -4
- package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -1
- package/analyzer-template/packages/github/dist/generate/index.d.ts +3 -0
- package/analyzer-template/packages/github/dist/generate/index.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/generate/index.js +3 -0
- package/analyzer-template/packages/github/dist/generate/index.js.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +16 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts +9 -0
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts.map +1 -0
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +189 -0
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts +20 -0
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.d.ts.map +1 -0
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +8 -4
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js +27 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/deepMerge.js.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts +8 -0
- package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.d.ts.map +1 -0
- package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js +89 -0
- package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponentForServer.js.map +1 -0
- package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js +10 -0
- package/analyzer-template/packages/github/dist/github/src/lib/loadOrCreateCommit.js.map +1 -1
- package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js +3 -0
- package/analyzer-template/packages/github/dist/github/src/lib/syncPrimaryBranch.js.map +1 -1
- package/analyzer-template/packages/github/dist/types/index.d.ts +2 -2
- package/analyzer-template/packages/github/dist/types/index.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/types/index.js.map +1 -1
- package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts +87 -13
- package/analyzer-template/packages/github/dist/types/src/types/Analysis.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts +2 -0
- package/analyzer-template/packages/github/dist/types/src/types/Entity.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts +11 -6
- package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts +196 -0
- package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts +2 -0
- package/analyzer-template/packages/github/dist/types/src/types/StatementInfo.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js +25 -0
- package/analyzer-template/packages/github/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts +9 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js +29 -3
- package/analyzer-template/packages/github/dist/utils/src/lib/safeFileName.js.map +1 -1
- package/analyzer-template/packages/github/src/lib/loadOrCreateCommit.ts +14 -0
- package/analyzer-template/packages/github/src/lib/syncPrimaryBranch.ts +2 -0
- package/analyzer-template/packages/process/index.ts +2 -0
- package/analyzer-template/packages/process/package.json +12 -0
- package/analyzer-template/packages/process/tsconfig.json +8 -0
- package/analyzer-template/packages/types/index.ts +5 -0
- package/analyzer-template/packages/types/src/types/Analysis.ts +104 -13
- package/analyzer-template/packages/types/src/types/Entity.ts +2 -0
- package/analyzer-template/packages/types/src/types/Scenario.ts +11 -10
- package/analyzer-template/packages/types/src/types/ScenariosDataStructure.ts +224 -0
- package/analyzer-template/packages/types/src/types/StatementInfo.ts +2 -0
- package/analyzer-template/packages/ui-components/src/components/ScenarioDetailInteractiveView.tsx +23 -7
- package/analyzer-template/packages/utils/dist/types/index.d.ts +2 -2
- package/analyzer-template/packages/utils/dist/types/index.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/types/index.js.map +1 -1
- package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts +87 -13
- package/analyzer-template/packages/utils/dist/types/src/types/Analysis.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts +2 -0
- package/analyzer-template/packages/utils/dist/types/src/types/Entity.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts +11 -6
- package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts +196 -0
- package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts +2 -0
- package/analyzer-template/packages/utils/dist/types/src/types/StatementInfo.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js +25 -0
- package/analyzer-template/packages/utils/dist/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts +9 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js +29 -3
- package/analyzer-template/packages/utils/dist/utils/src/lib/safeFileName.js.map +1 -1
- package/analyzer-template/packages/utils/src/lib/lightweightEntityExtractor.ts +27 -0
- package/analyzer-template/packages/utils/src/lib/safeFileName.ts +48 -3
- package/analyzer-template/playwright/capture.ts +37 -18
- package/analyzer-template/playwright/getCodeYamInfo.ts +12 -7
- package/analyzer-template/playwright/takeElementScreenshot.ts +26 -11
- package/analyzer-template/playwright/takeScreenshot.ts +9 -7
- package/analyzer-template/playwright/waitForServer.ts +21 -6
- package/analyzer-template/project/analyzeBaselineCommit.ts +4 -0
- package/analyzer-template/project/analyzeBranchCommit.ts +4 -0
- package/analyzer-template/project/analyzeFileEntities.ts +4 -0
- package/analyzer-template/project/analyzeRegularCommit.ts +4 -0
- package/analyzer-template/project/constructMockCode.ts +1181 -160
- package/analyzer-template/project/controller/startController.ts +16 -1
- package/analyzer-template/project/executeLibraryFunctionDirect.ts +7 -3
- package/analyzer-template/project/mocks/analyzeFileMock.ts +8 -7
- package/analyzer-template/project/orchestrateCapture/KyselyAnalysisLoader.ts +3 -6
- package/analyzer-template/project/orchestrateCapture/SequentialCaptureTaskRunner.ts +82 -36
- package/analyzer-template/project/orchestrateCapture.ts +36 -3
- package/analyzer-template/project/reconcileMockDataKeys.ts +245 -2
- package/analyzer-template/project/runAnalysis.ts +11 -0
- package/analyzer-template/project/runMultiScenarioServer.ts +11 -10
- package/analyzer-template/project/serverOnlyModules.ts +194 -21
- package/analyzer-template/project/start.ts +26 -4
- package/analyzer-template/project/startScenarioCapture.ts +79 -41
- package/analyzer-template/project/writeMockDataTsx.ts +232 -57
- package/analyzer-template/project/writeScenarioClientWrapper.ts +21 -0
- package/analyzer-template/project/writeScenarioComponents.ts +769 -181
- package/analyzer-template/project/writeScenarioFiles.ts +26 -0
- package/analyzer-template/project/writeSimpleRoot.ts +13 -15
- package/analyzer-template/scripts/comboWorkerLoop.cjs +1 -0
- package/analyzer-template/scripts/defaultCmd.sh +9 -0
- package/analyzer-template/tsconfig.json +2 -1
- package/background/src/lib/local/createLocalAnalyzer.js +1 -29
- package/background/src/lib/local/createLocalAnalyzer.js.map +1 -1
- package/background/src/lib/local/execAsync.js +1 -1
- package/background/src/lib/local/execAsync.js.map +1 -1
- package/background/src/lib/virtualized/common/execAsync.js +1 -1
- package/background/src/lib/virtualized/common/execAsync.js.map +1 -1
- package/background/src/lib/virtualized/project/analyzeBaselineCommit.js +2 -1
- package/background/src/lib/virtualized/project/analyzeBaselineCommit.js.map +1 -1
- package/background/src/lib/virtualized/project/analyzeBranchCommit.js +2 -1
- package/background/src/lib/virtualized/project/analyzeBranchCommit.js.map +1 -1
- package/background/src/lib/virtualized/project/analyzeFileEntities.js +2 -1
- package/background/src/lib/virtualized/project/analyzeFileEntities.js.map +1 -1
- package/background/src/lib/virtualized/project/analyzeRegularCommit.js +2 -1
- package/background/src/lib/virtualized/project/analyzeRegularCommit.js.map +1 -1
- package/background/src/lib/virtualized/project/constructMockCode.js +1053 -124
- package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
- package/background/src/lib/virtualized/project/controller/startController.js +11 -1
- package/background/src/lib/virtualized/project/controller/startController.js.map +1 -1
- package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js +6 -3
- package/background/src/lib/virtualized/project/executeLibraryFunctionDirect.js.map +1 -1
- package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js +7 -7
- package/background/src/lib/virtualized/project/mocks/analyzeFileMock.js.map +1 -1
- package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js +3 -2
- package/background/src/lib/virtualized/project/orchestrateCapture/KyselyAnalysisLoader.js.map +1 -1
- package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js +69 -32
- package/background/src/lib/virtualized/project/orchestrateCapture/SequentialCaptureTaskRunner.js.map +1 -1
- package/background/src/lib/virtualized/project/orchestrateCapture.js +27 -4
- package/background/src/lib/virtualized/project/orchestrateCapture.js.map +1 -1
- package/background/src/lib/virtualized/project/reconcileMockDataKeys.js +204 -2
- package/background/src/lib/virtualized/project/reconcileMockDataKeys.js.map +1 -1
- package/background/src/lib/virtualized/project/runAnalysis.js +9 -0
- package/background/src/lib/virtualized/project/runAnalysis.js.map +1 -1
- package/background/src/lib/virtualized/project/runMultiScenarioServer.js +11 -9
- package/background/src/lib/virtualized/project/runMultiScenarioServer.js.map +1 -1
- package/background/src/lib/virtualized/project/serverOnlyModules.js +163 -23
- package/background/src/lib/virtualized/project/serverOnlyModules.js.map +1 -1
- package/background/src/lib/virtualized/project/start.js +21 -4
- package/background/src/lib/virtualized/project/start.js.map +1 -1
- package/background/src/lib/virtualized/project/startScenarioCapture.js +61 -31
- package/background/src/lib/virtualized/project/startScenarioCapture.js.map +1 -1
- package/background/src/lib/virtualized/project/writeMockDataTsx.js +199 -50
- package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
- package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js +15 -0
- package/background/src/lib/virtualized/project/writeScenarioClientWrapper.js.map +1 -0
- package/background/src/lib/virtualized/project/writeScenarioComponents.js +552 -125
- package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
- package/background/src/lib/virtualized/project/writeScenarioFiles.js +19 -0
- package/background/src/lib/virtualized/project/writeScenarioFiles.js.map +1 -1
- package/background/src/lib/virtualized/project/writeSimpleRoot.js +13 -13
- package/background/src/lib/virtualized/project/writeSimpleRoot.js.map +1 -1
- package/codeyam-cli/src/cli.js +7 -1
- package/codeyam-cli/src/cli.js.map +1 -1
- package/codeyam-cli/src/commands/analyze.js +1 -1
- package/codeyam-cli/src/commands/analyze.js.map +1 -1
- package/codeyam-cli/src/commands/baseline.js +174 -0
- package/codeyam-cli/src/commands/baseline.js.map +1 -0
- package/codeyam-cli/src/commands/debug.js +40 -18
- package/codeyam-cli/src/commands/debug.js.map +1 -1
- package/codeyam-cli/src/commands/default.js +0 -15
- package/codeyam-cli/src/commands/default.js.map +1 -1
- package/codeyam-cli/src/commands/recapture.js +226 -0
- package/codeyam-cli/src/commands/recapture.js.map +1 -0
- package/codeyam-cli/src/commands/report.js +72 -24
- package/codeyam-cli/src/commands/report.js.map +1 -1
- package/codeyam-cli/src/commands/start.js +8 -12
- package/codeyam-cli/src/commands/start.js.map +1 -1
- package/codeyam-cli/src/commands/status.js +23 -1
- package/codeyam-cli/src/commands/status.js.map +1 -1
- package/codeyam-cli/src/commands/test-startup.js +1 -1
- package/codeyam-cli/src/commands/test-startup.js.map +1 -1
- package/codeyam-cli/src/commands/wipe.js +108 -0
- package/codeyam-cli/src/commands/wipe.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js +81 -0
- package/codeyam-cli/src/utils/__tests__/serverVersionStaleness.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +31 -27
- package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
- package/codeyam-cli/src/utils/analysisRunner.js +8 -13
- package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
- package/codeyam-cli/src/utils/backgroundServer.js +14 -4
- package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
- package/codeyam-cli/src/utils/database.js +91 -5
- package/codeyam-cli/src/utils/database.js.map +1 -1
- package/codeyam-cli/src/utils/generateReport.js +253 -106
- package/codeyam-cli/src/utils/generateReport.js.map +1 -1
- package/codeyam-cli/src/utils/git.js +79 -0
- package/codeyam-cli/src/utils/git.js.map +1 -0
- package/codeyam-cli/src/utils/install-skills.js +31 -17
- package/codeyam-cli/src/utils/install-skills.js.map +1 -1
- package/codeyam-cli/src/utils/queue/__tests__/manager.test.js +38 -0
- package/codeyam-cli/src/utils/queue/__tests__/manager.test.js.map +1 -1
- package/codeyam-cli/src/utils/queue/job.js +245 -16
- package/codeyam-cli/src/utils/queue/job.js.map +1 -1
- package/codeyam-cli/src/utils/queue/manager.js +25 -7
- package/codeyam-cli/src/utils/queue/manager.js.map +1 -1
- package/codeyam-cli/src/utils/queue/persistence.js.map +1 -1
- package/codeyam-cli/src/utils/serverState.js.map +1 -1
- package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +7 -5
- package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
- package/codeyam-cli/src/utils/versionInfo.js +25 -19
- package/codeyam-cli/src/utils/versionInfo.js.map +1 -1
- package/codeyam-cli/src/utils/wipe.js +128 -0
- package/codeyam-cli/src/utils/wipe.js.map +1 -0
- package/codeyam-cli/src/webserver/app/lib/database.js +98 -1
- package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
- package/codeyam-cli/src/webserver/app/lib/dbNotifier.js.map +1 -1
- package/codeyam-cli/src/webserver/backgroundServer.js +5 -10
- package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
- package/codeyam-cli/src/webserver/bootstrap.js +49 -0
- package/codeyam-cli/src/webserver/bootstrap.js.map +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/EntityItem-BXhEawa3.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeBadge-efWKDYMr.js → EntityTypeBadge-DLqD3qNt.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-Ba2JVPzP.js +41 -0
- package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-C8lyxW9k.js +34 -0
- package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-aht4aafF.js +25 -0
- package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-CVtiBnY5.js +3 -0
- package/codeyam-cli/src/webserver/build/client/assets/LoadingDots-B0GLXMsr.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/LogViewer-xgeCVgSM.js +3 -0
- package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-D4TZhLuw.js +21 -0
- package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-DuDvi0jm.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-DEx02QDa.js +10 -0
- package/codeyam-cli/src/webserver/build/client/assets/{TruncatedFilePath-COPstp9J.js → TruncatedFilePath-DyFZkK0l.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/_index-BwqWJOgH.js +11 -0
- package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-DoLIqZX2.js +37 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.health-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.restart-server-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.rules-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/chevron-down-Cx24_aWc.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/chunk-EPOLDU6W-CXRTFQ3F.js +51 -0
- package/codeyam-cli/src/webserver/build/client/assets/circle-check-BOARzkeR.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-BdhJEx6B.js +21 -0
- package/codeyam-cli/src/webserver/build/client/assets/{cy-logo-cli-C1gnJVOL.svg → cy-logo-cli-CCKUIm0S.svg} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-DcX-ZS3p.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/dev.empty-BRb-0kQl.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha._-C2N4Op8e.js +23 -0
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-DavjRmOY.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-D1T4TGjf.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-CTBG2mmz.js +5 -0
- package/codeyam-cli/src/webserver/build/client/assets/entry.client-CS2cb_eZ.js +29 -0
- package/codeyam-cli/src/webserver/build/client/assets/executionFlowCoverage-BWhdfn70.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-DMJ7zii9.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/files-Cs4MdYtv.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/git-B4RJRvYB.js +15 -0
- package/codeyam-cli/src/webserver/build/client/assets/git-commit-horizontal-CysbcZxi.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/globals-DMUaGAqV.css +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-fmIEn3Bc.js +9 -0
- package/codeyam-cli/src/webserver/build/client/assets/index-B1h680n5.js +9 -0
- package/codeyam-cli/src/webserver/build/client/assets/index-lzqtyFU8.js +3 -0
- package/codeyam-cli/src/webserver/build/client/assets/loader-circle-B7B9V-bu.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/manifest-f874c610.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/preload-helper-ckwbz45p.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/root-Bz5TunQg.js +57 -0
- package/codeyam-cli/src/webserver/build/client/assets/rules-hEkvVw2-.js +97 -0
- package/codeyam-cli/src/webserver/build/client/assets/scenarioStatus-B_8jpV3e.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/search-CxXUmBSd.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/settings-CS5f3WzT.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/simulations-DwFIBT09.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-B6LgvRJg.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-C1v1PQzo.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{useLastLogLine-3pmpUQB-.js → useLastLogLine-aSv48UbS.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/useReportContext-DYxHZQuP.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{useToast-DEyawJ8r.js → useToast-mBRpZPiu.js} +1 -1
- package/codeyam-cli/src/webserver/build/server/assets/index-967OuJoF.js +1 -0
- package/codeyam-cli/src/webserver/build/server/assets/server-build-DRTmerg9.js +257 -0
- package/codeyam-cli/src/webserver/build/server/index.js +1 -1
- package/codeyam-cli/src/webserver/build-info.json +5 -5
- package/codeyam-cli/src/webserver/devServer.js +1 -3
- package/codeyam-cli/src/webserver/devServer.js.map +1 -1
- package/codeyam-cli/src/webserver/server.js +35 -25
- package/codeyam-cli/src/webserver/server.js.map +1 -1
- package/codeyam-cli/templates/codeyam-power-rules-hook.sh +200 -0
- package/codeyam-cli/templates/{codeyam-debug-skill.md → codeyam:debug.md} +48 -4
- package/codeyam-cli/templates/codeyam:diagnose.md +650 -0
- package/codeyam-cli/templates/codeyam:new-rule.md +13 -0
- package/codeyam-cli/templates/codeyam:power-rules.md +447 -0
- package/codeyam-cli/templates/{codeyam-setup-skill.md → codeyam:setup.md} +139 -4
- package/codeyam-cli/templates/{codeyam-sim-skill.md → codeyam:sim.md} +1 -1
- package/codeyam-cli/templates/{codeyam-test-skill.md → codeyam:test.md} +1 -1
- package/codeyam-cli/templates/{codeyam-verify-skill.md → codeyam:verify.md} +1 -1
- package/package.json +17 -16
- package/packages/ai/index.js +5 -4
- package/packages/ai/index.js.map +1 -1
- package/packages/ai/src/lib/analyzeScope.js +99 -0
- package/packages/ai/src/lib/analyzeScope.js.map +1 -1
- package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js +150 -0
- package/packages/ai/src/lib/astScopes/arrayDerivationDetector.js.map +1 -0
- package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +100 -1
- package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
- package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js +435 -0
- package/packages/ai/src/lib/astScopes/conditionalEffectsExtractor.js.map +1 -0
- package/packages/ai/src/lib/astScopes/methodSemantics.js +97 -6
- package/packages/ai/src/lib/astScopes/methodSemantics.js.map +1 -1
- package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js +8 -0
- package/packages/ai/src/lib/astScopes/patterns/ifStatementHandler.js.map +1 -1
- package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js +23 -0
- package/packages/ai/src/lib/astScopes/patterns/switchStatementHandler.js.map +1 -1
- package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js +138 -1
- package/packages/ai/src/lib/astScopes/patterns/variableDeclarationHandler.js.map +1 -1
- package/packages/ai/src/lib/astScopes/processExpression.js +945 -87
- package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
- package/packages/ai/src/lib/checkAllAttributes.js +24 -9
- package/packages/ai/src/lib/checkAllAttributes.js.map +1 -1
- package/packages/ai/src/lib/completionCall.js +178 -31
- package/packages/ai/src/lib/completionCall.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +1198 -82
- package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js +2 -1
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js +661 -0
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/MuiManager.js.map +1 -0
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js +180 -56
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +16 -1
- package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js +86 -4
- package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +20 -0
- package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js +86 -0
- package/packages/ai/src/lib/dataStructure/helpers/convertNullToUndefinedBySchema.js.map +1 -0
- package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +34 -3
- package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js +107 -0
- package/packages/ai/src/lib/dataStructure/helpers/fixNullIdsBySchema.js.map +1 -0
- package/packages/ai/src/lib/dataStructureChunking.js +111 -0
- package/packages/ai/src/lib/dataStructureChunking.js.map +1 -0
- package/packages/ai/src/lib/deepEqual.js +32 -0
- package/packages/ai/src/lib/deepEqual.js.map +1 -0
- package/packages/ai/src/lib/e2eDataTracking.js +241 -0
- package/packages/ai/src/lib/e2eDataTracking.js.map +1 -0
- package/packages/ai/src/lib/extractCriticalDataKeys.js +96 -0
- package/packages/ai/src/lib/extractCriticalDataKeys.js.map +1 -0
- package/packages/ai/src/lib/generateChangesEntityScenarioData.js +62 -5
- package/packages/ai/src/lib/generateChangesEntityScenarioData.js.map +1 -1
- package/packages/ai/src/lib/generateChangesEntityScenarios.js +81 -90
- package/packages/ai/src/lib/generateChangesEntityScenarios.js.map +1 -1
- package/packages/ai/src/lib/generateEntityDataStructure.js +5 -0
- package/packages/ai/src/lib/generateEntityDataStructure.js.map +1 -1
- package/packages/ai/src/lib/generateEntityScenarioData.js +904 -84
- package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
- package/packages/ai/src/lib/generateEntityScenarios.js +186 -82
- package/packages/ai/src/lib/generateEntityScenarios.js.map +1 -1
- package/packages/ai/src/lib/generateExecutionFlows.js +392 -0
- package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -0
- package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js +380 -0
- package/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.js.map +1 -0
- package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js +1440 -0
- package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js.map +1 -0
- package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js +194 -0
- package/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.js.map +1 -0
- package/packages/ai/src/lib/getConditionalUsagesFromCode.js +84 -14
- package/packages/ai/src/lib/getConditionalUsagesFromCode.js.map +1 -1
- package/packages/ai/src/lib/guessScenarioDataFromDescription.js +2 -1
- package/packages/ai/src/lib/guessScenarioDataFromDescription.js.map +1 -1
- package/packages/ai/src/lib/isolateScopes.js +231 -4
- package/packages/ai/src/lib/isolateScopes.js.map +1 -1
- package/packages/ai/src/lib/mergeStatements.js +26 -3
- package/packages/ai/src/lib/mergeStatements.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +6 -0
- package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js +1 -1
- package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js +21 -64
- package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js +54 -0
- package/packages/ai/src/lib/promptGenerators/generateChunkPrompt.js.map +1 -0
- package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +68 -6
- package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js +10 -34
- package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js +45 -0
- package/packages/ai/src/lib/promptGenerators/generateMissingKeysPrompt.js.map +1 -0
- package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js +16 -3
- package/packages/ai/src/lib/promptGenerators/guessNewScenarioDataFromDescriptionGenerator.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js +335 -0
- package/packages/ai/src/lib/promptGenerators/simplifyKeysForLLM.js.map +1 -0
- package/packages/ai/src/lib/resolvePathToControllable.js +667 -0
- package/packages/ai/src/lib/resolvePathToControllable.js.map +1 -0
- package/packages/ai/src/lib/splitOutsideParentheses.js +3 -1
- package/packages/ai/src/lib/splitOutsideParentheses.js.map +1 -1
- package/packages/ai/src/lib/worker/SerializableDataStructure.js +29 -0
- package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
- package/packages/ai/src/lib/worker/analyzeScopeWorker.js +4 -0
- package/packages/ai/src/lib/worker/analyzeScopeWorker.js.map +1 -1
- package/packages/analyze/src/lib/FileAnalyzer.js +15 -0
- package/packages/analyze/src/lib/FileAnalyzer.js.map +1 -1
- package/packages/analyze/src/lib/analysisContext.js +30 -5
- package/packages/analyze/src/lib/analysisContext.js.map +1 -1
- package/packages/analyze/src/lib/asts/nodes/index.js +1 -0
- package/packages/analyze/src/lib/asts/nodes/index.js.map +1 -1
- package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js +52 -0
- package/packages/analyze/src/lib/asts/nodes/isAsyncFunction.js.map +1 -0
- package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +218 -50
- package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +10 -0
- package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js +2 -0
- package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +31 -7
- package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
- package/packages/analyze/src/lib/files/analyzeChange.js +21 -11
- package/packages/analyze/src/lib/files/analyzeChange.js.map +1 -1
- package/packages/analyze/src/lib/files/analyzeEntity.js +9 -8
- package/packages/analyze/src/lib/files/analyzeEntity.js.map +1 -1
- package/packages/analyze/src/lib/files/analyzeInitial.js +9 -10
- package/packages/analyze/src/lib/files/analyzeInitial.js.map +1 -1
- package/packages/analyze/src/lib/files/enums/steps.js +1 -1
- package/packages/analyze/src/lib/files/enums/steps.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js +209 -0
- package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js.map +1 -0
- package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js +85 -0
- package/packages/analyze/src/lib/files/scenarios/enrichUnknownTypesFromSourceEquivalencies.js.map +1 -0
- package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +458 -48
- package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateChangesScenarioData.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js +29 -34
- package/packages/analyze/src/lib/files/scenarios/generateChangesScenarios.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +264 -78
- package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js +96 -0
- package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js.map +1 -0
- package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js +56 -69
- package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateScenarios.js +4 -8
- package/packages/analyze/src/lib/files/scenarios/generateScenarios.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +372 -89
- package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js +46 -9
- package/packages/analyze/src/lib/files/scenarios/mergeValidatedDataStructures.js.map +1 -1
- package/packages/aws/src/lib/ecs/ecsDefineContainer.js +2 -2
- package/packages/aws/src/lib/ecs/ecsDefineContainer.js.map +1 -1
- package/packages/aws/src/lib/ecs/ecsTaskFactory.js +17 -61
- package/packages/aws/src/lib/ecs/ecsTaskFactory.js.map +1 -1
- package/packages/database/src/lib/kysely/db.js +2 -2
- package/packages/database/src/lib/kysely/tables/debugReportsTable.js +9 -3
- package/packages/database/src/lib/kysely/tables/debugReportsTable.js.map +1 -1
- package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js +7 -4
- package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -1
- package/packages/generate/index.js +3 -0
- package/packages/generate/index.js.map +1 -1
- package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +16 -1
- package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
- package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +189 -0
- package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -0
- package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js +53 -0
- package/packages/generate/src/lib/componentScenarioPage/generateScenarioServerComponent.js.map +1 -0
- package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +8 -4
- package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js.map +1 -1
- package/packages/generate/src/lib/deepMerge.js +27 -1
- package/packages/generate/src/lib/deepMerge.js.map +1 -1
- package/packages/generate/src/lib/scenarioComponentForServer.js +89 -0
- package/packages/generate/src/lib/scenarioComponentForServer.js.map +1 -0
- package/packages/github/src/lib/loadOrCreateCommit.js +10 -0
- package/packages/github/src/lib/loadOrCreateCommit.js.map +1 -1
- package/packages/github/src/lib/syncPrimaryBranch.js +3 -0
- package/packages/github/src/lib/syncPrimaryBranch.js.map +1 -1
- package/packages/process/index.js +3 -0
- package/packages/process/index.js.map +1 -0
- package/packages/process/src/GlobalProcessManager.js.map +1 -0
- package/{background/src/lib/process → packages/process/src}/ProcessManager.js +1 -1
- package/packages/process/src/ProcessManager.js.map +1 -0
- package/packages/process/src/index.js.map +1 -0
- package/packages/process/src/managedExecAsync.js.map +1 -0
- package/packages/types/index.js.map +1 -1
- package/packages/utils/src/lib/lightweightEntityExtractor.js +25 -0
- package/packages/utils/src/lib/lightweightEntityExtractor.js.map +1 -1
- package/packages/utils/src/lib/safeFileName.js +29 -3
- package/packages/utils/src/lib/safeFileName.js.map +1 -1
- package/scripts/finalize-analyzer.cjs +6 -4
- package/analyzer-template/packages/ai/src/lib/findMatchingAttribute.ts +0 -102
- package/analyzer-template/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.ts +0 -197
- package/analyzer-template/packages/ai/src/lib/generateChangesEntityKeyAttributes.ts +0 -271
- package/analyzer-template/packages/ai/src/lib/generateEntityKeyAttributes.ts +0 -294
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.ts +0 -67
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.ts +0 -115
- package/analyzer-template/process/INTEGRATION_COMPLETE.md +0 -333
- package/analyzer-template/process/INTEGRATION_EXAMPLE.md +0 -525
- package/analyzer-template/process/README.md +0 -507
- package/background/src/lib/process/GlobalProcessManager.js.map +0 -1
- package/background/src/lib/process/ProcessManager.js.map +0 -1
- package/background/src/lib/process/index.js.map +0 -1
- package/background/src/lib/process/managedExecAsync.js.map +0 -1
- package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js +0 -238
- package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js.map +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/EntityItem-CVbSvOjo.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-DcwcHyl5.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-WgwC1GfJ.js +0 -26
- package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-IEKom9O2.js +0 -3
- package/codeyam-cli/src/webserver/build/client/assets/LogViewer-BYnfxbUG.js +0 -3
- package/codeyam-cli/src/webserver/build/client/assets/ReportIssueModal-_lBPJCzG.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-lHVhvsu_.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-d_TBk4GQ.js +0 -5
- package/codeyam-cli/src/webserver/build/client/assets/_index-kGT7VUqj.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-DDGmhu7P.js +0 -7
- package/codeyam-cli/src/webserver/build/client/assets/chevron-down-n_HPRfM_.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/chunk-WWGJGFF6-CbVoyx1U.js +0 -26
- package/codeyam-cli/src/webserver/build/client/assets/circle-check-D1VOYveA.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-YR8jjAlu.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/dev.empty-B8vP3V_s.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha._-CN6aLCT1.js +0 -16
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-DA5Jeu2P.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-BTeitalf.js +0 -5
- package/codeyam-cli/src/webserver/build/client/assets/entry.client-du6UEYD-.js +0 -13
- package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-BpjkhMoi.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/files-BQGvk4lJ.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/git-DVdYRT-I.js +0 -12
- package/codeyam-cli/src/webserver/build/client/assets/globals-CO-U8Bpo.css +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/html2canvas-pro.esm-XQCGvadH.js +0 -5
- package/codeyam-cli/src/webserver/build/client/assets/index-DCG-vks0.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/loader-circle-GazdNeLl.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/manifest-0b694d28.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/root-D3tQP7hx.js +0 -16
- package/codeyam-cli/src/webserver/build/client/assets/search-CIY6XmtE.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/server-build-CMKNK2uU.css +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/settings-CoMDgElu.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/simulations-agkniXp2.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/triangle-alert-B2VUcygF.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/useReportContext-EvdK-zXP.js +0 -1
- package/codeyam-cli/src/webserver/build/server/assets/index-DGVHQEXD.js +0 -1
- package/codeyam-cli/src/webserver/build/server/assets/server-build-CghkTkIL.js +0 -166
- package/codeyam-cli/templates/debug-command.md +0 -303
- package/packages/ai/src/lib/findMatchingAttribute.js +0 -77
- package/packages/ai/src/lib/findMatchingAttribute.js.map +0 -1
- package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js +0 -136
- package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js.map +0 -1
- package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js +0 -220
- package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js.map +0 -1
- package/packages/ai/src/lib/generateEntityKeyAttributes.js +0 -241
- package/packages/ai/src/lib/generateEntityKeyAttributes.js.map +0 -1
- package/packages/ai/src/lib/isFrontend.js +0 -5
- package/packages/ai/src/lib/isFrontend.js.map +0 -1
- package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js +0 -40
- package/packages/ai/src/lib/promptGenerators/generateEntityKeyAttributesGenerator.js.map +0 -1
- package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js +0 -72
- package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js.map +0 -1
- /package/analyzer-template/{process → packages/process/src}/GlobalProcessManager.ts +0 -0
- /package/analyzer-template/{process → packages/process/src}/ProcessManager.ts +0 -0
- /package/analyzer-template/{process → packages/process/src}/index.ts +0 -0
- /package/analyzer-template/{process → packages/process/src}/managedExecAsync.ts +0 -0
- /package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-CMKNK2uU.css → styles-CMKNK2uU.css} +0 -0
- /package/{background/src/lib/process → packages/process/src}/GlobalProcessManager.js +0 -0
- /package/{background/src/lib/process → packages/process/src}/index.js +0 -0
- /package/{background/src/lib/process → packages/process/src}/managedExecAsync.js +0 -0
|
@@ -28,7 +28,10 @@ export default function validateDependencyAnalyses({ analysis, readonlyAnalysis,
|
|
|
28
28
|
// gather up dependencies in the format the caller expects
|
|
29
29
|
for (const dependency of entity.metadata?.importedExports ?? []) {
|
|
30
30
|
const dependencyFilePath = dependency.resolvedFilePath ?? dependency.filePath;
|
|
31
|
-
|
|
31
|
+
// Use the entity/import name, not the export name (resolvedName).
|
|
32
|
+
// For default exports, resolvedName is 'default' but the entity is stored
|
|
33
|
+
// under its actual identifier name (e.g., 'QuoteDetailsDrawer').
|
|
34
|
+
const dependencyName = dependency.name;
|
|
32
35
|
// if the entity has duplicate dependencies, handle gracefully
|
|
33
36
|
if (dependentAnalyses[dependencyFilePath]?.[dependencyName]) {
|
|
34
37
|
// console.log(
|
|
@@ -57,6 +60,22 @@ export default function validateDependencyAnalyses({ analysis, readonlyAnalysis,
|
|
|
57
60
|
}
|
|
58
61
|
continue;
|
|
59
62
|
}
|
|
63
|
+
// Ensure the entity is attached to the analysis.
|
|
64
|
+
// The entity might not be attached if the analysis was loaded from the database
|
|
65
|
+
// without its entity being in the context's entity map.
|
|
66
|
+
// This is critical for generateDataStructure to merge child component tRPC calls.
|
|
67
|
+
let dependentEntity = dependentAnalysis.entity;
|
|
68
|
+
if (!dependentEntity) {
|
|
69
|
+
// Try to get the entity from the context
|
|
70
|
+
dependentEntity = context.getEntity(dependencyFilePath, dependencyName);
|
|
71
|
+
if (dependentEntity) {
|
|
72
|
+
// Attach the entity to the analysis (mutating, but necessary for downstream use)
|
|
73
|
+
// We need the double cast because ReadonlyEntity has readonly arrays that aren't
|
|
74
|
+
// assignable to Entity's mutable arrays.
|
|
75
|
+
dependentAnalysis.entity =
|
|
76
|
+
dependentEntity;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
60
79
|
// Store the dependent analysis
|
|
61
80
|
dependentAnalyses[dependencyFilePath] || (dependentAnalyses[dependencyFilePath] = {});
|
|
62
81
|
dependentAnalyses[dependencyFilePath][dependencyName] = dependentAnalysis;
|
|
@@ -73,12 +92,17 @@ export default function validateDependencyAnalyses({ analysis, readonlyAnalysis,
|
|
|
73
92
|
analysis.metadata.dependentAnalyses.push(dependentAnalysis.id);
|
|
74
93
|
}
|
|
75
94
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
95
|
+
// Only recurse if we have the entity. Without the entity, we can't process
|
|
96
|
+
// the dependency's own dependencies, but we can still use this dependency's
|
|
97
|
+
// analysis data (mergedDataStructure, etc.)
|
|
98
|
+
if (dependentEntity) {
|
|
99
|
+
validateDependencyAnalyses({
|
|
100
|
+
readonlyAnalysis: dependentAnalysis,
|
|
101
|
+
entity: dependentEntity,
|
|
102
|
+
context: context,
|
|
103
|
+
dependentAnalyses,
|
|
104
|
+
});
|
|
105
|
+
}
|
|
82
106
|
}
|
|
83
107
|
return { dependentAnalyses };
|
|
84
108
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateDependencyAnalyses.js","sourceRoot":"","sources":["../../../../../../../../packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"validateDependencyAnalyses.js","sourceRoot":"","sources":["../../../../../../../../packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import generateDataStructure from "./scenarios/generateDataStructure.js";
|
|
2
2
|
import generateChangesScenarioData from "./scenarios/generateChangesScenarioData.js";
|
|
3
3
|
import generateChangesScenarios from "./scenarios/generateChangesScenarios.js";
|
|
4
|
-
import
|
|
4
|
+
import generateExecutionFlows from "./scenarios/generateExecutionFlows.js";
|
|
5
5
|
import { upsertAnalysesWithScenarios } from "../../../../../packages/database/index.js";
|
|
6
6
|
import { Step } from "./enums/steps.js";
|
|
7
7
|
import recordStep from "./recordStep.js";
|
|
@@ -9,6 +9,7 @@ import extractDiffLines from "./extractDiffLines.js";
|
|
|
9
9
|
import analyzeCodeChange from "./analyzeCodeChange.js";
|
|
10
10
|
import relevantDiffPart from "./relevantDiffPart.js";
|
|
11
11
|
import { awsLog, awsLogDebugLevel, pushAnalysisError, } from "../../../../../packages/utils/index.js";
|
|
12
|
+
import deepEqual from "../utils/deepEqual.js";
|
|
12
13
|
export default async function analyzeChange({ previousAnalysis, analysis, fileAnalyzer, entity, commit, dependentAnalyses, scenarioIds, steps, updateProgress, model, structureSemaphore, }) {
|
|
13
14
|
analysis.entity = entity;
|
|
14
15
|
awsLog('CodeYam: Analyzing change entity', {
|
|
@@ -58,22 +59,31 @@ export default async function analyzeChange({ previousAnalysis, analysis, fileAn
|
|
|
58
59
|
}
|
|
59
60
|
}
|
|
60
61
|
}
|
|
61
|
-
//
|
|
62
|
-
if (!steps || steps.includes(Step.
|
|
63
|
-
awsLogDebugLevel(1, `
|
|
64
|
-
const { step:
|
|
62
|
+
// ExecutionFlows phase: I/O-bound LLM call, can run in parallel with other entities' Structure
|
|
63
|
+
if (!steps || steps.includes(Step.ExecutionFlows)) {
|
|
64
|
+
awsLogDebugLevel(1, `Generating execution flows for ${entity.name}...`);
|
|
65
|
+
const { step: executionFlowsStep } = await recordStep('generateExecutionFlows', () => generateExecutionFlows({
|
|
65
66
|
entity,
|
|
66
67
|
analysis,
|
|
67
|
-
dependentAnalyses,
|
|
68
68
|
model,
|
|
69
69
|
updateProgress,
|
|
70
|
+
dependentAnalyses,
|
|
70
71
|
}));
|
|
71
|
-
analysis.status.steps.push(
|
|
72
|
+
analysis.status.steps.push(executionFlowsStep);
|
|
72
73
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
74
|
+
const dataStructureUnchanged = deepEqual(analysis.metadata.scenariosDataStructure, previousAnalysis.metadata.scenariosDataStructure);
|
|
75
|
+
const executionFlowsUnchanged = deepEqual(analysis.metadata.executionFlows, previousAnalysis.metadata.executionFlows);
|
|
76
|
+
if (dataStructureUnchanged && executionFlowsUnchanged) {
|
|
77
|
+
awsLogDebugLevel(1, `Data structure and execution flows unchanged, reusing previous scenarios for ${entity.name}...`);
|
|
78
|
+
// Reuse previous scenarios but mark them for recapture if entity code changed
|
|
79
|
+
analysis.scenarios = previousAnalysis.scenarios.map((scenario) => ({
|
|
80
|
+
...scenario,
|
|
81
|
+
metadata: {
|
|
82
|
+
...scenario.metadata,
|
|
83
|
+
// Only mark for recapture if entity code actually changed
|
|
84
|
+
needsRecapture: entityChanged,
|
|
85
|
+
},
|
|
86
|
+
}));
|
|
77
87
|
}
|
|
78
88
|
else {
|
|
79
89
|
if (!steps || steps.includes(Step.Scenarios)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyzeChange.js","sourceRoot":"","sources":["../../../../../../../packages/analyze/src/lib/files/analyzeChange.ts"],"names":[],"mappings":"AAMA,OAAO,qBAAqB,MAAM,mCAAmC,CAAC;AACtE,OAAO,2BAA2B,MAAM,yCAAyC,CAAC;AAClF,OAAO,wBAAwB,MAAM,sCAAsC,CAAC;AAC5E,OAAO,
|
|
1
|
+
{"version":3,"file":"analyzeChange.js","sourceRoot":"","sources":["../../../../../../../packages/analyze/src/lib/files/analyzeChange.ts"],"names":[],"mappings":"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"}
|
|
@@ -128,7 +128,7 @@ export default async function analyzeEntity({ project, projectAnalyzer, commit,
|
|
|
128
128
|
});
|
|
129
129
|
// For partial analyses, skip Step.Structure to reuse existing mergedDataStructure
|
|
130
130
|
if (isPartialAnalysis && !steps) {
|
|
131
|
-
steps = [Step.
|
|
131
|
+
steps = [Step.ExecutionFlows, Step.Scenarios, Step.Data];
|
|
132
132
|
awsLog('CodeYam: continuing from partial analysis, skipping Structure step', {
|
|
133
133
|
analysisId: existingAnalysis.id,
|
|
134
134
|
entityName: existingAnalysis.entityName,
|
|
@@ -158,13 +158,14 @@ export default async function analyzeEntity({ project, projectAnalyzer, commit,
|
|
|
158
158
|
analysesToUpsert: [existingAnalysis],
|
|
159
159
|
});
|
|
160
160
|
}
|
|
161
|
+
// Return early if analysis is already complete for its purpose:
|
|
162
|
+
// - Full analysis: has analyzedTreeSha
|
|
163
|
+
// - Dependency analysis: has executionFlows (Structure + ExecutionFlows already ran)
|
|
164
|
+
const isCompleteDependencyAnalysis = analyzeAsDependency && !!existingAnalysis.metadata?.executionFlows;
|
|
161
165
|
if (!force &&
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
// existingAnalysis.status?.readyToBeCaptured ||
|
|
166
|
-
// branchCommitSha)
|
|
167
|
-
) {
|
|
166
|
+
existingAnalysis.dependencyAnalyzedTreeSha ===
|
|
167
|
+
dependencyAnalyzedTreeSha &&
|
|
168
|
+
(!!existingAnalysis.analyzedTreeSha || isCompleteDependencyAnalysis)) {
|
|
168
169
|
awsLogDebugLevel(1, `Using existing analysis for ${entity.name}...`);
|
|
169
170
|
awsLog('Returning existing analysis', {
|
|
170
171
|
filePath: file.path,
|
|
@@ -245,7 +246,7 @@ export default async function analyzeEntity({ project, projectAnalyzer, commit,
|
|
|
245
246
|
delete existingAnalysis.metadata.scenariosDataStructure;
|
|
246
247
|
}
|
|
247
248
|
if (!steps || steps?.includes(Step.Scenarios)) {
|
|
248
|
-
delete existingAnalysis.metadata.
|
|
249
|
+
delete existingAnalysis.metadata.executionFlows;
|
|
249
250
|
}
|
|
250
251
|
if (!steps || steps?.includes(Step.Data)) {
|
|
251
252
|
existingAnalysis.status.errors = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyzeEntity.js","sourceRoot":"","sources":["../../../../../../../packages/analyze/src/lib/files/analyzeEntity.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analyzeEntity.js","sourceRoot":"","sources":["../../../../../../../packages/analyze/src/lib/files/analyzeEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,2BAA2B,EAC3B,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,EAAE,EACF,kCAAkC,EAClC,2BAA2B,GAC5B,MAAM,aAAa,CAAC;AAErB,OAAO,yBAAyB,MAAM,qCAAqC,CAAC;AAC5E,OAAO,uBAAuB,MAAM,mCAAmC,CAAC;AACxE,OAAO,oBAAoB,MAAM,gCAAgC,CAAC;AAClE,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,0BAA0B,MAAM,sCAAsC,CAAC;AAS9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,yBAAyB,MAAM,qCAAqC,CAAC;AAC5E,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,OAAO,uBAAuB,MAAM,mCAAmC,CAAC;AACxE,OAAO,EACL,MAAM,EACN,gBAAgB,EAChB,iBAAiB,GAElB,MAAM,gBAAgB,CAAC;AAuBxB;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,aAAa,CAAC,EAC1C,OAAO,EACP,eAAe,EACf,MAAM,EACN,IAAI,EACJ,MAAM,EACN,OAAO,EACP,mBAAmB,GAAG,KAAK,EAC3B,eAAe,EACf,QAAQ,EACR,WAAW,EACX,KAAK,EACL,KAAK,EACL,KAAK,EACL,QAAQ,EACR,cAAc,EACd,WAAW,EACX,kBAAkB,GACA;IAIlB,MAAM,CAAC,2BAA2B,EAAE;QAClC,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,UAAU,EAAE,MAAM,CAAC,IAAI;QACvB,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM;QACzB,mBAAmB;QACnB,QAAQ;QACR,KAAK;QACL,KAAK;QACL,QAAQ;KACT,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,CAAC;QACtC,KAAK,MAAM,cAAc,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;YAC9D,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC7C,MAAM,CAAC,mCAAmC,EAAE;oBAC1C,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,cAAc;iBACf,CAAC,CAAC;gBACH,OAAO;oBACL,QAAQ,EAAE,IAAI;iBACf,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE,CAAC;QACpC,KAAK,MAAM,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC1D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC5C,MAAM,CAAC,+CAA+C,EAAE;oBACtD,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,YAAY;iBACb,CAAC,CAAC;gBACH,OAAO;oBACL,QAAQ,EAAE,IAAI;iBACf,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,gBAAgB,CAAC,CAAC,EAAE,kCAAkC,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC;IAExE,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAC1C,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,IAAI,EACX,IAAI,CACL,CAAC;IACF,IAAI,gBAAgB,EAAE,CAAC;QACrB,gBAAgB,CAAC,CAAC,EAAE,+BAA+B,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC;QACrE,MAAM,CACJ,8BAA8B,EAC9B,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,GAAG,EACV,gBAAgB,EAAE,eAAe,CAClC,CAAC;QACF,OAAO;YACL,QAAQ,EAAE,gBAA4B;SACvC,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,WAAoC,CAAC,CAAC;IAE7D,MAAM,YAAY,GAAG,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAE3D,IAAI,MAAM,IAAI,CAAC,QAAQ,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC;QAC3E,QAAQ,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,IAAI,QAAQ,GAAa,WAAW,CAAC;QACnC,MAAM;QACN,IAAI;QACJ,OAAO;QACP,MAAM;QACN,eAAe;QACf,QAAQ;KACT,CAAC,CAAC;IAEH,4CAA4C;IAC5C,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAErC,IAAI,iBAAsC,CAAC;IAC3C,IAAI,CAAC;QACH,gBAAgB,CAAC,CAAC,EAAE,+BAA+B,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC;QAErE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,sBAAsB,EAAE,GAAG,EAAE,CACrE,0BAA0B,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAC1D,CAAC;QAEF,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAC7C,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEjC,MAAM,CAAC,8BAA8B,EAAE;YACrC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM;SAC1B,CAAC,CAAC;QAEH,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,yBAAyB,EAAE,GAC/D,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAE3C,QAAQ,CAAC,yBAAyB,GAAG,yBAAyB,CAAC;QAC/D,QAAQ,CAAC,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;QAE5C,MAAM,CAAC,2BAA2B,EAAE;YAClC,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,yBAAyB;SAC1B,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,MAAM,yBAAyB,CAAC;YACvD,OAAO;YACP,yBAAyB;SAC1B,CAAC,CAAC;QAEH,IAAI,gBAAgB,EAAE,CAAC;YACrB,0GAA0G;YAC1G,MAAM,iBAAiB,GACrB,CAAC,gBAAgB,CAAC,eAAe;gBACjC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,CAAC;YAEnD,MAAM,CAAC,iCAAiC,EAAE;gBACxC,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,UAAU,EAAE,gBAAgB,CAAC,UAAU;gBACvC,SAAS,EAAE,gBAAgB,CAAC,SAAS;gBACrC,UAAU,EAAE,gBAAgB,CAAC,EAAE;gBAC/B,cAAc,EAAE,gBAAgB,CAAC,MAAM;gBACvC,gBAAgB,EAAE,gBAAgB,CAAC,QAAQ;gBAC3C,uBAAuB,EAAE,gBAAgB,CAAC,eAAe;gBACzD,iCAAiC,EAC/B,gBAAgB,CAAC,yBAAyB;gBAC5C,uBAAuB,EAAE,gBAAgB,CAAC,eAAe;gBACzD,iBAAiB;gBACjB,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBACxD,EAAE,EAAE,QAAQ,CAAC,EAAE,IAAI,OAAO;oBAC1B,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACpB,CAAC,CAAC;aACJ,CAAC,CAAC;YAEH,kFAAkF;YAClF,IAAI,iBAAiB,IAAI,CAAC,KAAK,EAAE,CAAC;gBAChC,KAAK,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzD,MAAM,CACJ,oEAAoE,EACpE;oBACE,UAAU,EAAE,gBAAgB,CAAC,EAAE;oBAC/B,UAAU,EAAE,gBAAgB,CAAC,UAAU;iBACxC,CACF,CAAC;YACJ,CAAC;YAED,IAAI,gBAAgB,CAAC,QAAQ,KAAK,MAAM,EAAE,EAAE,EAAE,CAAC;gBAC7C,MAAM,yBAAyB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACpE,CAAC;YAED,IACE,MAAM;gBACN,IAAI,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE;oBAC9C,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,EACxC,CAAC;gBACD,MAAM,CACJ,6FAA6F,EAC7F;oBACE,QAAQ,EAAE;wBACR,EAAE,EAAE,gBAAgB,CAAC,EAAE;wBACvB,UAAU,EAAE,gBAAgB,CAAC,UAAU;wBACvC,QAAQ,EAAE,gBAAgB,CAAC,QAAQ;wBACnC,WAAW,EAAE,gBAAgB,CAAC,WAAW;qBAC1C;oBACD,MAAM,EAAE;wBACN,EAAE,EAAE,MAAM,CAAC,EAAE;wBACb,WAAW,EAAE,MAAM,CAAC,WAAW;qBAChC;iBACF,CACF,CAAC;gBACF,gBAAgB,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;gBACtC,gBAAgB,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;gBAClD,MAAM,2BAA2B,CAAC;oBAChC,gBAAgB,EAAE,CAAC,gBAAgB,CAAC;iBACrC,CAAC,CAAC;YACL,CAAC;YAED,gEAAgE;YAChE,uCAAuC;YACvC,qFAAqF;YACrF,MAAM,4BAA4B,GAChC,mBAAmB,IAAI,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,cAAc,CAAC;YAErE,IACE,CAAC,KAAK;gBACN,gBAAgB,CAAC,yBAAyB;oBACxC,yBAAyB;gBAC3B,CAAC,CAAC,CAAC,gBAAgB,CAAC,eAAe,IAAI,4BAA4B,CAAC,EACpE,CAAC;gBACD,gBAAgB,CAAC,CAAC,EAAE,+BAA+B,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC;gBACrE,MAAM,CAAC,6BAA6B,EAAE;oBACpC,QAAQ,EAAE,IAAI,CAAC,IAAI;oBACnB,UAAU,EAAE,MAAM,CAAC,IAAI;oBACvB,kBAAkB,EAAE,gBAAgB,CAAC,EAAE;iBACxC,CAAC,CAAC;gBAEH,uCAAuC;gBACvC,OAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;gBAC7C,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBAEpC,OAAO;oBACL,QAAQ,EAAE,gBAAgB;iBAC3B,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,4BAA4B;gBAC5B,yDAAyD;gBACzD,uCAAuC;gBACvC,2BAA2B;gBAC3B,+BAA+B;gBAC/B,2EAA2E;gBAC3E,2EAA2E;gBAC3E,8GAA8G;gBAC9G,kFAAkF;gBAClF,wCAAwC;gBACxC,kCAAkC;gBAClC,0CAA0C;gBAC1C,2BAA2B;gBAC3B,sBAAsB;gBACtB,eAAe;gBACf,YAAY;gBACZ,YAAY;gBACZ,oBAAoB;gBACpB,cAAc;gBACd,iBAAiB;gBACjB,kDAAkD;gBAClD,IAAI;gBACJ,MAAM,CACJ,KAAK,IAAI,QAAQ;oBACf,CAAC,CAAC,iDAAiD;oBACnD,CAAC,CAAC,qDAAqD,EACzD;oBACE,UAAU,EAAE,gBAAgB,CAAC,EAAE;oBAC/B,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,QAAQ,EAAE,IAAI,CAAC,IAAI;oBACnB,UAAU,EAAE,MAAM,CAAC,IAAI;oBACvB,iCAAiC,EAC/B,gBAAgB,CAAC,yBAAyB;oBAC5C,yBAAyB;oBACzB,kBAAkB,EAAE,gBAAgB,CAAC,MAAM,EAAE,UAAU;oBACvD,yBAAyB,EACvB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB;iBAC7C,CACF,CAAC;gBAEF,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,IAAI,gBAAgB,CAAC,SAAS,EAAE,CAAC;wBAC/B,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;4BAC9C,MAAM,eAAe,CAAC;gCACpB,GAAG,EAAE,gBAAgB,CAAC,SAAS;qCAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;qCAChC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;6BACpB,CAAC,CAAC;4BACH,gBAAgB,CAAC,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAC5D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAC1B,CAAC;wBACJ,CAAC;wBAED,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;4BACnD,MAAM,eAAe,CAAC;gCACpB,GAAG,EAAE,gBAAgB,CAAC,SAAS;qCAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;qCACjC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;6BACpB,CAAC,CAAC;4BACH,gBAAgB,CAAC,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAC5D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CACzB,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAED,IAAI,CAAC,KAAK,EAAE,CAAC;wBACX,OAAO,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC;wBAE1C,gBAAgB,CAAC,MAAM,GAAG;4BACxB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;4BACnC,KAAK,EAAE,EAAE;4BACT,MAAM,EAAE,EAAE;yBACX,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC9C,OAAO,gBAAgB,CAAC,QAAQ,CAAC,sBAAsB,CAAC;gBAC1D,CAAC;gBAED,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC9C,OAAO,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC;gBAClD,CAAC;gBAED,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzC,gBAAgB,CAAC,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC;oBACpC,gBAAgB,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;wBACtD,OAAO,QAAQ,CAAC,KAAK,CAAC;wBACtB,OAAO,QAAQ,CAAC,UAAU,CAAC;oBAC7B,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,gBAAgB,CAAC,yBAAyB,GAAG,yBAAyB,CAAC;gBACvE,gBAAgB,CAAC,QAAQ,CAAC,iBAAiB;oBACzC,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YACxC,CAAC;YAED,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;gBAC7B,gBAAgB,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;YAC5C,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,oCAAoC,EAAE;gBAC3C,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,UAAU,EAAE,MAAM,CAAC,IAAI;gBACvB,yBAAyB;aAC1B,CAAC,CAAC;QACL,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,QAAQ,GAAG,gBAAgB,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,yBAAyB,GAAG,yBAAyB,CAAC;YAE/D,MAAM,eAAe,GAAG,CACtB,MAAM,2BAA2B,CAAC;gBAChC,gBAAgB,EAAE,CAAC,QAAQ,CAAC;aAC7B,CAAC,CACH,CAAC,CAAC,CAAC,CAAC;YACL,QAAQ,GAAG,eAA2B,CAAC;YAEvC,MAAM,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;QAED,qCAAqC;QACrC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAErC,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YAChE,QAAQ,CAAC,eAAe,GAAG,gBAAgB,CAAC;YAC5C,QAAQ,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACtD,QAAQ,GAAG,CACT,MAAM,2BAA2B,CAAC;gBAChC,gBAAgB,EAAE,CAAC,QAAQ,CAAC;aAC7B,CAAC,CACH,CAAC,CAAC,CAAC,CAAC;YAEL,gBAAgB,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,iCAAiC,CAAC,CAAC;YAErE,MAAM,CAAC,8CAA8C,EAAE;gBACrD,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,UAAU,EAAE,MAAM,CAAC,IAAI;gBACvB,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,SAAS,EAAE,MAAM,CAAC,GAAG;gBACrB,uBAAuB,EAAE,QAAQ,CAAC,eAAe;aAClD,CAAC,CAAC;YACH,OAAO;gBACL,QAAQ;aACT,CAAC;QACJ,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM;YAC7B,CAAC,CAAC,MAAM,oBAAoB,CAAC;gBACzB,OAAO;gBACP,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;gBACtD,IAAI;gBACJ,MAAM;gBACN,yBAAyB;aAC1B,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC;QAET,2EAA2E;QAC3E,2EAA2E;QAC3E,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,MAAM,CAAC;QAErE,MAAM,CAAC,mBAAmB,EAAE,cAAc,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC9D,CAAC,iBAAiB,IAAI,CAAC,MAAM,CAAC,aAAa;gBACzC,CAAC,CAAC,gBAAgB,EAAE,MAAM,EAAE,aAAa;oBACvC,CAAC,CAAC,kCAAkC,CAAC;wBACjC,MAAM;wBACN,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,EAAE,aAAa;wBAC9D,KAAK;qBACN,CAAC;oBACJ,CAAC,CAAC,2BAA2B,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;gBAClD,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YAEzB,gBAAgB;gBAChB,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB;gBAC9C,CAAC,gBAAgB,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC;gBAC7C,CAAC,KAAK;gBACJ,CAAC,CAAC,aAAa,CAAC;oBACZ,gBAAgB;oBAChB,QAAQ;oBACR,MAAM;oBACN,MAAM;oBACN,YAAY;oBACZ,iBAAiB;oBACjB,WAAW;oBACX,KAAK;oBACL,cAAc;oBACd,KAAK;oBACL,kBAAkB;iBACnB,CAAC;gBACJ,CAAC,CAAC,cAAc,CAAC;oBACb,QAAQ;oBACR,MAAM;oBACN,iBAAiB;oBACjB,mBAAmB;oBACnB,KAAK;oBACL,cAAc;oBACd,KAAK;oBACL,kBAAkB;iBACnB,CAAC;SACP,CAAC,CAAC;QAEH,IAAI,mBAAmB,EAAE,CAAC;YACxB,MAAM,CAAC,aAAa,GAAG,mBAAmB,CAAC,aAAa,CAAC;YACzD,mCAAmC;YACnC,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACjC,CAAC;QAED,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;QAEnC,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAChD,kCAAkC;QAClC,sEAAsE;QACtE,2FAA2F;QAC3F,4FAA4F;QAC5F,iDAAiD;QACjD,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACvE,QAAQ,CAAC,eAAe,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,CAAC;QACd,iBAAiB,CAAC;YAChB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,KAAK;YACL,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;IACL,CAAC;IAED,QAAQ,GAAG,CACT,MAAM,2BAA2B,CAAC;QAChC,gBAAgB,EAAE,CAAC,QAAQ,CAAC;KAC7B,CAAC,CACH,CAAC,CAAC,CAAC,CAAC;IAEL,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAErC,MAAM,CAAC,8BAA8B,EAAE;QACrC,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,UAAU,EAAE,MAAM,CAAC,IAAI;QACvB,SAAS,EAAE,MAAM,CAAC,GAAG;QACrB,UAAU,EAAE,QAAQ,CAAC,EAAE;QACvB,aAAa,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM;KAC1C,CAAC,CAAC;IAEH,OAAO;QACL,QAAQ;QACR,iBAAiB;KAClB,CAAC;AACJ,CAAC"}
|
|
@@ -6,7 +6,7 @@ import recordStep from "./recordStep.js";
|
|
|
6
6
|
import { DEFAULT_SCENARIO_NAME, } from "../../../../../packages/types/index.js";
|
|
7
7
|
import { upsertAnalysesWithScenarios } from "../../../../../packages/database/index.js";
|
|
8
8
|
import { awsLog, awsLogDebugLevel, pushAnalysisError, } from "../../../../../packages/utils/index.js";
|
|
9
|
-
import
|
|
9
|
+
import generateExecutionFlows from "./scenarios/generateExecutionFlows.js";
|
|
10
10
|
export default async function analyzeInitial({ analysis, entity, analyzeAsDependency, dependentAnalyses, steps, updateProgress, model, structureSemaphore, }) {
|
|
11
11
|
analysis.entity = entity;
|
|
12
12
|
awsLog('CodeYam: Analyzing initial entity', {
|
|
@@ -38,22 +38,22 @@ export default async function analyzeInitial({ analysis, entity, analyzeAsDepend
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
-
// Short-circuit for test mocking: only generate data structure, skip
|
|
41
|
+
// Short-circuit for test mocking: only generate data structure, skip execution flows and scenarios
|
|
42
42
|
if (process.env.ONLY_DATA_STRUCTURE === 'true') {
|
|
43
|
-
awsLog('CodeYam: Skipping
|
|
43
|
+
awsLog('CodeYam: Skipping execution flows and scenario generation (ONLY_DATA_STRUCTURE=true)');
|
|
44
44
|
return { analysis };
|
|
45
45
|
}
|
|
46
|
-
//
|
|
47
|
-
if (!steps || steps.includes(Step.
|
|
48
|
-
awsLogDebugLevel(1, `
|
|
49
|
-
const { step:
|
|
46
|
+
// ExecutionFlows phase: I/O-bound LLM call, can run in parallel with other entities' Structure
|
|
47
|
+
if (!steps || steps.includes(Step.ExecutionFlows)) {
|
|
48
|
+
awsLogDebugLevel(1, `Generating execution flows for ${entity.name}...`);
|
|
49
|
+
const { step: executionFlowsStep } = await recordStep('generateExecutionFlows', () => generateExecutionFlows({
|
|
50
50
|
entity,
|
|
51
51
|
analysis,
|
|
52
|
-
dependentAnalyses,
|
|
53
52
|
model,
|
|
54
53
|
updateProgress,
|
|
54
|
+
dependentAnalyses,
|
|
55
55
|
}));
|
|
56
|
-
analysis.status.steps.push(
|
|
56
|
+
analysis.status.steps.push(executionFlowsStep);
|
|
57
57
|
}
|
|
58
58
|
if (analyzeAsDependency) {
|
|
59
59
|
return { analysis };
|
|
@@ -104,7 +104,6 @@ export default async function analyzeInitial({ analysis, entity, analyzeAsDepend
|
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
106
|
catch (error) {
|
|
107
|
-
console.log(error);
|
|
108
107
|
pushAnalysisError({
|
|
109
108
|
status: analysis.status,
|
|
110
109
|
error,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyzeInitial.js","sourceRoot":"","sources":["../../../../../../../packages/analyze/src/lib/files/analyzeInitial.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,MAAM,mCAAmC,CAAC;AACtE,OAAO,oBAAoB,MAAM,kCAAkC,CAAC;AACpE,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,OAAO,EAEL,qBAAqB,GAGtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EACL,MAAM,EACN,gBAAgB,EAChB,iBAAiB,GAElB,MAAM,gBAAgB,CAAC;AACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"analyzeInitial.js","sourceRoot":"","sources":["../../../../../../../packages/analyze/src/lib/files/analyzeInitial.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,6 @@ export var Step;
|
|
|
13
13
|
// CodeQuality = 'codeQuality',
|
|
14
14
|
Step["Embed"] = "embed";
|
|
15
15
|
Step["CodeExplanation"] = "codeExplanation";
|
|
16
|
-
Step["
|
|
16
|
+
Step["ExecutionFlows"] = "executionFlows";
|
|
17
17
|
})(Step || (Step = {}));
|
|
18
18
|
//# sourceMappingURL=steps.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"steps.js","sourceRoot":"","sources":["../../../../../../../../packages/analyze/src/lib/files/enums/steps.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,IAeX;AAfD,WAAY,IAAI;IACd,2BAAmB,CAAA;IACnB,2BAAmB,CAAA;IACnB,uBAAe,CAAA;IACf,2BAAmB,CAAA;IACnB,uBAAe,CAAA;IACf,+BAAuB,CAAA;IACvB,+BAAuB,CAAA;IACvB,yCAAiC,CAAA;IACjC,qBAAa,CAAA;IACb,6BAAqB,CAAA;IACrB,+BAA+B;IAC/B,uBAAe,CAAA;IACf,2CAAmC,CAAA;IACnC,
|
|
1
|
+
{"version":3,"file":"steps.js","sourceRoot":"","sources":["../../../../../../../../packages/analyze/src/lib/files/enums/steps.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,IAeX;AAfD,WAAY,IAAI;IACd,2BAAmB,CAAA;IACnB,2BAAmB,CAAA;IACnB,uBAAe,CAAA;IACf,2BAAmB,CAAA;IACnB,uBAAe,CAAA;IACf,+BAAuB,CAAA;IACvB,+BAAuB,CAAA;IACvB,yCAAiC,CAAA;IACjC,qBAAa,CAAA;IACb,6BAAqB,CAAA;IACrB,+BAA+B;IAC/B,uBAAe,CAAA;IACf,2CAAmC,CAAA;IACnC,yCAAiC,CAAA;AACnC,CAAC,EAfW,IAAI,KAAJ,IAAI,QAef"}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enriches mocked dependency array types with fields from child component signatures.
|
|
3
|
+
*
|
|
4
|
+
* When a mocked dependency (e.g., getSurveysAction) returns an array, and elements
|
|
5
|
+
* from that array are passed to child components (e.g., SurveyCard), the child's
|
|
6
|
+
* signatureSchema specifies required fields (e.g., survey.updatedAt). This function
|
|
7
|
+
* enriches the mocked dependency's returnValueSchema so the LLM knows what fields
|
|
8
|
+
* to generate for array elements.
|
|
9
|
+
*
|
|
10
|
+
* Uses usageEquivalencies to trace data flow and ONLY enrich arrays with fields
|
|
11
|
+
* from children that actually receive elements from that array.
|
|
12
|
+
*
|
|
13
|
+
* Example:
|
|
14
|
+
* - getSurveysAction returns { data: array }
|
|
15
|
+
* - usageEquivalencies shows: surveys[] -> SurveyCard().signature[0].survey
|
|
16
|
+
* - SurveyCard expects signature[0].survey.updatedAt: date
|
|
17
|
+
* - After enrichment: getSurveysAction().data[]: object, data[].updatedAt: date
|
|
18
|
+
*/
|
|
19
|
+
export default function enrichArrayTypesFromChildSignatures(importedExports, dependencySchemas, usageEquivalencies) {
|
|
20
|
+
// Find all mocked dependencies with array return types
|
|
21
|
+
const mockedArrayPaths = [];
|
|
22
|
+
for (const importedExport of importedExports) {
|
|
23
|
+
if (!importedExport.isMocked || !importedExport.filePath)
|
|
24
|
+
continue;
|
|
25
|
+
const schema = dependencySchemas?.[importedExport.filePath]?.[importedExport.name]
|
|
26
|
+
?.returnValueSchema;
|
|
27
|
+
if (!schema)
|
|
28
|
+
continue;
|
|
29
|
+
// Find paths that are top-level data arrays (not deeply nested, not direct returns)
|
|
30
|
+
// We only want to enrich arrays that likely contain objects passed to children
|
|
31
|
+
// e.g., getSurveysAction().data but NOT:
|
|
32
|
+
// - wrapThrows().data.createdBy (deeply nested)
|
|
33
|
+
// - getStatusOptions().functionCallReturnValue (direct array return - usually options/primitives)
|
|
34
|
+
for (const [path, type] of Object.entries(schema)) {
|
|
35
|
+
// Check if type is array (including nullable/optional variants like 'array | undefined')
|
|
36
|
+
if (!type.startsWith('array'))
|
|
37
|
+
continue;
|
|
38
|
+
// Skip paths with computed property patterns like [key], [i], [0], etc.
|
|
39
|
+
// These represent dynamic access patterns, not simple data arrays
|
|
40
|
+
// We only match brackets with content (not empty [] which indicates array element type)
|
|
41
|
+
if (/\[[^\]]+\]/.test(path)) {
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
// Skip direct array returns (e.g., getStatusOptions().functionCallReturnValue)
|
|
45
|
+
// These are typically specialized arrays like [{label, value}], not entity arrays
|
|
46
|
+
if (path.endsWith('.functionCallReturnValue')) {
|
|
47
|
+
continue;
|
|
48
|
+
}
|
|
49
|
+
// Check if this is a top-level array (at most one property after functionCallReturnValue)
|
|
50
|
+
// e.g., "foo().functionCallReturnValue.data" is top-level
|
|
51
|
+
// e.g., "foo().functionCallReturnValue.data.createdBy" is nested (skip)
|
|
52
|
+
const returnValueMatch = path.match(/\.functionCallReturnValue\.(.+)$/);
|
|
53
|
+
if (returnValueMatch) {
|
|
54
|
+
const afterReturnValue = returnValueMatch[1];
|
|
55
|
+
// If there's more than one property access, it's nested
|
|
56
|
+
const propertyCount = afterReturnValue.split('.').length;
|
|
57
|
+
if (propertyCount > 1) {
|
|
58
|
+
continue; // Skip deeply nested arrays
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
mockedArrayPaths.push({
|
|
62
|
+
filePath: importedExport.filePath,
|
|
63
|
+
entityName: importedExport.name,
|
|
64
|
+
arrayPath: path,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
if (mockedArrayPaths.length === 0)
|
|
69
|
+
return;
|
|
70
|
+
// Build a map from child component signature paths to their prop fields
|
|
71
|
+
// e.g., "SurveyCard().signature[0].survey" -> { "id": "string", "updatedAt": "date" }
|
|
72
|
+
const childSignatureFieldsByPath = new Map();
|
|
73
|
+
// Helper to extract prop name and fields from a signature schema
|
|
74
|
+
const extractSignatureInfo = (entityName, schema) => {
|
|
75
|
+
// Group by prop name (e.g., signature[0].survey.id, signature[0].survey.name -> "survey")
|
|
76
|
+
const propGroups = {};
|
|
77
|
+
for (const [path, type] of Object.entries(schema)) {
|
|
78
|
+
// Match signature[0].propName.field or signature[0].propName[].field patterns
|
|
79
|
+
// The (?:\[\])? makes array props optional, handling both:
|
|
80
|
+
// - signature[0].survey.updatedAt (object prop)
|
|
81
|
+
// - signature[0].questionAnswers[].question.questionText (array prop)
|
|
82
|
+
const match = path.match(/^signature\[0\]\.(\w+)(?:\[\])?\.(.+)$/);
|
|
83
|
+
if (match) {
|
|
84
|
+
const [, propName, fieldPath] = match;
|
|
85
|
+
propGroups[propName] || (propGroups[propName] = {});
|
|
86
|
+
propGroups[propName][fieldPath] = type;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
// Store with the full signature path as key
|
|
90
|
+
for (const [propName, fields] of Object.entries(propGroups)) {
|
|
91
|
+
if (Object.keys(fields).length > 0) {
|
|
92
|
+
const signaturePath = `${entityName}().signature[0].${propName}`;
|
|
93
|
+
childSignatureFieldsByPath.set(signaturePath, { propName, fields });
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
// Process all schemas in dependencySchemas
|
|
98
|
+
if (dependencySchemas) {
|
|
99
|
+
for (const [, entities] of Object.entries(dependencySchemas)) {
|
|
100
|
+
for (const [entityName, schemas] of Object.entries(entities)) {
|
|
101
|
+
const signatureSchema = schemas?.signatureSchema;
|
|
102
|
+
if (signatureSchema) {
|
|
103
|
+
extractSignatureInfo(entityName, signatureSchema);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
if (childSignatureFieldsByPath.size === 0)
|
|
109
|
+
return;
|
|
110
|
+
// Helper to check if a local variable name could be derived from a mocked function name
|
|
111
|
+
// e.g., "getSurveys" -> "surveys", "fetchUsers" -> "users", "loadData" -> "data"
|
|
112
|
+
// e.g., "getSurveysAction" -> "surveys" (removes "Action" suffix too)
|
|
113
|
+
const couldBeDerivedFrom = (localVarName, mockedFunctionName) => {
|
|
114
|
+
const normalizedVar = localVarName.toLowerCase().replace(/\[\]$/, '');
|
|
115
|
+
let normalizedFunc = mockedFunctionName.toLowerCase();
|
|
116
|
+
// Direct match (e.g., "surveys" from function "surveys")
|
|
117
|
+
if (normalizedFunc === normalizedVar)
|
|
118
|
+
return true;
|
|
119
|
+
// Remove common prefixes like "get", "fetch", "load", "use"
|
|
120
|
+
const prefixPattern = /^(get|fetch|load|use)/i;
|
|
121
|
+
normalizedFunc = normalizedFunc.replace(prefixPattern, '');
|
|
122
|
+
// Remove common suffixes like "Action", "Query", "Mutation", "Handler"
|
|
123
|
+
const suffixPattern = /(action|query|mutation|handler)$/i;
|
|
124
|
+
normalizedFunc = normalizedFunc.replace(suffixPattern, '');
|
|
125
|
+
// Check if function name (without prefix/suffix) matches the variable name
|
|
126
|
+
if (normalizedFunc === normalizedVar)
|
|
127
|
+
return true;
|
|
128
|
+
// Check for singular/plural relationship
|
|
129
|
+
// e.g., "survey" from "getSurveys" or "surveys" from "getSurvey"
|
|
130
|
+
if (normalizedFunc.endsWith('s') &&
|
|
131
|
+
normalizedFunc.slice(0, -1) === normalizedVar)
|
|
132
|
+
return true;
|
|
133
|
+
if (normalizedVar.endsWith('s') &&
|
|
134
|
+
normalizedVar.slice(0, -1) === normalizedFunc)
|
|
135
|
+
return true;
|
|
136
|
+
// Check if the array property name (like "data") is in the variable
|
|
137
|
+
// This handles cases like "const { data: surveys } = getSurveys()" where
|
|
138
|
+
// the local var might be the renamed destructured property
|
|
139
|
+
// Skip this for now as it's too loose
|
|
140
|
+
return false;
|
|
141
|
+
};
|
|
142
|
+
// For each mocked array, find which child signatures it flows to via usageEquivalencies
|
|
143
|
+
for (const { filePath, entityName, arrayPath } of mockedArrayPaths) {
|
|
144
|
+
const schema = dependencySchemas[filePath][entityName].returnValueSchema;
|
|
145
|
+
// Check if this array already has element type definitions
|
|
146
|
+
// If so, skip it - it's likely a specialized array like [null] for refs
|
|
147
|
+
const elementPathPrefix = `${arrayPath}[`;
|
|
148
|
+
const hasExistingElementType = Object.keys(schema).some((path) => path.startsWith(elementPathPrefix));
|
|
149
|
+
if (hasExistingElementType) {
|
|
150
|
+
// Array already has element type info (e.g., useAutoAnimate()[0]: null)
|
|
151
|
+
// Don't override it with child signature fields
|
|
152
|
+
continue;
|
|
153
|
+
}
|
|
154
|
+
// Find matching child signatures via usageEquivalencies
|
|
155
|
+
// Look for equivalencies where this array (or local variables derived from it)
|
|
156
|
+
// flows to a child component's signature
|
|
157
|
+
const matchedFields = {};
|
|
158
|
+
if (usageEquivalencies) {
|
|
159
|
+
// Check all equivalency entries for paths that could be derived from this array
|
|
160
|
+
for (const [sourcePath, targets] of Object.entries(usageEquivalencies)) {
|
|
161
|
+
// Check if this source path relates to our mocked array
|
|
162
|
+
// Direct match: "getSurveysAction().functionCallReturnValue.data[]"
|
|
163
|
+
// Indirect match: local variable like "surveys[]" that comes from the array
|
|
164
|
+
if (!sourcePath.endsWith('[]'))
|
|
165
|
+
continue;
|
|
166
|
+
// Get the local variable name from the source path (e.g., "surveys[]" -> "surveys")
|
|
167
|
+
const localVarName = sourcePath.replace(/\[\]$/, '');
|
|
168
|
+
// Check if this local variable could have come from this mocked function
|
|
169
|
+
// Use heuristics: name matching (getSurveys -> surveys, getUsers -> users)
|
|
170
|
+
if (!couldBeDerivedFrom(localVarName, entityName)) {
|
|
171
|
+
continue;
|
|
172
|
+
}
|
|
173
|
+
for (const target of targets) {
|
|
174
|
+
// Target should be something like "SurveyCard().signature[0].survey"
|
|
175
|
+
// or "SurveyCard().signature[0].surveys[]"
|
|
176
|
+
const { schemaPath } = target;
|
|
177
|
+
// Look for signature fields that match this target
|
|
178
|
+
// Handle both singular (survey) and plural (surveys[]) forms
|
|
179
|
+
const normalizedTarget = schemaPath.replace(/\[\]$/, '');
|
|
180
|
+
for (const [signaturePath, info] of childSignatureFieldsByPath) {
|
|
181
|
+
if (normalizedTarget === signaturePath) {
|
|
182
|
+
// Found a match! Add all fields from this child signature
|
|
183
|
+
for (const [fieldPath, type] of Object.entries(info.fields)) {
|
|
184
|
+
if (!matchedFields[fieldPath]) {
|
|
185
|
+
matchedFields[fieldPath] = type;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
// If no equivalencies matched, skip this array entirely
|
|
194
|
+
// This prevents the bug where ALL child signatures get merged into ALL arrays
|
|
195
|
+
if (Object.keys(matchedFields).length === 0) {
|
|
196
|
+
continue;
|
|
197
|
+
}
|
|
198
|
+
// Add array element type and matched fields
|
|
199
|
+
const elementPath = `${arrayPath}[]`;
|
|
200
|
+
schema[elementPath] = 'object';
|
|
201
|
+
for (const [fieldPath, type] of Object.entries(matchedFields)) {
|
|
202
|
+
const fullPath = `${elementPath}.${fieldPath}`;
|
|
203
|
+
if (!schema[fullPath]) {
|
|
204
|
+
schema[fullPath] = type;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
//# sourceMappingURL=enrichArrayTypesFromChildSignatures.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enrichArrayTypesFromChildSignatures.js","sourceRoot":"","sources":["../../../../../../../../packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts"],"names":[],"mappings":"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"}
|