@codeyam/codeyam-cli 0.1.0-staging.2a88920 → 0.1.0-staging.30dc541
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 +24 -24
- package/analyzer-template/packages/ai/index.ts +1 -0
- package/analyzer-template/packages/ai/package.json +3 -3
- package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +23 -1
- package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +34 -3
- package/analyzer-template/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.ts +10 -17
- package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +101 -0
- package/analyzer-template/packages/ai/src/lib/astScopes/sharedPatterns.ts +28 -0
- package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +6 -0
- package/analyzer-template/packages/ai/src/lib/completionCall.ts +114 -113
- package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +588 -13
- package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.ts +5 -1
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +11 -2
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.ts +2 -2
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.ts +70 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.ts +62 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +140 -14
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.ts +20 -1
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +84 -19
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.ts +35 -0
- package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +40 -13
- package/analyzer-template/packages/ai/src/lib/generateEntityDataStructure.ts +58 -3
- package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +377 -7
- package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +101 -2
- package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionals.ts +359 -142
- package/analyzer-template/packages/ai/src/lib/isolateScopes.ts +51 -3
- package/analyzer-template/packages/ai/src/lib/mergeJsonTypeDefinitions.ts +5 -0
- package/analyzer-template/packages/ai/src/lib/promptGenerators/collapseNullableObjects.ts +118 -0
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +24 -4
- package/analyzer-template/packages/analyze/index.ts +2 -0
- package/analyzer-template/packages/analyze/src/lib/ProjectAnalyzer.ts +19 -7
- package/analyzer-template/packages/analyze/src/lib/asts/index.ts +7 -2
- package/analyzer-template/packages/analyze/src/lib/asts/nodes/getNodeType.ts +1 -0
- package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +69 -3
- package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +13 -0
- package/analyzer-template/packages/analyze/src/lib/files/analyze/dependencyResolver.ts +0 -6
- package/analyzer-template/packages/analyze/src/lib/files/analyze/findOrCreateEntity.ts +12 -0
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/TransformationTracer.ts +1352 -0
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts +4 -0
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +59 -26
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +277 -15
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts +0 -98
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +395 -61
- package/analyzer-template/packages/analyze/src/lib/index.ts +1 -0
- package/analyzer-template/packages/aws/package.json +10 -10
- package/analyzer-template/packages/database/index.ts +1 -0
- package/analyzer-template/packages/database/package.json +4 -4
- package/analyzer-template/packages/database/src/lib/analysisBranchToDb.ts +1 -1
- package/analyzer-template/packages/database/src/lib/analysisToDb.ts +1 -1
- package/analyzer-template/packages/database/src/lib/branchToDb.ts +1 -1
- package/analyzer-template/packages/database/src/lib/commitBranchToDb.ts +1 -1
- package/analyzer-template/packages/database/src/lib/commitToDb.ts +1 -1
- package/analyzer-template/packages/database/src/lib/fileToDb.ts +1 -1
- package/analyzer-template/packages/database/src/lib/kysely/db.ts +14 -0
- package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +1 -1
- package/analyzer-template/packages/database/src/lib/kysely/tables/editorScenariosTable.ts +164 -0
- package/analyzer-template/packages/database/src/lib/kysely/tables/labsRequestsTable.ts +52 -0
- package/analyzer-template/packages/database/src/lib/loadCommits.ts +31 -20
- package/analyzer-template/packages/database/src/lib/loadEntities.ts +0 -6
- package/analyzer-template/packages/database/src/lib/loadReadyToBeCapturedAnalyses.ts +0 -5
- package/analyzer-template/packages/database/src/lib/projectToDb.ts +1 -1
- package/analyzer-template/packages/database/src/lib/saveFiles.ts +1 -1
- package/analyzer-template/packages/database/src/lib/scenarioToDb.ts +1 -1
- package/analyzer-template/packages/database/src/lib/updateCommitMetadata.ts +94 -143
- package/analyzer-template/packages/database/src/lib/updateFreshAnalysisStatus.ts +58 -42
- package/analyzer-template/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.ts +81 -65
- package/analyzer-template/packages/database/src/lib/userScenarioToDb.ts +1 -1
- package/analyzer-template/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.ts +29 -1
- package/analyzer-template/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.ts +33 -5
- package/analyzer-template/packages/github/dist/database/index.d.ts +1 -0
- package/analyzer-template/packages/github/dist/database/index.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/index.js +1 -0
- package/analyzer-template/packages/github/dist/database/index.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +4 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +8 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts +29 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts.map +1 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js +149 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts +23 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts.map +1 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
- package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/scenariosTable.d.ts +5 -0
- 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/loadCommits.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.js +23 -13
- package/analyzer-template/packages/github/dist/database/src/lib/loadCommits.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/loadReadyToBeCapturedAnalyses.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js +1 -4
- package/analyzer-template/packages/github/dist/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.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 +76 -90
- package/analyzer-template/packages/github/dist/database/src/lib/updateCommitMetadata.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.js +41 -30
- package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatus.js.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.js +68 -57
- package/analyzer-template/packages/github/dist/database/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +29 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -1
- 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 +33 -5
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.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/github/dist/types/src/types/ProjectMetadata.d.ts +8 -0
- package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts +10 -0
- package/analyzer-template/packages/github/dist/types/src/types/Scenario.d.ts.map +1 -1
- package/analyzer-template/packages/github/package.json +1 -1
- package/analyzer-template/packages/types/src/enums/ProjectFramework.ts +2 -0
- package/analyzer-template/packages/types/src/types/ProjectMetadata.ts +8 -0
- package/analyzer-template/packages/types/src/types/Scenario.ts +10 -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/types/src/types/ProjectMetadata.d.ts +8 -0
- package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts +10 -0
- package/analyzer-template/packages/utils/dist/types/src/types/Scenario.d.ts.map +1 -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 +98 -3
- 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 +121 -3
- package/analyzer-template/playwright/captureFromUrl.ts +89 -82
- package/analyzer-template/project/constructMockCode.ts +206 -51
- package/analyzer-template/project/orchestrateCapture.ts +4 -1
- package/analyzer-template/project/reconcileMockDataKeys.ts +19 -14
- package/analyzer-template/project/start.ts +3 -0
- package/analyzer-template/project/startScenarioCapture.ts +9 -0
- package/analyzer-template/project/writeClientLogRoute.ts +125 -0
- package/analyzer-template/project/writeMockDataTsx.ts +191 -12
- package/analyzer-template/project/writeScenarioComponents.ts +170 -29
- package/analyzer-template/project/writeSimpleRoot.ts +21 -11
- package/analyzer-template/tsconfig.json +13 -1
- package/background/src/lib/local/createLocalAnalyzer.js +1 -1
- package/background/src/lib/local/createLocalAnalyzer.js.map +1 -1
- package/background/src/lib/virtualized/project/constructMockCode.js +175 -42
- package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
- package/background/src/lib/virtualized/project/orchestrateCapture.js +4 -1
- package/background/src/lib/virtualized/project/orchestrateCapture.js.map +1 -1
- package/background/src/lib/virtualized/project/reconcileMockDataKeys.js +17 -11
- package/background/src/lib/virtualized/project/reconcileMockDataKeys.js.map +1 -1
- package/background/src/lib/virtualized/project/start.js +2 -0
- package/background/src/lib/virtualized/project/start.js.map +1 -1
- package/background/src/lib/virtualized/project/startScenarioCapture.js +5 -0
- package/background/src/lib/virtualized/project/startScenarioCapture.js.map +1 -1
- package/background/src/lib/virtualized/project/writeClientLogRoute.js +110 -0
- package/background/src/lib/virtualized/project/writeClientLogRoute.js.map +1 -0
- package/background/src/lib/virtualized/project/writeMockDataTsx.js +168 -8
- package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
- package/background/src/lib/virtualized/project/writeScenarioComponents.js +143 -27
- package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
- package/background/src/lib/virtualized/project/writeSimpleRoot.js +21 -11
- package/background/src/lib/virtualized/project/writeSimpleRoot.js.map +1 -1
- package/codeyam-cli/scripts/apply-setup.js +386 -9
- package/codeyam-cli/scripts/apply-setup.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 +57 -24
- package/codeyam-cli/src/cli.js.map +1 -1
- package/codeyam-cli/src/codeyam-cli.js +18 -2
- package/codeyam-cli/src/codeyam-cli.js.map +1 -1
- 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/analyze.js +21 -9
- package/codeyam-cli/src/commands/analyze.js.map +1 -1
- package/codeyam-cli/src/commands/baseline.js +2 -0
- package/codeyam-cli/src/commands/baseline.js.map +1 -1
- package/codeyam-cli/src/commands/debug.js +2 -0
- package/codeyam-cli/src/commands/debug.js.map +1 -1
- package/codeyam-cli/src/commands/default.js +44 -21
- package/codeyam-cli/src/commands/default.js.map +1 -1
- package/codeyam-cli/src/commands/editor.js +4890 -0
- package/codeyam-cli/src/commands/editor.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 +148 -292
- package/codeyam-cli/src/commands/init.js.map +1 -1
- package/codeyam-cli/src/commands/memory.js +97 -92
- package/codeyam-cli/src/commands/memory.js.map +1 -1
- package/codeyam-cli/src/commands/recapture.js +2 -0
- package/codeyam-cli/src/commands/recapture.js.map +1 -1
- package/codeyam-cli/src/commands/setup-sandbox.js +2 -0
- package/codeyam-cli/src/commands/setup-sandbox.js.map +1 -1
- package/codeyam-cli/src/commands/setup-simulations.js +284 -0
- package/codeyam-cli/src/commands/setup-simulations.js.map +1 -0
- package/codeyam-cli/src/commands/telemetry.js +37 -0
- package/codeyam-cli/src/commands/telemetry.js.map +1 -0
- package/codeyam-cli/src/commands/test-startup.js +2 -0
- package/codeyam-cli/src/commands/test-startup.js.map +1 -1
- package/codeyam-cli/src/commands/verify.js +14 -2
- package/codeyam-cli/src/commands/verify.js.map +1 -1
- 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 +2680 -0
- package/codeyam-cli/src/utils/__tests__/editorAudit.test.js.map +1 -0
- 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 +304 -0
- package/codeyam-cli/src/utils/__tests__/editorDevServer.test.js.map +1 -0
- 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 +542 -0
- package/codeyam-cli/src/utils/__tests__/editorJournal.test.js.map +1 -0
- 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__/editorMockState.test.js +270 -0
- package/codeyam-cli/src/utils/__tests__/editorMockState.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorPreloadHelpers.test.js +217 -0
- package/codeyam-cli/src/utils/__tests__/editorPreloadHelpers.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorPreview.test.js +353 -0
- package/codeyam-cli/src/utils/__tests__/editorPreview.test.js.map +1 -0
- 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 +1609 -0
- package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js +280 -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 +2089 -0
- package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/git.editor.test.js +134 -0
- package/codeyam-cli/src/utils/__tests__/git.editor.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__/npmVersionCheck.test.js +185 -0
- package/codeyam-cli/src/utils/__tests__/npmVersionCheck.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__/pathIgnoring.test.js +9 -0
- package/codeyam-cli/src/utils/__tests__/pathIgnoring.test.js.map +1 -1
- package/codeyam-cli/src/utils/__tests__/project.test.js +65 -0
- package/codeyam-cli/src/utils/__tests__/project.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__/scenarioMarkers.test.js +121 -0
- package/codeyam-cli/src/utils/__tests__/scenarioMarkers.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__/setupClaudeCodeSettings.test.js +175 -86
- 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__/webappDetection.test.js +142 -0
- package/codeyam-cli/src/utils/__tests__/webappDetection.test.js.map +1 -0
- package/codeyam-cli/src/utils/analysisRunner.js +3 -1
- package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
- package/codeyam-cli/src/utils/analyzer.js +16 -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 +193 -30
- package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
- package/codeyam-cli/src/utils/buildFlags.js +4 -0
- package/codeyam-cli/src/utils/buildFlags.js.map +1 -0
- package/codeyam-cli/src/utils/database.js +37 -2
- package/codeyam-cli/src/utils/database.js.map +1 -1
- package/codeyam-cli/src/utils/devModeEvents.js +40 -0
- package/codeyam-cli/src/utils/devModeEvents.js.map +1 -0
- 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 +526 -0
- package/codeyam-cli/src/utils/editorAudit.js.map +1 -0
- 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 +197 -0
- package/codeyam-cli/src/utils/editorDevServer.js.map +1 -0
- 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 +225 -0
- package/codeyam-cli/src/utils/editorJournal.js.map +1 -0
- 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 +248 -0
- package/codeyam-cli/src/utils/editorMockState.js.map +1 -0
- package/codeyam-cli/src/utils/editorPreloadHelpers.js +135 -0
- package/codeyam-cli/src/utils/editorPreloadHelpers.js.map +1 -0
- package/codeyam-cli/src/utils/editorPreview.js +137 -0
- package/codeyam-cli/src/utils/editorPreview.js.map +1 -0
- 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 +584 -0
- package/codeyam-cli/src/utils/editorScenarios.js.map +1 -0
- package/codeyam-cli/src/utils/editorSeedAdapter.js +422 -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 +196 -0
- package/codeyam-cli/src/utils/entityChangeStatus.server.js.map +1 -0
- package/codeyam-cli/src/utils/fileMetadata.js +5 -0
- package/codeyam-cli/src/utils/fileMetadata.js.map +1 -1
- package/codeyam-cli/src/utils/fileWatcher.js +63 -9
- package/codeyam-cli/src/utils/fileWatcher.js.map +1 -1
- package/codeyam-cli/src/utils/generateReport.js +2 -2
- package/codeyam-cli/src/utils/git.js +103 -0
- package/codeyam-cli/src/utils/git.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 +115 -56
- package/codeyam-cli/src/utils/install-skills.js.map +1 -1
- package/codeyam-cli/src/utils/interactiveSyncWatcher.js +126 -0
- package/codeyam-cli/src/utils/interactiveSyncWatcher.js.map +1 -0
- package/codeyam-cli/src/utils/labsAutoCheck.js +19 -0
- package/codeyam-cli/src/utils/labsAutoCheck.js.map +1 -0
- package/codeyam-cli/src/utils/npmVersionCheck.js +76 -0
- package/codeyam-cli/src/utils/npmVersionCheck.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/pathIgnoring.js +19 -7
- package/codeyam-cli/src/utils/pathIgnoring.js.map +1 -1
- package/codeyam-cli/src/utils/progress.js +8 -1
- package/codeyam-cli/src/utils/progress.js.map +1 -1
- package/codeyam-cli/src/utils/project.js +15 -5
- package/codeyam-cli/src/utils/project.js.map +1 -1
- package/codeyam-cli/src/utils/queue/__tests__/heartbeat.test.js +11 -11
- package/codeyam-cli/src/utils/queue/__tests__/heartbeat.test.js.map +1 -1
- package/codeyam-cli/src/utils/queue/__tests__/manager.test.js +22 -0
- package/codeyam-cli/src/utils/queue/__tests__/manager.test.js.map +1 -1
- package/codeyam-cli/src/utils/queue/heartbeat.js +13 -5
- package/codeyam-cli/src/utils/queue/heartbeat.js.map +1 -1
- package/codeyam-cli/src/utils/queue/job.js +74 -1
- package/codeyam-cli/src/utils/queue/job.js.map +1 -1
- package/codeyam-cli/src/utils/queue/manager.js +7 -6
- package/codeyam-cli/src/utils/queue/manager.js.map +1 -1
- package/codeyam-cli/src/utils/requireSimulations.js +10 -0
- package/codeyam-cli/src/utils/requireSimulations.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/ruleReflection/__tests__/confusionDetector.test.js +82 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js +229 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js +67 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js +105 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js +34 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js +162 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js +74 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js +376 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js +113 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js +127 -0
- package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js +50 -0
- package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js +116 -0
- package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/index.js +5 -0
- package/codeyam-cli/src/utils/ruleReflection/index.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js +44 -0
- package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js +85 -0
- package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js.map +1 -0
- package/codeyam-cli/src/utils/ruleReflection/types.js +5 -0
- package/codeyam-cli/src/utils/ruleReflection/types.js.map +1 -0
- package/codeyam-cli/src/utils/rules/__tests__/parser.test.js +83 -0
- package/codeyam-cli/src/utils/rules/__tests__/parser.test.js.map +1 -0
- package/codeyam-cli/src/utils/rules/__tests__/pathMatcher.test.js +118 -0
- package/codeyam-cli/src/utils/rules/__tests__/pathMatcher.test.js.map +1 -0
- package/codeyam-cli/src/utils/rules/__tests__/rulePlacement.test.js +72 -0
- package/codeyam-cli/src/utils/rules/__tests__/rulePlacement.test.js.map +1 -0
- package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js +293 -0
- package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js.map +1 -0
- package/codeyam-cli/src/utils/rules/__tests__/sourceFiles.test.js +76 -0
- package/codeyam-cli/src/utils/rules/__tests__/sourceFiles.test.js.map +1 -0
- package/codeyam-cli/src/utils/rules/index.js +2 -0
- package/codeyam-cli/src/utils/rules/index.js.map +1 -1
- package/codeyam-cli/src/utils/rules/parser.js +16 -29
- package/codeyam-cli/src/utils/rules/parser.js.map +1 -1
- package/codeyam-cli/src/utils/rules/pathMatcher.js +34 -3
- package/codeyam-cli/src/utils/rules/pathMatcher.js.map +1 -1
- package/codeyam-cli/src/utils/rules/rulePlacement.js +65 -0
- package/codeyam-cli/src/utils/rules/rulePlacement.js.map +1 -0
- package/codeyam-cli/src/utils/rules/ruleState.js +150 -0
- package/codeyam-cli/src/utils/rules/ruleState.js.map +1 -0
- package/codeyam-cli/src/utils/rules/sourceFiles.js +43 -0
- package/codeyam-cli/src/utils/rules/sourceFiles.js.map +1 -0
- package/codeyam-cli/src/utils/rules/staleness.js +16 -11
- package/codeyam-cli/src/utils/rules/staleness.js.map +1 -1
- package/codeyam-cli/src/utils/scenarioCoverage.js +77 -0
- package/codeyam-cli/src/utils/scenarioCoverage.js.map +1 -0
- package/codeyam-cli/src/utils/scenarioMarkers.js +134 -0
- package/codeyam-cli/src/utils/scenarioMarkers.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/serverState.js +94 -12
- package/codeyam-cli/src/utils/serverState.js.map +1 -1
- package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +96 -47
- package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
- package/codeyam-cli/src/utils/simulationGateMiddleware.js +175 -0
- package/codeyam-cli/src/utils/simulationGateMiddleware.js.map +1 -0
- 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 +7 -26
- 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 +158 -0
- package/codeyam-cli/src/utils/testRunner.js.map +1 -0
- package/codeyam-cli/src/utils/transcriptPruning.js +67 -0
- package/codeyam-cli/src/utils/transcriptPruning.js.map +1 -0
- package/codeyam-cli/src/utils/versionInfo.js +46 -0
- package/codeyam-cli/src/utils/versionInfo.js.map +1 -1
- package/codeyam-cli/src/utils/webappDetection.js +35 -2
- 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 +80 -0
- package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js.map +1 -0
- package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js +66 -0
- package/codeyam-cli/src/webserver/__tests__/dependency-smoke.test.js.map +1 -0
- package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js +628 -0
- package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js.map +1 -0
- package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js +228 -0
- package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js.map +1 -0
- package/codeyam-cli/src/webserver/__tests__/stripClaudeCommand.test.js +79 -0
- package/codeyam-cli/src/webserver/__tests__/stripClaudeCommand.test.js.map +1 -0
- package/codeyam-cli/src/webserver/app/lib/clientErrors.js +71 -0
- package/codeyam-cli/src/webserver/app/lib/clientErrors.js.map +1 -0
- package/codeyam-cli/src/webserver/app/lib/database.js +56 -30
- 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/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 +186 -37
- package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
- package/codeyam-cli/src/webserver/bootstrap.js +11 -0
- package/codeyam-cli/src/webserver/bootstrap.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-DsN1wKrm.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-Ba2JVPzP.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-B0GLXMsr.js → LoadingDots-By5zI316.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/{LogViewer-xgeCVgSM.js → LogViewer-CM5zg40N.js} +3 -3
- package/codeyam-cli/src/webserver/build/client/assets/{ReportIssueModal-OApQuNyq.js → ReportIssueModal-C2PLkej3.js} +5 -10
- package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-DanvyBPb.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{ScenarioViewer-DzccYyI8.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-BwqWJOgH.js → _index-BAWd-Xjf.js} +4 -4
- package/codeyam-cli/src/webserver/build/client/assets/{activity.(_tab)-BwavGCpm.js → activity.(_tab)-BOARiB-g.js} +10 -15
- 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-CHx25PAe.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/addon-webgl-DI8QOUvO.js +58 -0
- package/codeyam-cli/src/webserver/build/client/assets/agent-transcripts-Bg3e7q4S.js +22 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.agent-transcripts-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.dev-mode-events-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-audit-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-capture-scenario-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-client-errors-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-commit-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-dev-server-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-entity-status-l0sNRNKZ.js +1 -0
- 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-journal-entry-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-image._-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-screenshot-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-journal-update-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-load-commit-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-refresh-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-register-scenario-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-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-data-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-image._-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-scenarios-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/api.editor-switch-scenario-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.editor-test-results-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.labs-unlock-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.rule-path-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/api.save-fixture-l0sNRNKZ.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/book-open-CL-lMgHh.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/{chevron-down-Cx24_aWc.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-BOARzkeR.js → circle-check-DFcQkN5j.js} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/copy-C6iF61Xs.js +11 -0
- package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-4ImjHTVC.js +41 -0
- 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)-CGzKlIHg.js +58 -0
- package/codeyam-cli/src/webserver/build/client/assets/editorPreview-oepecPae.js +41 -0
- package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-BJUiQqZF.js → entity._sha._-Blfy9UlN.js} +12 -12
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.dev-KTQuL0aj.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-C6eeL24i.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-CTBG2mmz.js → entity._sha_.edit._scenarioId-CAoXLsQr.js} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/{entry.client-CS2cb_eZ.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-Yn9W3zp3.css +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{index-lzqtyFU8.js → index-Bp1l4hSv.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/{index-B1h680n5.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-B7B9V-bu.js → loader-circle-De-7qQ2u.js} +2 -2
- package/codeyam-cli/src/webserver/build/client/assets/manifest-2ef99f38.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-CFxEKL1u.js +11 -0
- package/codeyam-cli/src/webserver/build/client/assets/root-BxUQigda.js +67 -0
- package/codeyam-cli/src/webserver/build/client/assets/{search-CxXUmBSd.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-CrplD4b1.js +11 -0
- package/codeyam-cli/src/webserver/build/client/assets/{triangle-alert-B6LgvRJg.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-BNd5hYuW.js +2 -0
- 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/assets/xterm-BqvuqXEL.js +27 -0
- package/codeyam-cli/src/webserver/build/client/sound-test.html +98 -0
- package/codeyam-cli/src/webserver/build/server/assets/analysisRunner-BPmOG9bE.js +13 -0
- package/codeyam-cli/src/webserver/build/server/assets/index-Cd-ufawF.js +1 -0
- package/codeyam-cli/src/webserver/build/server/assets/init-CzeBGOto.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-Dht7CKXY.js +552 -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 +39 -5
- package/codeyam-cli/src/webserver/devServer.js.map +1 -1
- package/codeyam-cli/src/webserver/editorProxy.js +976 -0
- package/codeyam-cli/src/webserver/editorProxy.js.map +1 -0
- package/codeyam-cli/src/webserver/idleDetector.js +106 -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 +414 -0
- package/codeyam-cli/src/webserver/scripts/journalCapture.ts +266 -0
- package/codeyam-cli/src/webserver/server.js +341 -1
- package/codeyam-cli/src/webserver/server.js.map +1 -1
- package/codeyam-cli/src/webserver/terminalServer.js +897 -0
- package/codeyam-cli/src/webserver/terminalServer.js.map +1 -0
- 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 +149 -0
- package/codeyam-cli/templates/codeyam-editor-reference.md +214 -0
- package/codeyam-cli/templates/codeyam-memory-hook.sh +19 -20
- package/codeyam-cli/templates/commands/codeyam-diagnose.md +481 -0
- package/codeyam-cli/templates/editor-step-hook.py +347 -0
- 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/hooks/staleness-check.sh +43 -0
- package/codeyam-cli/templates/isolation-route/next-app.tsx.template +80 -0
- package/codeyam-cli/templates/isolation-route/next-pages.tsx.template +79 -0
- package/codeyam-cli/templates/isolation-route/vite-react.tsx.template +78 -0
- package/codeyam-cli/templates/msw/browser-setup.ts.template +47 -0
- package/codeyam-cli/templates/msw/handler-router.ts.template +47 -0
- package/codeyam-cli/templates/msw/server-setup.ts.template +52 -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/api/todos/route.ts +17 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/app/codeyam-isolate/layout.tsx +12 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/app/globals.css +26 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/app/layout.tsx +34 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/app/lib/prisma.ts +24 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/app/page.tsx +10 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/env +4 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/eslint.config.mjs +11 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/gitignore +64 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/next.config.ts +14 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/package.json +39 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/postcss.config.mjs +7 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma/schema.prisma +27 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma/seed.ts +40 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/prisma.config.ts +12 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/seed-adapter.ts +127 -0
- package/codeyam-cli/templates/nextjs-prisma-sqlite/tsconfig.json +34 -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-supabase/SUPABASE_SETUP.md +104 -0
- 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/prompts/conversation-guidance.txt +44 -0
- package/codeyam-cli/templates/prompts/conversation-prompt.txt +28 -0
- package/codeyam-cli/templates/prompts/interruption-prompt.txt +31 -0
- package/codeyam-cli/templates/prompts/stale-rules-prompt.txt +24 -0
- package/codeyam-cli/templates/rule-notification-hook.py +83 -0
- package/codeyam-cli/templates/rule-reflection-hook.py +574 -87
- package/codeyam-cli/templates/rules-instructions.md +45 -60
- package/codeyam-cli/templates/seed-adapters/supabase.ts +282 -0
- package/codeyam-cli/templates/{codeyam:debug.md → skills/codeyam-debug/SKILL.md} +1 -1
- package/codeyam-cli/templates/skills/codeyam-dev-mode/SKILL.md +237 -0
- package/codeyam-cli/templates/skills/codeyam-editor/SKILL.md +211 -0
- package/codeyam-cli/templates/skills/codeyam-memory/SKILL.md +611 -0
- package/codeyam-cli/templates/skills/codeyam-memory/scripts/holistic-analysis/deprecated-prompt.md +100 -0
- 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/holistic-analysis/misleading-api-prompt.md +117 -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/analyze-prompt.md +46 -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/codeyam-cli/templates/skills/codeyam-new-rule/SKILL.md +11 -0
- package/codeyam-cli/templates/{codeyam:setup.md → skills/codeyam-setup/SKILL.md} +13 -1
- package/codeyam-cli/templates/{codeyam:sim.md → skills/codeyam-sim/SKILL.md} +1 -1
- package/codeyam-cli/templates/{codeyam:test.md → skills/codeyam-test/SKILL.md} +1 -1
- package/codeyam-cli/templates/{codeyam:verify.md → skills/codeyam-verify/SKILL.md} +1 -1
- package/package.json +29 -21
- package/packages/ai/index.js +1 -1
- package/packages/ai/index.js.map +1 -1
- package/packages/ai/src/lib/analyzeScope.js +21 -1
- package/packages/ai/src/lib/analyzeScope.js.map +1 -1
- package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +22 -4
- package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
- package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js +10 -14
- package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js.map +1 -1
- package/packages/ai/src/lib/astScopes/processExpression.js +78 -1
- package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
- package/packages/ai/src/lib/astScopes/sharedPatterns.js +25 -0
- package/packages/ai/src/lib/astScopes/sharedPatterns.js.map +1 -1
- package/packages/ai/src/lib/completionCall.js +10 -7
- package/packages/ai/src/lib/completionCall.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +495 -10
- package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js +5 -1
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +11 -2
- package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js +2 -2
- package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js +63 -0
- package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js.map +1 -0
- package/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.js +54 -0
- package/packages/ai/src/lib/dataStructure/helpers/coercePrimitivesToArraysBySchema.js.map +1 -0
- package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +122 -12
- package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js +15 -1
- package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +78 -17
- package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.js +34 -0
- package/packages/ai/src/lib/dataStructure/helpers/stripNullableMarkers.js.map +1 -0
- package/packages/ai/src/lib/dataStructureChunking.js +30 -11
- package/packages/ai/src/lib/dataStructureChunking.js.map +1 -1
- package/packages/ai/src/lib/generateEntityDataStructure.js +46 -2
- package/packages/ai/src/lib/generateEntityDataStructure.js.map +1 -1
- package/packages/ai/src/lib/generateEntityScenarioData.js +269 -5
- package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
- package/packages/ai/src/lib/generateExecutionFlows.js +86 -2
- package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -1
- package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js +242 -81
- package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js.map +1 -1
- package/packages/ai/src/lib/isolateScopes.js +39 -3
- package/packages/ai/src/lib/isolateScopes.js.map +1 -1
- package/packages/ai/src/lib/mergeJsonTypeDefinitions.js +5 -0
- package/packages/ai/src/lib/mergeJsonTypeDefinitions.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js +97 -0
- package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js.map +1 -0
- package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +17 -2
- package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
- package/packages/analyze/index.js +1 -0
- package/packages/analyze/index.js.map +1 -1
- package/packages/analyze/src/lib/ProjectAnalyzer.js +13 -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/asts/nodes/getNodeType.js +1 -0
- package/packages/analyze/src/lib/asts/nodes/getNodeType.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +52 -2
- 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/dependencyResolver.js +0 -5
- package/packages/analyze/src/lib/files/analyze/dependencyResolver.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js +9 -0
- package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js +907 -0
- package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js.map +1 -0
- package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js +5 -1
- package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +51 -14
- package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +181 -13
- 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 +328 -49
- package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
- package/packages/analyze/src/lib/index.js +1 -0
- package/packages/analyze/src/lib/index.js.map +1 -1
- package/packages/database/index.js +1 -0
- package/packages/database/index.js.map +1 -1
- package/packages/database/src/lib/analysisBranchToDb.js +1 -1
- package/packages/database/src/lib/analysisBranchToDb.js.map +1 -1
- package/packages/database/src/lib/analysisToDb.js +1 -1
- package/packages/database/src/lib/analysisToDb.js.map +1 -1
- package/packages/database/src/lib/branchToDb.js +1 -1
- package/packages/database/src/lib/branchToDb.js.map +1 -1
- package/packages/database/src/lib/commitBranchToDb.js +1 -1
- package/packages/database/src/lib/commitBranchToDb.js.map +1 -1
- package/packages/database/src/lib/commitToDb.js +1 -1
- package/packages/database/src/lib/commitToDb.js.map +1 -1
- package/packages/database/src/lib/fileToDb.js +1 -1
- package/packages/database/src/lib/fileToDb.js.map +1 -1
- package/packages/database/src/lib/kysely/db.js +8 -0
- package/packages/database/src/lib/kysely/db.js.map +1 -1
- package/packages/database/src/lib/kysely/tables/editorScenariosTable.js +149 -0
- package/packages/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -0
- package/packages/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
- package/packages/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
- package/packages/database/src/lib/loadCommits.js +23 -13
- package/packages/database/src/lib/loadCommits.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/loadReadyToBeCapturedAnalyses.js +1 -4
- package/packages/database/src/lib/loadReadyToBeCapturedAnalyses.js.map +1 -1
- package/packages/database/src/lib/projectToDb.js +1 -1
- package/packages/database/src/lib/projectToDb.js.map +1 -1
- package/packages/database/src/lib/saveFiles.js +1 -1
- package/packages/database/src/lib/saveFiles.js.map +1 -1
- package/packages/database/src/lib/scenarioToDb.js +1 -1
- package/packages/database/src/lib/scenarioToDb.js.map +1 -1
- package/packages/database/src/lib/updateCommitMetadata.js +76 -90
- package/packages/database/src/lib/updateCommitMetadata.js.map +1 -1
- package/packages/database/src/lib/updateFreshAnalysisStatus.js +41 -30
- package/packages/database/src/lib/updateFreshAnalysisStatus.js.map +1 -1
- package/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.js +68 -57
- package/packages/database/src/lib/updateFreshAnalysisStatusWithScenarios.js.map +1 -1
- package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js +29 -1
- package/packages/generate/src/lib/componentScenarioPage/generateScenarioClientWrapper.js.map +1 -1
- package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.js +33 -5
- package/packages/generate/src/lib/componentScenarioPage/getIFrameMessageListenerCode.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 +98 -3
- package/packages/utils/src/lib/fs/rsyncCopy.js.map +1 -1
- package/scripts/npm-post-install.cjs +34 -0
- package/codeyam-cli/src/commands/detect-universal-mocks.js +0 -118
- package/codeyam-cli/src/commands/detect-universal-mocks.js.map +0 -1
- package/codeyam-cli/src/commands/list.js +0 -31
- package/codeyam-cli/src/commands/list.js.map +0 -1
- package/codeyam-cli/src/commands/webapp-info.js +0 -146
- package/codeyam-cli/src/commands/webapp-info.js.map +0 -1
- package/codeyam-cli/src/utils/universal-mocks.js +0 -152
- package/codeyam-cli/src/utils/universal-mocks.js.map +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/EntityTypeBadge-DLqD3qNt.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-C8lyxW9k.js +0 -34
- package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-aht4aafF.js +0 -25
- package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-CVtiBnY5.js +0 -3
- package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-DuDvi0jm.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/TruncatedFilePath-DyFZkK0l.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/chunk-EPOLDU6W-CXRTFQ3F.js +0 -51
- package/codeyam-cli/src/webserver/build/client/assets/copy-Bb-80kDT.js +0 -6
- package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-BdhJEx6B.js +0 -21
- package/codeyam-cli/src/webserver/build/client/assets/dev.empty-BBnGWYga.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-DavjRmOY.js +0 -6
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-D1T4TGjf.js +0 -6
- package/codeyam-cli/src/webserver/build/client/assets/file-code-Dhef1kWN.js +0 -6
- package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-DMJ7zii9.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/files-CJ6lTdTA.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/git-CPTZZ-JZ.js +0 -15
- package/codeyam-cli/src/webserver/build/client/assets/globals-D3yhhV8x.css +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/manifest-a78b90a2.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/memory--GCbFsBE.js +0 -92
- package/codeyam-cli/src/webserver/build/client/assets/root-eVAaavTS.js +0 -62
- package/codeyam-cli/src/webserver/build/client/assets/settings-CS5f3WzT.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/simulations-DwFIBT09.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-C1v1PQzo.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-aSv48UbS.js +0 -2
- package/codeyam-cli/src/webserver/build/client/assets/useReportContext-DYxHZQuP.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/useToast-mBRpZPiu.js +0 -1
- package/codeyam-cli/src/webserver/build/server/assets/index-BM6TDT1Y.js +0 -1
- package/codeyam-cli/src/webserver/build/server/assets/server-build-dYC34MHw.js +0 -257
- package/codeyam-cli/templates/codeyam-stop-hook.sh +0 -284
- package/codeyam-cli/templates/codeyam:diagnose.md +0 -803
- package/codeyam-cli/templates/codeyam:memory.md +0 -341
- package/codeyam-cli/templates/codeyam:new-rule.md +0 -13
- package/scripts/finalize-analyzer.cjs +0 -81
|
@@ -10,6 +10,9 @@ import { parseJsonSafe } from "../../../../packages/ai/index.js";
|
|
|
10
10
|
import convertNullToUndefinedBySchema from "./dataStructure/helpers/convertNullToUndefinedBySchema.js";
|
|
11
11
|
import convertTypeAnnotationsToValues from "./dataStructure/helpers/convertTypeAnnotationsToValues.js";
|
|
12
12
|
import fixNullIdsBySchema from "./dataStructure/helpers/fixNullIdsBySchema.js";
|
|
13
|
+
import coerceObjectsToPrimitivesBySchema from "./dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js";
|
|
14
|
+
import coercePrimitivesToArraysBySchema from "./dataStructure/helpers/coercePrimitivesToArraysBySchema.js";
|
|
15
|
+
import stripNullableMarkers from "./dataStructure/helpers/stripNullableMarkers.js";
|
|
13
16
|
import { deepMerge } from "../../../../packages/generate/index.js";
|
|
14
17
|
import { chunkDataStructure, getRequiredValuesForChunk, } from "./dataStructureChunking.js";
|
|
15
18
|
/**
|
|
@@ -128,6 +131,35 @@ function findKeyPath(targetKey, obj, currentPath = []) {
|
|
|
128
131
|
}
|
|
129
132
|
return null;
|
|
130
133
|
}
|
|
134
|
+
/**
|
|
135
|
+
* Strip primitive values from `source` when the `destination` already has an
|
|
136
|
+
* array or object at the same key. Returns a cleaned copy of source (or null
|
|
137
|
+
* if nothing remains after stripping).
|
|
138
|
+
*
|
|
139
|
+
* This prevents misplaced LLM data (e.g., `{ webapps: true }`) from
|
|
140
|
+
* overwriting correct complex values (e.g., `{ webapps: [...] }`) during
|
|
141
|
+
* deep merge in relocateMisplacedNestedKeys.
|
|
142
|
+
*/
|
|
143
|
+
function stripPrimitivesOverwritingComplexValues(destination, source) {
|
|
144
|
+
if (typeof source !== 'object' || source === null || Array.isArray(source)) {
|
|
145
|
+
return null;
|
|
146
|
+
}
|
|
147
|
+
const result = {};
|
|
148
|
+
let hasKeys = false;
|
|
149
|
+
for (const key of Object.keys(source)) {
|
|
150
|
+
const srcVal = source[key];
|
|
151
|
+
const dstVal = destination[key];
|
|
152
|
+
// If destination has an array or object but source has a primitive, skip it
|
|
153
|
+
if (typeof dstVal === 'object' &&
|
|
154
|
+
dstVal !== null &&
|
|
155
|
+
typeof srcVal !== 'object') {
|
|
156
|
+
continue;
|
|
157
|
+
}
|
|
158
|
+
result[key] = srcVal;
|
|
159
|
+
hasKeys = true;
|
|
160
|
+
}
|
|
161
|
+
return hasKeys ? result : null;
|
|
162
|
+
}
|
|
131
163
|
/**
|
|
132
164
|
* Relocate misplaced nested keys in mockData to their correct position
|
|
133
165
|
* based on the dataForMocks structure.
|
|
@@ -180,9 +212,16 @@ function relocateMisplacedNestedKeys(mockData, dataForMocks, currentPathForLoggi
|
|
|
180
212
|
current = current[pathKey];
|
|
181
213
|
}
|
|
182
214
|
// Deep merge the value into the correct location
|
|
183
|
-
// Use deep merge to preserve existing data at that location
|
|
215
|
+
// Use deep merge to preserve existing data at that location.
|
|
216
|
+
// Before merging, strip primitives from the misplaced value that would
|
|
217
|
+
// overwrite arrays/objects at the destination. The misplaced data is lower
|
|
218
|
+
// quality — the LLM put it in the wrong place — so primitives like `true`
|
|
219
|
+
// should not overwrite correct complex values like arrays.
|
|
184
220
|
if (current[key] !== undefined && typeof current[key] === 'object') {
|
|
185
|
-
|
|
221
|
+
const safeValue = stripPrimitivesOverwritingComplexValues(current[key], value);
|
|
222
|
+
if (safeValue !== null) {
|
|
223
|
+
current[key] = deepMerge(current[key], safeValue);
|
|
224
|
+
}
|
|
186
225
|
}
|
|
187
226
|
else {
|
|
188
227
|
current[key] = value;
|
|
@@ -236,9 +275,14 @@ function generateDefaultForSchemaType(schemaType) {
|
|
|
236
275
|
return null;
|
|
237
276
|
return schemaType; // Return the type as a string placeholder
|
|
238
277
|
}
|
|
239
|
-
if (
|
|
240
|
-
schemaType
|
|
241
|
-
|
|
278
|
+
if (Array.isArray(schemaType)) {
|
|
279
|
+
if (schemaType.length === 0)
|
|
280
|
+
return [];
|
|
281
|
+
// Generate a single default element based on the first element's schema
|
|
282
|
+
const elementDefault = generateDefaultForSchemaType(schemaType[0]);
|
|
283
|
+
return elementDefault !== undefined ? [elementDefault] : [];
|
|
284
|
+
}
|
|
285
|
+
if (typeof schemaType === 'object' && schemaType !== null) {
|
|
242
286
|
// Recursively generate defaults for nested objects
|
|
243
287
|
const result = {};
|
|
244
288
|
for (const [key, value] of Object.entries(schemaType)) {
|
|
@@ -343,6 +387,8 @@ function fillMissingMockDataKeysWithDefaults(mockData, dataForMocks, pathPrefix
|
|
|
343
387
|
}
|
|
344
388
|
const missingKeys = [];
|
|
345
389
|
for (const key of Object.keys(dataForMocks)) {
|
|
390
|
+
if (key === '_nullable')
|
|
391
|
+
continue; // Internal marker, not a data key
|
|
346
392
|
const fullPath = pathPrefix ? `${pathPrefix}.${key}` : key;
|
|
347
393
|
if (mockData[key] === undefined) {
|
|
348
394
|
missingKeys.push(fullPath);
|
|
@@ -368,6 +414,139 @@ function fillMissingMockDataKeysWithDefaults(mockData, dataForMocks, pathPrefix
|
|
|
368
414
|
awsLog(`CodeYam: Generated default mock data for ${missingKeys.length} missing key(s): ${missingKeys.slice(0, 10).join(', ')}${missingKeys.length > 10 ? '...' : ''}`);
|
|
369
415
|
}
|
|
370
416
|
}
|
|
417
|
+
/**
|
|
418
|
+
* Enforce execution flow requiredValues by setting falsy paths to null.
|
|
419
|
+
*
|
|
420
|
+
* The LLM doesn't reliably generate null for `comparison: 'falsy'` requirements.
|
|
421
|
+
* For example, a flow like "diffView: falsy" should hide a modal, but the LLM
|
|
422
|
+
* might generate a truthy object, causing the modal to show in all screenshots.
|
|
423
|
+
*
|
|
424
|
+
* This function:
|
|
425
|
+
* 1. Gets requiredValues from covered flows
|
|
426
|
+
* 2. For 'falsy' comparisons: sets the value to null
|
|
427
|
+
* 3. For 'truthy' comparisons with falsy values: generates a default truthy value
|
|
428
|
+
*/
|
|
429
|
+
function enforceRequiredValues(mockData, coveredFlowIds, executionFlows) {
|
|
430
|
+
if (!coveredFlowIds.length || !executionFlows.length) {
|
|
431
|
+
return;
|
|
432
|
+
}
|
|
433
|
+
// Get all requiredValues from covered flows
|
|
434
|
+
const coveredFlows = executionFlows.filter((flow) => coveredFlowIds.includes(flow.id));
|
|
435
|
+
for (const flow of coveredFlows) {
|
|
436
|
+
if (!flow.requiredValues)
|
|
437
|
+
continue;
|
|
438
|
+
for (const rv of flow.requiredValues) {
|
|
439
|
+
if (!rv.attributePath)
|
|
440
|
+
continue;
|
|
441
|
+
// Find the value in mockData - the path could be nested
|
|
442
|
+
// e.g., attributePath: "diffView" could be at mockData['useDiffModal()'].diffView
|
|
443
|
+
const result = findAndSetValueInMockData(mockData, rv.attributePath, rv.comparison, rv.valueType);
|
|
444
|
+
if (result.found) {
|
|
445
|
+
awsLog(`CodeYam: Enforced ${rv.comparison} for ${rv.attributePath} (set to ${result.newValue === null ? 'null' : typeof result.newValue})`);
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
/**
|
|
451
|
+
* Find a value in mockData by attributePath and enforce the comparison.
|
|
452
|
+
* The attributePath could be a simple key or a nested path.
|
|
453
|
+
*
|
|
454
|
+
* Returns { found: boolean, newValue: unknown }
|
|
455
|
+
*/
|
|
456
|
+
function findAndSetValueInMockData(mockData, attributePath, comparison, valueType) {
|
|
457
|
+
// Try to find the path at various nesting levels
|
|
458
|
+
// The attributePath might be "diffView" but the actual location is
|
|
459
|
+
// mockData['useDiffModal()'].diffView
|
|
460
|
+
// Strategy 1: Direct path (e.g., mockData[attributePath])
|
|
461
|
+
if (attributePath in mockData) {
|
|
462
|
+
const currentValue = mockData[attributePath];
|
|
463
|
+
const { shouldChange, newValue } = getEnforcedValue(currentValue, comparison, valueType);
|
|
464
|
+
if (shouldChange) {
|
|
465
|
+
mockData[attributePath] = newValue;
|
|
466
|
+
return { found: true, newValue };
|
|
467
|
+
}
|
|
468
|
+
return { found: true, newValue: currentValue };
|
|
469
|
+
}
|
|
470
|
+
// Strategy 2: Search in nested objects
|
|
471
|
+
for (const [key, value] of Object.entries(mockData)) {
|
|
472
|
+
if (value && typeof value === 'object' && !Array.isArray(value)) {
|
|
473
|
+
const nestedObj = value;
|
|
474
|
+
// Check if attributePath exists in this nested object
|
|
475
|
+
if (attributePath in nestedObj) {
|
|
476
|
+
const currentValue = nestedObj[attributePath];
|
|
477
|
+
const { shouldChange, newValue } = getEnforcedValue(currentValue, comparison, valueType);
|
|
478
|
+
if (shouldChange) {
|
|
479
|
+
nestedObj[attributePath] = newValue;
|
|
480
|
+
return { found: true, newValue };
|
|
481
|
+
}
|
|
482
|
+
return { found: true, newValue: currentValue };
|
|
483
|
+
}
|
|
484
|
+
// Also check dot-notation paths (e.g., "diffView.type")
|
|
485
|
+
if (attributePath.includes('.')) {
|
|
486
|
+
const parts = attributePath.split('.');
|
|
487
|
+
const firstPart = parts[0];
|
|
488
|
+
if (firstPart in nestedObj) {
|
|
489
|
+
// Recurse with the rest of the path
|
|
490
|
+
const result = findAndSetValueInMockData(nestedObj, attributePath, comparison, valueType);
|
|
491
|
+
if (result.found)
|
|
492
|
+
return result;
|
|
493
|
+
}
|
|
494
|
+
}
|
|
495
|
+
// Recursively search deeper
|
|
496
|
+
const result = findAndSetValueInMockData(nestedObj, attributePath, comparison, valueType);
|
|
497
|
+
if (result.found)
|
|
498
|
+
return result;
|
|
499
|
+
}
|
|
500
|
+
}
|
|
501
|
+
return { found: false };
|
|
502
|
+
}
|
|
503
|
+
/**
|
|
504
|
+
* Determine if a value should be changed to match a comparison requirement.
|
|
505
|
+
*
|
|
506
|
+
* For 'falsy' comparison: truthy values should become null
|
|
507
|
+
* For 'truthy' comparison: falsy values should become a default truthy value
|
|
508
|
+
*/
|
|
509
|
+
function getEnforcedValue(currentValue, comparison, valueType) {
|
|
510
|
+
const isTruthy = Boolean(currentValue);
|
|
511
|
+
if (comparison === 'falsy') {
|
|
512
|
+
// Value should be falsy
|
|
513
|
+
if (isTruthy) {
|
|
514
|
+
return { shouldChange: true, newValue: null };
|
|
515
|
+
}
|
|
516
|
+
return { shouldChange: false, newValue: currentValue };
|
|
517
|
+
}
|
|
518
|
+
if (comparison === 'truthy') {
|
|
519
|
+
// Value should be truthy
|
|
520
|
+
if (!isTruthy) {
|
|
521
|
+
// Generate a default truthy value based on valueType
|
|
522
|
+
const defaultValue = generateDefaultTruthyValue(valueType);
|
|
523
|
+
return { shouldChange: true, newValue: defaultValue };
|
|
524
|
+
}
|
|
525
|
+
return { shouldChange: false, newValue: currentValue };
|
|
526
|
+
}
|
|
527
|
+
// For other comparisons (equals, exists, etc.), don't auto-enforce
|
|
528
|
+
return { shouldChange: false, newValue: currentValue };
|
|
529
|
+
}
|
|
530
|
+
/**
|
|
531
|
+
* Generate a default truthy value for a given type.
|
|
532
|
+
*/
|
|
533
|
+
function generateDefaultTruthyValue(valueType) {
|
|
534
|
+
if (!valueType)
|
|
535
|
+
return { _placeholder: true };
|
|
536
|
+
switch (valueType.toLowerCase()) {
|
|
537
|
+
case 'string':
|
|
538
|
+
return 'default-value';
|
|
539
|
+
case 'number':
|
|
540
|
+
return 1;
|
|
541
|
+
case 'boolean':
|
|
542
|
+
return true;
|
|
543
|
+
case 'array':
|
|
544
|
+
return [{ _placeholder: true }];
|
|
545
|
+
case 'object':
|
|
546
|
+
default:
|
|
547
|
+
return { _placeholder: true };
|
|
548
|
+
}
|
|
549
|
+
}
|
|
371
550
|
/**
|
|
372
551
|
* For Default Scenario only: detect missing mockData keys and make a follow-up
|
|
373
552
|
* LLM call to fill them in. This handles cases where the LLM completes normally
|
|
@@ -478,6 +657,18 @@ export async function generateDataForScenario({ entity, structure, scenario, exe
|
|
|
478
657
|
}
|
|
479
658
|
}
|
|
480
659
|
}
|
|
660
|
+
// Detect keys that were lost from failed or partial chunk responses
|
|
661
|
+
// and fill them with schema-based defaults so they aren't permanently lost.
|
|
662
|
+
const allChunkedKeys = chunks.flatMap((c) => Object.keys(c || {}));
|
|
663
|
+
const returnedKeys = new Set(Object.keys(chunkedMockData));
|
|
664
|
+
const missingChunkKeys = allChunkedKeys.filter((k) => !returnedKeys.has(k));
|
|
665
|
+
if (missingChunkKeys.length > 0) {
|
|
666
|
+
awsLog(`Chunked processing: ${missingChunkKeys.length} key(s) missing from chunk results, filling with defaults: ${missingChunkKeys.join(', ')}`);
|
|
667
|
+
const dataForMocksRecord = structure.dataForMocks;
|
|
668
|
+
for (const key of missingChunkKeys) {
|
|
669
|
+
chunkedMockData[key] = generateDefaultForSchemaType(dataForMocksRecord[key]);
|
|
670
|
+
}
|
|
671
|
+
}
|
|
481
672
|
awsLog(`Chunked processing complete. Generated ${Object.keys(chunkedMockData).length} keys total`);
|
|
482
673
|
}
|
|
483
674
|
}
|
|
@@ -630,6 +821,15 @@ export async function generateDataForScenario({ entity, structure, scenario, exe
|
|
|
630
821
|
}
|
|
631
822
|
awsLog(`Merged chunked mock data for keys: ${Object.keys(chunkedMockData).join(', ')}`);
|
|
632
823
|
}
|
|
824
|
+
// Strip _nullable markers from LLM-generated mock data.
|
|
825
|
+
// The _nullable marker is an internal CodeYam concept used in type definitions
|
|
826
|
+
// to indicate that a field can be null/undefined. The LLM sometimes includes
|
|
827
|
+
// these markers in its generated data, which causes runtime errors when code
|
|
828
|
+
// iterates over object keys (e.g., Object.keys(importedBy) picks up "_nullable",
|
|
829
|
+
// then Object.keys(importedBy["_nullable"]) calls Object.keys(null) and throws).
|
|
830
|
+
if (fullScenarioData.data.mockData) {
|
|
831
|
+
stripNullableMarkers(fullScenarioData.data.mockData);
|
|
832
|
+
}
|
|
633
833
|
// Relocate misplaced nested keys to their correct position.
|
|
634
834
|
// The LLM sometimes places nested keys at root level instead of inside their
|
|
635
835
|
// parent object (e.g., 'fastener' at root instead of inside 'trpc').
|
|
@@ -644,6 +844,23 @@ export async function generateDataForScenario({ entity, structure, scenario, exe
|
|
|
644
844
|
if (structure.dataForMocks && fullScenarioData.data.mockData) {
|
|
645
845
|
convertNullToUndefinedBySchema(fullScenarioData.data.mockData, structure.dataForMocks);
|
|
646
846
|
}
|
|
847
|
+
// Coerce objects/arrays to primitives when the schema expects a primitive type.
|
|
848
|
+
// The LLM sometimes generates an object where the schema expects "string",
|
|
849
|
+
// e.g., { body: { "env": "production" } } instead of { body: "some string" }.
|
|
850
|
+
// This causes runtime errors like "TypeError: body.match is not a function".
|
|
851
|
+
// Must run BEFORE convertCommaSeparatedStringsToArrays, which intentionally
|
|
852
|
+
// overrides schema types for array-like field names.
|
|
853
|
+
if (structure.dataForMocks && fullScenarioData.data.mockData) {
|
|
854
|
+
coerceObjectsToPrimitivesBySchema(fullScenarioData.data.mockData, structure.dataForMocks);
|
|
855
|
+
}
|
|
856
|
+
// Coerce primitives to empty arrays when the schema expects an array.
|
|
857
|
+
// The LLM sometimes generates a primitive (e.g., `webapps: true`) where the
|
|
858
|
+
// schema expects an array (e.g., `webapps: [{ name: "string" }]`).
|
|
859
|
+
// This causes runtime errors like "TypeError: config.webapps?.forEach is not a function".
|
|
860
|
+
// Must run AFTER coerceObjectsToPrimitivesBySchema and BEFORE convertCommaSeparatedStringsToArrays.
|
|
861
|
+
if (structure.dataForMocks && fullScenarioData.data.mockData) {
|
|
862
|
+
coercePrimitivesToArraysBySchema(fullScenarioData.data.mockData, structure.dataForMocks);
|
|
863
|
+
}
|
|
647
864
|
// Convert comma-separated strings to arrays when appropriate.
|
|
648
865
|
// The LLM sometimes generates strings like "color,size" instead of arrays
|
|
649
866
|
// like ["color", "size"] when the schema type is incorrectly inferred as
|
|
@@ -668,6 +885,13 @@ export async function generateDataForScenario({ entity, structure, scenario, exe
|
|
|
668
885
|
if (structure.dataForMocks && fullScenarioData.data.mockData) {
|
|
669
886
|
fixNullIdsBySchema(fullScenarioData.data.mockData, structure.dataForMocks);
|
|
670
887
|
}
|
|
888
|
+
// Enforce execution flow requiredValues by setting falsy paths to null.
|
|
889
|
+
// The LLM doesn't reliably generate null for falsy requirements (e.g., diffView: falsy
|
|
890
|
+
// to hide a modal). This post-processing ensures that scenarios match their
|
|
891
|
+
// covered flows' requiredValues.
|
|
892
|
+
if (fullScenarioData.data.mockData && executionFlows) {
|
|
893
|
+
enforceRequiredValues(fullScenarioData.data.mockData, scenario.metadata?.coveredFlows || [], executionFlows);
|
|
894
|
+
}
|
|
671
895
|
if (structure.arguments && fullScenarioData.data.argumentsData) {
|
|
672
896
|
for (let i = 0; i < fullScenarioData.data.argumentsData.length; i++) {
|
|
673
897
|
if (structure.arguments[i]) {
|
|
@@ -797,6 +1021,46 @@ export default async function generateEntityScenarioData({ entity, structure, sc
|
|
|
797
1021
|
scenarioData.data.argumentsData =
|
|
798
1022
|
defaultScenarioData.data.argumentsData.map((arg) => ({ ...arg }));
|
|
799
1023
|
}
|
|
1024
|
+
// Enforce requiredValues AFTER merge for non-default scenarios
|
|
1025
|
+
// This ensures that if a non-default scenario doesn't cover a certain flow,
|
|
1026
|
+
// it inherits the enforcement from the default scenario
|
|
1027
|
+
if (scenarioData.data?.mockData && executionFlows) {
|
|
1028
|
+
// Get the flows covered by this scenario
|
|
1029
|
+
const scenarioCoveredFlows = nonDefaultScenarios.find((s) => s.name === result.scenarioData.scenarioDescription)?.metadata?.coveredFlows || [];
|
|
1030
|
+
// Get the paths that the scenario's flows affect
|
|
1031
|
+
const scenarioAffectedPaths = new Set();
|
|
1032
|
+
for (const flowId of scenarioCoveredFlows) {
|
|
1033
|
+
const flow = executionFlows.find((f) => f.id === flowId);
|
|
1034
|
+
if (flow?.requiredValues) {
|
|
1035
|
+
for (const rv of flow.requiredValues) {
|
|
1036
|
+
if (rv.attributePath) {
|
|
1037
|
+
// Extract base path (e.g., "diffView" from "diffView.type")
|
|
1038
|
+
const basePath = rv.attributePath.split('.')[0];
|
|
1039
|
+
scenarioAffectedPaths.add(basePath);
|
|
1040
|
+
}
|
|
1041
|
+
}
|
|
1042
|
+
}
|
|
1043
|
+
}
|
|
1044
|
+
// Get the default scenario's flows
|
|
1045
|
+
const defaultCoveredFlows = defaultScenario.metadata?.coveredFlows || [];
|
|
1046
|
+
// For paths NOT affected by the scenario, apply default's enforcement
|
|
1047
|
+
const defaultFlowsForUnaffectedPaths = defaultCoveredFlows.filter((flowId) => {
|
|
1048
|
+
const flow = executionFlows.find((f) => f.id === flowId);
|
|
1049
|
+
if (!flow?.requiredValues)
|
|
1050
|
+
return false;
|
|
1051
|
+
// Check if this flow affects a path that the scenario doesn't cover
|
|
1052
|
+
return flow.requiredValues.some((rv) => {
|
|
1053
|
+
if (!rv.attributePath)
|
|
1054
|
+
return false;
|
|
1055
|
+
const basePath = rv.attributePath.split('.')[0];
|
|
1056
|
+
return !scenarioAffectedPaths.has(basePath);
|
|
1057
|
+
});
|
|
1058
|
+
});
|
|
1059
|
+
// Apply enforcement from default scenario for unaffected paths
|
|
1060
|
+
if (defaultFlowsForUnaffectedPaths.length > 0) {
|
|
1061
|
+
enforceRequiredValues(scenarioData.data.mockData, defaultFlowsForUnaffectedPaths, executionFlows);
|
|
1062
|
+
}
|
|
1063
|
+
}
|
|
800
1064
|
return scenarioData;
|
|
801
1065
|
});
|
|
802
1066
|
scenarioDatas.push(...mergedScenarioDatas);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateEntityScenarioData.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateEntityScenarioData.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generateEntityScenarioData.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateEntityScenarioData.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,28 @@ import generateExecutionFlowsFromConditionalEffects from "./generateExecutionFlo
|
|
|
18
18
|
import generateExecutionFlowsFromConditionals from "./generateExecutionFlowsFromConditionals.js";
|
|
19
19
|
import generateExecutionFlowsFromJsxUsages from "./generateExecutionFlowsFromJsxUsages.js";
|
|
20
20
|
import resolvePathToControllable from "./resolvePathToControllable.js";
|
|
21
|
+
/**
|
|
22
|
+
* Patterns that indicate a child component is a modal/overlay/blocking element.
|
|
23
|
+
* Same patterns used in generateExecutionFlowsFromConditionalEffects.ts for
|
|
24
|
+
* state variable names — here applied to child component names.
|
|
25
|
+
*/
|
|
26
|
+
const BLOCKING_CHILD_PATTERNS = [
|
|
27
|
+
/modal/i,
|
|
28
|
+
/overlay/i,
|
|
29
|
+
/dialog/i,
|
|
30
|
+
/popup/i,
|
|
31
|
+
/drawer/i,
|
|
32
|
+
/sheet/i,
|
|
33
|
+
/lightbox/i,
|
|
34
|
+
/backdrop/i,
|
|
35
|
+
];
|
|
36
|
+
/**
|
|
37
|
+
* Check if a child component name suggests it's a blocking/modal element.
|
|
38
|
+
* Exported for testing.
|
|
39
|
+
*/
|
|
40
|
+
export function isBlockingChildComponent(componentName) {
|
|
41
|
+
return BLOCKING_CHILD_PATTERNS.some((pattern) => pattern.test(componentName));
|
|
42
|
+
}
|
|
21
43
|
export default function generateExecutionFlows({ entity, mergedDataStructure, childEntityMetadata, }) {
|
|
22
44
|
awsLog(`CodeYam: Generating execution flows (static analysis)`, {
|
|
23
45
|
filePath: entity.filePath,
|
|
@@ -150,6 +172,10 @@ export default function generateExecutionFlows({ entity, mergedDataStructure, ch
|
|
|
150
172
|
for (const flow of allFlows) {
|
|
151
173
|
calculateFlowPriority(flow, gatingPathToChildren);
|
|
152
174
|
}
|
|
175
|
+
// Assign exclusiveGroup for truthy/falsy flow pairs that control child components.
|
|
176
|
+
// When the same gating path produces both a truthy flow (show component) and a
|
|
177
|
+
// falsy flow (hide component), they are mutually exclusive and should be grouped.
|
|
178
|
+
assignExclusiveGroupsForGatingPairs(allFlows);
|
|
153
179
|
// Sort flows by priority (highest first)
|
|
154
180
|
allFlows.sort((a, b) => (b.priority ?? 0) - (a.priority ?? 0));
|
|
155
181
|
return {
|
|
@@ -206,6 +232,53 @@ function buildGatingPathToChildrenMap(childBoundaryGatingConditions, equivalentS
|
|
|
206
232
|
}
|
|
207
233
|
return gatingPathToChildren;
|
|
208
234
|
}
|
|
235
|
+
/**
|
|
236
|
+
* Assign exclusiveGroup for truthy/falsy flow pairs that control child components.
|
|
237
|
+
*
|
|
238
|
+
* When the same attribute path produces both a truthy and falsy flow (e.g.,
|
|
239
|
+
* {diffView && <DiffModal/>}), they are mutually exclusive — only one can be
|
|
240
|
+
* active at a time. Grouping them ensures the scenario generator treats them
|
|
241
|
+
* as alternative states rather than combining them.
|
|
242
|
+
*/
|
|
243
|
+
function assignExclusiveGroupsForGatingPairs(flows) {
|
|
244
|
+
// Build a map: attributePath -> flows with truthy or falsy comparison for that path
|
|
245
|
+
const pathToFlows = new Map();
|
|
246
|
+
for (const flow of flows) {
|
|
247
|
+
// Only consider flows that control child components
|
|
248
|
+
if (!flow.childComponentsControlled?.length)
|
|
249
|
+
continue;
|
|
250
|
+
for (const rv of flow.requiredValues) {
|
|
251
|
+
if (rv.comparison === 'truthy' || rv.comparison === 'falsy') {
|
|
252
|
+
if (!pathToFlows.has(rv.attributePath)) {
|
|
253
|
+
pathToFlows.set(rv.attributePath, { truthy: [], falsy: [] });
|
|
254
|
+
}
|
|
255
|
+
pathToFlows.get(rv.attributePath)[rv.comparison].push(flow);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
// Also check falsy flows that DON'T have childComponentsControlled —
|
|
260
|
+
// they still pair with truthy flows that do
|
|
261
|
+
for (const flow of flows) {
|
|
262
|
+
if (flow.childComponentsControlled?.length)
|
|
263
|
+
continue; // Already processed
|
|
264
|
+
for (const rv of flow.requiredValues) {
|
|
265
|
+
if (rv.comparison === 'falsy' && pathToFlows.has(rv.attributePath)) {
|
|
266
|
+
pathToFlows.get(rv.attributePath).falsy.push(flow);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
// Assign exclusiveGroup where both truthy and falsy flows exist
|
|
271
|
+
for (const [attributePath, { truthy, falsy }] of pathToFlows) {
|
|
272
|
+
if (truthy.length > 0 && falsy.length > 0) {
|
|
273
|
+
const groupName = `gating:${attributePath}`;
|
|
274
|
+
for (const flow of [...truthy, ...falsy]) {
|
|
275
|
+
if (!flow.exclusiveGroup) {
|
|
276
|
+
flow.exclusiveGroup = groupName;
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
}
|
|
209
282
|
/**
|
|
210
283
|
* Calculate priority and childComponentsControlled for a flow.
|
|
211
284
|
*
|
|
@@ -253,6 +326,14 @@ function calculateFlowPriority(flow, gatingPathToChildren) {
|
|
|
253
326
|
if (flow.impact !== 'high') {
|
|
254
327
|
flow.impact = 'high';
|
|
255
328
|
}
|
|
329
|
+
// Check if any controlled child component is a modal/dialog/overlay.
|
|
330
|
+
// Only truthy flows (which SHOW the component) should be marked as blocking.
|
|
331
|
+
// Falsy flows (which HIDE the component) should not be blocking.
|
|
332
|
+
const isTruthyFlow = flow.requiredValues.some((rv) => rv.comparison === 'truthy' || rv.comparison === 'equals');
|
|
333
|
+
if (isTruthyFlow &&
|
|
334
|
+
Array.from(childComponentsControlled).some(isBlockingChildComponent)) {
|
|
335
|
+
flow.blocksOtherFlows = true;
|
|
336
|
+
}
|
|
256
337
|
}
|
|
257
338
|
// Calculate priority score
|
|
258
339
|
let priority = 0;
|
|
@@ -334,8 +415,11 @@ function buildValueGroupMap(flows) {
|
|
|
334
415
|
for (const [, flowValues] of pathToValues) {
|
|
335
416
|
// Only create groups if there are multiple different values for the same path
|
|
336
417
|
const uniqueValues = new Set(flowValues.map((fv) => fv.value));
|
|
337
|
-
if (uniqueValues.size > 1) {
|
|
338
|
-
// This attribute has multiple values, so all flows are siblings
|
|
418
|
+
if (uniqueValues.size > 1 && flowValues.length <= 10) {
|
|
419
|
+
// This attribute has multiple values, so all flows are siblings.
|
|
420
|
+
// Skip large groups (>10 flows) — these are typically shared gating conditions
|
|
421
|
+
// (like route params) that would dominate the selection by pulling in too many
|
|
422
|
+
// siblings and displacing higher-priority flows.
|
|
339
423
|
const siblingIds = flowValues.map((fv) => fv.flowId);
|
|
340
424
|
for (const fv of flowValues) {
|
|
341
425
|
valueGroupMap.set(fv.flowId, siblingIds.filter((id) => id !== fv.flowId));
|