@smoothcodes/agent-client 0.0.0-stage → 0.1.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/README.md +55 -2
- package/dist/bytes-46CCFSRQ.js +8 -0
- package/dist/chunk-PZ5AY32C.js +10 -0
- package/dist/chunk-PZ5AY32C.js.map +7 -0
- package/dist/chunk-WQFHS5IU.js +14201 -0
- package/dist/chunk-WQFHS5IU.js.map +7 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +7 -0
- package/dist/testing.js +137 -0
- package/dist/testing.js.map +7 -0
- package/dist/types/contract/events/ts/src/gen/events.d.ts +5866 -0
- package/dist/types/contract/events/ts/src/gen/known.d.ts +117 -0
- package/dist/types/contract/events/ts/src/reducer.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/BaseClient.d.ts +54 -0
- package/dist/types/sdk/generated/ts-client/Client.d.ts +41 -0
- package/dist/types/sdk/generated/ts-client/api/errors/BadGatewayError.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/errors/BadRequestError.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/api/errors/ConflictError.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/api/errors/FailedDependencyError.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/errors/ForbiddenError.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/api/errors/GoneError.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/errors/InternalServerError.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/api/errors/NotFoundError.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/errors/PaymentRequiredError.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/errors/ServiceUnavailableError.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/errors/TooManyRequestsError.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/api/errors/UnauthorizedError.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/api/errors/UnprocessableEntityError.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/errors/index.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/index.d.ts +3 -0
- package/dist/types/sdk/generated/ts-client/api/resources/agents/client/Client.d.ts +66 -0
- package/dist/types/sdk/generated/ts-client/api/resources/agents/client/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/api/resources/agents/client/requests/AgentsGetRequest.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/resources/agents/client/requests/AgentsListRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/agents/client/requests/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/api/resources/agents/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/api/resources/agents/types/AgentsGetResponse.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/api/resources/agents/types/AgentsListResponse.d.ts +12 -0
- package/dist/types/sdk/generated/ts-client/api/resources/agents/types/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/Client.d.ts +941 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/CancelSwitchChatsRequest.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatBoxListFilesRequest.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatBoxListTasksRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatBoxReadFileRequest.d.ts +12 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatBoxStopTaskRequest.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatBoxTaskOutputRequest.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsDeleteRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsEventsRequest.d.ts +14 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsGetRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsHistoryRequest.d.ts +16 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsLimitsRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsListRequest.d.ts +14 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsQueueRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsResendRequest.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsResetRequest.d.ts +12 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsRespondRequest.d.ts +17 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsRunRequest.d.ts +12 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsRunsRequest.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsSelectionRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsSnapshotRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsStopRequest.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsUpdateRequest.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsUsageRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/CreateChat.d.ts +27 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/EditQueuedChatsRequest.d.ts +20 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/EventsRangeChatsRequest.d.ts +14 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/GetContextChatsRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/MarkReadChatsRequest.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/RemoveQueuedChatsRequest.d.ts +14 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ReorderQueueChatsRequest.d.ts +15 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/SendMessage.d.ts +35 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/SendNowChatsRequest.d.ts +15 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/SwitchAgent.d.ts +17 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/index.d.ts +33 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatBoxListTasksResponse.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatBoxStopTaskResponse.d.ts +3 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsEventsRequestAccept.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsHistoryRequestAnchor.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsListResponse.d.ts +6 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsResendResponse.d.ts +3 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsRespondResponse.d.ts +3 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsRunsResponse.d.ts +6 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsSendResponse.d.ts +14 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsStopResponse.d.ts +3 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/MarkReadChatsResponse.d.ts +6 -0
- package/dist/types/sdk/generated/ts-client/api/resources/chats/types/index.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/client/Client.d.ts +174 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/client/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/CreateUploadFilesRequest.d.ts +17 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/FilesCompleteRequest.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/FilesContentRequest.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/FilesDeleteRequest.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/FilesGetRequest.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/FilesUploadRequest.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/index.d.ts +6 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/types/CreateUploadFilesResponse.d.ts +6 -0
- package/dist/types/sdk/generated/ts-client/api/resources/files/types/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/api/resources/identity/client/Client.d.ts +42 -0
- package/dist/types/sdk/generated/ts-client/api/resources/identity/client/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/api/resources/identity/client/requests/MeFeedRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/identity/client/requests/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/api/resources/identity/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/api/resources/identity/types/MeFeedRequestAccept.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/resources/identity/types/MeWhoamiResponse.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/api/resources/identity/types/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/api/resources/index.d.ts +18 -0
- package/dist/types/sdk/generated/ts-client/api/resources/machines/client/Client.d.ts +151 -0
- package/dist/types/sdk/generated/ts-client/api/resources/machines/client/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/MachinesDeleteRequest.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/MachinesGetRequest.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/MachinesListRequest.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/MachinesPairRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/PairingStatusMachinesRequest.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/index.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/api/resources/machines/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/api/resources/machines/types/MachinesListResponse.d.ts +6 -0
- package/dist/types/sdk/generated/ts-client/api/resources/machines/types/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/client/Client.d.ts +212 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/client/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersCompleteRequest.d.ts +14 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersConnectRequest.d.ts +12 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersDisconnectRequest.d.ts +12 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersLimitsRequest.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersListRequest.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersLoginStatusRequest.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersSetKeyRequest.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/index.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/types/MyProvidersConnectResponse.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/types/MyProvidersDisconnectRequestVia.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/types/MyProvidersListResponse.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/resources/providers/types/index.d.ts +3 -0
- package/dist/types/sdk/generated/ts-client/api/types/Agent.d.ts +73 -0
- package/dist/types/sdk/generated/ts-client/api/types/AgentCredential.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/types/AgentHooks.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/api/types/AgentLimits.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/api/types/AgentPublic.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/types/AgentTheme.d.ts +14 -0
- package/dist/types/sdk/generated/ts-client/api/types/BoxFileContent.d.ts +17 -0
- package/dist/types/sdk/generated/ts-client/api/types/BoxFileEntry.d.ts +15 -0
- package/dist/types/sdk/generated/ts-client/api/types/BoxFileList.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/api/types/BoxProfile.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/types/Chat.d.ts +39 -0
- package/dist/types/sdk/generated/ts-client/api/types/ChatContext.d.ts +18 -0
- package/dist/types/sdk/generated/ts-client/api/types/ChatSelection.d.ts +38 -0
- package/dist/types/sdk/generated/ts-client/api/types/ChatTask.d.ts +32 -0
- package/dist/types/sdk/generated/ts-client/api/types/ChatTaskOutput.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/types/ChatUsage.d.ts +19 -0
- package/dist/types/sdk/generated/ts-client/api/types/Deleted.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/DeviceFlow.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/api/types/ErrorBody.d.ts +12 -0
- package/dist/types/sdk/generated/ts-client/api/types/Error_.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventRange.d.ts +15 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsAgentId.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsAgentSelection.d.ts +14 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsApprovalOption.d.ts +24 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsCapabilities.d.ts +146 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsChatId.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsContentFile.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsContentImage.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsContentPart.d.ts +19 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsContentResource.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsContentText.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsDelta.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEAgentSwitchFailed.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEAgentSwitchFailedData.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEAgentSwitched.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEAgentSwitchedData.d.ts +12 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEChatState.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEChatStateData.d.ts +17 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEContextUpdated.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEContextUpdatedData.d.ts +20 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEError.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEErrorData.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEItemCompleted.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEItemCompletedData.d.ts +8 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEItemDelta.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEItemDeltaData.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEItemRetracted.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEItemRetractedData.d.ts +18 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEItemStarted.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEItemStartedData.d.ts +8 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEItemUpdated.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEItemUpdatedData.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsELimitsUpdated.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsENotice.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsENoticeData.d.ts +19 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsERunCompleted.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsERunCompletedData.d.ts +35 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsERunStarted.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsERunStartedData.d.ts +23 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsERunWaiting.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsERunWaitingData.d.ts +22 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsESessionStarted.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsESessionStartedData.d.ts +46 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsETaskUpdated.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsETaskUpdatedData.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEUsageUpdated.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEUsageUpdatedData.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsErrorCode.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsEvent.d.ts +61 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsFailure.d.ts +17 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsFailureReason.d.ts +16 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsFileId.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsHandoffInjected.d.ts +29 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsHandoffLost.d.ts +24 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsInboxEntry.d.ts +50 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsInboxState.d.ts +49 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItem.d.ts +64 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemApproval.d.ts +93 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemCommand.d.ts +74 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemCompaction.d.ts +55 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemError.d.ts +40 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemFileChange.d.ts +73 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemFileSearch.d.ts +61 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemHandoff.d.ts +66 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemHook.d.ts +49 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemId.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemNotification.d.ts +65 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemPlan.d.ts +65 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemProposedPlan.d.ts +43 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemQuestion.d.ts +81 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemReasoning.d.ts +47 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemSubagent.d.ts +56 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemText.d.ts +49 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemTimer.d.ts +46 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemToolCall.d.ts +76 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemUserMessage.d.ts +65 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsItemWebSearch.d.ts +74 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsLimitWindow.d.ts +26 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsLimits.d.ts +46 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsMessageId.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsModelUsage.d.ts +19 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsNativeRef.d.ts +17 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsOrigin.d.ts +32 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsProvider.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsRawFrame.d.ts +18 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsRequestId.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsRunAgent.d.ts +27 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsRunId.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsRunTrigger.d.ts +29 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsScheduledSwitch.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsStopId.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsSwitchId.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsTask.d.ts +45 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsTaskId.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsTaskProgress.d.ts +15 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsTimestamp.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsToolOutput.d.ts +16 -0
- package/dist/types/sdk/generated/ts-client/api/types/EventsUsage.d.ts +34 -0
- package/dist/types/sdk/generated/ts-client/api/types/FileObject.d.ts +18 -0
- package/dist/types/sdk/generated/ts-client/api/types/HistoryEntry.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/api/types/HistoryPage.d.ts +24 -0
- package/dist/types/sdk/generated/ts-client/api/types/LoginStatus.d.ts +15 -0
- package/dist/types/sdk/generated/ts-client/api/types/Machine.d.ts +43 -0
- package/dist/types/sdk/generated/ts-client/api/types/McpServer.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/api/types/Metadata.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/ModelInfo.d.ts +6 -0
- package/dist/types/sdk/generated/ts-client/api/types/OAuthFlow.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/api/types/Pairing.d.ts +18 -0
- package/dist/types/sdk/generated/ts-client/api/types/Placement.d.ts +38 -0
- package/dist/types/sdk/generated/ts-client/api/types/PreTurnHook.d.ts +21 -0
- package/dist/types/sdk/generated/ts-client/api/types/Principal.d.ts +30 -0
- package/dist/types/sdk/generated/ts-client/api/types/ProviderKind.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/api/types/ProviderLimits.d.ts +44 -0
- package/dist/types/sdk/generated/ts-client/api/types/ProviderStatus.d.ts +53 -0
- package/dist/types/sdk/generated/ts-client/api/types/QueueResult.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/api/types/RunSummary.d.ts +30 -0
- package/dist/types/sdk/generated/ts-client/api/types/Scope.d.ts +35 -0
- package/dist/types/sdk/generated/ts-client/api/types/SwitchResult.d.ts +19 -0
- package/dist/types/sdk/generated/ts-client/api/types/Timestamp.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/api/types/ToolPrincipal.d.ts +29 -0
- package/dist/types/sdk/generated/ts-client/api/types/index.d.ts +140 -0
- package/dist/types/sdk/generated/ts-client/auth/BearerAuthProvider.d.ts +20 -0
- package/dist/types/sdk/generated/ts-client/core/auth/AuthProvider.d.ts +8 -0
- package/dist/types/sdk/generated/ts-client/core/auth/AuthRequest.d.ts +9 -0
- package/dist/types/sdk/generated/ts-client/core/auth/BasicAuth.d.ts +8 -0
- package/dist/types/sdk/generated/ts-client/core/auth/BearerToken.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/core/auth/NoOpAuthProvider.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/core/auth/index.d.ts +5 -0
- package/dist/types/sdk/generated/ts-client/core/base64.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/core/exports.d.ts +3 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/APIResponse.d.ts +20 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/BinaryResponse.d.ts +19 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/EndpointMetadata.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/EndpointSupplier.d.ts +12 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/Fetcher.d.ts +56 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/Headers.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/HttpResponsePromise.d.ts +58 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/RawResponse.d.ts +29 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/Supplier.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/createRequestUrl.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/getErrorResponseBody.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/getFetchFn.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/getHeader.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/getRequestBody.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/getResponseBody.d.ts +17 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/index.d.ts +13 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/makePassthroughRequest.d.ts +49 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/makeRequest.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/redactUrl.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/requestWithRetries.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/fetcher/signals.d.ts +6 -0
- package/dist/types/sdk/generated/ts-client/core/file/exports.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/file/file.d.ts +10 -0
- package/dist/types/sdk/generated/ts-client/core/file/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/core/file/types.d.ts +66 -0
- package/dist/types/sdk/generated/ts-client/core/form-data-utils/FormDataWrapper.d.ts +15 -0
- package/dist/types/sdk/generated/ts-client/core/form-data-utils/encodeAsFormParameter.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/form-data-utils/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/core/headers.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/core/index.d.ts +11 -0
- package/dist/types/sdk/generated/ts-client/core/json.d.ts +15 -0
- package/dist/types/sdk/generated/ts-client/core/logging/exports.d.ts +18 -0
- package/dist/types/sdk/generated/ts-client/core/logging/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/logging/logger.d.ts +126 -0
- package/dist/types/sdk/generated/ts-client/core/pagination/Page.d.ts +33 -0
- package/dist/types/sdk/generated/ts-client/core/pagination/exports.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/pagination/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/requestBody.d.ts +12 -0
- package/dist/types/sdk/generated/ts-client/core/runtime/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/runtime/runtime.d.ts +28 -0
- package/dist/types/sdk/generated/ts-client/core/stream/Stream.d.ts +103 -0
- package/dist/types/sdk/generated/ts-client/core/stream/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/core/url/QueryStringBuilder.d.ts +47 -0
- package/dist/types/sdk/generated/ts-client/core/url/encodePathParam.d.ts +3 -0
- package/dist/types/sdk/generated/ts-client/core/url/index.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/core/url/join.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/url/qs.d.ts +7 -0
- package/dist/types/sdk/generated/ts-client/core/utils/index.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/core/utils/setObjectProperty.d.ts +12 -0
- package/dist/types/sdk/generated/ts-client/environments.d.ts +4 -0
- package/dist/types/sdk/generated/ts-client/errors/SmoothAgentApiError.d.ts +15 -0
- package/dist/types/sdk/generated/ts-client/errors/SmoothAgentApiTimeoutError.d.ts +6 -0
- package/dist/types/sdk/generated/ts-client/errors/handleNonStatusCodeError.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/errors/index.d.ts +2 -0
- package/dist/types/sdk/generated/ts-client/exports.d.ts +1 -0
- package/dist/types/sdk/generated/ts-client/index.d.ts +6 -0
- package/dist/types/sdk/ts/client/src/index.d.ts +81 -0
- package/dist/types/sdk/ts/client/src/testing.d.ts +71 -0
- package/dist/types/sdk/ts/core-live/src/auth.d.ts +40 -0
- package/dist/types/sdk/ts/core-live/src/backoff.d.ts +9 -0
- package/dist/types/sdk/ts/core-live/src/client.d.ts +82 -0
- package/dist/types/sdk/ts/core-live/src/deps.d.ts +63 -0
- package/dist/types/sdk/ts/core-live/src/edge.d.ts +73 -0
- package/dist/types/sdk/ts/core-live/src/feed.d.ts +66 -0
- package/dist/types/sdk/ts/core-live/src/ids.d.ts +7 -0
- package/dist/types/sdk/ts/core-live/src/index.d.ts +11 -0
- package/dist/types/sdk/ts/core-live/src/native.d.ts +7 -0
- package/dist/types/sdk/ts/core-live/src/prompt.d.ts +80 -0
- package/dist/types/sdk/ts/core-live/src/providers.d.ts +187 -0
- package/dist/types/sdk/ts/core-live/src/reducers/contract.d.ts +16 -0
- package/dist/types/sdk/ts/core-live/src/rest.d.ts +48 -0
- package/dist/types/sdk/ts/core-live/src/stream.d.ts +145 -0
- package/dist/types/sdk/ts/core-live/src/types.d.ts +55 -0
- package/dist/types/sdk/ts/core-live/src/wasm/bytes.d.ts +1 -0
- package/dist/types/sdk/ts/core-live/src/wasm/empty.d.ts +1 -0
- package/dist/types/sdk/ts/core-live/src/wasm/live.d.ts +278 -0
- package/dist/types/sdk/ts/core-live/src/watch.d.ts +211 -0
- package/package.json +51 -4
package/dist/index.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DEFAULT_BASE_URL,
|
|
3
|
+
ProviderSet,
|
|
4
|
+
SmoothAgent,
|
|
5
|
+
SmoothAgentApiError,
|
|
6
|
+
SmoothAgentApiTimeoutError,
|
|
7
|
+
apiErrorBody,
|
|
8
|
+
sortProviders
|
|
9
|
+
} from "./chunk-WQFHS5IU.js";
|
|
10
|
+
import "./chunk-PZ5AY32C.js";
|
|
11
|
+
export {
|
|
12
|
+
DEFAULT_BASE_URL,
|
|
13
|
+
ProviderSet,
|
|
14
|
+
SmoothAgent,
|
|
15
|
+
SmoothAgentApiError,
|
|
16
|
+
SmoothAgentApiTimeoutError,
|
|
17
|
+
apiErrorBody,
|
|
18
|
+
sortProviders
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
package/dist/testing.js
ADDED
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import {
|
|
2
|
+
SmoothAgent
|
|
3
|
+
} from "./chunk-WQFHS5IU.js";
|
|
4
|
+
import "./chunk-PZ5AY32C.js";
|
|
5
|
+
|
|
6
|
+
// src/testing.ts
|
|
7
|
+
var Harness = class {
|
|
8
|
+
constructor(ifaces, clock) {
|
|
9
|
+
this.ifaces = ifaces;
|
|
10
|
+
this.clock = clock;
|
|
11
|
+
}
|
|
12
|
+
/** Diferenças entre as interfaces (vazio = todas iguais). `core` = cursor + inbox + ids do histórico; `full` = + a timeline inteira. */
|
|
13
|
+
diff(mode = "full") {
|
|
14
|
+
const out = [];
|
|
15
|
+
const [first, ...rest] = this.ifaces;
|
|
16
|
+
if (!first) return out;
|
|
17
|
+
const a = first.live.getState();
|
|
18
|
+
for (const it of rest) {
|
|
19
|
+
const b = it.live.getState();
|
|
20
|
+
const add = (field, x, y) => {
|
|
21
|
+
if (JSON.stringify(x) !== JSON.stringify(y)) out.push({ field, ifaceA: first.index, ifaceB: it.index, a: x, b: y });
|
|
22
|
+
};
|
|
23
|
+
add("cursor", a.sync.cursor, b.sync.cursor);
|
|
24
|
+
add("inbox", a.inbox, b.inbox);
|
|
25
|
+
add("history", a.history.items.map((i) => i.id), b.history.items.map((i) => i.id));
|
|
26
|
+
if (mode === "full") add("timeline", a.timeline, b.timeline);
|
|
27
|
+
}
|
|
28
|
+
return out;
|
|
29
|
+
}
|
|
30
|
+
/** Espera todas convergirem (diff vazio e nenhuma sincronizando). Rejeita com o último diff no prazo. */
|
|
31
|
+
converged(o = {}) {
|
|
32
|
+
const end = this.clock.now() + (o.timeoutMs ?? 3e4);
|
|
33
|
+
return new Promise((resolve, reject) => {
|
|
34
|
+
const tick = () => {
|
|
35
|
+
const synced = this.ifaces.every((i) => i.live.getState().sync.status === "live");
|
|
36
|
+
const d = this.diff(o.mode);
|
|
37
|
+
if (synced && d.length === 0) return resolve();
|
|
38
|
+
if (this.clock.now() >= end) {
|
|
39
|
+
const status = this.ifaces.map((i) => `${i.index}:${i.live.getState().sync.status}@${i.live.getState().sync.cursor}`).join(" ");
|
|
40
|
+
return reject(Object.assign(new Error(`n\xE3o convergiu (${status}): ${JSON.stringify(d).slice(0, 2e3)}`), { diff: d }));
|
|
41
|
+
}
|
|
42
|
+
this.clock.setTimeout(tick, o.everyMs ?? 100);
|
|
43
|
+
};
|
|
44
|
+
tick();
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Por interface: aplicados estritamente crescentes e sem pular — pular só vale onde a SDK declarou
|
|
49
|
+
* (trecho compactado pelo log, ou o snapshot que reposicionou o cursor).
|
|
50
|
+
*/
|
|
51
|
+
checkOrder() {
|
|
52
|
+
const out = [];
|
|
53
|
+
for (const it of this.ifaces) {
|
|
54
|
+
const allowed = [];
|
|
55
|
+
for (const d of it.debug) if (d.kind === "compacted_skip") allowed.push([d.from, d.to]);
|
|
56
|
+
const appliedSet = new Set(it.applied);
|
|
57
|
+
for (const d of it.debug) if (d.kind === "cursor" && !appliedSet.has(d.seq)) allowed.push([0, d.seq]);
|
|
58
|
+
for (let k = 1; k < it.applied.length; k++) {
|
|
59
|
+
const prev = it.applied[k - 1];
|
|
60
|
+
const next = it.applied[k];
|
|
61
|
+
if (next <= prev) out.push({ iface: it.index, kind: "not_increasing", prev, next });
|
|
62
|
+
else if (next !== prev + 1) {
|
|
63
|
+
const covered = (s) => allowed.some(([f, t]) => s >= f && s <= t);
|
|
64
|
+
for (let s = prev + 1; s < next; s++) {
|
|
65
|
+
if (!covered(s)) {
|
|
66
|
+
out.push({ iface: it.index, kind: "skipped", prev, next });
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return out;
|
|
74
|
+
}
|
|
75
|
+
violations() {
|
|
76
|
+
return this.ifaces.flatMap((i) => i.violations.map((v) => ({ ...v, iface: i.index })));
|
|
77
|
+
}
|
|
78
|
+
/** Caos: derruba os sockets daquela interface (a SDK religa sozinha). `box` = qualquer socket que não é o conector. */
|
|
79
|
+
disconnect(i, which = "all") {
|
|
80
|
+
const it = this.ifaces[i];
|
|
81
|
+
if (!it) throw new Error(`interface ${i} n\xE3o existe`);
|
|
82
|
+
let n = 0;
|
|
83
|
+
for (const s of it.sockets) {
|
|
84
|
+
const isConnector = /\/v3\/chats\/[^/]+\/live$/.test(new URL(s.url).pathname);
|
|
85
|
+
if (which === "all" || which === "connector" === isConnector) {
|
|
86
|
+
if (s.socket.readyState <= 1) {
|
|
87
|
+
s.socket.close(4e3, "harness disconnect");
|
|
88
|
+
n++;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return n;
|
|
93
|
+
}
|
|
94
|
+
async close() {
|
|
95
|
+
for (const i of this.ifaces) {
|
|
96
|
+
i.live.release();
|
|
97
|
+
i.sa.close();
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
function createInterfaces(o) {
|
|
102
|
+
const clock = o.clock ?? { now: () => Date.now(), setTimeout: (f, ms) => setTimeout(f, ms), clearTimeout: (h) => clearTimeout(h) };
|
|
103
|
+
const BaseWS = o.WebSocket ?? globalThis.WebSocket;
|
|
104
|
+
if (!BaseWS) throw new Error("sem WebSocket: passe `WebSocket`");
|
|
105
|
+
const ifaces = [];
|
|
106
|
+
for (let index = 0; index < o.n; index++) {
|
|
107
|
+
const token = o.tokens?.[index] ?? o.token;
|
|
108
|
+
if (!token) throw new Error(`sem token pra interface ${index}`);
|
|
109
|
+
const sockets = [];
|
|
110
|
+
const WS = function(url, protocols) {
|
|
111
|
+
const socket = new BaseWS(url, protocols);
|
|
112
|
+
sockets.push({ url, socket });
|
|
113
|
+
return socket;
|
|
114
|
+
};
|
|
115
|
+
const it = { index, debug: [], applied: [], violations: [], sockets };
|
|
116
|
+
it.sa = new SmoothAgent({
|
|
117
|
+
token,
|
|
118
|
+
baseUrl: o.baseUrl,
|
|
119
|
+
WebSocket: WS,
|
|
120
|
+
...o.fetch ? { fetch: o.fetch } : {},
|
|
121
|
+
...o.clock ? { clock: o.clock } : {},
|
|
122
|
+
...o.env ? { env: o.env } : {},
|
|
123
|
+
strict: o.strict ?? true,
|
|
124
|
+
onDebug: (_c, e) => it.debug.push({ ...e, at: clock.now() }),
|
|
125
|
+
onViolation: (_c, v) => it.violations.push(v)
|
|
126
|
+
});
|
|
127
|
+
it.live = it.sa.chats.watch(o.chatId);
|
|
128
|
+
it.live.tap((evs) => it.applied.push(...evs.map((e) => e.seq)));
|
|
129
|
+
ifaces.push(it);
|
|
130
|
+
}
|
|
131
|
+
return new Harness(ifaces, clock);
|
|
132
|
+
}
|
|
133
|
+
export {
|
|
134
|
+
Harness,
|
|
135
|
+
createInterfaces
|
|
136
|
+
};
|
|
137
|
+
//# sourceMappingURL=testing.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/testing.ts"],
|
|
4
|
+
"sourcesContent": ["// @smoothcodes/agent-client/testing \u2014 harness de N interfaces no mesmo chat (pedido do `tests`, proposta sdk \u00A78).\n// Cada interface \u00E9 um SmoothAgent de verdade (o mesmo pacote que o app usa), com o debug, os seqs\n// aplicados e as viola\u00E7\u00F5es do modo estrito guardados. O harness compara todas e confere a ordem.\nimport type { Clock, DebugEvent, Envelope, LiveEnv, SocketLike, Violation } from '../../core-live/src/index'\nimport { SmoothAgent, type ChatLive } from './index'\n\nexport interface HarnessOptions {\n n: number\n baseUrl: string\n chatId: string\n /** Um token pra todas, ou um por interface (dispositivos diferentes do mesmo usu\u00E1rio ou usu\u00E1rios diferentes). */\n token?: string\n tokens?: string[]\n /** Padr\u00E3o: true (buraco vira viola\u00E7\u00E3o, nada \u00E9 escondido). */\n strict?: boolean\n WebSocket?: new (url: string, protocols: string[]) => SocketLike\n fetch?: typeof fetch\n clock?: Clock\n env?: LiveEnv\n}\n\nexport interface Iface {\n index: number\n sa: SmoothAgent\n live: ChatLive\n debug: Array<DebugEvent & { at: number }>\n /** Seqs aplicados, na ordem em que a tela os recebeu. */\n applied: number[]\n violations: Violation[]\n /** Sockets abertos por esta interface (pro caos). */\n sockets: Array<{ url: string; socket: SocketLike }>\n}\n\nexport interface DiffEntry {\n field: 'cursor' | 'inbox' | 'timeline' | 'history'\n ifaceA: number\n ifaceB: number\n a: unknown\n b: unknown\n}\n\nexport interface OrderProblem {\n iface: number\n kind: 'not_increasing' | 'skipped'\n prev: number\n next: number\n}\n\nexport type CompareMode = 'full' | 'core'\n\nexport class Harness {\n constructor(\n readonly ifaces: Iface[],\n private readonly clock: Clock,\n ) {}\n\n /** Diferen\u00E7as entre as interfaces (vazio = todas iguais). `core` = cursor + inbox + ids do hist\u00F3rico; `full` = + a timeline inteira. */\n diff(mode: CompareMode = 'full'): DiffEntry[] {\n const out: DiffEntry[] = []\n const [first, ...rest] = this.ifaces\n if (!first) return out\n const a = first.live.getState()\n for (const it of rest) {\n const b = it.live.getState()\n const add = (field: DiffEntry['field'], x: unknown, y: unknown) => {\n if (JSON.stringify(x) !== JSON.stringify(y)) out.push({ field, ifaceA: first.index, ifaceB: it.index, a: x, b: y })\n }\n add('cursor', a.sync.cursor, b.sync.cursor)\n add('inbox', a.inbox, b.inbox)\n add('history', a.history.items.map((i) => i.id), b.history.items.map((i) => i.id))\n if (mode === 'full') add('timeline', a.timeline, b.timeline)\n }\n return out\n }\n\n /** Espera todas convergirem (diff vazio e nenhuma sincronizando). Rejeita com o \u00FAltimo diff no prazo. */\n converged(o: { timeoutMs?: number; mode?: CompareMode; everyMs?: number } = {}): Promise<void> {\n const end = this.clock.now() + (o.timeoutMs ?? 30_000)\n return new Promise((resolve, reject) => {\n const tick = () => {\n const synced = this.ifaces.every((i) => i.live.getState().sync.status === 'live')\n const d = this.diff(o.mode)\n if (synced && d.length === 0) return resolve()\n if (this.clock.now() >= end) {\n const status = this.ifaces.map((i) => `${i.index}:${i.live.getState().sync.status}@${i.live.getState().sync.cursor}`).join(' ')\n return reject(Object.assign(new Error(`n\u00E3o convergiu (${status}): ${JSON.stringify(d).slice(0, 2000)}`), { diff: d }))\n }\n this.clock.setTimeout(tick, o.everyMs ?? 100)\n }\n tick()\n })\n }\n\n /**\n * Por interface: aplicados estritamente crescentes e sem pular \u2014 pular s\u00F3 vale onde a SDK declarou\n * (trecho compactado pelo log, ou o snapshot que reposicionou o cursor).\n */\n checkOrder(): OrderProblem[] {\n const out: OrderProblem[] = []\n for (const it of this.ifaces) {\n const allowed: Array<[number, number]> = []\n for (const d of it.debug) if (d.kind === 'compacted_skip') allowed.push([d.from, d.to])\n // snapshots: o cursor reposicionado aparece como `cursor` sem evento aplicado naquele seq\n const appliedSet = new Set(it.applied)\n for (const d of it.debug) if (d.kind === 'cursor' && !appliedSet.has(d.seq)) allowed.push([0, d.seq])\n for (let k = 1; k < it.applied.length; k++) {\n const prev = it.applied[k - 1]!\n const next = it.applied[k]!\n if (next <= prev) out.push({ iface: it.index, kind: 'not_increasing', prev, next })\n else if (next !== prev + 1) {\n const covered = (s: number) => allowed.some(([f, t]) => s >= f && s <= t)\n for (let s = prev + 1; s < next; s++) {\n if (!covered(s)) {\n out.push({ iface: it.index, kind: 'skipped', prev, next })\n break\n }\n }\n }\n }\n }\n return out\n }\n\n violations(): Array<Violation & { iface: number }> {\n return this.ifaces.flatMap((i) => i.violations.map((v) => ({ ...v, iface: i.index })))\n }\n\n /** Caos: derruba os sockets daquela interface (a SDK religa sozinha). `box` = qualquer socket que n\u00E3o \u00E9 o conector. */\n disconnect(i: number, which: 'connector' | 'box' | 'all' = 'all'): number {\n const it = this.ifaces[i]\n if (!it) throw new Error(`interface ${i} n\u00E3o existe`)\n let n = 0\n for (const s of it.sockets) {\n const isConnector = /\\/v3\\/chats\\/[^/]+\\/live$/.test(new URL(s.url).pathname)\n if (which === 'all' || (which === 'connector') === isConnector) {\n if (s.socket.readyState <= 1) {\n s.socket.close(4000, 'harness disconnect')\n n++\n }\n }\n }\n return n\n }\n\n async close(): Promise<void> {\n for (const i of this.ifaces) {\n i.live.release()\n i.sa.close()\n }\n }\n}\n\nexport function createInterfaces(o: HarnessOptions): Harness {\n const clock = o.clock ?? { now: () => Date.now(), setTimeout: (f, ms) => setTimeout(f, ms), clearTimeout: (h) => clearTimeout(h as ReturnType<typeof setTimeout>) }\n const BaseWS = o.WebSocket ?? (globalThis as { WebSocket?: new (u: string, p: string[]) => SocketLike }).WebSocket\n if (!BaseWS) throw new Error('sem WebSocket: passe `WebSocket`')\n const ifaces: Iface[] = []\n for (let index = 0; index < o.n; index++) {\n const token = o.tokens?.[index] ?? o.token\n if (!token) throw new Error(`sem token pra interface ${index}`)\n const sockets: Iface['sockets'] = []\n const WS = function (url: string, protocols: string[]) {\n const socket = new BaseWS(url, protocols)\n sockets.push({ url, socket })\n return socket\n } as unknown as new (url: string, protocols: string[]) => SocketLike\n const it = { index, debug: [], applied: [], violations: [], sockets } as unknown as Iface\n it.sa = new SmoothAgent({\n token,\n baseUrl: o.baseUrl,\n WebSocket: WS,\n ...(o.fetch ? { fetch: o.fetch } : {}),\n ...(o.clock ? { clock: o.clock } : {}),\n ...(o.env ? { env: o.env } : {}),\n strict: o.strict ?? true,\n onDebug: (_c, e) => it.debug.push({ ...e, at: clock.now() }),\n onViolation: (_c, v) => it.violations.push(v),\n })\n it.live = it.sa.chats.watch(o.chatId)\n it.live.tap((evs: Envelope[]) => it.applied.push(...evs.map((e) => e.seq)))\n ifaces.push(it)\n }\n return new Harness(ifaces, clock)\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|