rivet-design 0.17.4 → 0.18.0
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/bin/rivet.js +0 -16
- package/dist/agent-variants/SessionStore.d.ts +5 -240
- package/dist/agent-variants/SessionStore.d.ts.map +1 -1
- package/dist/agent-variants/SessionStore.js +42 -371
- package/dist/agent-variants/SessionStore.js.map +1 -1
- package/dist/agent-variants/VariantWorkspaceManager.d.ts +0 -10
- package/dist/agent-variants/VariantWorkspaceManager.d.ts.map +1 -1
- package/dist/agent-variants/VariantWorkspaceManager.js +0 -17
- package/dist/agent-variants/VariantWorkspaceManager.js.map +1 -1
- package/dist/agent-variants/WorkerExecutorService.d.ts +1 -105
- package/dist/agent-variants/WorkerExecutorService.d.ts.map +1 -1
- package/dist/agent-variants/WorkerExecutorService.js +11 -182
- package/dist/agent-variants/WorkerExecutorService.js.map +1 -1
- package/dist/agent-variants/WorktreeOrchestrator.d.ts +6 -598
- package/dist/agent-variants/WorktreeOrchestrator.d.ts.map +1 -1
- package/dist/agent-variants/WorktreeOrchestrator.js +55 -1288
- package/dist/agent-variants/WorktreeOrchestrator.js.map +1 -1
- package/dist/agent-variants/WorktreeOrchestrator.testHelpers.d.ts +0 -6
- package/dist/agent-variants/WorktreeOrchestrator.testHelpers.d.ts.map +1 -1
- package/dist/agent-variants/WorktreeOrchestrator.testHelpers.js +0 -23
- package/dist/agent-variants/WorktreeOrchestrator.testHelpers.js.map +1 -1
- package/dist/agent-variants/briefContent.d.ts +0 -11
- package/dist/agent-variants/briefContent.d.ts.map +1 -1
- package/dist/agent-variants/briefContent.js +0 -12
- package/dist/agent-variants/briefContent.js.map +1 -1
- package/dist/agent-variants/contextAssets.d.ts +0 -3
- package/dist/agent-variants/contextAssets.d.ts.map +1 -1
- package/dist/agent-variants/contextAssets.js +0 -3
- package/dist/agent-variants/contextAssets.js.map +1 -1
- package/dist/agent-variants/contracts.d.ts +2016 -600
- package/dist/agent-variants/contracts.d.ts.map +1 -1
- package/dist/agent-variants/contracts.js +10 -174
- package/dist/agent-variants/contracts.js.map +1 -1
- package/dist/agent-variants/createProjectArtifacts.d.ts +0 -17
- package/dist/agent-variants/createProjectArtifacts.d.ts.map +1 -1
- package/dist/agent-variants/createProjectArtifacts.js +0 -10
- package/dist/agent-variants/createProjectArtifacts.js.map +1 -1
- package/dist/agent-variants/diffQa.d.ts +0 -1
- package/dist/agent-variants/diffQa.d.ts.map +1 -1
- package/dist/agent-variants/diffQa.js +0 -1
- package/dist/agent-variants/diffQa.js.map +1 -1
- package/dist/agent-variants/directionAuthoring.d.ts +0 -13
- package/dist/agent-variants/directionAuthoring.d.ts.map +1 -1
- package/dist/agent-variants/directionAuthoring.js +12 -46
- package/dist/agent-variants/directionAuthoring.js.map +1 -1
- package/dist/agent-variants/elementRefToTarget.d.ts +0 -17
- package/dist/agent-variants/elementRefToTarget.d.ts.map +1 -1
- package/dist/agent-variants/elementRefToTarget.js +0 -17
- package/dist/agent-variants/elementRefToTarget.js.map +1 -1
- package/dist/agent-variants/generatedDestination.d.ts +0 -3
- package/dist/agent-variants/generatedDestination.d.ts.map +1 -1
- package/dist/agent-variants/generatedDestination.js +0 -3
- package/dist/agent-variants/generatedDestination.js.map +1 -1
- package/dist/agent-variants/previewQa.d.ts +0 -6
- package/dist/agent-variants/previewQa.d.ts.map +1 -1
- package/dist/agent-variants/previewQa.js +0 -5
- package/dist/agent-variants/previewQa.js.map +1 -1
- package/dist/agent-variants/runLabel.d.ts +0 -15
- package/dist/agent-variants/runLabel.d.ts.map +1 -1
- package/dist/agent-variants/runLabel.js +0 -19
- package/dist/agent-variants/runLabel.js.map +1 -1
- package/dist/agent-variants/runPlan.d.ts +3 -84
- package/dist/agent-variants/runPlan.d.ts.map +1 -1
- package/dist/agent-variants/runPlan.js +0 -51
- package/dist/agent-variants/runPlan.js.map +1 -1
- package/dist/agent-variants/sourceContext.d.ts +0 -10
- package/dist/agent-variants/sourceContext.d.ts.map +1 -1
- package/dist/agent-variants/sourceContext.js +0 -36
- package/dist/agent-variants/sourceContext.js.map +1 -1
- package/dist/agent-variants/variantContext.d.ts +6 -7
- package/dist/agent-variants/variantContext.d.ts.map +1 -1
- package/dist/agent-variants/variantContext.js +69 -10
- package/dist/agent-variants/variantContext.js.map +1 -1
- package/dist/agent-variants/videoKeyframes.d.ts +0 -7
- package/dist/agent-variants/videoKeyframes.d.ts.map +1 -1
- package/dist/agent-variants/videoKeyframes.js +0 -7
- package/dist/agent-variants/videoKeyframes.js.map +1 -1
- package/dist/agent-variants/workItemBriefing.d.ts +0 -21
- package/dist/agent-variants/workItemBriefing.d.ts.map +1 -1
- package/dist/agent-variants/workItemBriefing.js +0 -49
- package/dist/agent-variants/workItemBriefing.js.map +1 -1
- package/dist/agent-variants/workerRuntime.d.ts +1 -137
- package/dist/agent-variants/workerRuntime.d.ts.map +1 -1
- package/dist/agent-variants/workerRuntime.js +8 -147
- package/dist/agent-variants/workerRuntime.js.map +1 -1
- package/dist/cli/browser.d.ts +0 -1
- package/dist/cli/browser.d.ts.map +1 -1
- package/dist/cli/browser.js +0 -1
- package/dist/cli/browser.js.map +1 -1
- package/dist/cli/callerRunnerPaths.d.ts +0 -50
- package/dist/cli/callerRunnerPaths.d.ts.map +1 -1
- package/dist/cli/callerRunnerPaths.js +0 -59
- package/dist/cli/callerRunnerPaths.js.map +1 -1
- package/dist/cli/client.d.ts +0 -18
- package/dist/cli/client.d.ts.map +1 -1
- package/dist/cli/client.js +0 -28
- package/dist/cli/client.js.map +1 -1
- package/dist/cli/commandNames.d.ts +0 -7
- package/dist/cli/commandNames.d.ts.map +1 -1
- package/dist/cli/commandNames.js +1 -7
- package/dist/cli/commandNames.js.map +1 -1
- package/dist/cli/commands/auth.d.ts +0 -6
- package/dist/cli/commands/auth.d.ts.map +1 -1
- package/dist/cli/commands/auth.js +0 -6
- package/dist/cli/commands/auth.js.map +1 -1
- package/dist/cli/commands/elementSelector.d.ts +0 -6
- package/dist/cli/commands/elementSelector.d.ts.map +1 -1
- package/dist/cli/commands/elementSelector.js +0 -7
- package/dist/cli/commands/elementSelector.js.map +1 -1
- package/dist/cli/commands/evidence.d.ts +0 -6
- package/dist/cli/commands/evidence.d.ts.map +1 -1
- package/dist/cli/commands/evidence.js +0 -6
- package/dist/cli/commands/evidence.js.map +1 -1
- package/dist/cli/commands/libraryOpen.d.ts +0 -1
- package/dist/cli/commands/libraryOpen.d.ts.map +1 -1
- package/dist/cli/commands/libraryOpen.js +0 -4
- package/dist/cli/commands/libraryOpen.js.map +1 -1
- package/dist/cli/commands/mcpServe.d.ts +0 -24
- package/dist/cli/commands/mcpServe.d.ts.map +1 -1
- package/dist/cli/commands/mcpServe.js +126 -106
- package/dist/cli/commands/mcpServe.js.map +1 -1
- package/dist/cli/commands/open.d.ts +0 -8
- package/dist/cli/commands/open.d.ts.map +1 -1
- package/dist/cli/commands/open.js +0 -57
- package/dist/cli/commands/open.js.map +1 -1
- package/dist/cli/commands/profile.d.ts +3 -0
- package/dist/cli/commands/profile.d.ts.map +1 -0
- package/dist/cli/commands/profile.js +192 -0
- package/dist/cli/commands/profile.js.map +1 -0
- package/dist/cli/commands/reference.d.ts +0 -5
- package/dist/cli/commands/reference.d.ts.map +1 -1
- package/dist/cli/commands/reference.js +4 -27
- package/dist/cli/commands/reference.js.map +1 -1
- package/dist/cli/commands/serve.d.ts +0 -5
- package/dist/cli/commands/serve.d.ts.map +1 -1
- package/dist/cli/commands/serve.js +0 -34
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/commands/shared.d.ts +0 -16
- package/dist/cli/commands/shared.d.ts.map +1 -1
- package/dist/cli/commands/shared.js +0 -19
- package/dist/cli/commands/shared.js.map +1 -1
- package/dist/cli/commands/status.d.ts +0 -6
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +0 -11
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/commands/stop.d.ts +0 -5
- package/dist/cli/commands/stop.d.ts.map +1 -1
- package/dist/cli/commands/stop.js +0 -6
- package/dist/cli/commands/stop.js.map +1 -1
- package/dist/cli/commands/update.d.ts +0 -1
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +0 -1
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/commands/variants.d.ts +0 -1
- package/dist/cli/commands/variants.d.ts.map +1 -1
- package/dist/cli/commands/variants.js +13 -32
- package/dist/cli/commands/variants.js.map +1 -1
- package/dist/cli/commands/wait.d.ts +0 -21
- package/dist/cli/commands/wait.d.ts.map +1 -1
- package/dist/cli/commands/wait.js +0 -23
- package/dist/cli/commands/wait.js.map +1 -1
- package/dist/cli/entry.d.ts +0 -10
- package/dist/cli/entry.d.ts.map +1 -1
- package/dist/cli/entry.js +0 -13
- package/dist/cli/entry.js.map +1 -1
- package/dist/cli/envelope.d.ts +1 -25
- package/dist/cli/envelope.d.ts.map +1 -1
- package/dist/cli/envelope.js +0 -19
- package/dist/cli/envelope.js.map +1 -1
- package/dist/cli/flags.d.ts +0 -7
- package/dist/cli/flags.d.ts.map +1 -1
- package/dist/cli/flags.js +0 -7
- package/dist/cli/flags.js.map +1 -1
- package/dist/cli/handoff.d.ts +0 -33
- package/dist/cli/handoff.d.ts.map +1 -1
- package/dist/cli/handoff.js +0 -42
- package/dist/cli/handoff.js.map +1 -1
- package/dist/cli/handoffStore.d.ts +0 -11
- package/dist/cli/handoffStore.d.ts.map +1 -1
- package/dist/cli/handoffStore.js +0 -10
- package/dist/cli/handoffStore.js.map +1 -1
- package/dist/cli/hostWorkNextAction.d.ts +0 -11
- package/dist/cli/hostWorkNextAction.d.ts.map +1 -1
- package/dist/cli/hostWorkNextAction.js +0 -4
- package/dist/cli/hostWorkNextAction.js.map +1 -1
- package/dist/cli/io.d.ts +0 -9
- package/dist/cli/io.d.ts.map +1 -1
- package/dist/cli/io.js +0 -1
- package/dist/cli/io.js.map +1 -1
- package/dist/cli/resolveDefaultNodeEnv.d.ts +0 -5
- package/dist/cli/resolveDefaultNodeEnv.d.ts.map +1 -1
- package/dist/cli/resolveDefaultNodeEnv.js +0 -5
- package/dist/cli/resolveDefaultNodeEnv.js.map +1 -1
- package/dist/cli/router.d.ts +0 -21
- package/dist/cli/router.d.ts.map +1 -1
- package/dist/cli/router.js +8 -46
- package/dist/cli/router.js.map +1 -1
- package/dist/cli/runnerSelection.d.ts +0 -58
- package/dist/cli/runnerSelection.d.ts.map +1 -1
- package/dist/cli/runnerSelection.js +0 -16
- package/dist/cli/runnerSelection.js.map +1 -1
- package/dist/cli/serverHandshake.d.ts +0 -36
- package/dist/cli/serverHandshake.d.ts.map +1 -1
- package/dist/cli/serverHandshake.js +0 -29
- package/dist/cli/serverHandshake.js.map +1 -1
- package/dist/cli/serverUnavailable.d.ts +0 -1
- package/dist/cli/serverUnavailable.d.ts.map +1 -1
- package/dist/cli/serverUnavailable.js +0 -1
- package/dist/cli/serverUnavailable.js.map +1 -1
- package/dist/cli/serverVersion.d.ts +0 -22
- package/dist/cli/serverVersion.d.ts.map +1 -1
- package/dist/cli/serverVersion.js +0 -12
- package/dist/cli/serverVersion.js.map +1 -1
- package/dist/cli/telemetry.d.ts +0 -4
- package/dist/cli/telemetry.d.ts.map +1 -1
- package/dist/cli/telemetry.js +0 -4
- package/dist/cli/telemetry.js.map +1 -1
- package/dist/config/evaluateFlags.d.ts +0 -4
- package/dist/config/evaluateFlags.d.ts.map +1 -1
- package/dist/config/evaluateFlags.js +0 -11
- package/dist/config/evaluateFlags.js.map +1 -1
- package/dist/config/featureFlagUserKey.d.ts +0 -3
- package/dist/config/featureFlagUserKey.d.ts.map +1 -1
- package/dist/config/featureFlagUserKey.js +0 -3
- package/dist/config/featureFlagUserKey.js.map +1 -1
- package/dist/config/flags.d.ts +0 -14
- package/dist/config/flags.d.ts.map +1 -1
- package/dist/config/flags.js +0 -27
- package/dist/config/flags.js.map +1 -1
- package/dist/config/proxy.d.ts +0 -3
- package/dist/config/proxy.d.ts.map +1 -1
- package/dist/config/proxy.js +0 -11
- package/dist/config/proxy.js.map +1 -1
- package/dist/config/telemetry.d.ts +0 -13
- package/dist/config/telemetry.d.ts.map +1 -1
- package/dist/config/telemetry.js +0 -13
- package/dist/config/telemetry.js.map +1 -1
- package/dist/config/telemetryContract.d.ts +0 -1
- package/dist/config/telemetryContract.d.ts.map +1 -1
- package/dist/config/telemetryContract.js +0 -1
- package/dist/config/telemetryContract.js.map +1 -1
- package/dist/hosts/workerDefaults.d.ts +0 -69
- package/dist/hosts/workerDefaults.d.ts.map +1 -1
- package/dist/hosts/workerDefaults.js +0 -68
- package/dist/hosts/workerDefaults.js.map +1 -1
- package/dist/index-core.d.ts.map +1 -1
- package/dist/index-core.js +0 -2
- package/dist/index-core.js.map +1 -1
- package/dist/index.d.ts +0 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -105
- package/dist/index.js.map +1 -1
- package/dist/install/allowlists.d.ts +0 -32
- package/dist/install/allowlists.d.ts.map +1 -1
- package/dist/install/allowlists.js +0 -44
- package/dist/install/allowlists.js.map +1 -1
- package/dist/install/automaticCliUpdate.d.ts +0 -6
- package/dist/install/automaticCliUpdate.d.ts.map +1 -1
- package/dist/install/automaticCliUpdate.js +0 -13
- package/dist/install/automaticCliUpdate.js.map +1 -1
- package/dist/install/channelCli.d.ts +0 -1
- package/dist/install/channelCli.d.ts.map +1 -1
- package/dist/install/channelCli.js +0 -3
- package/dist/install/channelCli.js.map +1 -1
- package/dist/install/channelManager.d.ts +0 -14
- package/dist/install/channelManager.d.ts.map +1 -1
- package/dist/install/channelManager.js +0 -22
- package/dist/install/channelManager.js.map +1 -1
- package/dist/install/codexGuidance.d.ts +0 -1
- package/dist/install/codexGuidance.d.ts.map +1 -1
- package/dist/install/codexGuidance.js +0 -7
- package/dist/install/codexGuidance.js.map +1 -1
- package/dist/install/globalBootstrap.d.ts +0 -25
- package/dist/install/globalBootstrap.d.ts.map +1 -1
- package/dist/install/globalBootstrap.js +0 -10
- package/dist/install/globalBootstrap.js.map +1 -1
- package/dist/install/harnesses.d.ts +0 -66
- package/dist/install/harnesses.d.ts.map +1 -1
- package/dist/install/harnesses.js +0 -60
- package/dist/install/harnesses.js.map +1 -1
- package/dist/install/installationChannel.d.ts +0 -1
- package/dist/install/installationChannel.d.ts.map +1 -1
- package/dist/install/installationChannel.js +0 -1
- package/dist/install/installationChannel.js.map +1 -1
- package/dist/install/legacyMcp.d.ts +0 -23
- package/dist/install/legacyMcp.d.ts.map +1 -1
- package/dist/install/legacyMcp.js +3 -46
- package/dist/install/legacyMcp.js.map +1 -1
- package/dist/install/mcpRegistration.d.ts +0 -41
- package/dist/install/mcpRegistration.d.ts.map +1 -1
- package/dist/install/mcpRegistration.js +2 -70
- package/dist/install/mcpRegistration.js.map +1 -1
- package/dist/library/HubClient.d.ts +1 -2
- package/dist/library/HubClient.d.ts.map +1 -1
- package/dist/library/HubClient.js +11 -5
- package/dist/library/HubClient.js.map +1 -1
- package/dist/library/HubServer.d.ts +0 -1
- package/dist/library/HubServer.d.ts.map +1 -1
- package/dist/library/HubServer.js +19 -1
- package/dist/library/HubServer.js.map +1 -1
- package/dist/library/StaticPreviewServer.d.ts +0 -1
- package/dist/library/StaticPreviewServer.d.ts.map +1 -1
- package/dist/library/StaticPreviewServer.js +0 -1
- package/dist/library/StaticPreviewServer.js.map +1 -1
- package/dist/library/http.d.ts +0 -2
- package/dist/library/http.d.ts.map +1 -1
- package/dist/library/http.js +0 -2
- package/dist/library/http.js.map +1 -1
- package/dist/library/importFiles.d.ts +0 -6
- package/dist/library/importFiles.d.ts.map +1 -1
- package/dist/library/importFiles.js +45 -11
- package/dist/library/importFiles.js.map +1 -1
- package/dist/mcp/changeBatchClassification.d.ts +0 -40
- package/dist/mcp/changeBatchClassification.d.ts.map +1 -1
- package/dist/mcp/changeBatchClassification.js +0 -34
- package/dist/mcp/changeBatchClassification.js.map +1 -1
- package/dist/prompts/commentVariationPrompts.d.ts +0 -5
- package/dist/prompts/commentVariationPrompts.d.ts.map +1 -1
- package/dist/prompts/commentVariationPrompts.js +0 -5
- package/dist/prompts/commentVariationPrompts.js.map +1 -1
- package/dist/prototype-host.js +0 -15
- package/dist/prototype-host.js.map +1 -1
- package/dist/proxy-middleware/preview-bridge.d.ts +0 -2
- package/dist/proxy-middleware/preview-bridge.d.ts.map +1 -1
- package/dist/proxy-middleware/preview-bridge.js +0 -2
- package/dist/proxy-middleware/preview-bridge.js.map +1 -1
- package/dist/proxy-middleware/preview-connections.d.ts +0 -1
- package/dist/proxy-middleware/preview-connections.d.ts.map +1 -1
- package/dist/proxy-middleware/preview-connections.js +0 -1
- package/dist/proxy-middleware/preview-connections.js.map +1 -1
- package/dist/proxy-middleware/proxy-config.d.ts +0 -12
- package/dist/proxy-middleware/proxy-config.d.ts.map +1 -1
- package/dist/proxy-middleware/proxy-config.js +2 -49
- package/dist/proxy-middleware/proxy-config.js.map +1 -1
- package/dist/routes/account.d.ts +0 -1
- package/dist/routes/account.d.ts.map +1 -1
- package/dist/routes/account.js +0 -2
- package/dist/routes/account.js.map +1 -1
- package/dist/routes/agentVariants.d.ts +0 -15
- package/dist/routes/agentVariants.d.ts.map +1 -1
- package/dist/routes/agentVariants.js +132 -329
- package/dist/routes/agentVariants.js.map +1 -1
- package/dist/routes/cli.d.ts +0 -17
- package/dist/routes/cli.d.ts.map +1 -1
- package/dist/routes/cli.js +0 -13
- package/dist/routes/cli.js.map +1 -1
- package/dist/routes/emptyStatePage.d.ts +0 -12
- package/dist/routes/emptyStatePage.d.ts.map +1 -1
- package/dist/routes/emptyStatePage.js +0 -12
- package/dist/routes/emptyStatePage.js.map +1 -1
- package/dist/routes/git.d.ts.map +1 -1
- package/dist/routes/git.js +0 -13
- package/dist/routes/git.js.map +1 -1
- package/dist/routes/inlineStartTracker.d.ts +0 -16
- package/dist/routes/inlineStartTracker.d.ts.map +1 -1
- package/dist/routes/inlineStartTracker.js.map +1 -1
- package/dist/routes/integrations.d.ts +0 -6
- package/dist/routes/integrations.d.ts.map +1 -1
- package/dist/routes/integrations.js +0 -6
- package/dist/routes/integrations.js.map +1 -1
- package/dist/routes/library/app.d.ts +0 -1
- package/dist/routes/library/app.d.ts.map +1 -1
- package/dist/routes/library/app.js +1 -3
- package/dist/routes/library/app.js.map +1 -1
- package/dist/routes/library/index.d.ts +0 -1
- package/dist/routes/library/index.d.ts.map +1 -1
- package/dist/routes/library/index.js +3 -1
- package/dist/routes/library/index.js.map +1 -1
- package/dist/routes/library/middleware.d.ts +0 -3
- package/dist/routes/library/middleware.d.ts.map +1 -1
- package/dist/routes/library/middleware.js +0 -4
- package/dist/routes/library/middleware.js.map +1 -1
- package/dist/routes/library/navigation.d.ts +0 -1
- package/dist/routes/library/navigation.d.ts.map +1 -1
- package/dist/routes/library/navigation.js +0 -1
- package/dist/routes/library/navigation.js.map +1 -1
- package/dist/routes/library/profiles.d.ts +5 -0
- package/dist/routes/library/profiles.d.ts.map +1 -0
- package/dist/routes/library/profiles.js +182 -0
- package/dist/routes/library/profiles.js.map +1 -0
- package/dist/routes/library/projects.d.ts +0 -1
- package/dist/routes/library/projects.d.ts.map +1 -1
- package/dist/routes/library/projects.js +0 -1
- package/dist/routes/library/projects.js.map +1 -1
- package/dist/routes/library/schemas.d.ts +2 -2
- package/dist/routes/library/staticPreview.d.ts +0 -1
- package/dist/routes/library/staticPreview.d.ts.map +1 -1
- package/dist/routes/library/staticPreview.js +0 -1
- package/dist/routes/library/staticPreview.js.map +1 -1
- package/dist/routes/library/types.d.ts +2 -0
- package/dist/routes/library/types.d.ts.map +1 -1
- package/dist/routes/library/variants.d.ts +0 -1
- package/dist/routes/library/variants.d.ts.map +1 -1
- package/dist/routes/library/variants.js +0 -1
- package/dist/routes/library/variants.js.map +1 -1
- package/dist/routes/mcp.d.ts +0 -3
- package/dist/routes/mcp.d.ts.map +1 -1
- package/dist/routes/mcp.js +0 -5
- package/dist/routes/mcp.js.map +1 -1
- package/dist/routes/prototypeHost.d.ts +0 -2
- package/dist/routes/prototypeHost.d.ts.map +1 -1
- package/dist/routes/prototypeHost.js +6 -32
- package/dist/routes/prototypeHost.js.map +1 -1
- package/dist/routes/static.d.ts +0 -3
- package/dist/routes/static.d.ts.map +1 -1
- package/dist/routes/static.js +0 -6
- package/dist/routes/static.js.map +1 -1
- package/dist/routes/support.d.ts +0 -3
- package/dist/routes/support.d.ts.map +1 -1
- package/dist/routes/support.js +0 -3
- package/dist/routes/support.js.map +1 -1
- package/dist/server.d.ts +0 -42
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +1 -129
- package/dist/server.js.map +1 -1
- package/dist/services/AuthService.d.ts +0 -76
- package/dist/services/AuthService.d.ts.map +1 -1
- package/dist/services/AuthService.js +0 -112
- package/dist/services/AuthService.js.map +1 -1
- package/dist/services/BrowserAgentClient.d.ts +1 -21
- package/dist/services/BrowserAgentClient.d.ts.map +1 -1
- package/dist/services/BrowserAgentClient.js +0 -10
- package/dist/services/BrowserAgentClient.js.map +1 -1
- package/dist/services/BundleStore.d.ts +0 -18
- package/dist/services/BundleStore.d.ts.map +1 -1
- package/dist/services/BundleStore.js +0 -10
- package/dist/services/BundleStore.js.map +1 -1
- package/dist/services/CliLogForwarder.d.ts +0 -26
- package/dist/services/CliLogForwarder.d.ts.map +1 -1
- package/dist/services/CliLogForwarder.js +1 -33
- package/dist/services/CliLogForwarder.js.map +1 -1
- package/dist/services/CommitMessageGenerator.d.ts +0 -6
- package/dist/services/CommitMessageGenerator.d.ts.map +1 -1
- package/dist/services/CommitMessageGenerator.js +0 -3
- package/dist/services/CommitMessageGenerator.js.map +1 -1
- package/dist/services/ComponentSearchService.d.ts +2 -16
- package/dist/services/ComponentSearchService.d.ts.map +1 -1
- package/dist/services/ComponentSearchService.js +2 -56
- package/dist/services/ComponentSearchService.js.map +1 -1
- package/dist/services/ConfigManager.d.ts +0 -113
- package/dist/services/ConfigManager.d.ts.map +1 -1
- package/dist/services/ConfigManager.js +0 -101
- package/dist/services/ConfigManager.js.map +1 -1
- package/dist/services/DependencyPreparationService.d.ts +0 -6
- package/dist/services/DependencyPreparationService.d.ts.map +1 -1
- package/dist/services/DependencyPreparationService.js +0 -22
- package/dist/services/DependencyPreparationService.js.map +1 -1
- package/dist/services/DevServerRuntimeService.d.ts +0 -20
- package/dist/services/DevServerRuntimeService.d.ts.map +1 -1
- package/dist/services/DevServerRuntimeService.js +0 -46
- package/dist/services/DevServerRuntimeService.js.map +1 -1
- package/dist/services/FeatureFlagService.d.ts +0 -15
- package/dist/services/FeatureFlagService.d.ts.map +1 -1
- package/dist/services/FeatureFlagService.js +0 -23
- package/dist/services/FeatureFlagService.js.map +1 -1
- package/dist/services/GatewayClient.d.ts +0 -27
- package/dist/services/GatewayClient.d.ts.map +1 -1
- package/dist/services/GatewayClient.js +0 -25
- package/dist/services/GatewayClient.js.map +1 -1
- package/dist/services/HistoryReplayService.d.ts +0 -31
- package/dist/services/HistoryReplayService.d.ts.map +1 -1
- package/dist/services/HistoryReplayService.js +2 -55
- package/dist/services/HistoryReplayService.js.map +1 -1
- package/dist/services/HubDiscovery.d.ts +0 -8
- package/dist/services/HubDiscovery.d.ts.map +1 -1
- package/dist/services/HubDiscovery.js +0 -8
- package/dist/services/HubDiscovery.js.map +1 -1
- package/dist/services/HubNavigation.d.ts +0 -6
- package/dist/services/HubNavigation.d.ts.map +1 -1
- package/dist/services/HubNavigation.js +5 -8
- package/dist/services/HubNavigation.js.map +1 -1
- package/dist/services/IntegrationsClient.d.ts +20 -38
- package/dist/services/IntegrationsClient.d.ts.map +1 -1
- package/dist/services/IntegrationsClient.js +71 -31
- package/dist/services/IntegrationsClient.js.map +1 -1
- package/dist/services/LocalGitService.d.ts +0 -57
- package/dist/services/LocalGitService.d.ts.map +1 -1
- package/dist/services/LocalGitService.js +4 -85
- package/dist/services/LocalGitService.js.map +1 -1
- package/dist/services/MCPOnboardingTelemetry.d.ts +0 -9
- package/dist/services/MCPOnboardingTelemetry.d.ts.map +1 -1
- package/dist/services/MCPOnboardingTelemetry.js +0 -9
- package/dist/services/MCPOnboardingTelemetry.js.map +1 -1
- package/dist/services/MCPVariantsTelemetry.d.ts +0 -2
- package/dist/services/MCPVariantsTelemetry.d.ts.map +1 -1
- package/dist/services/MCPVariantsTelemetry.js +0 -2
- package/dist/services/MCPVariantsTelemetry.js.map +1 -1
- package/dist/services/OperatingSystemServices.d.ts +0 -12
- package/dist/services/OperatingSystemServices.d.ts.map +1 -1
- package/dist/services/OperatingSystemServices.js +0 -7
- package/dist/services/OperatingSystemServices.js.map +1 -1
- package/dist/services/PRTitleGenerator.d.ts +0 -7
- package/dist/services/PRTitleGenerator.d.ts.map +1 -1
- package/dist/services/PRTitleGenerator.js +0 -3
- package/dist/services/PRTitleGenerator.js.map +1 -1
- package/dist/services/ProjectCardPreviews.d.ts +0 -5
- package/dist/services/ProjectCardPreviews.d.ts.map +1 -1
- package/dist/services/ProjectCardPreviews.js +0 -5
- package/dist/services/ProjectCardPreviews.js.map +1 -1
- package/dist/services/ProjectDetectionService.d.ts +0 -4
- package/dist/services/ProjectDetectionService.d.ts.map +1 -1
- package/dist/services/ProjectDetectionService.js +2 -44
- package/dist/services/ProjectDetectionService.js.map +1 -1
- package/dist/services/ProjectFolderPicker.d.ts +0 -3
- package/dist/services/ProjectFolderPicker.d.ts.map +1 -1
- package/dist/services/ProjectFolderPicker.js +0 -4
- package/dist/services/ProjectFolderPicker.js.map +1 -1
- package/dist/services/ProjectImport.d.ts +0 -1
- package/dist/services/ProjectImport.d.ts.map +1 -1
- package/dist/services/ProjectImport.js +0 -3
- package/dist/services/ProjectImport.js.map +1 -1
- package/dist/services/ProjectLibrary.d.ts +0 -18
- package/dist/services/ProjectLibrary.d.ts.map +1 -1
- package/dist/services/ProjectLibrary.js +0 -20
- package/dist/services/ProjectLibrary.js.map +1 -1
- package/dist/services/ProjectMetadataStore.d.ts +0 -73
- package/dist/services/ProjectMetadataStore.d.ts.map +1 -1
- package/dist/services/ProjectMetadataStore.js +0 -90
- package/dist/services/ProjectMetadataStore.js.map +1 -1
- package/dist/services/ProjectPackageManager.d.ts +0 -12
- package/dist/services/ProjectPackageManager.d.ts.map +1 -1
- package/dist/services/ProjectPackageManager.js +0 -16
- package/dist/services/ProjectPackageManager.js.map +1 -1
- package/dist/services/ProjectRegistry.d.ts +2 -18
- package/dist/services/ProjectRegistry.d.ts.map +1 -1
- package/dist/services/ProjectRegistry.js +0 -18
- package/dist/services/ProjectRegistry.js.map +1 -1
- package/dist/services/ProjectRuntimeService.d.ts +0 -4
- package/dist/services/ProjectRuntimeService.d.ts.map +1 -1
- package/dist/services/ProjectRuntimeService.js +0 -5
- package/dist/services/ProjectRuntimeService.js.map +1 -1
- package/dist/services/ProjectScreenshotService.d.ts +0 -5
- package/dist/services/ProjectScreenshotService.d.ts.map +1 -1
- package/dist/services/ProjectScreenshotService.js +0 -6
- package/dist/services/ProjectScreenshotService.js.map +1 -1
- package/dist/services/ProjectStorage.d.ts +0 -4
- package/dist/services/ProjectStorage.d.ts.map +1 -1
- package/dist/services/ProjectStorage.js +0 -4
- package/dist/services/ProjectStorage.js.map +1 -1
- package/dist/services/PrototypeBuildService.d.ts +1 -23
- package/dist/services/PrototypeBuildService.d.ts.map +1 -1
- package/dist/services/PrototypeBuildService.js +6 -31
- package/dist/services/PrototypeBuildService.js.map +1 -1
- package/dist/services/PrototypeDeployService.d.ts +0 -20
- package/dist/services/PrototypeDeployService.d.ts.map +1 -1
- package/dist/services/PrototypeDeployService.js +1 -24
- package/dist/services/PrototypeDeployService.js.map +1 -1
- package/dist/services/RequestAuthContext.d.ts +0 -5
- package/dist/services/RequestAuthContext.d.ts.map +1 -1
- package/dist/services/RequestAuthContext.js +0 -5
- package/dist/services/RequestAuthContext.js.map +1 -1
- package/dist/services/SessionBridgeService.d.ts.map +1 -1
- package/dist/services/SessionBridgeService.js +0 -2
- package/dist/services/SessionBridgeService.js.map +1 -1
- package/dist/services/SessionService.d.ts +0 -4
- package/dist/services/SessionService.d.ts.map +1 -1
- package/dist/services/SessionService.js +1 -22
- package/dist/services/SessionService.js.map +1 -1
- package/dist/services/StaticFileService.d.ts +0 -9
- package/dist/services/StaticFileService.d.ts.map +1 -1
- package/dist/services/StaticFileService.js +0 -11
- package/dist/services/StaticFileService.js.map +1 -1
- package/dist/services/StaticLibraryPreviews.d.ts +0 -3
- package/dist/services/StaticLibraryPreviews.d.ts.map +1 -1
- package/dist/services/StaticLibraryPreviews.js +0 -3
- package/dist/services/StaticLibraryPreviews.js.map +1 -1
- package/dist/services/StaticPreviewServer.d.ts +0 -16
- package/dist/services/StaticPreviewServer.d.ts.map +1 -1
- package/dist/services/StaticPreviewServer.js +2 -28
- package/dist/services/StaticPreviewServer.js.map +1 -1
- package/dist/services/SupabaseAuthService.d.ts +0 -11
- package/dist/services/SupabaseAuthService.d.ts.map +1 -1
- package/dist/services/SupabaseAuthService.js +0 -11
- package/dist/services/SupabaseAuthService.js.map +1 -1
- package/dist/services/SupportTicketService.d.ts +0 -4
- package/dist/services/SupportTicketService.d.ts.map +1 -1
- package/dist/services/SupportTicketService.js +0 -4
- package/dist/services/SupportTicketService.js.map +1 -1
- package/dist/services/TelemetryService.d.ts +9 -182
- package/dist/services/TelemetryService.d.ts.map +1 -1
- package/dist/services/TelemetryService.js +11 -195
- package/dist/services/TelemetryService.js.map +1 -1
- package/dist/services/TreeStore.d.ts +0 -72
- package/dist/services/TreeStore.d.ts.map +1 -1
- package/dist/services/TreeStore.js +0 -93
- package/dist/services/TreeStore.js.map +1 -1
- package/dist/services/VariantGenerationService.d.ts +1 -32
- package/dist/services/VariantGenerationService.d.ts.map +1 -1
- package/dist/services/VariantGenerationService.js +36 -66
- package/dist/services/VariantGenerationService.js.map +1 -1
- package/dist/services/VariantHistoryService.d.ts +12 -114
- package/dist/services/VariantHistoryService.d.ts.map +1 -1
- package/dist/services/VariantHistoryService.js +56 -144
- package/dist/services/VariantHistoryService.js.map +1 -1
- package/dist/services/VariantRunService.d.ts +6 -31
- package/dist/services/VariantRunService.d.ts.map +1 -1
- package/dist/services/VariantRunService.js +86 -37
- package/dist/services/VariantRunService.js.map +1 -1
- package/dist/services/VariantsRuntime.d.ts +0 -3
- package/dist/services/VariantsRuntime.d.ts.map +1 -1
- package/dist/services/VariantsRuntime.js +2 -5
- package/dist/services/VariantsRuntime.js.map +1 -1
- package/dist/services/WorktreeManager.d.ts +0 -217
- package/dist/services/WorktreeManager.d.ts.map +1 -1
- package/dist/services/WorktreeManager.js +3 -321
- package/dist/services/WorktreeManager.js.map +1 -1
- package/dist/services/accessTokenRefresh.d.ts +0 -25
- package/dist/services/accessTokenRefresh.d.ts.map +1 -1
- package/dist/services/accessTokenRefresh.js +0 -25
- package/dist/services/accessTokenRefresh.js.map +1 -1
- package/dist/services/adapters/TailwindTokenAdapter.d.ts +0 -29
- package/dist/services/adapters/TailwindTokenAdapter.d.ts.map +1 -1
- package/dist/services/adapters/TailwindTokenAdapter.js +1 -46
- package/dist/services/adapters/TailwindTokenAdapter.js.map +1 -1
- package/dist/services/createAgentVariantsOrchestrator.d.ts +0 -18
- package/dist/services/createAgentVariantsOrchestrator.d.ts.map +1 -1
- package/dist/services/createAgentVariantsOrchestrator.js +0 -22
- package/dist/services/createAgentVariantsOrchestrator.js.map +1 -1
- package/dist/services/extractors/CSSVariableExtractor.d.ts +0 -25
- package/dist/services/extractors/CSSVariableExtractor.d.ts.map +1 -1
- package/dist/services/extractors/CSSVariableExtractor.js +1 -42
- package/dist/services/extractors/CSSVariableExtractor.js.map +1 -1
- package/dist/services/historyRoots.d.ts +0 -12
- package/dist/services/historyRoots.d.ts.map +1 -1
- package/dist/services/historyRoots.js +0 -13
- package/dist/services/historyRoots.js.map +1 -1
- package/dist/services/libraryErrors.d.ts +0 -1
- package/dist/services/libraryErrors.d.ts.map +1 -1
- package/dist/services/libraryErrors.js +0 -1
- package/dist/services/libraryErrors.js.map +1 -1
- package/dist/services/pendingLogin.d.ts +0 -13
- package/dist/services/pendingLogin.d.ts.map +1 -1
- package/dist/services/pendingLogin.js +0 -3
- package/dist/services/pendingLogin.js.map +1 -1
- package/dist/services/profiles/DesignProfiles.d.ts +446 -0
- package/dist/services/profiles/DesignProfiles.d.ts.map +1 -0
- package/dist/services/profiles/DesignProfiles.js +552 -0
- package/dist/services/profiles/DesignProfiles.js.map +1 -0
- package/dist/services/profiles/MemoryModelService.d.ts +14 -0
- package/dist/services/profiles/MemoryModelService.d.ts.map +1 -0
- package/dist/services/profiles/MemoryModelService.js +113 -0
- package/dist/services/profiles/MemoryModelService.js.map +1 -0
- package/dist/services/profiles/MemoryRuntime.d.ts +26 -0
- package/dist/services/profiles/MemoryRuntime.d.ts.map +1 -0
- package/dist/services/profiles/MemoryRuntime.js +192 -0
- package/dist/services/profiles/MemoryRuntime.js.map +1 -0
- package/dist/services/profiles/ProfileAgent.d.ts +20 -0
- package/dist/services/profiles/ProfileAgent.d.ts.map +1 -0
- package/dist/services/profiles/ProfileAgent.js +196 -0
- package/dist/services/profiles/ProfileAgent.js.map +1 -0
- package/dist/services/profiles/ProfileAnalysis.d.ts +23 -0
- package/dist/services/profiles/ProfileAnalysis.d.ts.map +1 -0
- package/dist/services/profiles/ProfileAnalysis.js +114 -0
- package/dist/services/profiles/ProfileAnalysis.js.map +1 -0
- package/dist/services/profiles/ProfileImportSchedule.d.ts +15 -0
- package/dist/services/profiles/ProfileImportSchedule.d.ts.map +1 -0
- package/dist/services/profiles/ProfileImportSchedule.js +40 -0
- package/dist/services/profiles/ProfileImportSchedule.js.map +1 -0
- package/dist/services/profiles/ProfileImports.d.ts +47 -0
- package/dist/services/profiles/ProfileImports.d.ts.map +1 -0
- package/dist/services/profiles/ProfileImports.js +248 -0
- package/dist/services/profiles/ProfileImports.js.map +1 -0
- package/dist/services/profiles/ProfileIndex.d.ts +18 -0
- package/dist/services/profiles/ProfileIndex.d.ts.map +1 -0
- package/dist/services/profiles/ProfileIndex.js +119 -0
- package/dist/services/profiles/ProfileIndex.js.map +1 -0
- package/dist/services/profiles/ProfileMedia.d.ts +10 -0
- package/dist/services/profiles/ProfileMedia.d.ts.map +1 -0
- package/dist/services/profiles/ProfileMedia.js +76 -0
- package/dist/services/profiles/ProfileMedia.js.map +1 -0
- package/dist/services/profiles/ProfilePreparation.d.ts +17 -0
- package/dist/services/profiles/ProfilePreparation.d.ts.map +1 -0
- package/dist/services/profiles/ProfilePreparation.js +214 -0
- package/dist/services/profiles/ProfilePreparation.js.map +1 -0
- package/dist/services/profiles/ProfileVariants.d.ts +33 -0
- package/dist/services/profiles/ProfileVariants.d.ts.map +1 -0
- package/dist/services/profiles/ProfileVariants.js +129 -0
- package/dist/services/profiles/ProfileVariants.js.map +1 -0
- package/dist/services/profiles/analysisBatch.d.ts +53 -0
- package/dist/services/profiles/analysisBatch.d.ts.map +1 -0
- package/dist/services/profiles/analysisBatch.js +86 -0
- package/dist/services/profiles/analysisBatch.js.map +1 -0
- package/dist/services/profiles/boardPage.d.ts +12 -0
- package/dist/services/profiles/boardPage.d.ts.map +1 -0
- package/dist/services/profiles/boardPage.js +156 -0
- package/dist/services/profiles/boardPage.js.map +1 -0
- package/dist/services/profiles/engineAccess.d.ts +2 -0
- package/dist/services/profiles/engineAccess.d.ts.map +1 -0
- package/dist/services/profiles/engineAccess.js +55 -0
- package/dist/services/profiles/engineAccess.js.map +1 -0
- package/dist/services/profiles/memoryComponents.d.ts +7 -0
- package/dist/services/profiles/memoryComponents.d.ts.map +1 -0
- package/dist/services/profiles/memoryComponents.js +105 -0
- package/dist/services/profiles/memoryComponents.js.map +1 -0
- package/dist/services/profiles/modelContract.d.ts +14 -0
- package/dist/services/profiles/modelContract.d.ts.map +1 -0
- package/dist/services/profiles/modelContract.js +124 -0
- package/dist/services/profiles/modelContract.js.map +1 -0
- package/dist/services/profiles/nativeImages.d.ts +3 -0
- package/dist/services/profiles/nativeImages.d.ts.map +1 -0
- package/dist/services/profiles/nativeImages.js +72 -0
- package/dist/services/profiles/nativeImages.js.map +1 -0
- package/dist/services/profiles/profileAccount.d.ts +4 -0
- package/dist/services/profiles/profileAccount.d.ts.map +1 -0
- package/dist/services/profiles/profileAccount.js +21 -0
- package/dist/services/profiles/profileAccount.js.map +1 -0
- package/dist/services/profiles/profileContext.d.ts +18 -0
- package/dist/services/profiles/profileContext.d.ts.map +1 -0
- package/dist/services/profiles/profileContext.js +189 -0
- package/dist/services/profiles/profileContext.js.map +1 -0
- package/dist/services/profiles/profileEvidence.d.ts +3 -0
- package/dist/services/profiles/profileEvidence.d.ts.map +1 -0
- package/dist/services/profiles/profileEvidence.js +15 -0
- package/dist/services/profiles/profileEvidence.js.map +1 -0
- package/dist/services/profiles/profileQueries.d.ts +2 -0
- package/dist/services/profiles/profileQueries.d.ts.map +1 -0
- package/dist/services/profiles/profileQueries.js +23 -0
- package/dist/services/profiles/profileQueries.js.map +1 -0
- package/dist/services/profiles/profileSelection.d.ts +29 -0
- package/dist/services/profiles/profileSelection.d.ts.map +1 -0
- package/dist/services/profiles/profileSelection.js +43 -0
- package/dist/services/profiles/profileSelection.js.map +1 -0
- package/dist/services/profiles/xPage.d.ts +4 -0
- package/dist/services/profiles/xPage.d.ts.map +1 -0
- package/dist/services/profiles/xPage.js +58 -0
- package/dist/services/profiles/xPage.js.map +1 -0
- package/dist/services/referenceImages.d.ts +17 -0
- package/dist/services/referenceImages.d.ts.map +1 -0
- package/dist/services/referenceImages.js +138 -0
- package/dist/services/referenceImages.js.map +1 -0
- package/dist/services/staticProjectTarget.d.ts +0 -4
- package/dist/services/staticProjectTarget.d.ts.map +1 -1
- package/dist/services/staticProjectTarget.js +0 -4
- package/dist/services/staticProjectTarget.js.map +1 -1
- package/dist/services/staticStarter.d.ts +0 -20
- package/dist/services/staticStarter.d.ts.map +1 -1
- package/dist/services/staticStarter.js +0 -20
- package/dist/services/staticStarter.js.map +1 -1
- package/dist/services/templates/designCatalog.d.ts +0 -11
- package/dist/services/templates/designCatalog.d.ts.map +1 -1
- package/dist/services/templates/designCatalog.js +0 -26
- package/dist/services/templates/designCatalog.js.map +1 -1
- package/dist/services/templates/viteReactTs.d.ts +0 -26
- package/dist/services/templates/viteReactTs.d.ts.map +1 -1
- package/dist/services/templates/viteReactTs.js +0 -20
- package/dist/services/templates/viteReactTs.js.map +1 -1
- package/dist/storage/library/BundleMetadataStore.d.ts +0 -16
- package/dist/storage/library/BundleMetadataStore.d.ts.map +1 -1
- package/dist/storage/library/BundleMetadataStore.js +0 -17
- package/dist/storage/library/BundleMetadataStore.js.map +1 -1
- package/dist/storage/library/CoordinatorRecords.d.ts +0 -9
- package/dist/storage/library/CoordinatorRecords.d.ts.map +1 -1
- package/dist/storage/library/CoordinatorRecords.js +0 -9
- package/dist/storage/library/CoordinatorRecords.js.map +1 -1
- package/dist/storage/library/ProjectPreviewCache.d.ts +0 -4
- package/dist/storage/library/ProjectPreviewCache.d.ts.map +1 -1
- package/dist/storage/library/ProjectPreviewCache.js +0 -4
- package/dist/storage/library/ProjectPreviewCache.js.map +1 -1
- package/dist/storage/library/ProjectRecords.d.ts +0 -17
- package/dist/storage/library/ProjectRecords.d.ts.map +1 -1
- package/dist/storage/library/ProjectRecords.js +0 -17
- package/dist/storage/library/ProjectRecords.js.map +1 -1
- package/dist/storage/library/database.d.ts +0 -3
- package/dist/storage/library/database.d.ts.map +1 -1
- package/dist/storage/library/database.js +0 -3
- package/dist/storage/library/database.js.map +1 -1
- package/dist/storage/library/migrations.d.ts +0 -2
- package/dist/storage/library/migrations.d.ts.map +1 -1
- package/dist/storage/library/migrations.js +0 -2
- package/dist/storage/library/migrations.js.map +1 -1
- package/dist/storage/library/sourcePresentation.d.ts +0 -1
- package/dist/storage/library/sourcePresentation.d.ts.map +1 -1
- package/dist/storage/library/sourcePresentation.js +0 -1
- package/dist/storage/library/sourcePresentation.js.map +1 -1
- package/dist/storage/profiles/ProfileRecords.d.ts +199 -0
- package/dist/storage/profiles/ProfileRecords.d.ts.map +1 -0
- package/dist/storage/profiles/ProfileRecords.js +659 -0
- package/dist/storage/profiles/ProfileRecords.js.map +1 -0
- package/dist/storage/profiles/contextReceipts.d.ts +14 -0
- package/dist/storage/profiles/contextReceipts.d.ts.map +1 -0
- package/dist/storage/profiles/contextReceipts.js +52 -0
- package/dist/storage/profiles/contextReceipts.js.map +1 -0
- package/dist/storage/profiles/migrations.d.ts +4 -0
- package/dist/storage/profiles/migrations.d.ts.map +1 -0
- package/dist/storage/profiles/migrations.js +41 -0
- package/dist/storage/profiles/migrations.js.map +1 -0
- package/dist/storage/profiles/schema.d.ts +961 -0
- package/dist/storage/profiles/schema.d.ts.map +1 -0
- package/dist/storage/profiles/schema.js +102 -0
- package/dist/storage/profiles/schema.js.map +1 -0
- package/dist/storage/project-metadata/ProjectMetadataRecords.d.ts +0 -11
- package/dist/storage/project-metadata/ProjectMetadataRecords.d.ts.map +1 -1
- package/dist/storage/project-metadata/ProjectMetadataRecords.js +0 -13
- package/dist/storage/project-metadata/ProjectMetadataRecords.js.map +1 -1
- package/dist/storage/project-metadata/database.d.ts +0 -1
- package/dist/storage/project-metadata/database.d.ts.map +1 -1
- package/dist/storage/project-metadata/database.js +0 -7
- package/dist/storage/project-metadata/database.js.map +1 -1
- package/dist/storage/project-metadata/migrations.d.ts +0 -42
- package/dist/storage/project-metadata/migrations.d.ts.map +1 -1
- package/dist/storage/project-metadata/migrations.js +0 -41
- package/dist/storage/project-metadata/migrations.js.map +1 -1
- package/dist/types/account.d.ts +0 -1
- package/dist/types/account.d.ts.map +1 -1
- package/dist/types/change-request-types.d.ts +5 -167
- package/dist/types/change-request-types.d.ts.map +1 -1
- package/dist/types/change-types.d.ts +0 -1
- package/dist/types/change-types.d.ts.map +1 -1
- package/dist/types/change-types.js +0 -1
- package/dist/types/change-types.js.map +1 -1
- package/dist/types/design-profile.d.ts +570 -0
- package/dist/types/design-profile.d.ts.map +1 -0
- package/dist/types/design-profile.js +127 -0
- package/dist/types/design-profile.js.map +1 -0
- package/dist/types/project-library.d.ts +0 -1
- package/dist/types/project-library.d.ts.map +1 -1
- package/dist/types/style-manipulation-types.d.ts +0 -69
- package/dist/types/style-manipulation-types.d.ts.map +1 -1
- package/dist/types/style-manipulation-types.js +0 -26
- package/dist/types/style-manipulation-types.js.map +1 -1
- package/dist/types/token-types.d.ts +0 -30
- package/dist/types/token-types.d.ts.map +1 -1
- package/dist/types/token-types.js +0 -1
- package/dist/types/token-types.js.map +1 -1
- package/dist/types/variant-history.d.ts +3 -39
- package/dist/types/variant-history.d.ts.map +1 -1
- package/dist/types/variant-reference.d.ts +46 -0
- package/dist/types/variant-reference.d.ts.map +1 -0
- package/dist/types/variant-reference.js +58 -0
- package/dist/types/variant-reference.js.map +1 -0
- package/dist/types/x-bookmarks.d.ts +352 -0
- package/dist/types/x-bookmarks.d.ts.map +1 -0
- package/dist/types/x-bookmarks.js +56 -0
- package/dist/types/x-bookmarks.js.map +1 -0
- package/dist/utils/ProviderRateLimit.d.ts +7 -0
- package/dist/utils/ProviderRateLimit.d.ts.map +1 -0
- package/dist/utils/ProviderRateLimit.js +36 -0
- package/dist/utils/ProviderRateLimit.js.map +1 -0
- package/dist/utils/branchNames.d.ts +0 -1
- package/dist/utils/branchNames.d.ts.map +1 -1
- package/dist/utils/branchNames.js +0 -2
- package/dist/utils/branchNames.js.map +1 -1
- package/dist/utils/cloneOrCopyDirSync.d.ts +0 -12
- package/dist/utils/cloneOrCopyDirSync.d.ts.map +1 -1
- package/dist/utils/cloneOrCopyDirSync.js +0 -16
- package/dist/utils/cloneOrCopyDirSync.js.map +1 -1
- package/dist/utils/devServerCommand.d.ts +0 -23
- package/dist/utils/devServerCommand.d.ts.map +1 -1
- package/dist/utils/devServerCommand.js +0 -24
- package/dist/utils/devServerCommand.js.map +1 -1
- package/dist/utils/devServerError.d.ts +0 -16
- package/dist/utils/devServerError.d.ts.map +1 -1
- package/dist/utils/devServerError.js +0 -17
- package/dist/utils/devServerError.js.map +1 -1
- package/dist/utils/displayLocale.d.ts +0 -2
- package/dist/utils/displayLocale.d.ts.map +1 -1
- package/dist/utils/displayLocale.js +0 -2
- package/dist/utils/displayLocale.js.map +1 -1
- package/dist/utils/elementFileHintSignals.d.ts +0 -5
- package/dist/utils/elementFileHintSignals.d.ts.map +1 -1
- package/dist/utils/elementFileHintSignals.js +0 -5
- package/dist/utils/elementFileHintSignals.js.map +1 -1
- package/dist/utils/formatElementTargetingContext.d.ts +0 -6
- package/dist/utils/formatElementTargetingContext.d.ts.map +1 -1
- package/dist/utils/formatElementTargetingContext.js +3 -9
- package/dist/utils/formatElementTargetingContext.js.map +1 -1
- package/dist/utils/hostAgentEnv.d.ts +0 -17
- package/dist/utils/hostAgentEnv.d.ts.map +1 -1
- package/dist/utils/hostAgentEnv.js +0 -17
- package/dist/utils/hostAgentEnv.js.map +1 -1
- package/dist/utils/htmlDocument.d.ts +0 -5
- package/dist/utils/htmlDocument.d.ts.map +1 -1
- package/dist/utils/htmlDocument.js +2 -7
- package/dist/utils/htmlDocument.js.map +1 -1
- package/dist/utils/internalGitIdentity.d.ts +0 -5
- package/dist/utils/internalGitIdentity.d.ts.map +1 -1
- package/dist/utils/internalGitIdentity.js +0 -5
- package/dist/utils/internalGitIdentity.js.map +1 -1
- package/dist/utils/logger.d.ts +0 -5
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +2 -19
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/loginShellPath.d.ts +0 -9
- package/dist/utils/loginShellPath.d.ts.map +1 -1
- package/dist/utils/loginShellPath.js +0 -69
- package/dist/utils/loginShellPath.js.map +1 -1
- package/dist/utils/loopback.d.ts +0 -1
- package/dist/utils/loopback.d.ts.map +1 -1
- package/dist/utils/loopback.js +0 -1
- package/dist/utils/loopback.js.map +1 -1
- package/dist/utils/pid.d.ts +0 -1
- package/dist/utils/pid.d.ts.map +1 -1
- package/dist/utils/pid.js +0 -1
- package/dist/utils/pid.js.map +1 -1
- package/dist/utils/portUtils.d.ts +0 -15
- package/dist/utils/portUtils.d.ts.map +1 -1
- package/dist/utils/portUtils.js +0 -21
- package/dist/utils/portUtils.js.map +1 -1
- package/dist/utils/queueAccess.d.ts +0 -9
- package/dist/utils/queueAccess.d.ts.map +1 -1
- package/dist/utils/queueAccess.js +0 -9
- package/dist/utils/queueAccess.js.map +1 -1
- package/dist/utils/skillWriter.d.ts +0 -17
- package/dist/utils/skillWriter.d.ts.map +1 -1
- package/dist/utils/skillWriter.js +0 -20
- package/dist/utils/skillWriter.js.map +1 -1
- package/dist/utils/skills/claude-skill.d.ts +0 -5
- package/dist/utils/skills/claude-skill.d.ts.map +1 -1
- package/dist/utils/skills/claude-skill.js +0 -5
- package/dist/utils/skills/claude-skill.js.map +1 -1
- package/dist/utils/skills/cli-guidance.d.ts +1 -9
- package/dist/utils/skills/cli-guidance.d.ts.map +1 -1
- package/dist/utils/skills/cli-guidance.js +6 -10
- package/dist/utils/skills/cli-guidance.js.map +1 -1
- package/dist/utils/skills/cursor-rules.d.ts +0 -6
- package/dist/utils/skills/cursor-rules.d.ts.map +1 -1
- package/dist/utils/skills/cursor-rules.js +0 -6
- package/dist/utils/skills/cursor-rules.js.map +1 -1
- package/dist/utils/variantPreviewPort.d.ts +0 -3
- package/dist/utils/variantPreviewPort.d.ts.map +1 -1
- package/dist/utils/variantPreviewPort.js +0 -3
- package/dist/utils/variantPreviewPort.js.map +1 -1
- package/dist/utils/windowPlacement.d.ts +0 -4
- package/dist/utils/windowPlacement.d.ts.map +1 -1
- package/dist/utils/windowPlacement.js +0 -4
- package/dist/utils/windowPlacement.js.map +1 -1
- package/package.json +13 -13
- package/scripts/verify-node-version.cjs +0 -3
- package/src/ui/dist/assets/{LibraryApp-qbLqcNxM.js → LibraryApp-Bu7hVbt_.js} +1 -1
- package/src/ui/dist/assets/main-CHyx_rEa.css +1 -0
- package/src/ui/dist/assets/main-CuiPb_rl.js +438 -0
- package/src/ui/dist/index.html +2 -2
- package/dist/utils/skills/describe-motion-protocol.d.ts +0 -10
- package/dist/utils/skills/describe-motion-protocol.d.ts.map +0 -1
- package/dist/utils/skills/describe-motion-protocol.js +0 -231
- package/dist/utils/skills/describe-motion-protocol.js.map +0 -1
- package/src/ui/dist/assets/main-BUZjlAHd.css +0 -1
- package/src/ui/dist/assets/main-touv07Dk.js +0 -438
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProfileAnalysis = void 0;
|
|
4
|
+
const modelContract_1 = require("./modelContract");
|
|
5
|
+
const analysisBatch_1 = require("./analysisBatch");
|
|
6
|
+
class ProfileAnalysis {
|
|
7
|
+
options;
|
|
8
|
+
constructor(options) {
|
|
9
|
+
this.options = options;
|
|
10
|
+
}
|
|
11
|
+
async run({ jobId, signal, }) {
|
|
12
|
+
const { records, media } = this.options;
|
|
13
|
+
const job = records.jobs().find((item) => item.id === jobId);
|
|
14
|
+
if (!job || job.state !== 'pending')
|
|
15
|
+
return;
|
|
16
|
+
const input = { jobId, runtime: job.runtime, signal };
|
|
17
|
+
let batch = [];
|
|
18
|
+
for (const reference of records.references(job.sourceId)) {
|
|
19
|
+
if (!this.isPending(input))
|
|
20
|
+
return;
|
|
21
|
+
if (records.observation(reference.id) || reference.unsupportedReason)
|
|
22
|
+
continue;
|
|
23
|
+
if (reference.media.length < (reference.remoteImages?.length ?? 0))
|
|
24
|
+
continue;
|
|
25
|
+
try {
|
|
26
|
+
if (!(0, analysisBatch_1.fitsAnalysisBatch)([reference]))
|
|
27
|
+
throw new Error('Reference exceeds the analysis budget; split it into smaller references');
|
|
28
|
+
if (batch.length >= (this.options.batchSize ?? 4) ||
|
|
29
|
+
!(0, analysisBatch_1.fitsAnalysisBatch)([
|
|
30
|
+
...batch.map((item) => item.reference),
|
|
31
|
+
reference,
|
|
32
|
+
])) {
|
|
33
|
+
await this.analyze({ ...input, batch });
|
|
34
|
+
batch = [];
|
|
35
|
+
if (!this.isPending(input))
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
const images = await Promise.all(reference.media.map((image) => media.resolve(image)));
|
|
39
|
+
batch.push({ reference, images });
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
if (!this.isPending(input))
|
|
43
|
+
return;
|
|
44
|
+
this.fail({ jobId, reference, error });
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
if (batch.length && this.isPending(input))
|
|
48
|
+
await this.analyze({ ...input, batch });
|
|
49
|
+
}
|
|
50
|
+
isPending({ jobId, signal, }) {
|
|
51
|
+
signal.throwIfAborted();
|
|
52
|
+
if (!this.options.isCurrentAccount())
|
|
53
|
+
throw new Error('Profile analysis paused because the active account changed');
|
|
54
|
+
return (this.options.records.jobs().find((item) => item.id === jobId)?.state ===
|
|
55
|
+
'pending');
|
|
56
|
+
}
|
|
57
|
+
async analyze(input) {
|
|
58
|
+
if (!this.isPending(input))
|
|
59
|
+
return;
|
|
60
|
+
const { batch, runtime, signal, jobId } = input;
|
|
61
|
+
const { agent, records } = this.options;
|
|
62
|
+
let result;
|
|
63
|
+
try {
|
|
64
|
+
result = await agent.run({
|
|
65
|
+
runtime,
|
|
66
|
+
signal,
|
|
67
|
+
...(0, analysisBatch_1.prepareAnalysisBatch)(batch),
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
if (!this.isPending(input))
|
|
72
|
+
return;
|
|
73
|
+
for (const { reference } of batch)
|
|
74
|
+
this.fail({ jobId, reference, error });
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
for (const { reference, images } of batch) {
|
|
78
|
+
if (!this.isPending(input))
|
|
79
|
+
return;
|
|
80
|
+
try {
|
|
81
|
+
if (images.some((image) => !result.inspectedImages.includes(image)))
|
|
82
|
+
throw new Error('The selected agent did not inspect the supplied images');
|
|
83
|
+
const description = (0, analysisBatch_1.analysisDescription)({
|
|
84
|
+
value: result.value,
|
|
85
|
+
referenceId: reference.id,
|
|
86
|
+
count: batch.length,
|
|
87
|
+
});
|
|
88
|
+
records.saveObservation({
|
|
89
|
+
referenceId: reference.id,
|
|
90
|
+
revision: reference.revision,
|
|
91
|
+
description,
|
|
92
|
+
runtime,
|
|
93
|
+
evidence: 'observation',
|
|
94
|
+
usage: (0, analysisBatch_1.analysisUsage)((0, modelContract_1.reportedProfileUsage)(result.usage), batch.length),
|
|
95
|
+
});
|
|
96
|
+
records.clearFailure(reference.id, 'analysis');
|
|
97
|
+
}
|
|
98
|
+
catch (error) {
|
|
99
|
+
this.fail({ jobId, reference, error });
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
fail({ jobId, reference, error, }) {
|
|
104
|
+
this.options.records.saveFailure({
|
|
105
|
+
jobId,
|
|
106
|
+
referenceId: reference.id,
|
|
107
|
+
revision: reference.revision,
|
|
108
|
+
stage: 'analysis',
|
|
109
|
+
error: error instanceof Error ? error.message : 'Reference analysis failed',
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
exports.ProfileAnalysis = ProfileAnalysis;
|
|
114
|
+
//# sourceMappingURL=ProfileAnalysis.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProfileAnalysis.js","sourceRoot":"","sources":["../../../src/services/profiles/ProfileAnalysis.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { ProfileRecords } from '../../storage/profiles/ProfileRecords';
|
|
2
|
+
interface ScheduleOptions {
|
|
3
|
+
records: ProfileRecords;
|
|
4
|
+
isActive: () => boolean;
|
|
5
|
+
onReady: (id: string) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare class ProfileImportSchedule {
|
|
8
|
+
private readonly options;
|
|
9
|
+
private readonly timers;
|
|
10
|
+
constructor(options: ScheduleOptions);
|
|
11
|
+
isReady(id: string): boolean;
|
|
12
|
+
stop(): void;
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=ProfileImportSchedule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProfileImportSchedule.d.ts","sourceRoot":"","sources":["../../../src/services/profiles/ProfileImportSchedule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAE5E,UAAU,eAAe;IACvB,OAAO,EAAE,cAAc,CAAC;IACxB,QAAQ,EAAE,MAAM,OAAO,CAAC;IACxB,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/B;AAGD,qBAAa,qBAAqB;IAEpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IADpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoD;gBAC9C,OAAO,EAAE,eAAe;IAErD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAsB5B,IAAI,IAAI,IAAI;CAIb"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProfileImportSchedule = void 0;
|
|
4
|
+
const MAX_TIMER_MS = 2_147_483_647;
|
|
5
|
+
class ProfileImportSchedule {
|
|
6
|
+
options;
|
|
7
|
+
timers = new Map();
|
|
8
|
+
constructor(options) {
|
|
9
|
+
this.options = options;
|
|
10
|
+
}
|
|
11
|
+
isReady(id) {
|
|
12
|
+
const timer = this.timers.get(id);
|
|
13
|
+
if (timer)
|
|
14
|
+
clearTimeout(timer);
|
|
15
|
+
this.timers.delete(id);
|
|
16
|
+
if (!this.options.isActive() || !this.options.records.profile().isEnabled)
|
|
17
|
+
return false;
|
|
18
|
+
const job = this.options.records.jobs().find((item) => item.id === id);
|
|
19
|
+
if (!job || job.state !== 'pending')
|
|
20
|
+
return false;
|
|
21
|
+
if (!job.retryAt)
|
|
22
|
+
return true;
|
|
23
|
+
const wait = Math.max(1, Date.parse(job.retryAt) - Date.now());
|
|
24
|
+
const next = setTimeout(() => {
|
|
25
|
+
this.timers.delete(id);
|
|
26
|
+
if (this.isReady(id))
|
|
27
|
+
this.options.onReady(id);
|
|
28
|
+
}, Math.min(MAX_TIMER_MS, wait));
|
|
29
|
+
next.unref();
|
|
30
|
+
this.timers.set(id, next);
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
stop() {
|
|
34
|
+
for (const timer of this.timers.values())
|
|
35
|
+
clearTimeout(timer);
|
|
36
|
+
this.timers.clear();
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.ProfileImportSchedule = ProfileImportSchedule;
|
|
40
|
+
//# sourceMappingURL=ProfileImportSchedule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProfileImportSchedule.js","sourceRoot":"","sources":["../../../src/services/profiles/ProfileImportSchedule.ts"],"names":[],"mappings":";;;AAOA,MAAM,YAAY,GAAG,aAAa,CAAC;AAEnC,MAAa,qBAAqB;IAEH;IADZ,MAAM,GAAG,IAAI,GAAG,EAAyC,CAAC;IAC3E,YAA6B,OAAwB;QAAxB,YAAO,GAAP,OAAO,CAAiB;IAAG,CAAC;IAEzD,OAAO,CAAC,EAAU;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,KAAK;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,SAAS;YACvE,OAAO,KAAK,CAAC;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QAClD,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,UAAU,CACrB,GAAG,EAAE;YACH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACvB,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACjD,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAC7B,CAAC;QACF,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI;QACF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;CACF;AA9BD,sDA8BC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { type XAccount } from '../../types/x-bookmarks';
|
|
2
|
+
import { IntegrationsClient } from '../IntegrationsClient';
|
|
3
|
+
import { ProfileRecords } from '../../storage/profiles/ProfileRecords';
|
|
4
|
+
import type { ProfileRuntime } from '../../types/design-profile';
|
|
5
|
+
import type { ProfileMedia } from './ProfileMedia';
|
|
6
|
+
export declare class ProfileImports {
|
|
7
|
+
private readonly records;
|
|
8
|
+
private readonly media;
|
|
9
|
+
private readonly isCurrentAccount;
|
|
10
|
+
private readonly client;
|
|
11
|
+
constructor(records: ProfileRecords, media: ProfileMedia, isCurrentAccount: () => boolean, client?: Pick<IntegrationsClient, 'fetchPinterest' | 'fetchArena' | 'fetchXBookmarks'>);
|
|
12
|
+
connect({ url, runtime, xAccount, }: {
|
|
13
|
+
url: string;
|
|
14
|
+
runtime: ProfileRuntime;
|
|
15
|
+
xAccount?: XAccount;
|
|
16
|
+
}): {
|
|
17
|
+
source: {
|
|
18
|
+
id: string;
|
|
19
|
+
provider: "text" | "image" | "arena" | "pinterest" | "variant" | "x" | "pdf";
|
|
20
|
+
remoteId: string;
|
|
21
|
+
resolvedRemoteId: string | null;
|
|
22
|
+
title: string;
|
|
23
|
+
url: string | null;
|
|
24
|
+
isIncluded: boolean;
|
|
25
|
+
removedAt: string | null;
|
|
26
|
+
};
|
|
27
|
+
job: {
|
|
28
|
+
retryAt: string | null;
|
|
29
|
+
isEnumerated: boolean;
|
|
30
|
+
id: string;
|
|
31
|
+
sourceId: string;
|
|
32
|
+
runtime: "claude" | "codex" | "cursor";
|
|
33
|
+
state: "failed" | "pending" | "complete" | "superseded" | "paused";
|
|
34
|
+
cursor: string | null;
|
|
35
|
+
enumerated: number;
|
|
36
|
+
total: number | null;
|
|
37
|
+
error: string | null;
|
|
38
|
+
updatedAt: string;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
enumerate(jobId: string, signal: AbortSignal): Promise<void>;
|
|
42
|
+
download(jobId: string, signal: AbortSignal): Promise<void>;
|
|
43
|
+
private requirePage;
|
|
44
|
+
private isPending;
|
|
45
|
+
private downloadImage;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=ProfileImports.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProfileImports.d.ts","sourceRoot":"","sources":["../../../src/services/profiles/ProfileImports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAOxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AASnD,qBAAa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAHN,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,YAAY,EACnB,gBAAgB,EAAE,MAAM,OAAO,EAC/B,MAAM,GAAE,IAAI,CAC3B,kBAAkB,EAClB,gBAAgB,GAAG,YAAY,GAAG,iBAAiB,CACzB;IAG9B,OAAO,CAAC,EACN,GAAG,EACH,OAAO,EACP,QAAQ,GACT,EAAE;QACD,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,cAAc,CAAC;QACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;KACrB;;;;;;;;;;;;;;;;;;;;;;;;;IA0CK,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA+E5D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA0DjE,OAAO,CAAC,WAAW;IAmBnB,OAAO,CAAC,SAAS;YAMH,aAAa;CAiE5B"}
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProfileImports = void 0;
|
|
4
|
+
const x_bookmarks_1 = require("../../types/x-bookmarks");
|
|
5
|
+
const design_profile_1 = require("../../types/design-profile");
|
|
6
|
+
const xPage_1 = require("./xPage");
|
|
7
|
+
const ProviderRateLimit_1 = require("../../utils/ProviderRateLimit");
|
|
8
|
+
const IntegrationsClient_1 = require("../IntegrationsClient");
|
|
9
|
+
const ProfileMedia_1 = require("./ProfileMedia");
|
|
10
|
+
const boardPage_1 = require("./boardPage");
|
|
11
|
+
const sourceContext_1 = require("../../agent-variants/sourceContext");
|
|
12
|
+
const DOWNLOAD_TIMEOUT_MS = 20_000;
|
|
13
|
+
const MAX_REDIRECTS = 5;
|
|
14
|
+
const MEDIA_HOSTS = ['pinimg.com', 'are.na', 'cloudfront.net', 'amazonaws.com'];
|
|
15
|
+
class ProfileImports {
|
|
16
|
+
records;
|
|
17
|
+
media;
|
|
18
|
+
isCurrentAccount;
|
|
19
|
+
client;
|
|
20
|
+
constructor(records, media, isCurrentAccount, client = new IntegrationsClient_1.IntegrationsClient()) {
|
|
21
|
+
this.records = records;
|
|
22
|
+
this.media = media;
|
|
23
|
+
this.isCurrentAccount = isCurrentAccount;
|
|
24
|
+
this.client = client;
|
|
25
|
+
}
|
|
26
|
+
connect({ url, runtime, xAccount, }) {
|
|
27
|
+
if ((0, xPage_1.isXBookmarkUrl)(url)) {
|
|
28
|
+
const account = x_bookmarks_1.XAccountSchema.parse(xAccount);
|
|
29
|
+
const source = this.records.addSource({
|
|
30
|
+
provider: 'x',
|
|
31
|
+
remoteId: `bookmarks:${account.id}`,
|
|
32
|
+
title: `@${account.username} bookmarks`,
|
|
33
|
+
url: 'https://x.com/i/bookmarks',
|
|
34
|
+
});
|
|
35
|
+
const job = this.records.startImport({ sourceId: source.id, runtime });
|
|
36
|
+
return { source, job };
|
|
37
|
+
}
|
|
38
|
+
const parsed = new URL(url);
|
|
39
|
+
const host = parsed.hostname.toLowerCase();
|
|
40
|
+
const isPinterest = host === 'pinterest.com' ||
|
|
41
|
+
host.endsWith('.pinterest.com') ||
|
|
42
|
+
host === 'pin.it' ||
|
|
43
|
+
host === 'www.pin.it';
|
|
44
|
+
const isArena = host === 'are.na' || host.endsWith('.are.na');
|
|
45
|
+
if (parsed.protocol !== 'https:' ||
|
|
46
|
+
parsed.username ||
|
|
47
|
+
parsed.password ||
|
|
48
|
+
(!isPinterest && !isArena))
|
|
49
|
+
throw new Error('Connect an HTTPS Pinterest pin or board, Are.na block or channel, or https://x.com/i/bookmarks without credentials');
|
|
50
|
+
parsed.search = '';
|
|
51
|
+
parsed.hash = '';
|
|
52
|
+
const source = this.records.addSource({
|
|
53
|
+
provider: isPinterest ? 'pinterest' : 'arena',
|
|
54
|
+
remoteId: parsed.toString(),
|
|
55
|
+
title: parsed.pathname.split('/').filter(Boolean).pop() ?? 'Reference source',
|
|
56
|
+
url: parsed.toString(),
|
|
57
|
+
});
|
|
58
|
+
const job = this.records.startImport({ sourceId: source.id, runtime });
|
|
59
|
+
return { source, job };
|
|
60
|
+
}
|
|
61
|
+
async enumerate(jobId, signal) {
|
|
62
|
+
while (true) {
|
|
63
|
+
signal.throwIfAborted();
|
|
64
|
+
if (!this.isCurrentAccount())
|
|
65
|
+
throw new Error('Profile import paused because the active account changed');
|
|
66
|
+
const job = this.records
|
|
67
|
+
.jobs()
|
|
68
|
+
.find((candidate) => candidate.id === jobId);
|
|
69
|
+
if (!job || job.state !== 'pending' || job.isEnumerated)
|
|
70
|
+
return;
|
|
71
|
+
const source = this.records.source(job.sourceId);
|
|
72
|
+
if (!source.url)
|
|
73
|
+
throw new Error('The connected source has no provider URL');
|
|
74
|
+
if (!(0, design_profile_1.isRemoteProfileProvider)(source.provider))
|
|
75
|
+
throw new Error('This source does not support remote imports');
|
|
76
|
+
const url = source.url;
|
|
77
|
+
const provider = source.provider;
|
|
78
|
+
const readPage = async () => {
|
|
79
|
+
switch (provider) {
|
|
80
|
+
case 'pinterest': {
|
|
81
|
+
const result = await this.client.fetchPinterest(url, { ...(job.cursor ? { cursor: job.cursor } : {}) }, signal);
|
|
82
|
+
this.requirePage(result, source.provider);
|
|
83
|
+
return (0, boardPage_1.pinterestPage)(result, job.cursor);
|
|
84
|
+
}
|
|
85
|
+
case 'arena': {
|
|
86
|
+
const result = await this.client.fetchArena(url, Number(job.cursor ?? 1), signal);
|
|
87
|
+
this.requirePage(result, source.provider);
|
|
88
|
+
return (0, boardPage_1.arenaPage)(result, job.cursor);
|
|
89
|
+
}
|
|
90
|
+
case 'x': {
|
|
91
|
+
const expectedAccountId = source.remoteId.replace(/^bookmarks:/, '');
|
|
92
|
+
const result = await this.client.fetchXBookmarks({
|
|
93
|
+
expectedAccountId,
|
|
94
|
+
cursor: job.cursor ?? undefined,
|
|
95
|
+
signal,
|
|
96
|
+
});
|
|
97
|
+
this.requirePage(result, source.provider);
|
|
98
|
+
return (0, xPage_1.xPage)(result, job.cursor, expectedAccountId);
|
|
99
|
+
}
|
|
100
|
+
default: {
|
|
101
|
+
const unsupported = provider;
|
|
102
|
+
throw new Error(`Unsupported provider: ${unsupported}`);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
const page = await readPage();
|
|
107
|
+
signal.throwIfAborted();
|
|
108
|
+
if (!this.isCurrentAccount())
|
|
109
|
+
throw new Error('Profile account changed during enumeration');
|
|
110
|
+
if (this.records.jobs().find((candidate) => candidate.id === jobId)
|
|
111
|
+
?.state !== 'pending')
|
|
112
|
+
return;
|
|
113
|
+
this.records.saveImportPage({
|
|
114
|
+
jobId,
|
|
115
|
+
references: page.references,
|
|
116
|
+
cursor: page.cursor,
|
|
117
|
+
isComplete: page.isComplete,
|
|
118
|
+
total: page.total,
|
|
119
|
+
remoteId: page.remoteId,
|
|
120
|
+
title: page.title,
|
|
121
|
+
});
|
|
122
|
+
if (page.isComplete)
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
async download(jobId, signal) {
|
|
127
|
+
const job = this.records.jobs().find((candidate) => candidate.id === jobId);
|
|
128
|
+
if (!job)
|
|
129
|
+
throw new Error('Unknown profile import');
|
|
130
|
+
for (const reference of this.records.references(job.sourceId)) {
|
|
131
|
+
signal.throwIfAborted();
|
|
132
|
+
if (!this.isCurrentAccount())
|
|
133
|
+
throw new Error('Profile import paused because the active account changed');
|
|
134
|
+
if (!this.isPending(jobId))
|
|
135
|
+
return;
|
|
136
|
+
if (reference.unsupportedReason || !reference.remoteImages?.length)
|
|
137
|
+
continue;
|
|
138
|
+
let current = reference;
|
|
139
|
+
try {
|
|
140
|
+
for (const [index, url] of reference.remoteImages.entries()) {
|
|
141
|
+
const existing = current.media[index];
|
|
142
|
+
if (existing) {
|
|
143
|
+
try {
|
|
144
|
+
await this.media.resolve(existing);
|
|
145
|
+
continue;
|
|
146
|
+
}
|
|
147
|
+
catch { }
|
|
148
|
+
}
|
|
149
|
+
const image = await this.media.put(await this.downloadImage(url, signal));
|
|
150
|
+
signal.throwIfAborted();
|
|
151
|
+
if (!this.isCurrentAccount())
|
|
152
|
+
throw new Error('Profile account changed during download');
|
|
153
|
+
if (!this.isPending(jobId))
|
|
154
|
+
return;
|
|
155
|
+
const images = [...current.media];
|
|
156
|
+
images[index] = {
|
|
157
|
+
...image,
|
|
158
|
+
representation: reference.remoteImageRepresentations?.[index] ?? 'image',
|
|
159
|
+
};
|
|
160
|
+
current = this.records.saveReference({
|
|
161
|
+
sourceId: job.sourceId,
|
|
162
|
+
reference: { ...current, media: images },
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
this.records.clearFailure(reference.id, 'download');
|
|
166
|
+
}
|
|
167
|
+
catch (error) {
|
|
168
|
+
signal.throwIfAborted();
|
|
169
|
+
if (!this.isCurrentAccount())
|
|
170
|
+
throw error;
|
|
171
|
+
if (error instanceof ProviderRateLimit_1.ProviderRateLimit)
|
|
172
|
+
throw error;
|
|
173
|
+
if (!this.isPending(jobId))
|
|
174
|
+
return;
|
|
175
|
+
this.records.saveFailure({
|
|
176
|
+
jobId,
|
|
177
|
+
referenceId: current.id,
|
|
178
|
+
revision: current.revision,
|
|
179
|
+
stage: 'download',
|
|
180
|
+
error: error instanceof Error ? error.message : 'Image download failed',
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
requirePage(result, provider) {
|
|
186
|
+
if (result.status === 'error' && result.reason === 'rate_limited')
|
|
187
|
+
throw new ProviderRateLimit_1.ProviderRateLimit(result.retryAfterMs);
|
|
188
|
+
if (result.status !== 'ok')
|
|
189
|
+
throw new Error(result.status === 'not_connected'
|
|
190
|
+
? `Reconnect ${provider} in Rivet, then retry this import`
|
|
191
|
+
: result.message);
|
|
192
|
+
}
|
|
193
|
+
isPending(jobId) {
|
|
194
|
+
return (this.records.jobs().find((job) => job.id === jobId)?.state === 'pending');
|
|
195
|
+
}
|
|
196
|
+
async downloadImage(raw, cancellation) {
|
|
197
|
+
const signal = AbortSignal.any([
|
|
198
|
+
cancellation,
|
|
199
|
+
AbortSignal.timeout(DOWNLOAD_TIMEOUT_MS),
|
|
200
|
+
]);
|
|
201
|
+
let url = raw;
|
|
202
|
+
for (let redirects = 0; redirects <= MAX_REDIRECTS; redirects += 1) {
|
|
203
|
+
const validation = (0, sourceContext_1.validateInspirationUrl)(url);
|
|
204
|
+
if (!validation.ok ||
|
|
205
|
+
validation.url.protocol !== 'https:' ||
|
|
206
|
+
!(validation.url.hostname === 'pbs.twimg.com' ||
|
|
207
|
+
MEDIA_HOSTS.some((host) => validation.url.hostname === host ||
|
|
208
|
+
validation.url.hostname.endsWith(`.${host}`))))
|
|
209
|
+
throw new Error('Reference media URL is outside the supported provider hosts');
|
|
210
|
+
const response = await fetch(url, { redirect: 'manual', signal });
|
|
211
|
+
if (response.status >= 300 && response.status < 400) {
|
|
212
|
+
const location = response.headers.get('location');
|
|
213
|
+
await response.body?.cancel();
|
|
214
|
+
if (!location)
|
|
215
|
+
throw new Error('Reference media redirect has no destination');
|
|
216
|
+
url = new URL(location, url).toString();
|
|
217
|
+
continue;
|
|
218
|
+
}
|
|
219
|
+
await (0, ProviderRateLimit_1.throwIfRateLimited)(response);
|
|
220
|
+
if (!response.ok || !response.body) {
|
|
221
|
+
await response.body?.cancel();
|
|
222
|
+
throw new Error(`Reference image download failed (${response.status}); retry this import`);
|
|
223
|
+
}
|
|
224
|
+
if (Number(response.headers.get('content-length')) > ProfileMedia_1.PROFILE_IMAGE_BYTES) {
|
|
225
|
+
await response.body.cancel();
|
|
226
|
+
throw new Error('Reference image exceeds the media budget');
|
|
227
|
+
}
|
|
228
|
+
const reader = response.body.getReader();
|
|
229
|
+
const chunks = [];
|
|
230
|
+
let size = 0;
|
|
231
|
+
while (true) {
|
|
232
|
+
const next = await reader.read();
|
|
233
|
+
if (next.done)
|
|
234
|
+
break;
|
|
235
|
+
size += next.value.length;
|
|
236
|
+
if (size > ProfileMedia_1.PROFILE_IMAGE_BYTES) {
|
|
237
|
+
await reader.cancel();
|
|
238
|
+
throw new Error('Reference image exceeds the media budget');
|
|
239
|
+
}
|
|
240
|
+
chunks.push(Buffer.from(next.value));
|
|
241
|
+
}
|
|
242
|
+
return Buffer.concat(chunks);
|
|
243
|
+
}
|
|
244
|
+
throw new Error('Reference image exceeded the redirect limit');
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
exports.ProfileImports = ProfileImports;
|
|
248
|
+
//# sourceMappingURL=ProfileImports.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProfileImports.js","sourceRoot":"","sources":["../../../src/services/profiles/ProfileImports.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ProfileRecords } from '../../storage/profiles/ProfileRecords';
|
|
2
|
+
import type { ProfileCandidate, ProfileRuntime } from '../../types/design-profile';
|
|
3
|
+
import type { MemoryRuntime } from './MemoryRuntime';
|
|
4
|
+
export declare class ProfileIndex {
|
|
5
|
+
private readonly records;
|
|
6
|
+
private readonly engine;
|
|
7
|
+
private tail;
|
|
8
|
+
constructor(records: ProfileRecords, engine: MemoryRuntime);
|
|
9
|
+
flush(runtime: ProfileRuntime, signal?: AbortSignal): Promise<void>;
|
|
10
|
+
search({ runtime, query, signal, }: {
|
|
11
|
+
runtime: ProfileRuntime;
|
|
12
|
+
query: string;
|
|
13
|
+
signal?: AbortSignal;
|
|
14
|
+
}): Promise<ProfileCandidate[]>;
|
|
15
|
+
private entries;
|
|
16
|
+
private drain;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=ProfileIndex.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProfileIndex.d.ts","sourceRoot":"","sources":["../../../src/services/profiles/ProfileIndex.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EACf,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAuBrD,qBAAa,YAAY;IAGrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHzB,OAAO,CAAC,IAAI,CAAuC;gBAEhC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,aAAa;IAGxC,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7D,MAAM,CAAC,EACX,OAAO,EACP,KAAK,EACL,MAAM,GACP,EAAE;QACD,OAAO,EAAE,cAAc,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;YA8BjB,OAAO;YA4BP,KAAK;CAkEpB"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProfileIndex = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const profileEvidence_1 = require("./profileEvidence");
|
|
6
|
+
const memory = zod_1.z.object({
|
|
7
|
+
id: zod_1.z.string(),
|
|
8
|
+
metadata: zod_1.z
|
|
9
|
+
.object({
|
|
10
|
+
referenceId: zod_1.z.string(),
|
|
11
|
+
revision: zod_1.z.number().int(),
|
|
12
|
+
writeId: zod_1.z.string(),
|
|
13
|
+
})
|
|
14
|
+
.passthrough(),
|
|
15
|
+
isForgotten: zod_1.z.boolean().optional(),
|
|
16
|
+
});
|
|
17
|
+
const listed = zod_1.z.object({
|
|
18
|
+
memoryEntries: zod_1.z.array(memory),
|
|
19
|
+
pagination: zod_1.z.object({
|
|
20
|
+
currentPage: zod_1.z.number().int(),
|
|
21
|
+
totalPages: zod_1.z.number().int(),
|
|
22
|
+
}),
|
|
23
|
+
});
|
|
24
|
+
const PAGE_SIZE = 100;
|
|
25
|
+
const CANDIDATE_LIMIT = 12;
|
|
26
|
+
class ProfileIndex {
|
|
27
|
+
records;
|
|
28
|
+
engine;
|
|
29
|
+
tail = Promise.resolve();
|
|
30
|
+
constructor(records, engine) {
|
|
31
|
+
this.records = records;
|
|
32
|
+
this.engine = engine;
|
|
33
|
+
}
|
|
34
|
+
flush(runtime, signal) {
|
|
35
|
+
const run = this.tail
|
|
36
|
+
.catch(() => undefined)
|
|
37
|
+
.then(() => this.drain(runtime, signal));
|
|
38
|
+
this.tail = run;
|
|
39
|
+
return run;
|
|
40
|
+
}
|
|
41
|
+
async search({ runtime, query, signal, }) {
|
|
42
|
+
const response = zod_1.z.object({ results: zod_1.z.array(memory) }).parse(await this.engine.request(runtime, '/v4/search', {
|
|
43
|
+
q: query,
|
|
44
|
+
containerTag: this.records.profile().id,
|
|
45
|
+
searchMode: 'memories',
|
|
46
|
+
limit: CANDIDATE_LIMIT,
|
|
47
|
+
threshold: 0,
|
|
48
|
+
rerank: false,
|
|
49
|
+
aggregate: false,
|
|
50
|
+
rewriteQuery: false,
|
|
51
|
+
}, 'POST', signal));
|
|
52
|
+
const candidates = this.records.candidates(response.results
|
|
53
|
+
.filter((hit) => !hit.isForgotten)
|
|
54
|
+
.map((hit) => hit.metadata));
|
|
55
|
+
const unique = new Map(candidates.map((candidate) => [candidate.reference.id, candidate]));
|
|
56
|
+
return [...unique.values()];
|
|
57
|
+
}
|
|
58
|
+
async entries(runtime, signal) {
|
|
59
|
+
const result = [];
|
|
60
|
+
let page = 1;
|
|
61
|
+
let totalPages = 1;
|
|
62
|
+
do {
|
|
63
|
+
const response = listed.parse(await this.engine.request(runtime, '/v4/memories/list', {
|
|
64
|
+
containerTags: [this.records.profile().id],
|
|
65
|
+
page,
|
|
66
|
+
limit: PAGE_SIZE,
|
|
67
|
+
}, 'POST', signal));
|
|
68
|
+
result.push(...response.memoryEntries);
|
|
69
|
+
totalPages = response.pagination.totalPages;
|
|
70
|
+
page += 1;
|
|
71
|
+
} while (page <= totalPages);
|
|
72
|
+
return result;
|
|
73
|
+
}
|
|
74
|
+
async drain(runtime, signal) {
|
|
75
|
+
if (!this.records.pendingIndex(1).length)
|
|
76
|
+
return;
|
|
77
|
+
const entries = await this.entries(runtime, signal);
|
|
78
|
+
const containerTag = this.records.profile().id;
|
|
79
|
+
for (const work of this.records.pendingIndex()) {
|
|
80
|
+
signal?.throwIfAborted();
|
|
81
|
+
const existing = entries.filter((entry) => entry.metadata.referenceId === work.referenceId && !entry.isForgotten);
|
|
82
|
+
const matching = existing.find((entry) => entry.metadata.writeId === work.id);
|
|
83
|
+
const obsolete = existing.filter((entry) => work.operation === 'delete' || entry.id !== matching?.id);
|
|
84
|
+
for (const entry of obsolete)
|
|
85
|
+
await this.engine.request(runtime, '/v4/memories', { containerTag, id: entry.id }, 'DELETE', signal);
|
|
86
|
+
if (work.operation === 'delete') {
|
|
87
|
+
this.records.acknowledgeIndex({ ...work, engineId: null });
|
|
88
|
+
continue;
|
|
89
|
+
}
|
|
90
|
+
const observation = this.records.observation(work.referenceId);
|
|
91
|
+
const reference = this.records.reference(work.referenceId);
|
|
92
|
+
if (!observation || !reference || observation.revision !== work.revision)
|
|
93
|
+
continue;
|
|
94
|
+
let engineId = matching?.id;
|
|
95
|
+
if (!engineId) {
|
|
96
|
+
const written = zod_1.z
|
|
97
|
+
.object({ memories: zod_1.z.array(zod_1.z.object({ id: zod_1.z.string() })).length(1) })
|
|
98
|
+
.parse(await this.engine.request(runtime, '/v4/memories', {
|
|
99
|
+
containerTag,
|
|
100
|
+
memories: [
|
|
101
|
+
{
|
|
102
|
+
content: (0, profileEvidence_1.profileEvidence)(reference, observation),
|
|
103
|
+
isStatic: observation.evidence === 'preference',
|
|
104
|
+
metadata: {
|
|
105
|
+
referenceId: work.referenceId,
|
|
106
|
+
revision: work.revision,
|
|
107
|
+
writeId: work.id,
|
|
108
|
+
},
|
|
109
|
+
},
|
|
110
|
+
],
|
|
111
|
+
}, 'POST', signal));
|
|
112
|
+
engineId = written.memories[0].id;
|
|
113
|
+
}
|
|
114
|
+
this.records.acknowledgeIndex({ ...work, engineId });
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
exports.ProfileIndex = ProfileIndex;
|
|
119
|
+
//# sourceMappingURL=ProfileIndex.js.map
|