@codeyam/codeyam-cli 0.1.0-staging.ae0de75 → 0.1.0-staging.b147f46
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/log.txt +3 -3
- package/analyzer-template/package.json +7 -7
- package/analyzer-template/packages/ai/package.json +1 -1
- package/analyzer-template/packages/ai/src/lib/astScopes/methodSemantics.ts +135 -0
- package/analyzer-template/packages/ai/src/lib/astScopes/nodeToSource.ts +19 -0
- package/analyzer-template/packages/ai/src/lib/astScopes/paths.ts +11 -4
- package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +36 -9
- package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/ParentScopeManager.ts +10 -3
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +16 -6
- package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +0 -33
- package/analyzer-template/packages/analyze/index.ts +4 -1
- package/analyzer-template/packages/analyze/src/lib/ProjectAnalyzer.ts +13 -7
- package/analyzer-template/packages/analyze/src/lib/asts/index.ts +7 -2
- package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +28 -2
- package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +5 -36
- package/analyzer-template/packages/analyze/src/lib/files/analyze/findOrCreateEntity.ts +10 -6
- package/analyzer-template/packages/analyze/src/lib/files/analyze/gatherEntityMap.ts +9 -12
- package/analyzer-template/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.ts +21 -0
- package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +82 -10
- package/analyzer-template/packages/analyze/src/lib/files/analyzeChange.ts +4 -0
- package/analyzer-template/packages/analyze/src/lib/files/analyzeInitial.ts +4 -0
- package/analyzer-template/packages/analyze/src/lib/files/analyzeNextRoute.ts +8 -3
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +239 -58
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts +0 -98
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +1684 -1462
- package/analyzer-template/packages/aws/package.json +2 -2
- package/analyzer-template/packages/database/package.json +2 -2
- package/analyzer-template/packages/database/src/lib/kysely/tables/editorScenariosTable.ts +102 -0
- package/analyzer-template/packages/database/src/lib/loadAnalysis.ts +19 -15
- package/analyzer-template/packages/database/src/lib/loadEntities.ts +0 -6
- package/analyzer-template/packages/database/src/lib/loadEntity.ts +19 -8
- package/analyzer-template/packages/database/src/lib/updateCommitMetadata.ts +0 -65
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts +9 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js +104 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js +0 -6
- package/analyzer-template/packages/github/dist/database/src/lib/loadEntities.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.d.ts +4 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.js +5 -5
- package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js +0 -25
- package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js.map +1 -1
- package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.d.ts +2 -0
- package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.js +2 -0
- package/analyzer-template/packages/github/dist/types/src/enums/ProjectFramework.js.map +1 -1
- package/analyzer-template/packages/types/src/enums/ProjectFramework.ts +2 -0
- package/analyzer-template/packages/ui-components/package.json +1 -1
- package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.d.ts +2 -0
- package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.js +2 -0
- package/analyzer-template/packages/utils/dist/types/src/enums/ProjectFramework.js.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts +3 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js +22 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js.map +1 -1
- package/analyzer-template/packages/utils/src/lib/fs/rsyncCopy.ts +27 -0
- package/analyzer-template/project/analyzeFileEntities.ts +26 -0
- package/background/src/lib/virtualized/project/analyzeFileEntities.js +22 -0
- package/background/src/lib/virtualized/project/analyzeFileEntities.js.map +1 -1
- package/codeyam-cli/src/__tests__/memory-scripts/filter-session.test.js +196 -0
- package/codeyam-cli/src/__tests__/memory-scripts/filter-session.test.js.map +1 -0
- package/codeyam-cli/src/__tests__/memory-scripts/read-json-field.test.js +114 -0
- package/codeyam-cli/src/__tests__/memory-scripts/read-json-field.test.js.map +1 -0
- package/codeyam-cli/src/__tests__/memory-scripts/ripgrep-fallback.test.js +149 -0
- package/codeyam-cli/src/__tests__/memory-scripts/ripgrep-fallback.test.js.map +1 -0
- package/codeyam-cli/src/cli.js +24 -0
- package/codeyam-cli/src/cli.js.map +1 -1
- package/codeyam-cli/src/commands/__tests__/editor.analyzeImportsArgs.test.js +47 -0
- package/codeyam-cli/src/commands/__tests__/editor.analyzeImportsArgs.test.js.map +1 -0
- package/codeyam-cli/src/commands/__tests__/editor.auditNoAutoAnalysis.test.js +71 -0
- package/codeyam-cli/src/commands/__tests__/editor.auditNoAutoAnalysis.test.js.map +1 -0
- package/codeyam-cli/src/commands/__tests__/editor.isolateArgs.test.js +51 -0
- package/codeyam-cli/src/commands/__tests__/editor.isolateArgs.test.js.map +1 -0
- package/codeyam-cli/src/commands/__tests__/editor.stepDispatch.test.js +56 -0
- package/codeyam-cli/src/commands/__tests__/editor.stepDispatch.test.js.map +1 -0
- package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js +101 -47
- package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js.map +1 -1
- package/codeyam-cli/src/commands/default.js +3 -46
- package/codeyam-cli/src/commands/default.js.map +1 -1
- package/codeyam-cli/src/commands/editor.js +4654 -836
- package/codeyam-cli/src/commands/editor.js.map +1 -1
- package/codeyam-cli/src/commands/editorAnalyzeImportsArgs.js +23 -0
- package/codeyam-cli/src/commands/editorAnalyzeImportsArgs.js.map +1 -0
- package/codeyam-cli/src/commands/editorIsolateArgs.js +25 -0
- package/codeyam-cli/src/commands/editorIsolateArgs.js.map +1 -0
- package/codeyam-cli/src/commands/init.js +69 -34
- package/codeyam-cli/src/commands/init.js.map +1 -1
- package/codeyam-cli/src/commands/telemetry.js +37 -0
- package/codeyam-cli/src/commands/telemetry.js.map +1 -0
- package/codeyam-cli/src/data/techStacks.js +77 -0
- package/codeyam-cli/src/data/techStacks.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/analyzerFinalization.test.js +173 -0
- package/codeyam-cli/src/utils/__tests__/analyzerFinalization.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/backgroundServer.test.js +46 -0
- package/codeyam-cli/src/utils/__tests__/backgroundServer.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/devServerState.test.js +134 -0
- package/codeyam-cli/src/utils/__tests__/devServerState.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorApi.test.js +137 -0
- package/codeyam-cli/src/utils/__tests__/editorApi.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorAudit.test.js +3769 -1
- package/codeyam-cli/src/utils/__tests__/editorAudit.test.js.map +1 -1
- package/codeyam-cli/src/utils/__tests__/editorBroadcastViewport.test.js +76 -0
- package/codeyam-cli/src/utils/__tests__/editorBroadcastViewport.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorCapture.test.js +93 -0
- package/codeyam-cli/src/utils/__tests__/editorCapture.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorCaptureScenarioSeeding.test.js +137 -0
- package/codeyam-cli/src/utils/__tests__/editorCaptureScenarioSeeding.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorDeleteScenario.test.js +100 -0
- package/codeyam-cli/src/utils/__tests__/editorDeleteScenario.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorDevServer.test.js +181 -3
- package/codeyam-cli/src/utils/__tests__/editorDevServer.test.js.map +1 -1
- package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js +194 -0
- package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorEntityHelpers.test.js +381 -0
- package/codeyam-cli/src/utils/__tests__/editorEntityHelpers.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorGuardMiddleware.test.js +67 -0
- package/codeyam-cli/src/utils/__tests__/editorGuardMiddleware.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorImageVerifier.test.js +294 -0
- package/codeyam-cli/src/utils/__tests__/editorImageVerifier.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorJournal.test.js +249 -2
- package/codeyam-cli/src/utils/__tests__/editorJournal.test.js.map +1 -1
- package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js +594 -0
- package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorMigration.test.js +435 -0
- package/codeyam-cli/src/utils/__tests__/editorMigration.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorPreloadHelpers.test.js +118 -1
- package/codeyam-cli/src/utils/__tests__/editorPreloadHelpers.test.js.map +1 -1
- package/codeyam-cli/src/utils/__tests__/editorPreview.test.js +217 -3
- package/codeyam-cli/src/utils/__tests__/editorPreview.test.js.map +1 -1
- package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js +153 -0
- package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorScenarioLookup.test.js +139 -0
- package/codeyam-cli/src/utils/__tests__/editorScenarioLookup.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js +291 -0
- package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js +1694 -2
- package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js.map +1 -1
- package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js +329 -0
- package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorSeedAdapterPrismaValidation.test.js +143 -0
- package/codeyam-cli/src/utils/__tests__/editorSeedAdapterPrismaValidation.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorSessionFilter.test.js +66 -0
- package/codeyam-cli/src/utils/__tests__/editorSessionFilter.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorShouldRevalidate.test.js +53 -0
- package/codeyam-cli/src/utils/__tests__/editorShouldRevalidate.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js +2121 -0
- package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/glossaryAdd.test.js +177 -0
- package/codeyam-cli/src/utils/__tests__/glossaryAdd.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js +122 -0
- package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/manualEntityAnalysis.test.js +302 -0
- package/codeyam-cli/src/utils/__tests__/manualEntityAnalysis.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/parseRegisterArg.test.js +129 -0
- package/codeyam-cli/src/utils/__tests__/parseRegisterArg.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/registerScenarioResult.test.js +127 -0
- package/codeyam-cli/src/utils/__tests__/registerScenarioResult.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/routePatternMatching.test.js +118 -0
- package/codeyam-cli/src/utils/__tests__/routePatternMatching.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js +284 -0
- package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js +672 -0
- package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/screenshotHash.test.js +84 -0
- package/codeyam-cli/src/utils/__tests__/screenshotHash.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +26 -5
- package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
- package/codeyam-cli/src/utils/__tests__/telemetry.test.js +159 -0
- package/codeyam-cli/src/utils/__tests__/telemetry.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/templateConsistency.test.js +51 -0
- package/codeyam-cli/src/utils/__tests__/templateConsistency.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/testRunner.test.js +217 -0
- package/codeyam-cli/src/utils/__tests__/testRunner.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/webappDetection.test.js +142 -0
- package/codeyam-cli/src/utils/__tests__/webappDetection.test.js.map +1 -0
- package/codeyam-cli/src/utils/analysisRunner.js +39 -8
- package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
- package/codeyam-cli/src/utils/analyzer.js +19 -0
- package/codeyam-cli/src/utils/analyzer.js.map +1 -1
- package/codeyam-cli/src/utils/analyzerFinalization.js +100 -0
- package/codeyam-cli/src/utils/analyzerFinalization.js.map +1 -0
- package/codeyam-cli/src/utils/backgroundServer.js +95 -19
- package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
- package/codeyam-cli/src/utils/database.js +37 -2
- package/codeyam-cli/src/utils/database.js.map +1 -1
- package/codeyam-cli/src/utils/devServerState.js +71 -0
- package/codeyam-cli/src/utils/devServerState.js.map +1 -0
- package/codeyam-cli/src/utils/editorApi.js +79 -0
- package/codeyam-cli/src/utils/editorApi.js.map +1 -0
- package/codeyam-cli/src/utils/editorAudit.js +753 -8
- package/codeyam-cli/src/utils/editorAudit.js.map +1 -1
- package/codeyam-cli/src/utils/editorBroadcastViewport.js +26 -0
- package/codeyam-cli/src/utils/editorBroadcastViewport.js.map +1 -0
- package/codeyam-cli/src/utils/editorCapture.js +102 -0
- package/codeyam-cli/src/utils/editorCapture.js.map +1 -0
- package/codeyam-cli/src/utils/editorDeleteScenario.js +67 -0
- package/codeyam-cli/src/utils/editorDeleteScenario.js.map +1 -0
- package/codeyam-cli/src/utils/editorDevServer.js +100 -1
- package/codeyam-cli/src/utils/editorDevServer.js.map +1 -1
- package/codeyam-cli/src/utils/editorEntityChangeStatus.js +50 -0
- package/codeyam-cli/src/utils/editorEntityChangeStatus.js.map +1 -0
- package/codeyam-cli/src/utils/editorEntityHelpers.js +144 -0
- package/codeyam-cli/src/utils/editorEntityHelpers.js.map +1 -0
- package/codeyam-cli/src/utils/editorGuard.js +36 -0
- package/codeyam-cli/src/utils/editorGuard.js.map +1 -0
- package/codeyam-cli/src/utils/editorImageVerifier.js +155 -0
- package/codeyam-cli/src/utils/editorImageVerifier.js.map +1 -0
- package/codeyam-cli/src/utils/editorJournal.js +92 -4
- package/codeyam-cli/src/utils/editorJournal.js.map +1 -1
- package/codeyam-cli/src/utils/editorLoaderHelpers.js +152 -0
- package/codeyam-cli/src/utils/editorLoaderHelpers.js.map +1 -0
- package/codeyam-cli/src/utils/editorMigration.js +224 -0
- package/codeyam-cli/src/utils/editorMigration.js.map +1 -0
- package/codeyam-cli/src/utils/editorMockState.js +1 -1
- package/codeyam-cli/src/utils/editorPreloadHelpers.js +72 -1
- package/codeyam-cli/src/utils/editorPreloadHelpers.js.map +1 -1
- package/codeyam-cli/src/utils/editorPreview.js +74 -1
- package/codeyam-cli/src/utils/editorPreview.js.map +1 -1
- package/codeyam-cli/src/utils/editorRecapture.js +109 -0
- package/codeyam-cli/src/utils/editorRecapture.js.map +1 -0
- package/codeyam-cli/src/utils/editorScenarioSwitch.js +134 -0
- package/codeyam-cli/src/utils/editorScenarioSwitch.js.map +1 -0
- package/codeyam-cli/src/utils/editorScenarios.js +620 -0
- package/codeyam-cli/src/utils/editorScenarios.js.map +1 -1
- package/codeyam-cli/src/utils/editorSeedAdapter.js +462 -0
- package/codeyam-cli/src/utils/editorSeedAdapter.js.map +1 -0
- package/codeyam-cli/src/utils/editorShouldRevalidate.js +21 -0
- package/codeyam-cli/src/utils/editorShouldRevalidate.js.map +1 -0
- package/codeyam-cli/src/utils/entityChangeStatus.js +394 -0
- package/codeyam-cli/src/utils/entityChangeStatus.js.map +1 -0
- package/codeyam-cli/src/utils/entityChangeStatus.server.js +212 -0
- package/codeyam-cli/src/utils/entityChangeStatus.server.js.map +1 -0
- package/codeyam-cli/src/utils/fileWatcher.js +38 -0
- package/codeyam-cli/src/utils/fileWatcher.js.map +1 -1
- package/codeyam-cli/src/utils/glossaryAdd.js +74 -0
- package/codeyam-cli/src/utils/glossaryAdd.js.map +1 -0
- package/codeyam-cli/src/utils/install-skills.js +15 -1
- package/codeyam-cli/src/utils/install-skills.js.map +1 -1
- package/codeyam-cli/src/utils/manualEntityAnalysis.js +196 -0
- package/codeyam-cli/src/utils/manualEntityAnalysis.js.map +1 -0
- package/codeyam-cli/src/utils/parseRegisterArg.js +31 -0
- package/codeyam-cli/src/utils/parseRegisterArg.js.map +1 -0
- package/codeyam-cli/src/utils/progress.js +2 -2
- package/codeyam-cli/src/utils/progress.js.map +1 -1
- package/codeyam-cli/src/utils/queue/job.js +26 -5
- package/codeyam-cli/src/utils/queue/job.js.map +1 -1
- package/codeyam-cli/src/utils/registerScenarioResult.js +52 -0
- package/codeyam-cli/src/utils/registerScenarioResult.js.map +1 -0
- package/codeyam-cli/src/utils/routePatternMatching.js +129 -0
- package/codeyam-cli/src/utils/routePatternMatching.js.map +1 -0
- package/codeyam-cli/src/utils/scenarioCoverage.js +77 -0
- package/codeyam-cli/src/utils/scenarioCoverage.js.map +1 -0
- package/codeyam-cli/src/utils/scenariosManifest.js +307 -0
- package/codeyam-cli/src/utils/scenariosManifest.js.map +1 -0
- package/codeyam-cli/src/utils/screenshotHash.js +26 -0
- package/codeyam-cli/src/utils/screenshotHash.js.map +1 -0
- package/codeyam-cli/src/utils/serverState.js +30 -0
- package/codeyam-cli/src/utils/serverState.js.map +1 -1
- package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +47 -16
- package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
- package/codeyam-cli/src/utils/simulationGateMiddleware.js +17 -1
- package/codeyam-cli/src/utils/simulationGateMiddleware.js.map +1 -1
- package/codeyam-cli/src/utils/slugUtils.js +25 -0
- package/codeyam-cli/src/utils/slugUtils.js.map +1 -0
- package/codeyam-cli/src/utils/syncMocksMiddleware.js +2 -2
- package/codeyam-cli/src/utils/syncMocksMiddleware.js.map +1 -1
- package/codeyam-cli/src/utils/telemetry.js +106 -0
- package/codeyam-cli/src/utils/telemetry.js.map +1 -0
- package/codeyam-cli/src/utils/telemetryMiddleware.js +22 -0
- package/codeyam-cli/src/utils/telemetryMiddleware.js.map +1 -0
- package/codeyam-cli/src/utils/testRunner.js +199 -1
- package/codeyam-cli/src/utils/testRunner.js.map +1 -1
- package/codeyam-cli/src/utils/webappDetection.js +21 -0
- package/codeyam-cli/src/utils/webappDetection.js.map +1 -1
- package/codeyam-cli/src/webserver/__tests__/buildPtyEnv.test.js +35 -0
- package/codeyam-cli/src/webserver/__tests__/buildPtyEnv.test.js.map +1 -0
- package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js +107 -0
- package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js.map +1 -0
- package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js +647 -0
- package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js.map +1 -0
- package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js +283 -0
- package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js.map +1 -0
- package/codeyam-cli/src/webserver/__tests__/stripClaudeCommand.test.js +135 -0
- package/codeyam-cli/src/webserver/__tests__/stripClaudeCommand.test.js.map +1 -0
- package/codeyam-cli/src/webserver/app/lib/clientErrors.js +86 -0
- package/codeyam-cli/src/webserver/app/lib/clientErrors.js.map +1 -0
- package/codeyam-cli/src/webserver/app/lib/git.js +397 -0
- package/codeyam-cli/src/webserver/app/lib/git.js.map +1 -0
- package/codeyam-cli/src/webserver/app/types/editor.js +8 -0
- package/codeyam-cli/src/webserver/app/types/editor.js.map +1 -0
- package/codeyam-cli/src/webserver/backgroundServer.js +60 -61
- package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/CopyButton-CLe80MMu.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{EntityItem-C76mRRiF.js → EntityItem-Crt_KN_U.js} +5 -5
- package/codeyam-cli/src/webserver/build/client/assets/EntityTypeBadge-CQgyEGV-.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeIcon-CobE682z.js → EntityTypeIcon-CD7lGABo.js} +9 -9
- package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-CgTNOhnu.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-CKeQT5Ty.js +25 -0
- package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-D3s1MFkb.js +3 -0
- package/codeyam-cli/src/webserver/build/client/assets/{LoadingDots-BU_OAEMP.js → LoadingDots-By5zI316.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/{LogViewer-ceAyBX-H.js → LogViewer-CM5zg40N.js} +3 -3
- package/codeyam-cli/src/webserver/build/client/assets/MiniClaudeChat-CQENLSrF.js +36 -0
- package/codeyam-cli/src/webserver/build/client/assets/{ReportIssueModal-djPLI-WV.js → ReportIssueModal-C2PLkej3.js} +4 -4
- package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-DanvyBPb.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{ScenarioViewer-B76aig_2.js → ScenarioViewer-DUMfcNVK.js} +3 -3
- package/codeyam-cli/src/webserver/build/client/assets/Spinner-D0LgAaSa.js +34 -0
- package/codeyam-cli/src/webserver/build/client/assets/TruncatedFilePath-CK7-NaPZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/ViewportInspectBar-BA_Ry-rs.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{_index-C96V0n15.js → _index-BAWd-Xjf.js} +4 -4
- package/codeyam-cli/src/webserver/build/client/assets/{activity.(_tab)-BpKzcsJz.js → activity.(_tab)-BOARiB-g.js} +8 -8
- package/codeyam-cli/src/webserver/build/client/assets/addon-canvas-DpzMmAy5.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/addon-fit-YJmn1quW.js +12 -0
- package/codeyam-cli/src/webserver/build/client/assets/{addon-web-links-Duc5hnl7.js → addon-web-links-CHx25PAe.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/addon-webgl-DI8QOUvO.js +58 -0
- package/codeyam-cli/src/webserver/build/client/assets/{agent-transcripts-D9hemwl6.js → agent-transcripts-Bg3e7q4S.js} +7 -7
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-file-diff-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-file-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-project-info-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-recapture-stale-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-rename-scenario-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-save-scenario-data-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-save-seed-state-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-coverage-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-prompt-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-schema-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-session-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{book-open-D_nMCFmP.js → book-open-CL-lMgHh.js} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/{chevron-down-BH2h1Ea2.js → chevron-down-GmAjGS9-.js} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/chunk-JZWAC4HX-BAdwhyCx.js +43 -0
- package/codeyam-cli/src/webserver/build/client/assets/{circle-check-DyIKORY6.js → circle-check-DFcQkN5j.js} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/{copy-NDbZjXao.js → copy-C6iF61Xs.js} +3 -3
- package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-4ImjHTVC.js +41 -0
- package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-Coe5NhbS.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{cy-logo-cli-CCKUIm0S.svg → cy-logo-cli-DoA97ML3.svg} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/dev.empty-C8y4mmyv.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/editor._tab-Gbk_i5Js.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/editor.entity.(_sha)-DMv5ESGo.js +96 -0
- package/codeyam-cli/src/webserver/build/client/assets/editorPreview-CluPkvXJ.js +41 -0
- package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-CrjR3zZW.js → entity._sha._-ByHz6rAQ.js} +14 -13
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.dev-CmLO432x.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-Bz9sCUF_.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-DQM8E7L4.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.edit._scenarioId-BMvVHNXU.js → entity._sha_.edit._scenarioId-CAoXLsQr.js} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/{entry.client-DTvKq3TY.js → entry.client-SuW9syRS.js} +6 -6
- package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-Daa96Fr1.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/files-D-xGrg29.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/git-Bq_fbXP5.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/globals-oyPmV37k.css +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{index-BcvgDzbZ.js → index-Bp1l4hSv.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/{index-10oVnAAH.js → index-CWV9XZiG.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/index-DE3jI_dv.js +15 -0
- package/codeyam-cli/src/webserver/build/client/assets/jsx-runtime-D_zvdyIk.js +9 -0
- package/codeyam-cli/src/webserver/build/client/assets/labs-B_IX45ih.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{loader-circle-BAXYRVEO.js → loader-circle-De-7qQ2u.js} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/manifest-1a45e154.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/memory-Cx2xEx7s.js +101 -0
- package/codeyam-cli/src/webserver/build/client/assets/{pause-DTAcYxBt.js → pause-CFxEKL1u.js} +3 -3
- package/codeyam-cli/src/webserver/build/client/assets/root-D2_tktnk.js +80 -0
- package/codeyam-cli/src/webserver/build/client/assets/{search-fKo7v0Zo.js → search-BdBb5aqc.js} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/settings-DdE-Untf.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/simulations-DSCdE99u.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{terminal-BG4heKCG.js → terminal-CrplD4b1.js} +3 -3
- package/codeyam-cli/src/webserver/build/client/assets/{triangle-alert-DtSmdtM4.js → triangle-alert-DqJ0j69l.js} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-DhXHbEjP.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{useLastLogLine-C14nCb1q.js → useLastLogLine-BNd5hYuW.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/useReportContext-Cy5Qg_UR.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/useToast-5HR2j9ZE.js +1 -0
- package/codeyam-cli/src/webserver/build/client/sound-test.html +98 -0
- package/codeyam-cli/src/webserver/build/server/assets/analysisRunner-By5slFjw.js +16 -0
- package/codeyam-cli/src/webserver/build/server/assets/index-DXaOwBnm.js +1 -0
- package/codeyam-cli/src/webserver/build/server/assets/init-CLG1LjQM.js +10 -0
- package/codeyam-cli/src/webserver/build/server/assets/progress-CHTtrxFG.js +1 -0
- package/codeyam-cli/src/webserver/build/server/assets/server-build-NZmUqQv6.js +688 -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/editorProxy.js +638 -50
- package/codeyam-cli/src/webserver/editorProxy.js.map +1 -1
- package/codeyam-cli/src/webserver/idleDetector.js +121 -0
- package/codeyam-cli/src/webserver/idleDetector.js.map +1 -0
- package/codeyam-cli/src/webserver/mockStateEvents.js +28 -0
- package/codeyam-cli/src/webserver/mockStateEvents.js.map +1 -0
- package/codeyam-cli/src/webserver/public/sound-test.html +98 -0
- package/codeyam-cli/src/webserver/scripts/codeyam-preload.mjs +242 -3
- package/codeyam-cli/src/webserver/scripts/journalCapture.ts +147 -4
- package/codeyam-cli/src/webserver/server.js +169 -16
- package/codeyam-cli/src/webserver/server.js.map +1 -1
- package/codeyam-cli/src/webserver/terminalServer.js +321 -49
- package/codeyam-cli/src/webserver/terminalServer.js.map +1 -1
- package/codeyam-cli/templates/__tests__/editor-step-hook.prompt-capture.test.ts +118 -0
- package/codeyam-cli/templates/chrome-extension-react/EXTENSION_SETUP.md +75 -0
- package/codeyam-cli/templates/chrome-extension-react/README.md +46 -0
- package/codeyam-cli/templates/chrome-extension-react/gitignore +15 -0
- package/codeyam-cli/templates/chrome-extension-react/index.html +12 -0
- package/codeyam-cli/templates/chrome-extension-react/package.json +27 -0
- package/codeyam-cli/templates/chrome-extension-react/popup.html +12 -0
- package/codeyam-cli/templates/chrome-extension-react/public/manifest.json +15 -0
- package/codeyam-cli/templates/chrome-extension-react/src/background/service-worker.ts +7 -0
- package/codeyam-cli/templates/chrome-extension-react/src/globals.css +6 -0
- package/codeyam-cli/templates/chrome-extension-react/src/lib/storage.ts +37 -0
- package/codeyam-cli/templates/chrome-extension-react/src/popup/App.tsx +12 -0
- package/codeyam-cli/templates/chrome-extension-react/src/popup/main.tsx +10 -0
- package/codeyam-cli/templates/chrome-extension-react/tsconfig.json +24 -0
- package/codeyam-cli/templates/chrome-extension-react/vite.config.ts +41 -0
- package/codeyam-cli/templates/codeyam-editor-claude.md +86 -5
- package/codeyam-cli/templates/codeyam-editor-reference.md +216 -0
- package/codeyam-cli/templates/editor-step-hook.py +262 -41
- package/codeyam-cli/templates/expo-react-native/MOBILE_SETUP.md +89 -0
- package/codeyam-cli/templates/expo-react-native/README.md +41 -0
- package/codeyam-cli/templates/expo-react-native/app/(tabs)/_layout.tsx +33 -0
- package/codeyam-cli/templates/expo-react-native/app/(tabs)/index.tsx +12 -0
- package/codeyam-cli/templates/expo-react-native/app/(tabs)/settings.tsx +12 -0
- package/codeyam-cli/templates/expo-react-native/app/_layout.tsx +12 -0
- package/codeyam-cli/templates/expo-react-native/app.json +18 -0
- package/codeyam-cli/templates/expo-react-native/babel.config.js +9 -0
- package/codeyam-cli/templates/expo-react-native/gitignore +12 -0
- package/codeyam-cli/templates/expo-react-native/global.css +3 -0
- package/codeyam-cli/templates/expo-react-native/lib/storage.ts +32 -0
- package/codeyam-cli/templates/expo-react-native/metro.config.js +6 -0
- package/codeyam-cli/templates/expo-react-native/nativewind-env.d.ts +1 -0
- package/codeyam-cli/templates/expo-react-native/package.json +38 -0
- package/codeyam-cli/templates/expo-react-native/tailwind.config.js +10 -0
- package/codeyam-cli/templates/expo-react-native/tsconfig.json +10 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/AUTH_PATTERNS.md +308 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/AUTH_UPGRADE.md +304 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/DATABASE.md +126 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/FEATURE_PATTERNS.md +37 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/README.md +53 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/app/codeyam-isolate/layout.tsx +12 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/app/lib/prisma.ts +9 -4
- package/codeyam-cli/templates/nextjs-prisma-sqlite/env +4 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/gitignore +21 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/package.json +6 -2
- package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma/seed.ts +4 -1
- package/codeyam-cli/templates/nextjs-prisma-sqlite/seed-adapter.ts +135 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/vitest.config.ts +13 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/README.md +52 -0
- package/codeyam-cli/templates/{nextjs-prisma-sqlite/PRISMA_SETUP.md → nextjs-prisma-supabase/SUPABASE_SETUP.md} +37 -17
- package/codeyam-cli/templates/nextjs-prisma-supabase/app/api/todos/route.ts +17 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/app/globals.css +26 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/app/layout.tsx +34 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/app/lib/prisma.ts +20 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/app/lib/supabase.ts +12 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/app/page.tsx +10 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/env +9 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/eslint.config.mjs +11 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/gitignore +40 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/next.config.ts +11 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/package.json +37 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/postcss.config.mjs +7 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/prisma/schema.prisma +27 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/prisma/seed.ts +39 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/prisma.config.ts +12 -0
- package/codeyam-cli/templates/nextjs-prisma-supabase/tsconfig.json +34 -0
- package/codeyam-cli/templates/seed-adapters/supabase.ts +282 -0
- package/codeyam-cli/templates/skills/codeyam-dev-mode/SKILL.md +2 -2
- package/codeyam-cli/templates/skills/codeyam-editor/SKILL.md +177 -17
- package/codeyam-cli/templates/skills/codeyam-memory/SKILL.md +10 -10
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/detect-deprecated-patterns.mjs +139 -0
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/find-exports.mjs +52 -0
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/lib/read-json-field.mjs +61 -0
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/lib/ripgrep-fallback.mjs +155 -0
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/cleanup.mjs +13 -0
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/filter-session.mjs +95 -0
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/preprocess.mjs +160 -0
- package/package.json +16 -10
- package/packages/ai/src/lib/astScopes/methodSemantics.js +99 -0
- package/packages/ai/src/lib/astScopes/methodSemantics.js.map +1 -1
- package/packages/ai/src/lib/astScopes/nodeToSource.js +16 -0
- package/packages/ai/src/lib/astScopes/nodeToSource.js.map +1 -1
- package/packages/ai/src/lib/astScopes/paths.js +12 -3
- package/packages/ai/src/lib/astScopes/paths.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +27 -10
- package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/ParentScopeManager.js +9 -2
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/ParentScopeManager.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +14 -4
- package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
- package/packages/ai/src/lib/generateExecutionFlows.js +0 -11
- package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -1
- package/packages/analyze/index.js +1 -1
- package/packages/analyze/index.js.map +1 -1
- package/packages/analyze/src/lib/ProjectAnalyzer.js +10 -4
- package/packages/analyze/src/lib/ProjectAnalyzer.js.map +1 -1
- package/packages/analyze/src/lib/asts/index.js +4 -2
- package/packages/analyze/src/lib/asts/index.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +16 -2
- package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +6 -26
- package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js +3 -2
- package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js +9 -7
- package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js +14 -0
- package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +44 -11
- package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
- package/packages/analyze/src/lib/files/analyzeChange.js +1 -0
- package/packages/analyze/src/lib/files/analyzeChange.js.map +1 -1
- package/packages/analyze/src/lib/files/analyzeInitial.js +1 -0
- package/packages/analyze/src/lib/files/analyzeInitial.js.map +1 -1
- package/packages/analyze/src/lib/files/analyzeNextRoute.js +5 -1
- package/packages/analyze/src/lib/files/analyzeNextRoute.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +120 -28
- package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js +0 -40
- package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +1368 -1193
- package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
- package/packages/database/src/lib/kysely/tables/editorScenariosTable.js +104 -0
- package/packages/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -1
- package/packages/database/src/lib/loadAnalysis.js +1 -1
- package/packages/database/src/lib/loadAnalysis.js.map +1 -1
- package/packages/database/src/lib/loadEntities.js +0 -6
- package/packages/database/src/lib/loadEntities.js.map +1 -1
- package/packages/database/src/lib/loadEntity.js +5 -5
- package/packages/database/src/lib/loadEntity.js.map +1 -1
- package/packages/database/src/lib/updateCommitMetadata.js +0 -25
- package/packages/database/src/lib/updateCommitMetadata.js.map +1 -1
- package/packages/types/src/enums/ProjectFramework.js +2 -0
- package/packages/types/src/enums/ProjectFramework.js.map +1 -1
- package/packages/utils/src/lib/fs/rsyncCopy.js +22 -1
- package/packages/utils/src/lib/fs/rsyncCopy.js.map +1 -1
- package/scripts/npm-post-install.cjs +22 -0
- package/codeyam-cli/src/webserver/build/client/assets/CopyButton-DmJveP3T.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/EntityTypeBadge-g3saevPb.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-Bu6c6aDe.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-DYFW3lDD.js +0 -25
- package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-DLeucoVX.js +0 -3
- package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-BED4B6sP.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/Spinner-Bb5uFQ5V.js +0 -34
- package/codeyam-cli/src/webserver/build/client/assets/Terminal-wkqC0AQk.js +0 -41
- package/codeyam-cli/src/webserver/build/client/assets/TruncatedFilePath-C8OKAR5x.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/addon-fit-CUXOrorO.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/chunk-JZWAC4HX-C4pqxYJB.js +0 -51
- package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-CMT1jU2q.js +0 -21
- package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-DcX-ZS3p.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/dev.empty-BiM6z3Do.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/editor-CdjF_fX6.js +0 -8
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.dev-D8ILZMR0.js +0 -6
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-C28BiQzt.js +0 -6
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-p9hhkjJM.js +0 -6
- package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-cPo8LiG3.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/files-DO4CZ16O.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/git-CFCTYk9I.js +0 -15
- package/codeyam-cli/src/webserver/build/client/assets/globals-B17TBSS6.css +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/labs-Zk7ryIM1.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/manifest-b8fd6b07.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/memory-FweZHj5U.js +0 -93
- package/codeyam-cli/src/webserver/build/client/assets/root-DUKqhFlb.js +0 -67
- package/codeyam-cli/src/webserver/build/client/assets/settings-DfuTtcJP.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/simulations-B3aOzpCZ.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-ByhSyh0W.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/useReportContext-O-jkvSPx.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/useToast-9FIWuYfK.js +0 -1
- package/codeyam-cli/src/webserver/build/server/assets/index-BLhjL9Xi.js +0 -1
- package/codeyam-cli/src/webserver/build/server/assets/server-build-DyMuI5mU.js +0 -363
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/detect-deprecated-patterns.sh +0 -108
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/find-exports.sh +0 -69
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/cleanup.sh +0 -12
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/filter.jq +0 -45
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/session-mining/preprocess.sh +0 -139
|
@@ -11,8 +11,10 @@ import {
|
|
|
11
11
|
clearAttributesFromMapping,
|
|
12
12
|
mergeJsonTypeDefinitions,
|
|
13
13
|
} from '~codeyam/ai';
|
|
14
|
-
import mergeInDependentDataStructure
|
|
15
|
-
|
|
14
|
+
import mergeInDependentDataStructure, {
|
|
15
|
+
DataStructureTimeoutError,
|
|
16
|
+
} from './mergeInDependentDataStructure';
|
|
17
|
+
import { awsLog, awsLogDebugLevel } from '~codeyam/utils';
|
|
16
18
|
import gatherDataForMocks from './gatherDataForMocks';
|
|
17
19
|
import enrichArrayTypesFromChildSignatures from './enrichArrayTypesFromChildSignatures';
|
|
18
20
|
import enrichUnknownTypesFromSourceEquivalencies from './enrichUnknownTypesFromSourceEquivalencies';
|
|
@@ -328,12 +330,23 @@ export default function generateDataStructure({
|
|
|
328
330
|
|
|
329
331
|
// Recursive function to traverse the dependency tree
|
|
330
332
|
const processedAnalyses = new Set<string>();
|
|
333
|
+
const traverseStart = Date.now();
|
|
334
|
+
const TRAVERSE_TIMEOUT_MS = 2_000;
|
|
335
|
+
let traverseCount = 0;
|
|
331
336
|
const traverseDependencyTree = (analyses: ReadonlyAnalysisMap) => {
|
|
332
337
|
for (const filePath in analyses) {
|
|
333
338
|
for (const name in analyses[filePath]) {
|
|
334
339
|
const analysisKey = `${filePath}:${name}`;
|
|
335
340
|
if (processedAnalyses.has(analysisKey)) continue;
|
|
336
341
|
processedAnalyses.add(analysisKey);
|
|
342
|
+
traverseCount++;
|
|
343
|
+
|
|
344
|
+
if (Date.now() - traverseStart > TRAVERSE_TIMEOUT_MS) {
|
|
345
|
+
throw new DataStructureTimeoutError(
|
|
346
|
+
entity.name,
|
|
347
|
+
Date.now() - traverseStart,
|
|
348
|
+
);
|
|
349
|
+
}
|
|
337
350
|
|
|
338
351
|
const childAnalysis = analyses[filePath][name];
|
|
339
352
|
const childEntity = childAnalysis?.entity;
|
|
@@ -443,6 +456,25 @@ export default function generateDataStructure({
|
|
|
443
456
|
// Start traversal from direct non-mocked children
|
|
444
457
|
traverseDependencyTree(nonMockedDependentAnalyses);
|
|
445
458
|
|
|
459
|
+
const traverseElapsed = Date.now() - traverseStart;
|
|
460
|
+
const childSchemaKeyCount = Object.values(childDependencySchemas).reduce(
|
|
461
|
+
(sum, fileMap) =>
|
|
462
|
+
sum +
|
|
463
|
+
Object.values(fileMap).reduce(
|
|
464
|
+
(s, schema) =>
|
|
465
|
+
s +
|
|
466
|
+
Object.keys(schema.signatureSchema || {}).length +
|
|
467
|
+
Object.keys(schema.returnValueSchema || {}).length,
|
|
468
|
+
0,
|
|
469
|
+
),
|
|
470
|
+
0,
|
|
471
|
+
);
|
|
472
|
+
awsLogDebugLevel(
|
|
473
|
+
1,
|
|
474
|
+
`Dependency tree traversal for ${entity.name}: ${traverseCount} analyses, ` +
|
|
475
|
+
`${childSchemaKeyCount} child schema keys, ${allImportedExports.length} imports, ${traverseElapsed}ms`,
|
|
476
|
+
);
|
|
477
|
+
|
|
446
478
|
// console.info(
|
|
447
479
|
// 'CODEYAM DEBUG: start merge',
|
|
448
480
|
// JSON.stringify(
|
|
@@ -484,6 +516,14 @@ export default function generateDataStructure({
|
|
|
484
516
|
dependencySchemas: isolatedDataStructure.dependencySchemas,
|
|
485
517
|
});
|
|
486
518
|
|
|
519
|
+
const mergeStart = Date.now();
|
|
520
|
+
// Shared deadline for all phases from merge onward
|
|
521
|
+
const genDeadline = mergeStart + 5_000; // 5s total budget for all phases
|
|
522
|
+
awsLogDebugLevel(
|
|
523
|
+
1,
|
|
524
|
+
`Starting mergeInDependentDataStructure for ${entity.name}...`,
|
|
525
|
+
);
|
|
526
|
+
|
|
487
527
|
const mergedDataStructure = mergeInDependentDataStructure({
|
|
488
528
|
importedExports: allImportedExports,
|
|
489
529
|
dependentAnalyses: nonMockedDependentAnalyses,
|
|
@@ -498,6 +538,14 @@ export default function generateDataStructure({
|
|
|
498
538
|
dependencySchemas: isolatedDataStructure?.dependencySchemas || {},
|
|
499
539
|
});
|
|
500
540
|
|
|
541
|
+
const mergeTimedOut = !!(mergedDataStructure as any).timedOut;
|
|
542
|
+
awsLogDebugLevel(
|
|
543
|
+
1,
|
|
544
|
+
`mergeInDependentDataStructure ${mergeTimedOut ? 'PARTIAL' : 'complete'} for ${entity.name}: ` +
|
|
545
|
+
`${Object.keys(mergedDataStructure.signatureSchema).length} sig, ` +
|
|
546
|
+
`${Object.keys(mergedDataStructure.returnValueSchema).length} ret, ${Date.now() - mergeStart}ms`,
|
|
547
|
+
);
|
|
548
|
+
|
|
501
549
|
mergedDataStructure.environmentVariables =
|
|
502
550
|
isolatedDataStructure.environmentVariables || [];
|
|
503
551
|
|
|
@@ -511,6 +559,7 @@ export default function generateDataStructure({
|
|
|
511
559
|
// Merge collected child dependency schemas into mergedDataStructure.
|
|
512
560
|
// This ensures that when gatherDataForMocks looks up schemas for child imports,
|
|
513
561
|
// the child's schemas are available.
|
|
562
|
+
const childMergeStart = Date.now();
|
|
514
563
|
for (const schemaFilePath in childDependencySchemas) {
|
|
515
564
|
for (const schemaName in childDependencySchemas[schemaFilePath]) {
|
|
516
565
|
mergedDataStructure.dependencySchemas[schemaFilePath] ||= {};
|
|
@@ -561,7 +610,13 @@ export default function generateDataStructure({
|
|
|
561
610
|
}
|
|
562
611
|
}
|
|
563
612
|
|
|
613
|
+
awsLogDebugLevel(
|
|
614
|
+
1,
|
|
615
|
+
`Child schema merge for ${entity.name}: ${Date.now() - childMergeStart}ms`,
|
|
616
|
+
);
|
|
617
|
+
|
|
564
618
|
// Transformation tracing: capture after child schemas merged
|
|
619
|
+
const snapshotStart = Date.now();
|
|
565
620
|
transformationTracer.snapshot(entity.name, 'childSchemasMerged', {
|
|
566
621
|
signatureSchema: mergedDataStructure.signatureSchema,
|
|
567
622
|
returnValueSchema: mergedDataStructure.returnValueSchema,
|
|
@@ -588,71 +643,134 @@ export default function generateDataStructure({
|
|
|
588
643
|
// ),
|
|
589
644
|
// );
|
|
590
645
|
|
|
646
|
+
awsLogDebugLevel(
|
|
647
|
+
1,
|
|
648
|
+
`Transformation snapshot for ${entity.name}: ${Date.now() - snapshotStart}ms`,
|
|
649
|
+
);
|
|
650
|
+
|
|
591
651
|
// Deduplicate function schemas in the merged data structure
|
|
592
652
|
// The merge process might introduce duplicates even if individual schemas were clean
|
|
593
|
-
|
|
594
|
-
const sigBefore = { ...mergedDataStructure.signatureSchema };
|
|
595
|
-
mergedDataStructure.signatureSchema = deduplicateFunctionSchemas(
|
|
596
|
-
mergedDataStructure.signatureSchema,
|
|
597
|
-
);
|
|
598
|
-
transformationTracer.traceSchemaTransformResult(
|
|
599
|
-
entity.name,
|
|
600
|
-
'deduplicateFunctionSchemas',
|
|
601
|
-
sigBefore,
|
|
602
|
-
mergedDataStructure.signatureSchema,
|
|
603
|
-
{ schemaType: 'signature' },
|
|
604
|
-
);
|
|
653
|
+
const dedupStart = Date.now();
|
|
605
654
|
|
|
606
|
-
|
|
607
|
-
const
|
|
608
|
-
mergedDataStructure.returnValueSchema = deduplicateFunctionSchemas(
|
|
655
|
+
const sigKeyCount = Object.keys(mergedDataStructure.signatureSchema).length;
|
|
656
|
+
const retKeyCount = Object.keys(
|
|
609
657
|
mergedDataStructure.returnValueSchema,
|
|
610
|
-
);
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
658
|
+
).length;
|
|
659
|
+
|
|
660
|
+
// Skip dedup on very large schemas — the O(keys × variants × keyLength) cost
|
|
661
|
+
// is not worth it for schemas with 10K+ keys where function dedup rarely matters.
|
|
662
|
+
const DEDUP_KEY_THRESHOLD = 10_000;
|
|
663
|
+
|
|
664
|
+
if (sigKeyCount < DEDUP_KEY_THRESHOLD) {
|
|
665
|
+
const sigBefore = { ...mergedDataStructure.signatureSchema };
|
|
666
|
+
mergedDataStructure.signatureSchema = deduplicateFunctionSchemas(
|
|
667
|
+
mergedDataStructure.signatureSchema,
|
|
668
|
+
);
|
|
669
|
+
transformationTracer.traceSchemaTransformResult(
|
|
670
|
+
entity.name,
|
|
671
|
+
'deduplicateFunctionSchemas',
|
|
672
|
+
sigBefore,
|
|
673
|
+
mergedDataStructure.signatureSchema,
|
|
674
|
+
{ schemaType: 'signature' },
|
|
675
|
+
);
|
|
676
|
+
} else {
|
|
677
|
+
awsLogDebugLevel(
|
|
678
|
+
2,
|
|
679
|
+
`${entity.name}: skipping sig dedup (${sigKeyCount} keys > ${DEDUP_KEY_THRESHOLD})`,
|
|
680
|
+
);
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
if (retKeyCount < DEDUP_KEY_THRESHOLD) {
|
|
684
|
+
const rvBefore = { ...mergedDataStructure.returnValueSchema };
|
|
685
|
+
mergedDataStructure.returnValueSchema = deduplicateFunctionSchemas(
|
|
686
|
+
mergedDataStructure.returnValueSchema,
|
|
687
|
+
);
|
|
688
|
+
transformationTracer.traceSchemaTransformResult(
|
|
689
|
+
entity.name,
|
|
690
|
+
'deduplicateFunctionSchemas',
|
|
691
|
+
rvBefore,
|
|
692
|
+
mergedDataStructure.returnValueSchema,
|
|
693
|
+
{ schemaType: 'returnValue' },
|
|
694
|
+
);
|
|
695
|
+
} else {
|
|
696
|
+
awsLogDebugLevel(
|
|
697
|
+
2,
|
|
698
|
+
`${entity.name}: skipping ret dedup (${retKeyCount} keys > ${DEDUP_KEY_THRESHOLD})`,
|
|
699
|
+
);
|
|
700
|
+
}
|
|
701
|
+
|
|
702
|
+
awsLogDebugLevel(
|
|
703
|
+
1,
|
|
704
|
+
`${entity.name}: root schema dedup ${Date.now() - dedupStart}ms (sig=${sigKeyCount}, ret=${retKeyCount})`,
|
|
617
705
|
);
|
|
618
706
|
|
|
619
707
|
// Also deduplicate dependency schemas and clear known attributes
|
|
708
|
+
let depProcessed = 0;
|
|
709
|
+
const depStart = Date.now();
|
|
620
710
|
for (const filePath in mergedDataStructure.dependencySchemas) {
|
|
621
711
|
for (const depEntityName in mergedDataStructure.dependencySchemas[
|
|
622
712
|
filePath
|
|
623
713
|
]) {
|
|
714
|
+
if (Date.now() > genDeadline) {
|
|
715
|
+
throw new DataStructureTimeoutError(
|
|
716
|
+
entity.name,
|
|
717
|
+
Date.now() - mergeStart,
|
|
718
|
+
);
|
|
719
|
+
}
|
|
720
|
+
|
|
624
721
|
const depSchema =
|
|
625
722
|
mergedDataStructure.dependencySchemas[filePath][depEntityName];
|
|
723
|
+
const depSigKeys = Object.keys(depSchema.signatureSchema || {}).length;
|
|
724
|
+
const depRetKeys = Object.keys(
|
|
725
|
+
depSchema.returnValueSchema || {},
|
|
726
|
+
).length;
|
|
626
727
|
|
|
627
|
-
|
|
628
|
-
const depSigBefore = { ...depSchema.signatureSchema };
|
|
629
|
-
depSchema.signatureSchema = deduplicateFunctionSchemas(
|
|
630
|
-
depSchema.signatureSchema,
|
|
631
|
-
);
|
|
632
|
-
transformationTracer.traceSchemaTransformResult(
|
|
633
|
-
entity.name,
|
|
634
|
-
'deduplicateFunctionSchemas',
|
|
635
|
-
depSigBefore,
|
|
636
|
-
depSchema.signatureSchema,
|
|
637
|
-
{ filePath, dependencyName: depEntityName, schemaType: 'signature' },
|
|
638
|
-
);
|
|
728
|
+
const depOpStart = Date.now();
|
|
639
729
|
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
730
|
+
if (depSigKeys < DEDUP_KEY_THRESHOLD) {
|
|
731
|
+
const depSigBefore = { ...depSchema.signatureSchema };
|
|
732
|
+
depSchema.signatureSchema = deduplicateFunctionSchemas(
|
|
733
|
+
depSchema.signatureSchema,
|
|
734
|
+
);
|
|
735
|
+
transformationTracer.traceSchemaTransformResult(
|
|
736
|
+
entity.name,
|
|
737
|
+
'deduplicateFunctionSchemas',
|
|
738
|
+
depSigBefore,
|
|
739
|
+
depSchema.signatureSchema,
|
|
740
|
+
{
|
|
741
|
+
filePath,
|
|
742
|
+
dependencyName: depEntityName,
|
|
743
|
+
schemaType: 'signature',
|
|
744
|
+
},
|
|
745
|
+
);
|
|
746
|
+
}
|
|
747
|
+
|
|
748
|
+
if (depRetKeys < DEDUP_KEY_THRESHOLD) {
|
|
749
|
+
const depRvBefore = { ...depSchema.returnValueSchema };
|
|
750
|
+
depSchema.returnValueSchema = deduplicateFunctionSchemas(
|
|
751
|
+
depSchema.returnValueSchema,
|
|
752
|
+
);
|
|
753
|
+
transformationTracer.traceSchemaTransformResult(
|
|
754
|
+
entity.name,
|
|
755
|
+
'deduplicateFunctionSchemas',
|
|
756
|
+
depRvBefore,
|
|
757
|
+
depSchema.returnValueSchema,
|
|
758
|
+
{
|
|
759
|
+
filePath,
|
|
760
|
+
dependencyName: depEntityName,
|
|
761
|
+
schemaType: 'returnValue',
|
|
762
|
+
},
|
|
763
|
+
);
|
|
764
|
+
}
|
|
765
|
+
|
|
766
|
+
const depOpElapsed = Date.now() - depOpStart;
|
|
767
|
+
if (depOpElapsed > 1000) {
|
|
768
|
+
awsLogDebugLevel(
|
|
769
|
+
2,
|
|
770
|
+
`${entity.name}: slow dep dedup ${depEntityName} sig=${depSigKeys} ret=${depRetKeys} ${depOpElapsed}ms`,
|
|
771
|
+
);
|
|
772
|
+
}
|
|
773
|
+
depProcessed++;
|
|
656
774
|
|
|
657
775
|
// Infer function types from child component usage BEFORE fillInSchemaGapsAndUnknowns.
|
|
658
776
|
// When a hook returns a property with type 'unknown' that is passed to a child
|
|
@@ -729,13 +847,33 @@ export default function generateDataStructure({
|
|
|
729
847
|
// Fill in type gaps BEFORE clearing attributes, so evidence like .includes()
|
|
730
848
|
// is used for type inference before being deleted
|
|
731
849
|
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
850
|
+
const FILL_IN_KEY_THRESHOLD = 5_000;
|
|
851
|
+
const fillStart = Date.now();
|
|
852
|
+
|
|
853
|
+
if (depSigKeys < FILL_IN_KEY_THRESHOLD) {
|
|
854
|
+
depSchema.signatureSchema = fillInDirectSchemaGapsAndUnknowns({
|
|
855
|
+
schema: depSchema.signatureSchema,
|
|
856
|
+
});
|
|
857
|
+
}
|
|
858
|
+
|
|
859
|
+
if (depRetKeys < FILL_IN_KEY_THRESHOLD) {
|
|
860
|
+
depSchema.returnValueSchema = fillInDirectSchemaGapsAndUnknowns({
|
|
861
|
+
schema: depSchema.returnValueSchema,
|
|
862
|
+
});
|
|
863
|
+
} else {
|
|
864
|
+
awsLogDebugLevel(
|
|
865
|
+
2,
|
|
866
|
+
`${entity.name}: skipping fillInGaps for ${depEntityName} ret (${depRetKeys} keys > ${FILL_IN_KEY_THRESHOLD})`,
|
|
867
|
+
);
|
|
868
|
+
}
|
|
735
869
|
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
870
|
+
const fillElapsed = Date.now() - fillStart;
|
|
871
|
+
if (fillElapsed > 1000) {
|
|
872
|
+
awsLogDebugLevel(
|
|
873
|
+
2,
|
|
874
|
+
`${entity.name}: slow fillInGaps ${depEntityName} sig=${depSigKeys} ret=${depRetKeys} ${fillElapsed}ms`,
|
|
875
|
+
);
|
|
876
|
+
}
|
|
739
877
|
|
|
740
878
|
// Trace clearAttributesFromMapping on dependency schemas
|
|
741
879
|
transformationTracer.traceSchemaTransform(
|
|
@@ -760,15 +898,46 @@ export default function generateDataStructure({
|
|
|
760
898
|
}
|
|
761
899
|
}
|
|
762
900
|
|
|
901
|
+
awsLogDebugLevel(
|
|
902
|
+
1,
|
|
903
|
+
`${entity.name}: dep schema processing: ${depProcessed} deps in ${Date.now() - depStart}ms`,
|
|
904
|
+
);
|
|
905
|
+
awsLogDebugLevel(
|
|
906
|
+
1,
|
|
907
|
+
`Dedup + dep schema processing for ${entity.name}: ${Date.now() - dedupStart}ms`,
|
|
908
|
+
);
|
|
909
|
+
|
|
763
910
|
// Transformation tracing: capture after deduplication
|
|
911
|
+
const dedupSnapshotStart = Date.now();
|
|
764
912
|
transformationTracer.snapshot(entity.name, 'deduplicated', {
|
|
765
913
|
signatureSchema: mergedDataStructure.signatureSchema,
|
|
766
914
|
returnValueSchema: mergedDataStructure.returnValueSchema,
|
|
767
915
|
dependencySchemas: mergedDataStructure.dependencySchemas,
|
|
768
916
|
});
|
|
769
917
|
|
|
918
|
+
awsLogDebugLevel(
|
|
919
|
+
1,
|
|
920
|
+
`Dedup snapshot for ${entity.name}: ${Date.now() - dedupSnapshotStart}ms`,
|
|
921
|
+
);
|
|
922
|
+
|
|
770
923
|
analysis.metadata ||= {};
|
|
771
924
|
analysis.metadata.mergedDataStructure = mergedDataStructure;
|
|
925
|
+
if (mergeTimedOut) {
|
|
926
|
+
(analysis.metadata as any).mergeTimedOut = true;
|
|
927
|
+
}
|
|
928
|
+
|
|
929
|
+
const checkGenDeadline = (phase: string) => {
|
|
930
|
+
if (Date.now() > genDeadline) {
|
|
931
|
+
throw new DataStructureTimeoutError(
|
|
932
|
+
entity.name,
|
|
933
|
+
Date.now() - mergeStart,
|
|
934
|
+
);
|
|
935
|
+
}
|
|
936
|
+
awsLogDebugLevel(
|
|
937
|
+
1,
|
|
938
|
+
`${entity.name}: ${phase} complete (${Date.now() - mergeStart}ms total)`,
|
|
939
|
+
);
|
|
940
|
+
};
|
|
772
941
|
|
|
773
942
|
// Enrich mocked dependency array types with fields from child component signatures
|
|
774
943
|
// This ensures that when getSurveysAction returns { data: array }, and SurveyCard
|
|
@@ -787,6 +956,8 @@ export default function generateDataStructure({
|
|
|
787
956
|
),
|
|
788
957
|
);
|
|
789
958
|
|
|
959
|
+
checkGenDeadline('enrichArrayTypes');
|
|
960
|
+
|
|
790
961
|
// Transformation tracing: capture after array types enriched
|
|
791
962
|
transformationTracer.snapshot(entity.name, 'arrayTypesEnriched', {
|
|
792
963
|
signatureSchema: mergedDataStructure.signatureSchema,
|
|
@@ -811,6 +982,8 @@ export default function generateDataStructure({
|
|
|
811
982
|
),
|
|
812
983
|
);
|
|
813
984
|
|
|
985
|
+
checkGenDeadline('enrichUnknownTypes');
|
|
986
|
+
|
|
814
987
|
// Transformation tracing: capture after unknown types enriched
|
|
815
988
|
transformationTracer.snapshot(entity.name, 'unknownTypesEnriched', {
|
|
816
989
|
signatureSchema: mergedDataStructure.signatureSchema,
|
|
@@ -831,6 +1004,8 @@ export default function generateDataStructure({
|
|
|
831
1004
|
{ entityName: entity.name },
|
|
832
1005
|
);
|
|
833
1006
|
|
|
1007
|
+
checkGenDeadline('gatherDataForMocks');
|
|
1008
|
+
|
|
834
1009
|
// Transformation tracing: capture after dataForMocks gathered
|
|
835
1010
|
transformationTracer.snapshot(entity.name, 'dataForMocksGathered', {
|
|
836
1011
|
signatureSchema: mergedDataStructure.signatureSchema,
|
|
@@ -860,6 +1035,8 @@ export default function generateDataStructure({
|
|
|
860
1035
|
}
|
|
861
1036
|
}
|
|
862
1037
|
|
|
1038
|
+
checkGenDeadline('mergeChildDataForMocks');
|
|
1039
|
+
|
|
863
1040
|
const finalizedArgumentsSchema = { ...mergedDataStructure.signatureSchema };
|
|
864
1041
|
|
|
865
1042
|
// Trace fillInDirectSchemaGapsAndUnknowns
|
|
@@ -880,9 +1057,13 @@ export default function generateDataStructure({
|
|
|
880
1057
|
{ stage: 'finalization' },
|
|
881
1058
|
);
|
|
882
1059
|
|
|
1060
|
+
checkGenDeadline('fillInGaps+clearAttributes');
|
|
1061
|
+
|
|
883
1062
|
const argumentsSchema = convertDotNotation(finalizedArgumentsSchema)
|
|
884
1063
|
.signature as JsonTypeDefinition[];
|
|
885
1064
|
|
|
1065
|
+
checkGenDeadline('convertDotNotation');
|
|
1066
|
+
|
|
886
1067
|
analysis.metadata.scenariosDataStructure = {
|
|
887
1068
|
arguments: argumentsSchema,
|
|
888
1069
|
dataForMocks,
|
package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts
CHANGED
|
@@ -65,10 +65,6 @@ export default async function generateExecutionFlows({
|
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
if (!analysis.metadata.executionFlows) {
|
|
68
|
-
console.log(
|
|
69
|
-
`[GenerateExecutionFlows] Starting for ${entity.name} (${entity.filePath})`,
|
|
70
|
-
);
|
|
71
|
-
|
|
72
68
|
// Build childEntityMetadata from dependentAnalyses for child flow merging
|
|
73
69
|
// This maps child component names to their metadata (specifically isolatedDataStructure)
|
|
74
70
|
const childEntityMetadata = buildChildEntityMetadata(
|
|
@@ -77,15 +73,6 @@ export default async function generateExecutionFlows({
|
|
|
77
73
|
);
|
|
78
74
|
|
|
79
75
|
const childCount = Object.keys(childEntityMetadata).length;
|
|
80
|
-
console.log(
|
|
81
|
-
`[GenerateExecutionFlows] Built childEntityMetadata with ${childCount} children`,
|
|
82
|
-
);
|
|
83
|
-
if (childCount > 0) {
|
|
84
|
-
console.log(
|
|
85
|
-
`[GenerateExecutionFlows] Will merge flows from children: [${Object.keys(childEntityMetadata).join(', ')}]`,
|
|
86
|
-
);
|
|
87
|
-
}
|
|
88
|
-
|
|
89
76
|
const {
|
|
90
77
|
result: { executionFlows, llmCall: executionFlowsLLMCall },
|
|
91
78
|
} = await measureAndReportExecutionTime(
|
|
@@ -100,18 +87,6 @@ export default async function generateExecutionFlows({
|
|
|
100
87
|
updateProgress,
|
|
101
88
|
);
|
|
102
89
|
|
|
103
|
-
console.log(
|
|
104
|
-
`[GenerateExecutionFlows] Generated ${executionFlows.length} execution flows for ${entity.name}`,
|
|
105
|
-
);
|
|
106
|
-
for (const flow of executionFlows) {
|
|
107
|
-
const reqValues = flow.requiredValues
|
|
108
|
-
.map((rv) => `${rv.attributePath}=${rv.value}`)
|
|
109
|
-
.join(', ');
|
|
110
|
-
console.log(
|
|
111
|
-
`[GenerateExecutionFlows] - Flow '${flow.id}': ${flow.name} [${reqValues}]`,
|
|
112
|
-
);
|
|
113
|
-
}
|
|
114
|
-
|
|
115
90
|
analysis.metadata.executionFlows = executionFlows;
|
|
116
91
|
|
|
117
92
|
if (executionFlowsLLMCall) {
|
|
@@ -137,14 +112,7 @@ export function buildChildEntityMetadata(
|
|
|
137
112
|
): Record<string, Entity['metadata']> {
|
|
138
113
|
const childEntityMetadata: Record<string, Entity['metadata']> = {};
|
|
139
114
|
|
|
140
|
-
console.log(
|
|
141
|
-
`[BuildChildMetadata] Starting for entity: ${entity.name} (${entity.filePath})`,
|
|
142
|
-
);
|
|
143
|
-
|
|
144
115
|
if (!dependentAnalyses) {
|
|
145
|
-
console.log(
|
|
146
|
-
`[BuildChildMetadata] No dependentAnalyses provided, returning empty`,
|
|
147
|
-
);
|
|
148
116
|
return childEntityMetadata;
|
|
149
117
|
}
|
|
150
118
|
|
|
@@ -152,54 +120,19 @@ export function buildChildEntityMetadata(
|
|
|
152
120
|
entity.metadata?.isolatedDataStructure?.childBoundaryGatingConditions;
|
|
153
121
|
|
|
154
122
|
if (!childBoundaryGatingConditions) {
|
|
155
|
-
console.log(
|
|
156
|
-
`[BuildChildMetadata] No childBoundaryGatingConditions found in isolatedDataStructure`,
|
|
157
|
-
);
|
|
158
|
-
console.log(
|
|
159
|
-
`[BuildChildMetadata] isolatedDataStructure keys: ${Object.keys(entity.metadata?.isolatedDataStructure ?? {}).join(', ') || 'none'}`,
|
|
160
|
-
);
|
|
161
123
|
return childEntityMetadata;
|
|
162
124
|
}
|
|
163
125
|
|
|
164
126
|
const childNames = Object.keys(childBoundaryGatingConditions);
|
|
165
|
-
console.log(
|
|
166
|
-
`[BuildChildMetadata] Found ${childNames.length} children in childBoundaryGatingConditions: [${childNames.join(', ')}]`,
|
|
167
|
-
);
|
|
168
|
-
|
|
169
|
-
// Log gating conditions for each child
|
|
170
|
-
for (const [childName, conditions] of Object.entries(
|
|
171
|
-
childBoundaryGatingConditions,
|
|
172
|
-
)) {
|
|
173
|
-
const isUnconditional = conditions.some(
|
|
174
|
-
(c) => c.location === 'unconditional',
|
|
175
|
-
);
|
|
176
|
-
console.log(
|
|
177
|
-
`[BuildChildMetadata] Child '${childName}': ${conditions.length} gating conditions, unconditional=${isUnconditional}`,
|
|
178
|
-
);
|
|
179
|
-
for (const condition of conditions) {
|
|
180
|
-
console.log(
|
|
181
|
-
`[BuildChildMetadata] - path='${condition.path}' location='${condition.location}' isNegated=${condition.isNegated ?? false}`,
|
|
182
|
-
);
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
|
|
186
127
|
const importedExports = entity.metadata?.importedExports ?? [];
|
|
187
|
-
console.log(
|
|
188
|
-
`[BuildChildMetadata] Entity has ${importedExports.length} importedExports`,
|
|
189
|
-
);
|
|
190
128
|
|
|
191
129
|
for (const childName of childNames) {
|
|
192
|
-
console.log(`[BuildChildMetadata] Looking up child '${childName}'...`);
|
|
193
|
-
|
|
194
130
|
// Find the child in importedExports to get its file path
|
|
195
131
|
const importedExport = importedExports.find(
|
|
196
132
|
(ie) => ie.name === childName || ie.resolvedName === childName,
|
|
197
133
|
);
|
|
198
134
|
|
|
199
135
|
if (!importedExport) {
|
|
200
|
-
console.log(
|
|
201
|
-
`[BuildChildMetadata] Child '${childName}' NOT FOUND in importedExports`,
|
|
202
|
-
);
|
|
203
136
|
continue;
|
|
204
137
|
}
|
|
205
138
|
|
|
@@ -208,27 +141,14 @@ export function buildChildEntityMetadata(
|
|
|
208
141
|
importedExport.resolvedFilePath ?? importedExport.filePath;
|
|
209
142
|
const lookupName = importedExport.resolvedName ?? importedExport.name;
|
|
210
143
|
|
|
211
|
-
console.log(
|
|
212
|
-
`[BuildChildMetadata] Child '${childName}' found in importedExports: lookupPath='${lookupPath}' lookupName='${lookupName}'`,
|
|
213
|
-
);
|
|
214
|
-
|
|
215
144
|
// Look up the child's analysis in dependentAnalyses
|
|
216
145
|
const childAnalysis = dependentAnalyses[lookupPath]?.[lookupName];
|
|
217
146
|
|
|
218
147
|
if (!childAnalysis) {
|
|
219
|
-
console.log(
|
|
220
|
-
`[BuildChildMetadata] Child '${childName}' analysis NOT FOUND in dependentAnalyses[${lookupPath}][${lookupName}]`,
|
|
221
|
-
);
|
|
222
|
-
console.log(
|
|
223
|
-
`[BuildChildMetadata] Available paths in dependentAnalyses: [${Object.keys(dependentAnalyses).slice(0, 10).join(', ')}...]`,
|
|
224
|
-
);
|
|
225
148
|
continue;
|
|
226
149
|
}
|
|
227
150
|
|
|
228
151
|
if (!childAnalysis.entity?.metadata) {
|
|
229
|
-
console.log(
|
|
230
|
-
`[BuildChildMetadata] Child '${childName}' analysis found but entity.metadata is missing`,
|
|
231
|
-
);
|
|
232
152
|
continue;
|
|
233
153
|
}
|
|
234
154
|
|
|
@@ -237,28 +157,10 @@ export function buildChildEntityMetadata(
|
|
|
237
157
|
const childConditionalUsages = childIsolated?.conditionalUsages ?? {};
|
|
238
158
|
const childConditionalCount = Object.keys(childConditionalUsages).length;
|
|
239
159
|
|
|
240
|
-
console.log(
|
|
241
|
-
`[BuildChildMetadata] Child '${childName}' FOUND with metadata:`,
|
|
242
|
-
);
|
|
243
|
-
console.log(
|
|
244
|
-
`[BuildChildMetadata] - conditionalUsages: ${childConditionalCount} paths`,
|
|
245
|
-
);
|
|
246
|
-
if (childConditionalCount > 0) {
|
|
247
|
-
for (const [path, usages] of Object.entries(childConditionalUsages)) {
|
|
248
|
-
console.log(
|
|
249
|
-
`[BuildChildMetadata] - '${path}': ${(usages as any[]).length} usages`,
|
|
250
|
-
);
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
|
|
254
160
|
// Cast to mutable type - the metadata is only read, not modified
|
|
255
161
|
childEntityMetadata[childName] = childAnalysis.entity
|
|
256
162
|
.metadata as Entity['metadata'];
|
|
257
163
|
}
|
|
258
164
|
|
|
259
|
-
console.log(
|
|
260
|
-
`[BuildChildMetadata] RESULT: Found metadata for ${Object.keys(childEntityMetadata).length} children: [${Object.keys(childEntityMetadata).join(', ')}]`,
|
|
261
|
-
);
|
|
262
|
-
|
|
263
165
|
return childEntityMetadata;
|
|
264
166
|
}
|