vibe64 0.1.32 → 0.1.34
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/run.js +1717 -1648
- package/bin/server.js +81 -68
- package/bin/upgrade-state.js +5438 -5189
- package/dist/assets/{GithubBrowserTabs-2bEGbRAs.js → GithubBrowserTabs-DO5PHon-.js} +1 -1
- package/dist/assets/GithubMarkdown-BQ6MfCDJ.js +3 -0
- package/dist/assets/GithubMarkdown-U7-j-qNI.css +1 -0
- package/dist/assets/StudioErrorNotice-sQfmeR-z.js +1 -0
- package/dist/assets/VAlert-P256xaE0.js +1 -0
- package/dist/assets/VAutocomplete-BDb95qJX.js +1 -0
- package/dist/assets/VAvatar-9ilDR2r2.css +1 -0
- package/dist/assets/VAvatar-DPzqDH4r.js +1 -0
- package/dist/assets/VBtn-B2MBK2DL.js +1 -0
- package/dist/assets/VCard-mXy0k4aS.js +1 -0
- package/dist/assets/VCheckbox-C7A1ZW4D.js +1 -0
- package/dist/assets/VChip-CcI-Oo2J.js +1 -0
- package/dist/assets/VDialog-Bu3EfKb1.js +1 -0
- package/dist/assets/VDivider-BMEqUoAB.js +1 -0
- package/dist/assets/VExpansionPanels-Dgjrop0V.js +1 -0
- package/dist/assets/VMenu-C_x18lwb.js +1 -0
- package/dist/assets/VOverlay-CeMZurIN.js +1 -0
- package/dist/assets/VRadioGroup-CUu2-KIP.js +1 -0
- package/dist/assets/VRow-Cpw7OHQV.js +1 -0
- package/dist/assets/{VSelect-DY-ZuBJJ.js → VSelect-DL3HaA5m.js} +1 -1
- package/dist/assets/VSheet-DZWsu0kL.js +1 -0
- package/dist/assets/VSkeletonLoader-CttxM1tw.js +1 -0
- package/dist/assets/VSpacer-Dhmsvk4t.js +1 -0
- package/dist/assets/{VSwitch-Bm1bwl2V.js → VSwitch-BRHeDJkH.js} +1 -1
- package/dist/assets/VTextField-BR2eZeFT.js +1 -0
- package/dist/assets/VTextarea-DbqamXJd.js +1 -0
- package/dist/assets/Vibe64AsyncModuleState-Dx7YKRPp.js +1 -0
- package/dist/assets/Vibe64DashboardBackButton-DD9UR77P.css +1 -0
- package/dist/assets/Vibe64DashboardBackButton-yE6cyYg2.js +1 -0
- package/dist/assets/Vibe64DashboardPageHeader-BXQR00HK.js +1 -0
- package/dist/assets/Vibe64DashboardPageHeader-Gm1IvlHx.css +1 -0
- package/dist/assets/Vibe64DashboardShell-CuCVMhOc.js +1 -0
- package/dist/assets/Vibe64DashboardShell-MBkUHjs-.css +1 -0
- package/dist/assets/Vibe64DatabaseWorkspace-BONJdxBS.js +18 -0
- package/dist/assets/{Vibe64DatabaseWorkspace-C39Jvver.css → Vibe64DatabaseWorkspace-CR4pzzcf.css} +1 -1
- package/dist/assets/Vibe64OutputControls-DAAmA09l.js +8 -0
- package/dist/assets/{Vibe64OutputControls-CsZFv12r.css → Vibe64OutputControls-DPBsyDZM.css} +1 -1
- package/dist/assets/{Vibe64RepositoryWorkspace-ebUaYOU4.js → Vibe64RepositoryWorkspace-ByQlZbyO.js} +2 -2
- package/dist/assets/{Vibe64RepositoryWorkspace-Cqm6TOFk.css → Vibe64RepositoryWorkspace-CVHcT93M.css} +1 -1
- package/dist/assets/Vibe64SessionFiles-B0u9HKdF.js +107 -0
- package/dist/assets/Vibe64SessionFiles-NjOMVwPR.css +1 -0
- package/dist/assets/Vibe64TemporaryAiFixAction-BGlcrq4d.js +1 -0
- package/dist/assets/Vibe64UiStoryboardView-3WXph5bz.css +1 -0
- package/dist/assets/Vibe64UiStoryboardView-Brlwdvqi.js +7 -0
- package/dist/assets/Vibe64UnavailableSessions-zwlWlcZD.js +1 -0
- package/dist/assets/_sessionId_-CvOkQbVy.js +1 -0
- package/dist/assets/{_sessionTool_-B39BIzzZ.js → _sessionTool_-Dwod5ns9.js} +1 -1
- package/dist/assets/_slug_-B31c15cc.css +1 -0
- package/dist/assets/_slug_-Dy35qLo1.js +1 -0
- package/dist/assets/access-BVu5XYm2.js +1 -0
- package/dist/assets/app-DRXCcv05.css +1 -0
- package/dist/assets/app-zt7HwQKT.js +1 -0
- package/dist/assets/assistantRouting-CwbwfkwB.js +3 -0
- package/dist/assets/{changes-ByjS7QGx.js → changes-olY8cnFK.js} +1 -1
- package/dist/assets/{client-C-tpoG6F.js → client-BrV4QPwG.js} +1 -1
- package/dist/assets/createSimpleFunctional-CZTGuNuR.js +1 -0
- package/dist/assets/dashboard-BnXD-H4R.js +1 -0
- package/dist/assets/definitions-DaOPIkyB.js +1 -0
- package/dist/assets/env-DJhnLOH7.css +1 -0
- package/dist/assets/env-DN0vW4EI.js +1 -0
- package/dist/assets/{error-DFKtZBJ8.js → error-DgrgRbJJ.js} +1 -1
- package/dist/assets/{error-DE4zo8Lk.js → error-Dug56can.js} +1 -1
- package/dist/assets/health-7oIQODer.css +1 -0
- package/dist/assets/health-Z6m96GDr.js +1 -0
- package/dist/assets/history-BOwbCRQP.css +1 -0
- package/dist/assets/history-BxlpB-YH.js +1 -0
- package/dist/assets/incoming-BOxRVlOM.js +2 -0
- package/dist/assets/incoming-DWDrmxyH.css +1 -0
- package/dist/assets/index-BUq-MczL.js +86 -0
- package/dist/assets/{index-D4MsP3dq.css → index-DtmBqE3h.css} +1 -1
- package/dist/assets/{integrations-B4txOZfY.js → integrations-BFltGDVI.js} +1 -1
- package/dist/assets/issues-1iS5zoed.js +1 -0
- package/dist/assets/issues-XnpGgdmn.css +1 -0
- package/dist/assets/layout-BkWVNT37.js +1 -0
- package/dist/assets/lazy-NHSwD9FS.js +1 -0
- package/dist/assets/mdi-C54lQ0i_.js +1 -0
- package/dist/assets/{pages-BW2l8fNe.js → pages-DuMgH61T.js} +1 -1
- package/dist/assets/{placement-JxzrmUR3.js → placement-CwTqWLQH.js} +1 -1
- package/dist/assets/placement-DLsU3pCW.js +1 -0
- package/dist/assets/pull-requests-BJOwNL4k.js +1 -0
- package/dist/assets/pull-requests-CdbhyFOv.css +1 -0
- package/dist/assets/{repository-BTC3lkrh.js → repository-JWLVST3D.js} +1 -1
- package/dist/assets/{VAvatar-CAFvgSUo.js → ripple-BVltMmyV.js} +2 -2
- package/dist/assets/ripple-DqhAt1Ze.css +1 -0
- package/dist/assets/runtime-core.esm-bundler-DGXg_mpN.js +3 -0
- package/dist/assets/{session-CG-TUCJt.css → session-5qADMzDP.css} +1 -1
- package/dist/assets/session-C5Nj8Dlq.js +1 -0
- package/dist/assets/settings-BopLnpB0.css +1 -0
- package/dist/assets/settings-c273Ikrm.js +1 -0
- package/dist/assets/ssrBoot-Rlh6kLbD.js +1 -0
- package/dist/assets/{studioGateApi-C0GvzVlt.js → studioGateApi-DhA9IJGZ.js} +1 -1
- package/dist/assets/{studioUrls-CIab-Axb.js → studioUrls-Dj8rXeXO.js} +1 -1
- package/dist/assets/{useApi-BPuI6ZR9-Dr8wK_Co.js → useApi-BPuI6ZR9-CFWU1m37.js} +1 -1
- package/dist/assets/useArchivedVibe64Sessions-CVZx2Rtm.js +1 -0
- package/dist/assets/useCommand-DWuxfAV0.js +1 -0
- package/dist/assets/useEndpointResource-MWVNfmMa.js +1 -0
- package/dist/assets/{usePaths-DVTieF_G.js → usePaths-Db88-HOm.js} +1 -1
- package/dist/assets/{useUiFeedback-Tzi-PRlX.js → useUiFeedback-0FqKuZRP.js} +1 -1
- package/dist/assets/useVibe64ConversationLog-8cKh1eDm.js +1 -0
- package/dist/assets/useVibe64DatabaseTools-BcRG1s3i.js +1 -0
- package/dist/assets/useVibe64LearningMode-Bl0dGdCh.js +28 -0
- package/dist/assets/useVibe64LearningMode-C3PcXdVg.css +1 -0
- package/dist/assets/useVibe64ProjectScope-DOEVkBqX.js +1 -0
- package/dist/assets/useVibe64SessionData-DFTyLzci.js +1 -0
- package/dist/assets/useVibe64SessionSelection-j9lsllx4.js +1 -0
- package/dist/assets/useVibe64SystemGraph-tNkIwSBQ.js +1 -0
- package/dist/assets/{useVibe64Terminal-C2XJ9Y1K.js → useVibe64Terminal-BPnN25WH.js} +1 -1
- package/dist/assets/vibe64AssistantHost-DdE_-lZF.js +1 -0
- package/dist/assets/vibe64LessonDashboard-DlKYjisq.js +1 -0
- package/dist/assets/vibe64ProjectScope.local-DqT6e5un.js +1 -0
- package/dist/assets/vibe64RepositoryRealtime-DXk0Jai3.js +1 -0
- package/dist/assets/vibe64SessionFocus-OJ2toBd9.css +1 -0
- package/dist/assets/vibe64SessionFocus-kqPOPaOH.js +1 -0
- package/dist/assets/{vibe64SessionInfo-D8l22MFm.js → vibe64SessionInfo-BHxtTrLX.js} +1 -1
- package/dist/assets/vibe64SessionToolDefinitions-NfLd1HZI.js +1 -0
- package/dist/assets/vue-flow-core-BlVEnES8.js +26 -0
- package/dist/index.html +51 -48
- package/docs/colleague-usage/account-profile-and-appearance.md +29 -0
- package/docs/colleague-usage/ai-accounts-and-routing.md +23 -4
- package/docs/colleague-usage/ai-balance-and-allowance.md +4 -0
- package/docs/colleague-usage/architecture-explanations.md +99 -0
- package/docs/colleague-usage/auto-workflow.md +49 -11
- package/docs/colleague-usage/coding-agent-failures.md +94 -0
- package/docs/colleague-usage/coding-agent-goal-pause.md +110 -0
- package/docs/colleague-usage/coding-agent-goals.md +140 -38
- package/docs/colleague-usage/coding-agent-history.md +20 -2
- package/docs/colleague-usage/coding-agent-recovery.md +136 -0
- package/docs/colleague-usage/coding-agents.md +138 -150
- package/docs/colleague-usage/colleague-recovery.md +28 -5
- package/docs/colleague-usage/colleague-upgrade-recovery.md +4 -0
- package/docs/colleague-usage/colleague-watches.md +84 -0
- package/docs/colleague-usage/colleague.md +18 -34
- package/docs/colleague-usage/connected-contributions.md +196 -0
- package/docs/colleague-usage/connected-projects.md +196 -0
- package/docs/colleague-usage/conversation-context.md +67 -1
- package/docs/colleague-usage/dashboard-navigation.md +79 -5
- package/docs/colleague-usage/database.md +11 -0
- package/docs/colleague-usage/developing-vibe64.md +137 -0
- package/docs/colleague-usage/development-copies.md +20 -0
- package/docs/colleague-usage/development-env.md +34 -0
- package/docs/colleague-usage/file-interfaces.md +156 -0
- package/docs/colleague-usage/github-work.md +88 -1
- package/docs/colleague-usage/health-checks.md +32 -0
- package/docs/colleague-usage/incoming-changes.md +94 -0
- package/docs/colleague-usage/learning-chat-retention.md +11 -2
- package/docs/colleague-usage/learning-code-questions.md +55 -0
- package/docs/colleague-usage/learning-course-catalogue.md +118 -0
- package/docs/colleague-usage/learning-diagrams-and-voice.md +97 -0
- package/docs/colleague-usage/learning-history.md +17 -9
- package/docs/colleague-usage/learning-lesson-watch.md +95 -0
- package/docs/colleague-usage/learning-mode-ui.md +187 -85
- package/docs/colleague-usage/learning-native-session.md +12 -10
- package/docs/colleague-usage/learning-practical-exercises.md +71 -0
- package/docs/colleague-usage/learning-practical-gestures.md +18 -1
- package/docs/colleague-usage/learning-practice-projects.md +55 -4
- package/docs/colleague-usage/learning-session-creation.md +7 -7
- package/docs/colleague-usage/learning-teacher-guide.md +52 -0
- package/docs/colleague-usage/learning-with-colleague.md +59 -80
- package/docs/colleague-usage/lesson-authoring.md +12 -4
- package/docs/colleague-usage/lesson-practical-assessment.md +3 -1
- package/docs/colleague-usage/managed-app-access.md +6 -0
- package/docs/colleague-usage/message-delivery-recovery.md +56 -0
- package/docs/colleague-usage/plans.md +14 -7
- package/docs/colleague-usage/preview-browser-checks.md +61 -0
- package/docs/colleague-usage/preview-lesson-presentation.md +56 -0
- package/docs/colleague-usage/preview-starting-application.md +92 -0
- package/docs/colleague-usage/preview.md +70 -96
- package/docs/colleague-usage/project-architecture.md +229 -0
- package/docs/colleague-usage/project-language-tools.md +31 -0
- package/docs/colleague-usage/project-messages.md +106 -0
- package/docs/colleague-usage/project-settings.md +22 -0
- package/docs/colleague-usage/project-setup.md +29 -2
- package/docs/colleague-usage/session-terminal.md +42 -0
- package/docs/colleague-usage/sessions.md +122 -52
- package/docs/colleague-usage/teaching-content.md +12 -6
- package/docs/colleague-usage/temporary-chat-context.md +29 -0
- package/docs/colleague-usage/temporary-chats.md +95 -2
- package/docs/colleague-usage/voice-chat.md +10 -43
- package/docs/colleague-usage/voice-face-and-speaking-voice.md +73 -0
- package/docs/colleague-usage/workspace-preparation.md +89 -0
- package/docs/training-content.md +208 -7
- package/node_modules/@jskit-ai/assistant-core/package.json +1 -1
- package/node_modules/@jskit-ai/assistant-runtime/README.md +29 -0
- package/node_modules/@jskit-ai/assistant-runtime/package.json +1 -1
- package/node_modules/@jskit-ai/assistant-voice/package.json +1 -1
- package/node_modules/@jskit-ai/connector-google-calendar/package.json +1 -1
- package/node_modules/@jskit-ai/connectors-catalog/package.json +1 -1
- package/node_modules/@jskit-ai/connectors-core/package.json +1 -1
- package/node_modules/@jskit-ai/http-runtime/package.json +1 -1
- package/node_modules/@jskit-ai/kernel/package.json +1 -1
- package/node_modules/@jskit-ai/payments-core/package.json +1 -1
- package/node_modules/@jskit-ai/realtime/package.json +1 -1
- package/node_modules/@jskit-ai/resource-core/package.json +1 -1
- package/node_modules/@jskit-ai/resource-crud-core/package.json +1 -1
- package/node_modules/@jskit-ai/uploads-runtime/package.json +1 -1
- package/node_modules/@local/vibe64-core/package.json +1 -0
- package/node_modules/@local/vibe64-execution/src/host/execHelper.js +280 -272
- package/node_modules/@local/vibe64-genesis/README.md +15 -0
- package/node_modules/@local/vibe64-genesis/bin/vibe64-genesis-host-context +879 -1225
- package/node_modules/@local/vibe64-genesis/package.json +2 -1
- package/node_modules/@local/vibe64-genesis/src/server/index.js +496 -418
- package/node_modules/@local/vibe64-genesis/src/server/promptContext.js +165 -146
- package/node_modules/@local/vibe64-runtime/src/server/agentSessionCommandHook.js +8 -8
- package/node_modules/@local/vibe64-runtime/src/server/codexAppServerProcess.js +128 -129
- package/node_modules/@local/vibe64-system-graph/README.md +136 -6
- package/node_modules/@local/vibe64-terminals/package.json +3 -0
- package/node_modules/@local/vibe64-terminals/src/server/sessionWorkOperationCommand.js +1527 -1326
- package/node_modules/@local/vibe64-training/package.json +6 -1
- package/node_modules/@local/vibe64-voice/package.json +1 -0
- package/package.json +16 -16
- package/server.bundle.mjs +42853 -40268
- package/dist/assets/StudioErrorNotice-Ccjvcn9C.js +0 -1
- package/dist/assets/VAlert-B7ciJKQL.js +0 -1
- package/dist/assets/VAutocomplete-QjMk5d_j.js +0 -1
- package/dist/assets/VAvatar-nHaK192T.css +0 -1
- package/dist/assets/VBtn-Kl_qcBsy.js +0 -1
- package/dist/assets/VCard-nrJPeo91.js +0 -1
- package/dist/assets/VCheckbox-DTRAWOIf.js +0 -1
- package/dist/assets/VChip-Dfs5jX0f.js +0 -1
- package/dist/assets/VDialog-Dt1VjJg1.js +0 -1
- package/dist/assets/VDivider-DFsS0OTx.js +0 -1
- package/dist/assets/VExpansionPanels-CYKU0cAr.js +0 -1
- package/dist/assets/VMenu-BLxobsuU.js +0 -1
- package/dist/assets/VOverlay-BvFVZKNS.js +0 -1
- package/dist/assets/VRadioGroup-DzQzpCfg.js +0 -1
- package/dist/assets/VRow-BR2RMCM1.js +0 -1
- package/dist/assets/VSheet-BA95RNmA.js +0 -1
- package/dist/assets/VSkeletonLoader-hpJqr0HL.js +0 -1
- package/dist/assets/VSpacer-B1l1hVvU.js +0 -1
- package/dist/assets/VTextField-CA_p3N4d.js +0 -1
- package/dist/assets/VTextarea-NyCqY4h5.js +0 -1
- package/dist/assets/Vibe64AsyncModuleState-DEFlqJ97.js +0 -1
- package/dist/assets/Vibe64DashboardShell-BNv2I-P8.js +0 -1
- package/dist/assets/Vibe64DashboardShell-w20wNTGW.css +0 -1
- package/dist/assets/Vibe64DatabaseWorkspace-CuY5lN1o.js +0 -43
- package/dist/assets/Vibe64OutputControls-D2JuYlYU.js +0 -8
- package/dist/assets/Vibe64SessionFiles-C-rWehq_.js +0 -34
- package/dist/assets/Vibe64SessionFiles-Dsr6KQNP.css +0 -1
- package/dist/assets/Vibe64SubsystemsView-BvdU_o6H.css +0 -1
- package/dist/assets/Vibe64SubsystemsView-DJCjSzQM.js +0 -1
- package/dist/assets/Vibe64SystemWorldView-B91ioQaO.js +0 -4312
- package/dist/assets/Vibe64SystemWorldView-BXiQ7_Qb.css +0 -1
- package/dist/assets/Vibe64UnavailableSessions-OvnoD3ZB.js +0 -1
- package/dist/assets/_sessionId_-JTvMh54L.js +0 -1
- package/dist/assets/_slug_-DP_heCDa.js +0 -1
- package/dist/assets/_slug_-DmBZGb0q.css +0 -1
- package/dist/assets/access-C8GQIS19.js +0 -1
- package/dist/assets/app-B83lF61Y.js +0 -1
- package/dist/assets/app-ByLIQ3SB.css +0 -1
- package/dist/assets/assistantRouting-TDtryU6o.js +0 -1
- package/dist/assets/createSimpleFunctional-DPIT6zsT.js +0 -1
- package/dist/assets/dashboard-CWGFPojJ.js +0 -1
- package/dist/assets/definitions-BeLcvOW3.js +0 -1
- package/dist/assets/display-BLmcO-5p.js +0 -1
- package/dist/assets/env-7bqFyF_E.css +0 -1
- package/dist/assets/env-BVwxNL8M.js +0 -1
- package/dist/assets/health-BzNhp7r8.js +0 -1
- package/dist/assets/health-DoHTXTGx.css +0 -1
- package/dist/assets/history-BPeZGofK.js +0 -1
- package/dist/assets/history-iMQxp5AR.css +0 -1
- package/dist/assets/httpClient-BaaZuFvF.js +0 -1
- package/dist/assets/index-5sKwLHOH.js +0 -86
- package/dist/assets/issues-DCEhGlfn.css +0 -1
- package/dist/assets/issues-wby50y9b.js +0 -3
- package/dist/assets/layout-YCn17mK1.js +0 -1
- package/dist/assets/lazy-CvQfXeLg.js +0 -1
- package/dist/assets/mdi-C31_SZp-.js +0 -1
- package/dist/assets/placement-C4R2t6rl.js +0 -1
- package/dist/assets/pull-requests-BNK6mq2u.css +0 -1
- package/dist/assets/pull-requests-lNQAigaC.js +0 -1
- package/dist/assets/runtime-core.esm-bundler-DMrccYS5.js +0 -3
- package/dist/assets/session-D38nzG41.js +0 -1
- package/dist/assets/settings-CFyUJ_kR.js +0 -1
- package/dist/assets/settings-vWsAEoE9.css +0 -1
- package/dist/assets/useArchivedVibe64Sessions-C2DSq2Z4.js +0 -1
- package/dist/assets/useCommand-BzThFLYP.js +0 -1
- package/dist/assets/useEndpointResource-C2KD4Ub_.js +0 -1
- package/dist/assets/useVibe64ConversationLog-CMUlXJtU.js +0 -1
- package/dist/assets/useVibe64DatabaseTools-DBcKhm6B.js +0 -1
- package/dist/assets/useVibe64LearningMode-BPRWM5Rp.js +0 -28
- package/dist/assets/useVibe64LearningMode-PJUv0O25.css +0 -1
- package/dist/assets/useVibe64SessionData-CdtJbAIx.js +0 -1
- package/dist/assets/useVibe64SessionSelection-aR0f6xVT.js +0 -1
- package/dist/assets/useVibe64SystemGraph-DeTPBn0e.js +0 -1
- package/dist/assets/vibe64AssistantHost-Dgyz4TrT.js +0 -1
- package/dist/assets/vibe64ProjectScope.local-GOSMVDRi.js +0 -1
- package/dist/assets/vibe64RepositoryRealtime-t5Al8BlU.js +0 -1
- package/dist/assets/vibe64SessionFocus-CcN6Grgw.js +0 -1
- package/dist/assets/vibe64SessionFocus-ChabllPA.css +0 -1
- package/dist/assets/vibe64SessionToolDefinitions-BaO1DEup.js +0 -1
- /package/dist/assets/{vibe64RepositoryRealtime-D_mq1dFE.css → Vibe64TemporaryAiFixAction-D_mq1dFE.css} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __vibe64CreateRequire } from 'node:module';const require=__vibe64CreateRequire(import.meta.url);
|
|
2
|
-
var
|
|
2
|
+
var Hr=Object.create;var Et=Object.defineProperty;var zr=Object.getOwnPropertyDescriptor;var Gr=Object.getOwnPropertyNames;var qr=Object.getPrototypeOf,Fr=Object.prototype.hasOwnProperty;var $=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){
|
|
3
3
|
if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var F=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(r){throw e=0,r}};var Vr=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Gr(e))!Fr.call(t,n)&&n!==r&&Et(t,n,{get:()=>e[n],
|
|
4
|
-
enumerable:!(o=zr(e,n))||o.enumerable});return t};var oe=(t,e,r)=>(r=t!=null
|
|
4
|
+
enumerable:!(o=zr(e,n))||o.enumerable});return t};var oe=(t,e,r)=>(r=t!=null?Hr(qr(t)):{},Vr(e||!t||!t.__esModule?Et(r,"default",{value:t,enumerable:!0}):r,t));var ee=F((ss,Ct)=>{"use strict";var wt=["nodebuffer","arraybuffer","fragments"],vt=typeof Blob<"u";vt&&wt.push("blob");Ct.
|
|
5
5
|
exports={BINARY_TYPES:wt,CLOSE_TIMEOUT:3e4,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:vt,
|
|
6
6
|
kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol(
|
|
7
7
|
"websocket"),NOOP:()=>{}}});var Ee=F((is,Oe)=>{"use strict";var{EMPTY_BUFFER:Wr}=ee(),Ve=Buffer[Symbol.species];function Xr(t,e){if(t.length===0)return Wr;
|
|
@@ -10,11 +10,11 @@ return o<e?new Ve(r.buffer,r.byteOffset,o):r}function bt(t,e,r,o,n){for(let s=0;
|
|
|
10
10
|
for(let r=0;r<t.length;r++)t[r]^=e[r&3]}function Jr(t){return t.length===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,
|
|
11
11
|
t.byteOffset+t.length)}function We(t){if(We.readOnly=!0,Buffer.isBuffer(t))return t;let e;return t instanceof ArrayBuffer?
|
|
12
12
|
e=new Ve(t):ArrayBuffer.isView(t)?e=new Ve(t.buffer,t.byteOffset,t.byteLength):(e=Buffer.from(t),We.readOnly=!1),e}Oe.exports=
|
|
13
|
-
{concat:Xr,mask:bt,toArrayBuffer:Jr,toBuffer:We,unmask:Tt};if(!process.env.WS_NO_BUFFER_UTIL)try{let t
|
|
13
|
+
{concat:Xr,mask:bt,toArrayBuffer:Jr,toBuffer:We,unmask:Tt};if(!process.env.WS_NO_BUFFER_UTIL)try{let t=$("bufferutil");Oe.
|
|
14
14
|
exports.mask=function(e,r,o,n,s){s<48?bt(e,r,o,n,s):t.mask(e,r,o,n,s)},Oe.exports.unmask=function(e,r){e.length<32?Tt(e,
|
|
15
15
|
r):t.unmask(e,r)}}catch{}});var It=F((as,Ot)=>{"use strict";var At=Symbol("kDone"),Xe=Symbol("kRun"),Je=class{constructor(e){this[At]=()=>{this.pending--,
|
|
16
16
|
this[Xe]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[Xe]()}[Xe](){if(this.pending!==
|
|
17
|
-
this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[At])}}};Ot.exports=Je});var me=F((cs,Nt)=>{"use strict";var we
|
|
17
|
+
this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[At])}}};Ot.exports=Je});var me=F((cs,Nt)=>{"use strict";var we=$("zlib"),Pt=Ee(),Kr=It(),{kStatusCode:Rt}=ee(),Yr=Buffer[Symbol.species],Zr=Buffer.
|
|
18
18
|
from([0,0,255,255]),Pe=Symbol("permessage-deflate"),te=Symbol("total-length"),pe=Symbol("callback"),se=Symbol("buffers"),
|
|
19
19
|
he=Symbol("error"),Ie,Ke=class{constructor(e){if(this._options=e||{},this._threshold=this._options.threshold!==void 0?this.
|
|
20
20
|
_options.threshold:1024,this._maxPayload=this._options.maxPayload|0,this._isServer=!!this._options.isServer,this._deflate=
|
|
@@ -60,7 +60,7 @@ _context_takeover`]&&this._deflate.reset(),o(null,s)})}};Nt.exports=Ke;function
|
|
|
60
60
|
function kt(t){if(this[te]+=t.length,this[Pe]._maxPayload<1||this[te]<=this[Pe]._maxPayload){this[se].push(t);return}this[he]=
|
|
61
61
|
new RangeError("Max payload size exceeded"),this[he].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[he][Rt]=1009,this.removeListener(
|
|
62
62
|
"data",kt),this.reset()}function en(t){if(this[Pe]._inflate=null,this[he]){this[pe](this[he]);return}t[Rt]=1007,this[pe](
|
|
63
|
-
t)}});var _e=F((us,Re)=>{"use strict";var{isUtf8:
|
|
63
|
+
t)}});var _e=F((us,Re)=>{"use strict";var{isUtf8:Mt}=$("buffer"),{hasBlob:tn}=ee(),rn=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
|
64
64
|
0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
|
65
65
|
1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function nn(t){return t>=
|
|
66
66
|
1e3&&t<=1014&&t!==1004&&t!==1005&&t!==1006||t>=3e3&&t<=4999}function Ye(t){let e=t.length,r=0;for(;r<e;)if((t[r]&128)===
|
|
@@ -69,11 +69,11 @@ if(r+2>=e||(t[r+1]&192)!==128||(t[r+2]&192)!==128||t[r]===224&&(t[r+1]&224)===12
|
|
|
69
69
|
r+=3}else if((t[r]&248)===240){if(r+3>=e||(t[r+1]&192)!==128||(t[r+2]&192)!==128||(t[r+3]&192)!==128||t[r]===240&&(t[r+1]&
|
|
70
70
|
240)===128||t[r]===244&&t[r+1]>143||t[r]>244)return!1;r+=4}else return!1;return!0}function on(t){return tn&&typeof t=="o\
|
|
71
71
|
bject"&&typeof t.arrayBuffer=="function"&&typeof t.type=="string"&&typeof t.stream=="function"&&(t[Symbol.toStringTag]===
|
|
72
|
-
"Blob"||t[Symbol.toStringTag]==="File")}Re.exports={isBlob:on,isValidStatusCode:nn,isValidUTF8:Ye,tokenChars:rn};if(
|
|
73
|
-
exports.isValidUTF8=function(t){return t.length<24?Ye(t):
|
|
74
|
-
Re.exports.isValidUTF8=function(e){return e.length<32?Ye(e):t(e)}}catch{}});var rt=F((ls
|
|
72
|
+
"Blob"||t[Symbol.toStringTag]==="File")}Re.exports={isBlob:on,isValidStatusCode:nn,isValidUTF8:Ye,tokenChars:rn};if(Mt)Re.
|
|
73
|
+
exports.isValidUTF8=function(t){return t.length<24?Ye(t):Mt(t)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let t=$("utf-8-validate");
|
|
74
|
+
Re.exports.isValidUTF8=function(e){return e.length<32?Ye(e):t(e)}}catch{}});var rt=F((ls,Ht)=>{"use strict";var{Writable:sn}=$("stream"),Dt=me(),{BINARY_TYPES:an,EMPTY_BUFFER:Lt,kStatusCode:cn,kWebSocket:un}=ee(),
|
|
75
75
|
{concat:Ze,toArrayBuffer:ln,unmask:dn}=Ee(),{isValidStatusCode:fn,isValidUTF8:Ut}=_e(),ke=Buffer[Symbol.species],J=0,Bt=1,
|
|
76
|
-
|
|
76
|
+
jt=2,$t=3,Qe=4,et=5,Ne=6,tt=class extends sn{constructor(e={}){super(),this._allowSynchronousEvents=e.allowSynchronousEvents!==
|
|
77
77
|
void 0?e.allowSynchronousEvents:!0,this._binaryType=e.binaryType||an[0],this._extensions=e.extensions||{},this._isServer=
|
|
78
78
|
!!e.isServer,this._maxBufferedChunks=e.maxBufferedChunks|0,this._maxFragments=e.maxFragments|0,this._maxPayload=e.maxPayload|
|
|
79
79
|
0,this._skipUTF8Validation=!!e.skipUTF8Validation,this[un]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=
|
|
@@ -86,10 +86,10 @@ _buffers.shift();if(e<this._buffers[0].length){let o=this._buffers[0];return thi
|
|
|
86
86
|
e,o.length-e),new ke(o.buffer,o.byteOffset,e)}let r=Buffer.allocUnsafe(e);do{let o=this._buffers[0],n=r.length-e;e>=o.length?
|
|
87
87
|
r.set(this._buffers.shift(),n):(r.set(new Uint8Array(o.buffer,o.byteOffset,e),n),this._buffers[0]=new ke(o.buffer,o.byteOffset+
|
|
88
88
|
e,o.length-e)),e-=o.length}while(e>0);return r}startLoop(e){this._loop=!0;do switch(this._state){case J:this.getInfo(e);
|
|
89
|
-
break;case Bt:this.getPayloadLength16(e);break;case
|
|
89
|
+
break;case Bt:this.getPayloadLength16(e);break;case jt:this.getPayloadLength64(e);break;case $t:this.getMask();break;case Qe:
|
|
90
90
|
this.getData(e);break;case et:case Ne:this._loop=!1;return}while(this._loop);this._errored||e()}getInfo(e){if(this._bufferedBytes<
|
|
91
91
|
2){this._loop=!1;return}let r=this.consume(2);if((r[0]&48)!==0){let n=this.createError(RangeError,"RSV2 and RSV3 must be\
|
|
92
|
-
clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");e(n);return}let o=(r[0]&64)===64;if(o&&!this._extensions[
|
|
92
|
+
clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");e(n);return}let o=(r[0]&64)===64;if(o&&!this._extensions[Dt.extensionName]){
|
|
93
93
|
let n=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(n);return}if(this._fin=(r[0]&
|
|
94
94
|
128)===128,this._opcode=r[0]&15,this._payloadLength=r[1]&127,this._opcode===0){if(o){let n=this.createError(RangeError,"\
|
|
95
95
|
RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(n);return}if(!this._fragmented){let n=this.createError(RangeError,
|
|
@@ -103,20 +103,20 @@ LOAD_LENGTH");e(n);return}}else{let n=this.createError(RangeError,`invalid opcod
|
|
|
103
103
|
ID_OPCODE");e(n);return}if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(r[1]&128)===128,
|
|
104
104
|
this._isServer){if(!this._masked){let n=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");e(
|
|
105
105
|
n);return}}else if(this._masked){let n=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");
|
|
106
|
-
e(n);return}this._payloadLength===126?this._state=Bt:this._payloadLength===127?this._state=
|
|
106
|
+
e(n);return}this._payloadLength===126?this._state=Bt:this._payloadLength===127?this._state=jt:this.haveLength(e)}getPayloadLength16(e){
|
|
107
107
|
if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(e)}getPayloadLength64(e){
|
|
108
108
|
if(this._bufferedBytes<8){this._loop=!1;return}let r=this.consume(8),o=r.readUInt32BE(0);if(o>Math.pow(2,21)-1){let n=this.
|
|
109
109
|
createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD\
|
|
110
110
|
_LENGTH");e(n);return}this._payloadLength=o*Math.pow(2,32)+r.readUInt32BE(4),this.haveLength(e)}haveLength(e){if(this._payloadLength&&
|
|
111
111
|
this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>
|
|
112
112
|
0)){let r=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");e(r);return}
|
|
113
|
-
this._masked?this._state
|
|
113
|
+
this._masked?this._state=$t:this._state=Qe}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(
|
|
114
114
|
4),this._state=Qe}getData(e){let r=Lt;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;
|
|
115
115
|
return}r=this.consume(this._payloadLength),this._masked&&(this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3])!==0&&
|
|
116
116
|
dn(r,this._mask)}if(this._opcode>7){this.controlMessage(r,e);return}if(this._maxFragments>0&&++this._numFragments>this._maxFragments){
|
|
117
117
|
let o=this.createError(RangeError,"Too many message fragments",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS");e(o);return}if(this.
|
|
118
118
|
_compressed){this._state=et,this.decompress(r,e);return}r.length&&(this._messageLength=this._totalPayloadLength,this._fragments.
|
|
119
|
-
push(r)),this.dataMessage(e)}decompress(e,r){this._extensions[
|
|
119
|
+
push(r)),this.dataMessage(e)}decompress(e,r){this._extensions[Dt.extensionName].decompress(e,this._fin,(n,s)=>{if(n)return r(
|
|
120
120
|
n);if(s.length){if(this._messageLength+=s.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let i=this.createError(
|
|
121
121
|
RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");r(i);return}this._fragments.push(s)}
|
|
122
122
|
this.dataMessage(r),this._state===J&&this.startLoop(r)})}dataMessage(e){if(!this._fin){this._state=J;return}let r=this._messageLength,
|
|
@@ -133,12 +133,12 @@ _skipUTF8Validation&&!Ut(n)){let s=this.createError(Error,"invalid UTF-8 sequenc
|
|
|
133
133
|
this._loop=!1,this.emit("conclude",o,n),this.end()}this._state=J;return}this._allowSynchronousEvents?(this.emit(this._opcode===
|
|
134
134
|
9?"ping":"pong",e),this._state=J):(this._state=Ne,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",e),this._state=
|
|
135
135
|
J,this.startLoop(r)}))}createError(e,r,o,n,s){this._loop=!1,this._errored=!0;let i=new e(o?`Invalid WebSocket frame: ${r}`:
|
|
136
|
-
r);return Error.captureStackTrace(i,this.createError),i.code=s,i[cn]=n,i}}
|
|
136
|
+
r);return Error.captureStackTrace(i,this.createError),i.code=s,i[cn]=n,i}};Ht.exports=tt});var st=F((fs,qt)=>{"use strict";var{Duplex:ds}=$("stream"),{randomFillSync:pn}=$("crypto"),{types:{isUint8Array:hn}}=$("util"),
|
|
137
137
|
zt=me(),{EMPTY_BUFFER:mn,kWebSocket:_n,NOOP:yn}=ee(),{isBlob:ye,isValidStatusCode:gn}=_e(),{mask:Gt,toBuffer:ae}=Ee(),K=Symbol(
|
|
138
|
-
"kByteLength"),xn=Buffer.alloc(4),
|
|
138
|
+
"kByteLength"),xn=Buffer.alloc(4),Me=8*1024,ce,ge=Me,Y=0,Sn=1,En=2,nt=class t{constructor(e,r,o){this._extensions=r||{},
|
|
139
139
|
o&&(this._generateMask=o,this._maskBuffer=Buffer.alloc(4)),this._socket=e,this._firstFragment=!0,this._compress=!1,this.
|
|
140
140
|
_bufferedBytes=0,this._queue=[],this._state=Y,this.onerror=yn,this[_n]=void 0}static frame(e,r){let o,n=!1,s=2,i=!1;r.mask&&
|
|
141
|
-
(o=r.maskBuffer||xn,r.generateMask?r.generateMask(o):(ge===
|
|
141
|
+
(o=r.maskBuffer||xn,r.generateMask?r.generateMask(o):(ge===Me&&(ce===void 0&&(ce=Buffer.alloc(Me)),pn(ce,0,Me),ge=0),o[0]=
|
|
142
142
|
ce[ge++],o[1]=ce[ge++],o[2]=ce[ge++],o[3]=ce[ge++]),i=(o[0]|o[1]|o[2]|o[3])===0,s=6);let c;typeof e=="string"?(!r.mask||
|
|
143
143
|
i)&&r[K]!==void 0?c=r[K]:(e=Buffer.from(e),c=e.length):(c=e.length,n=r.mask&&r.readOnly&&!i);let u=c;c>=65536?(s+=8,u=127):
|
|
144
144
|
c>125&&(s+=2,u=126);let a=Buffer.allocUnsafe(n?c+s:s);return a[0]=r.fin?r.opcode|128:r.opcode,r.rsv1&&(a[0]|=64),a[1]=u,
|
|
@@ -186,12 +186,12 @@ r.message===void 0?"":r.message}get error(){return this[Wt]}get message(){return
|
|
|
186
186
|
"error",{enumerable:!0});Object.defineProperty(Se.prototype,"message",{enumerable:!0});var Ce=class extends re{constructor(e,r={}){
|
|
187
187
|
super(e),this[Vt]=r.data===void 0?null:r.data}get data(){return this[Vt]}};Object.defineProperty(Ce.prototype,"data",{enumerable:!0});
|
|
188
188
|
var vn={addEventListener(t,e,r={}){for(let n of this.listeners(t))if(!r[ve]&&n[it]===e&&!n[ve])return;let o;if(t==="mess\
|
|
189
|
-
age")o=function(s,i){let c=new Ce("message",{data:i?s:s.toString()});c[xe]=this,
|
|
190
|
-
let c=new ue("close",{code:s,reason:i.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});c[xe]=this,
|
|
191
|
-
e,this,c)};else if(t==="error")o=function(s){let i=new Se("error",{error:s,message:s.message});i[xe]=this,
|
|
192
|
-
"open")o=function(){let s=new re("open");s[xe]=this,
|
|
189
|
+
age")o=function(s,i){let c=new Ce("message",{data:i?s:s.toString()});c[xe]=this,De(e,this,c)};else if(t==="close")o=function(s,i){
|
|
190
|
+
let c=new ue("close",{code:s,reason:i.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});c[xe]=this,De(
|
|
191
|
+
e,this,c)};else if(t==="error")o=function(s){let i=new Se("error",{error:s,message:s.message});i[xe]=this,De(e,this,i)};else if(t===
|
|
192
|
+
"open")o=function(){let s=new re("open");s[xe]=this,De(e,this,s)};else return;o[ve]=!!r[ve],o[it]=e,r.once?this.once(t,o):
|
|
193
193
|
this.on(t,o)},removeEventListener(t,e){for(let r of this.listeners(t))if(r[it]===e&&!r[ve]){this.removeListener(t,r);break}}};
|
|
194
|
-
Zt.exports={CloseEvent:ue,ErrorEvent:Se,Event:re,EventTarget:vn,MessageEvent:Ce};function
|
|
194
|
+
Zt.exports={CloseEvent:ue,ErrorEvent:Se,Event:re,EventTarget:vn,MessageEvent:Ce};function De(t,e,r){typeof t=="object"&&
|
|
195
195
|
t.handleEvent?t.handleEvent.call(t,r):t.call(e,r)}});var Le=F((hs,er)=>{"use strict";var{tokenChars:be}=_e();function Q(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}function Cn(t){
|
|
196
196
|
let e=Object.create(null),r=Object.create(null),o=!1,n=!1,s=!1,i,c,u=-1,a=-1,m=-1,d=0;for(;d<t.length;d++)if(a=t.charCodeAt(
|
|
197
197
|
d),i===void 0)if(m===-1&&be[a]===1)u===-1&&(u=d);else if(d!==0&&(a===32||a===9))m===-1&&u!==-1&&(m=d);else if(a===59||a===
|
|
@@ -209,10 +209,10 @@ u=m=-1}else throw new SyntaxError(`Unexpected character at index ${d}`);if(u===-
|
|
|
209
209
|
"Unexpected end of input");m===-1&&(m=d);let f=t.slice(u,m);return i===void 0?Q(e,f,r):(c===void 0?Q(r,f,!0):o?Q(r,c,f.replace(
|
|
210
210
|
/\\/g,"")):Q(r,c,f),Q(e,i,r)),e}function bn(t){return Object.keys(t).map(e=>{let r=t[e];return Array.isArray(r)||(r=[r]),
|
|
211
211
|
r.map(o=>[e].concat(Object.keys(o).map(n=>{let s=o[n];return Array.isArray(s)||(s=[s]),s.map(i=>i===!0?n:`${n}=${i}`).join(
|
|
212
|
-
"; ")})).join("; ")).join(", ")}).join(", ")}er.exports={format:bn,parse:Cn}});var
|
|
213
|
-
{Duplex:ms,Readable:_s}
|
|
214
|
-
EMPTY_BUFFER:Ue,GUID:Ln,kForOnEventAttribute:ct,kListener:Un,kStatusCode:Bn,kWebSocket:G,NOOP:or}=ee(),{EventTarget:{addEventListener:
|
|
215
|
-
removeEventListener
|
|
212
|
+
"; ")})).join("; ")).join(", ")}).join(", ")}er.exports={format:bn,parse:Cn}});var $e=F((ys,fr)=>{"use strict";var Tn=$("events"),An=$("https"),On=$("http"),nr=$("net"),In=$("tls"),{randomBytes:Pn,createHash:Rn}=$("crypto"),
|
|
213
|
+
{Duplex:ms,Readable:_s}=$("stream"),{URL:at}=$("url"),ie=me(),kn=rt(),Nn=st(),{isBlob:Mn}=_e(),{BINARY_TYPES:tr,CLOSE_TIMEOUT:Dn,
|
|
214
|
+
EMPTY_BUFFER:Ue,GUID:Ln,kForOnEventAttribute:ct,kListener:Un,kStatusCode:Bn,kWebSocket:G,NOOP:or}=ee(),{EventTarget:{addEventListener:jn,
|
|
215
|
+
removeEventListener:$n}}=Qt(),{format:Hn,parse:zn}=Le(),{toBuffer:Gn}=Ee(),sr=Symbol("kAborted"),ut=[8,13],ne=["CONNECTI\
|
|
216
216
|
NG","OPEN","CLOSING","CLOSED"],qn=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,U=class t extends Tn{constructor(e,r,o){super(),this.
|
|
217
217
|
_binaryType=tr[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=Ue,this._closeTimer=
|
|
218
218
|
null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=t.CONNECTING,this._receiver=
|
|
@@ -227,7 +227,7 @@ return this._protocol}get readyState(){return this._readyState}get url(){return
|
|
|
227
227
|
maxBufferedChunks:o.maxBufferedChunks,maxFragments:o.maxFragments,maxPayload:o.maxPayload,skipUTF8Validation:o.skipUTF8Validation}),
|
|
228
228
|
s=new Nn(e,this._extensions,o.generateMask);this._receiver=n,this._sender=s,this._socket=e,n[G]=this,s[G]=this,e[G]=this,
|
|
229
229
|
n.on("conclude",Wn),n.on("drain",Xn),n.on("error",Jn),n.on("message",Kn),n.on("ping",Yn),n.on("pong",Zn),s.onerror=Qn,e.
|
|
230
|
-
setTimeout&&e.setTimeout(0),e.setNoDelay&&e.setNoDelay(),r.length>0&&e.unshift(r),e.on("close",ur),e.on("data",
|
|
230
|
+
setTimeout&&e.setTimeout(0),e.setNoDelay&&e.setNoDelay(),r.length>0&&e.unshift(r),e.on("close",ur),e.on("data",je),e.on(
|
|
231
231
|
"end",lr),e.on("error",dr),this._readyState=t.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=t.CLOSED,
|
|
232
232
|
this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[ie.extensionName]&&this._extensions[ie.extensionName].
|
|
233
233
|
cleanup(),this._receiver.removeAllListeners(),this._readyState=t.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,r){
|
|
@@ -257,8 +257,8 @@ indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","prot
|
|
|
257
257
|
defineProperty(U.prototype,t,{enumerable:!0})});["open","error","close","message"].forEach(t=>{Object.defineProperty(U.prototype,
|
|
258
258
|
`on${t}`,{enumerable:!0,get(){for(let e of this.listeners(t))if(e[ct])return e[Un];return null},set(e){for(let r of this.
|
|
259
259
|
listeners(t))if(r[ct]){this.removeListener(t,r);break}typeof e=="function"&&this.addEventListener(t,e,{[ct]:!0})}})});U.
|
|
260
|
-
prototype.addEventListener=
|
|
261
|
-
autoPong:!0,closeTimeout:
|
|
260
|
+
prototype.addEventListener=jn;U.prototype.removeEventListener=$n;fr.exports=U;function ir(t,e,r,o){let n={allowSynchronousEvents:!0,
|
|
261
|
+
autoPong:!0,closeTimeout:Dn,protocolVersion:ut[1],maxBufferedChunks:262144,maxFragments:16384,maxPayload:104857600,skipUTF8Validation:!1,
|
|
262
262
|
perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...o,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,
|
|
263
263
|
method:"GET",host:void 0,path:void 0,port:void 0};if(t._autoPong=n.autoPong,t._closeTimeout=n.closeTimeout,!ut.includes(
|
|
264
264
|
n.protocolVersion))throw new RangeError(`Unsupported protocol version: ${n.protocolVersion} (supported versions: ${ut.join(
|
|
@@ -270,7 +270,7 @@ u);if(t._redirects===0)throw x;Be(t,x);return}let a=i?443:80,m=Pn(16).toString("
|
|
|
270
270
|
C;if(n.createConnection=n.createConnection||(i?Vn:Fn),n.defaultPort=n.defaultPort||a,n.port=s.port||a,n.host=s.hostname.
|
|
271
271
|
startsWith("[")?s.hostname.slice(1,-1):s.hostname,n.headers={...n.headers,"Sec-WebSocket-Version":n.protocolVersion,"Sec\
|
|
272
272
|
-WebSocket-Key":m,Connection:"Upgrade",Upgrade:"websocket"},n.path=s.pathname+s.search,n.timeout=n.handshakeTimeout,n.perMessageDeflate&&
|
|
273
|
-
(C=new ie({...n.perMessageDeflate,isServer:!1,maxPayload:n.maxPayload}),n.headers["Sec-WebSocket-Extensions"]
|
|
273
|
+
(C=new ie({...n.perMessageDeflate,isServer:!1,maxPayload:n.maxPayload}),n.headers["Sec-WebSocket-Extensions"]=Hn({[ie.extensionName]:C.
|
|
274
274
|
offer()})),r.length){for(let x of r){if(typeof x!="string"||!qn.test(x)||f.has(x))throw new SyntaxError("An invalid or d\
|
|
275
275
|
uplicated subprotocol was specified");f.add(x)}n.headers["Sec-WebSocket-Protocol"]=r.join(",")}if(n.origin&&(n.protocolVersion<
|
|
276
276
|
13?n.headers["Sec-WebSocket-Origin"]=n.origin:n.headers.Origin=n.origin),(s.username||s.password)&&(n.auth=`${s.username}\
|
|
@@ -283,15 +283,15 @@ n.auth&&!o.headers.authorization&&(o.headers.authorization="Basic "+Buffer.from(
|
|
|
283
283
|
t._redirects&&t.emit("redirect",t.url,E)}else E=t._req=d(n);n.timeout&&E.on("timeout",()=>{V(t,E,"Opening handshake has \
|
|
284
284
|
timed out")}),E.on("error",x=>{E===null||E[sr]||(E=t._req=null,Be(t,x))}),E.on("response",x=>{let v=x.headers.location,I=x.
|
|
285
285
|
statusCode;if(v&&n.followRedirects&&I>=300&&I<400){if(++t._redirects>n.maxRedirects){V(t,E,"Maximum redirects exceeded");
|
|
286
|
-
return}E.abort();let
|
|
286
|
+
return}E.abort();let j;try{j=new at(v,e)}catch{let T=new SyntaxError(`Invalid URL: ${v}`);Be(t,T);return}ir(t,j,r,o)}else
|
|
287
287
|
t.emit("unexpected-response",E,x)||V(t,E,`Unexpected server response: ${x.statusCode}`)}),E.on("upgrade",(x,v,I)=>{if(t.
|
|
288
|
-
emit("upgrade",x),t.readyState!==U.CONNECTING)return;E=t._req=null;let
|
|
288
|
+
emit("upgrade",x),t.readyState!==U.CONNECTING)return;E=t._req=null;let j=x.headers.upgrade;if(j===void 0||j.toLowerCase()!==
|
|
289
289
|
"websocket"){V(t,v,"Invalid Upgrade header");return}let b=Rn("sha1").update(m+Ln).digest("base64");if(x.headers["sec-web\
|
|
290
290
|
socket-accept"]!==b){V(t,v,"Invalid Sec-WebSocket-Accept header");return}let T=x.headers["sec-websocket-protocol"],k;if(T!==
|
|
291
291
|
void 0?f.size?f.has(T)||(k="Server sent an invalid subprotocol"):k="Server sent a subprotocol but none was requested":f.
|
|
292
292
|
size&&(k="Server sent no subprotocol"),k){V(t,v,k);return}T&&(t._protocol=T);let N=x.headers["sec-websocket-extensions"];
|
|
293
293
|
if(N!==void 0){if(!C){V(t,v,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let A;
|
|
294
|
-
try{A=zn(N)}catch{V(t,v,"Invalid Sec-WebSocket-Extensions header");return}let
|
|
294
|
+
try{A=zn(N)}catch{V(t,v,"Invalid Sec-WebSocket-Extensions header");return}let D=Object.keys(A);if(D.length!==1||D[0]!==ie.
|
|
295
295
|
extensionName){V(t,v,"Server indicated an extension that was not requested");return}try{C.accept(A[ie.extensionName])}catch{
|
|
296
296
|
V(t,v,"Invalid Sec-WebSocket-Extensions header");return}t._extensions[ie.extensionName]=C}t.setSocket(v,I,{allowSynchronousEvents:n.
|
|
297
297
|
allowSynchronousEvents,generateMask:n.generateMask,maxBufferedChunks:n.maxBufferedChunks,maxFragments:n.maxFragments,maxPayload:n.
|
|
@@ -300,23 +300,23 @@ U.CLOSING,t._errorEmitted=!0,t.emit("error",e),t.emitClose()}function Fn(t){retu
|
|
|
300
300
|
return t.path=void 0,!t.servername&&t.servername!==""&&(t.servername=nr.isIP(t.host)?"":t.host),In.connect(t)}function V(t,e,r){
|
|
301
301
|
t._readyState=U.CLOSING;let o=new Error(r);Error.captureStackTrace(o,V),e.setHeader?(e[sr]=!0,e.abort(),e.socket&&!e.socket.
|
|
302
302
|
destroyed&&e.socket.destroy(),process.nextTick(Be,t,o)):(e.destroy(o),e.once("error",t.emit.bind(t,"error")),e.once("clo\
|
|
303
|
-
se",t.emitClose.bind(t)))}function lt(t,e,r){if(e){let o=
|
|
303
|
+
se",t.emitClose.bind(t)))}function lt(t,e,r){if(e){let o=Mn(e)?e.size:Gn(e).length;t._socket?t._sender._bufferedBytes+=o:
|
|
304
304
|
t._bufferedAmount+=o}if(r){let o=new Error(`WebSocket is not open: readyState ${t.readyState} (${ne[t.readyState]})`);process.
|
|
305
305
|
nextTick(r,o)}}function Wn(t,e){let r=this[G];r._closeFrameReceived=!0,r._closeMessage=e,r._closeCode=t,r._socket[G]!==void 0&&
|
|
306
|
-
(r._socket.removeListener("data",
|
|
307
|
-
t.isPaused||t._socket.resume()}function Jn(t){let e=this[G];e._socket[G]!==void 0&&(e._socket.removeListener("data",
|
|
306
|
+
(r._socket.removeListener("data",je),process.nextTick(ar,r._socket),t===1005?r.close():r.close(t,e))}function Xn(){let t=this[G];
|
|
307
|
+
t.isPaused||t._socket.resume()}function Jn(t){let e=this[G];e._socket[G]!==void 0&&(e._socket.removeListener("data",je),
|
|
308
308
|
process.nextTick(ar,e._socket),e.close(t[Bn])),e._errorEmitted||(e._errorEmitted=!0,e.emit("error",t))}function rr(){this[G].
|
|
309
309
|
emitClose()}function Kn(t,e){this[G].emit("message",t,e)}function Yn(t){let e=this[G];e._autoPong&&e.pong(t,!this._isServer,
|
|
310
310
|
or),e.emit("ping",t)}function Zn(t){this[G].emit("pong",t)}function ar(t){t.resume()}function Qn(t){let e=this[G];e.readyState!==
|
|
311
311
|
U.CLOSED&&(e.readyState===U.OPEN&&(e._readyState=U.CLOSING,cr(e)),this._socket.end(),e._errorEmitted||(e._errorEmitted=!0,
|
|
312
312
|
e.emit("error",t)))}function cr(t){t._closeTimer=setTimeout(t._socket.destroy.bind(t._socket),t._closeTimeout)}function ur(){
|
|
313
|
-
let t=this[G];if(this.removeListener("close",ur),this.removeListener("data",
|
|
313
|
+
let t=this[G];if(this.removeListener("close",ur),this.removeListener("data",je),this.removeListener("end",lr),t._readyState=
|
|
314
314
|
U.CLOSING,!this._readableState.endEmitted&&!t._closeFrameReceived&&!t._receiver._writableState.errorEmitted&&this._readableState.
|
|
315
315
|
length!==0){let e=this.read(this._readableState.length);t._receiver.write(e)}t._receiver.end(),this[G]=void 0,clearTimeout(
|
|
316
316
|
t._closeTimer),t._receiver._writableState.finished||t._receiver._writableState.errorEmitted?t.emitClose():(t._receiver.on(
|
|
317
|
-
"error",rr),t._receiver.on("finish",rr))}function
|
|
317
|
+
"error",rr),t._receiver.on("finish",rr))}function je(t){this[G]._receiver.write(t)||this.pause()}function lr(){let t=this[G];
|
|
318
318
|
t._readyState=U.CLOSING,t._receiver.end(),this.end()}function dr(){let t=this[G];this.removeListener("error",dr),this.on(
|
|
319
|
-
"error",or),t&&(t._readyState=U.CLOSING,this.destroy())}});var _r=F((xs,mr)=>{"use strict";var gs
|
|
319
|
+
"error",or),t&&(t._readyState=U.CLOSING,this.destroy())}});var _r=F((xs,mr)=>{"use strict";var gs=$e(),{Duplex:eo}=$("stream");function pr(t){t.emit("close")}function to(){!this.destroyed&&
|
|
320
320
|
this._writableState.finished&&this.destroy()}function hr(t){this.removeListener("error",hr),this.destroy(),this.listenerCount(
|
|
321
321
|
"error")===0&&this.emit("error",t)}function ro(t,e){let r=!0,o=new eo({...e,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});
|
|
322
322
|
return t.on("message",function(s,i){let c=!i&&o._readableState.objectMode?s.toString():s;o.push(c)||t.pause()}),t.once("\
|
|
@@ -331,13 +331,13 @@ let i=t.charCodeAt(n);if(o===-1&&no[i]===1)r===-1&&(r=n);else if(n!==0&&(i===32|
|
|
|
331
331
|
44){if(r===-1)throw new SyntaxError(`Unexpected character at index ${n}`);o===-1&&(o=n);let c=t.slice(r,o);if(e.has(c))throw new SyntaxError(
|
|
332
332
|
`The "${c}" subprotocol is duplicated`);e.add(c),r=o=-1}else throw new SyntaxError(`Unexpected character at index ${n}`)}
|
|
333
333
|
if(r===-1||o!==-1)throw new SyntaxError("Unexpected end of input");let s=t.slice(r,n);if(e.has(s))throw new SyntaxError(
|
|
334
|
-
`The "${s}" subprotocol is duplicated`);return e.add(s),e}yr.exports={parse:oo}});var Cr=F((ws,vr)=>{"use strict";var so
|
|
335
|
-
le=me(),ao=dt(),co
|
|
334
|
+
`The "${s}" subprotocol is duplicated`);return e.add(s),e}yr.exports={parse:oo}});var Cr=F((ws,vr)=>{"use strict";var so=$("events"),He=$("http"),{Duplex:Es}=$("stream"),{createHash:io}=$("crypto"),gr=Le(),
|
|
335
|
+
le=me(),ao=dt(),co=$e(),{CLOSE_TIMEOUT:uo,GUID:lo,kWebSocket:fo}=ee(),po=/^[+/0-9A-Za-z]{22}==$/,xr=0,Sr=1,wr=2,ft=class extends so{constructor(e,r){
|
|
336
336
|
if(super(),e={allowSynchronousEvents:!0,autoPong:!0,maxBufferedChunks:256*1024,maxFragments:16*1024,maxPayload:100*1024*
|
|
337
337
|
1024,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,closeTimeout:uo,verifyClient:null,
|
|
338
338
|
noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:co,...e},e.port==null&&!e.server&&!e.noServer||
|
|
339
339
|
e.port!=null&&(e.server||e.noServer)||e.server&&e.noServer)throw new TypeError('One and only one of the "port", "server"\
|
|
340
|
-
, or "noServer" options must be specified');if(e.port!=null?(this._server
|
|
340
|
+
, or "noServer" options must be specified');if(e.port!=null?(this._server=He.createServer((o,n)=>{let s=He.STATUS_CODES[426];
|
|
341
341
|
n.writeHead(426,{"Content-Length":s.length,"Content-Type":"text/plain"}),n.end(s)}),this._server.listen(e.port,e.host,e.
|
|
342
342
|
backlog,r)):e.server&&(this._server=e.server),this._server){let o=this.emit.bind(this,"connection");this._removeListeners=
|
|
343
343
|
ho(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(n,s,i)=>{this.handleUpgrade(
|
|
@@ -374,68 +374,68 @@ options.maxBufferedChunks,maxFragments:this.options.maxFragments,maxPayload:this
|
|
|
374
374
|
options.skipUTF8Validation}),this.clients&&(this.clients.add(m),m.on("close",()=>{this.clients.delete(m),this._shouldEmitClose&&
|
|
375
375
|
!this.clients.size&&process.nextTick(Te,this)})),c(m,n)}};vr.exports=ft;function ho(t,e){for(let r of Object.keys(e))t.on(
|
|
376
376
|
r,e[r]);return function(){for(let o of Object.keys(e))t.removeListener(o,e[o])}}function Te(t){t._state=wr,t.emit("close")}
|
|
377
|
-
function Er(){this.destroy()}function Ae(t,e,r,o){r=r
|
|
378
|
-
l","Content-Length":Buffer.byteLength(r),...o},t.once("finish",t.destroy),t.end(`HTTP/1.1 ${e} ${
|
|
377
|
+
function Er(){this.destroy()}function Ae(t,e,r,o){r=r||He.STATUS_CODES[e],o={Connection:"close","Content-Type":"text/htm\
|
|
378
|
+
l","Content-Length":Buffer.byteLength(r),...o},t.once("finish",t.destroy),t.end(`HTTP/1.1 ${e} ${He.STATUS_CODES[e]}\r
|
|
379
379
|
`+Object.keys(o).map(n=>`${n}: ${o[n]}`).join(`\r
|
|
380
380
|
`)+`\r
|
|
381
381
|
\r
|
|
382
382
|
`+r)}function de(t,e,r,o,n,s){if(t.listenerCount("wsClientError")){let i=new Error(n);Error.captureStackTrace(i,de),t.emit(
|
|
383
|
-
"wsClientError",i,r,e)}else Ae(r,o,n,s)}});var mo=oe(_r(),1),_o=oe(Le(),1),yo=oe(me(),1),go=oe(rt(),1),xo=oe(st(),1),So=oe(dt(),1),Eo=oe(
|
|
384
|
-
stat as
|
|
383
|
+
"wsClientError",i,r,e)}else Ae(r,o,n,s)}});var mo=oe(_r(),1),_o=oe(Le(),1),yo=oe(me(),1),go=oe(rt(),1),xo=oe(st(),1),So=oe(dt(),1),Eo=oe($e(),1),wo=oe(Cr(),1);import{spawn as qo}from"node:child_process";import{chmod as ui,mkdir as li,readFile as di,readdir as fi,rename as Fo,rm as Vo,
|
|
384
|
+
stat as pi,writeFile as Wo}from"node:fs/promises";import Xo from"node:os";import Br from"node:path";function L(t){return String(t??"").trim()}function ze(t){return!!(t&&typeof t=="object"&&!Array.isArray(t))}import{mkdtemp as Is,open as Ps,readFile as pt,readdir as Co,rm as Rs}from"node:fs/promises";import{setTimeout as br}from"node:timers/promises";function Tr({runtimeTokenEnvironmentName:t="JSKIT_EXECUTION_RUNTIME_TOKEN",commandHashEnvironmentName:e="JSKIT_EXECUTION\
|
|
385
385
|
_COMMAND_HASH",label:r="Native",unavailableCode:o="native_process_identity_unavailable"}={}){let c="linux-proc",u=Object.
|
|
386
386
|
freeze({RUNNING:"running",STOPPED:"stopped"}),a=Object.freeze({ABSENT:"absent",AMBIGUOUS:"ambiguous",EXACT:"exact",INVALID:"\
|
|
387
387
|
invalid",MISMATCH:"mismatch"});function m(g,_){let S=Number(g);return Number.isSafeInteger(S)&&S>0?S:_}function d(g={}){
|
|
388
388
|
return!!(Number.isSafeInteger(Number(g.pid))&&Number(g.pid)>0&&I(g.processIdentity)&&[u.RUNNING,u.STOPPED].includes(g.processState))}
|
|
389
389
|
function f(g){let _=Number(g);if(!Number.isSafeInteger(_)||_<=0)return!1;try{return process.kill(_,0),!0}catch{return!1}}
|
|
390
390
|
function C(g){let _=Number(g);if(!Number.isSafeInteger(_)||_<=0)return!1;if(process.platform==="win32")return f(_);try{return process.
|
|
391
|
-
kill(-_,0),!0}catch{return!1}}function E(g,_){let S=Number(g),
|
|
392
|
-
|
|
393
|
-
""),S=_.lastIndexOf(")");if(S<0)return null;let
|
|
394
|
-
|
|
391
|
+
kill(-_,0),!0}catch{return!1}}function E(g,_){let S=Number(g),M=process.platform==="win32"?S:-S;try{return process.kill(
|
|
392
|
+
M,_),!0}catch(P){if(!["ESRCH","EPERM"].includes(String(P?.code||"")))throw P;return!1}}function x(g=""){let _=String(g||
|
|
393
|
+
""),S=_.lastIndexOf(")");if(S<0)return null;let M=_.slice(S+1).trim().split(/\s+/u),P=String(M[0]||""),R=Number(M[1]),l=Number(
|
|
394
|
+
M[2]),p=String(M[19]||"");return!/^[A-Z]$/u.test(P)||!Number.isSafeInteger(R)||R<0||!Number.isSafeInteger(l)||l<=0||!/^\d+$/u.
|
|
395
395
|
test(p)?null:{parentPid:R,processGroupId:l,startTimeTicks:p,state:P}}function v(g={}){let _=ze(g)?g:{};return{commandHash:L(
|
|
396
396
|
_.commandHash),platform:L(_.platform),runtimeToken:L(_.runtimeToken),startTimeTicks:L(_.startTimeTicks),version:Number(_.
|
|
397
397
|
version||0)}}function I(g={}){let _=v(g);return!!(_.version===1&&_.platform===c&&/^[a-f0-9]{12}$/u.test(_.commandHash)&&
|
|
398
398
|
/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/iu.test(_.runtimeToken)&&/^\d+$/u.test(_.startTimeTicks))}
|
|
399
|
-
function
|
|
399
|
+
function j(g=Buffer.alloc(0),_=""){let S=`${_}=`;for(let M of g.toString("utf8").split("\0"))if(M.startsWith(S))return M.
|
|
400
400
|
slice(S.length);return""}async function b(){let g=[],_=await Co("/proc",{withFileTypes:!0}).catch(()=>[]);for(let S of _){
|
|
401
|
-
if(!S.isDirectory()||!/^\d+$/u.test(S.name))continue;let
|
|
401
|
+
if(!S.isDirectory()||!/^\d+$/u.test(S.name))continue;let M=Number(S.name),P=await pt(`/proc/${S.name}/stat`,"utf8").catch(
|
|
402
402
|
()=>""),R=x(P);if(!R||R.state==="Z")continue;let l=null,p=!0;try{l=await pt(`/proc/${S.name}/environ`)}catch(y){if(String(
|
|
403
|
-
y?.code||"")==="ENOENT")continue;p=!1}g.push({...R,environment:l,environmentReadable:p,pid:
|
|
403
|
+
y?.code||"")==="ENOENT")continue;p=!1}g.push({...R,environment:l,environmentReadable:p,pid:M})}return g}function T(g={}){
|
|
404
404
|
let _=Object.values(a).includes(g?.status)?g.status:a.AMBIGUOUS;return{processGroupIds:[...new Set((Array.isArray(g?.processGroupIds)?
|
|
405
405
|
g.processGroupIds:[]).map(Number).filter(S=>Number.isSafeInteger(S)&&S>0))],status:_}}async function k(g={}){if(!d(g))return{
|
|
406
406
|
processGroupIds:[],status:a.INVALID};if(g.processState===u.STOPPED)return{processGroupIds:[],status:a.ABSENT};if(process.
|
|
407
|
-
platform!=="linux")return{processGroupIds:[],status:a.AMBIGUOUS};let _=g.processIdentity,S=await b(),
|
|
408
|
-
filter(({processGroupId:h})=>h===
|
|
409
|
-
continue;let O=
|
|
410
|
-
|
|
411
|
-
status:a.AMBIGUOUS}:{processGroupIds:[],status:P.length>0||C(
|
|
407
|
+
platform!=="linux")return{processGroupIds:[],status:a.AMBIGUOUS};let _=g.processIdentity,S=await b(),M=Number(g.pid),P=S.
|
|
408
|
+
filter(({processGroupId:h})=>h===M),R=[],l=P.some(({environmentReadable:h})=>!h);for(let h of S){if(!h.environmentReadable)
|
|
409
|
+
continue;let O=j(h.environment,t),w=j(h.environment,e);O===_.runtimeToken&&w===_.commandHash&&R.push(h)}let p=R.find(({pid:h})=>h===
|
|
410
|
+
M);if(p&&p.startTimeTicks!==_.startTimeTicks)return{processGroupIds:[],status:a.AMBIGUOUS};if(R.length===0)return l?{processGroupIds:[],
|
|
411
|
+
status:a.AMBIGUOUS}:{processGroupIds:[],status:P.length>0||C(M)?a.MISMATCH:a.ABSENT};let y=[...new Set(R.map(({processGroupId:h})=>h))];
|
|
412
412
|
for(let h of y)if(S.filter(w=>w.processGroupId===h).some(w=>!w.environmentReadable||!R.some(({pid:B})=>B===w.pid)))return{
|
|
413
413
|
processGroupIds:[],status:a.AMBIGUOUS};return P.some(h=>!R.some(({pid:O})=>O===h.pid))?{processGroupIds:[],status:a.AMBIGUOUS}:
|
|
414
414
|
{processGroupIds:y,status:a.EXACT}}async function N(g={},_={}){let S=typeof _.processIdentityInspector=="function"?_.processIdentityInspector:
|
|
415
|
-
k;return T(await S(g))}async function A(g={},_={},S=0){let
|
|
416
|
-
EXACT;)await br(100),P=await N(g,_);return P}async function
|
|
415
|
+
k;return T(await S(g))}async function A(g={},_={},S=0){let M=Date.now()+S,P=await N(g,_);for(;Date.now()<M&&P.status===a.
|
|
416
|
+
EXACT;)await br(100),P=await N(g,_);return P}async function D(g={},_={}){let S=m(_.processIdentitySettleTimeoutMs,1e3),M=m(
|
|
417
417
|
_.processIdentitySettlePollMs,25),P=Date.now()+S,R=await N(g,_);for(;R.status===a.AMBIGUOUS&&Date.now()<P;)await br(Math.
|
|
418
|
-
min(
|
|
419
|
-
"function"?S.signalProcessGroup:E,P=await
|
|
420
|
-
g.pid),l=[...P.processGroupIds.filter(y=>y!==R),...P.processGroupIds.filter(y=>y===R)],p=[];for(let y of l){let h=await
|
|
418
|
+
min(M,Math.max(1,P-Date.now()))),R=await N(g,_);return R}async function z(g={},_="SIGTERM",S={}){let M=typeof S.signalProcessGroup==
|
|
419
|
+
"function"?S.signalProcessGroup:E,P=await D(g,S);if(P.status!==a.EXACT)return{inspection:P,signaledProcessGroups:[]};let R=Number(
|
|
420
|
+
g.pid),l=[...P.processGroupIds.filter(y=>y!==R),...P.processGroupIds.filter(y=>y===R)],p=[];for(let y of l){let h=await D(
|
|
421
421
|
g,S);if(h.status===a.ABSENT||h.status===a.MISMATCH)return{inspection:h,signaledProcessGroups:p};if(h.status!==a.EXACT)return{
|
|
422
|
-
inspection:h,signaledProcessGroups:p};h.processGroupIds.includes(y)&&(
|
|
422
|
+
inspection:h,signaledProcessGroups:p};h.processGroupIds.includes(y)&&(M(y,_),p.push(y))}return{inspection:await D(g,S),signaledProcessGroups:p}}
|
|
423
423
|
async function q(g={},_={}){if(!d(g))return{identityStatus:a.INVALID,processExitVerified:!1,stopped:!1};if(g.processState===
|
|
424
|
-
u.STOPPED&&g.processExitVerifiedAt)return{alreadyStopped:!0,identityStatus:a.ABSENT,processExitVerified:!0,stopped:!1};let S=await
|
|
424
|
+
u.STOPPED&&g.processExitVerifiedAt)return{alreadyStopped:!0,identityStatus:a.ABSENT,processExitVerified:!0,stopped:!1};let S=await D(
|
|
425
425
|
g,_);if(S.status===a.ABSENT||S.status===a.MISMATCH)return{identityStatus:S.status,processExitVerified:!0,stopped:!1};if(S.
|
|
426
|
-
status!==a.EXACT)return{identityStatus:S.status,processExitVerified:!1,stopped:!1};let
|
|
427
|
-
status===a.AMBIGUOUS)return{identityStatus:
|
|
428
|
-
stopped:!1};let P=await A(g,_,m(_.termTimeoutMs,3e3)),R=[...
|
|
426
|
+
status!==a.EXACT)return{identityStatus:S.status,processExitVerified:!1,stopped:!1};let M=await z(g,"SIGTERM",_);if(M.inspection.
|
|
427
|
+
status===a.AMBIGUOUS)return{identityStatus:M.inspection.status,processExitVerified:!1,signaledProcessGroups:M.signaledProcessGroups,
|
|
428
|
+
stopped:!1};let P=await A(g,_,m(_.termTimeoutMs,3e3)),R=[...M.signaledProcessGroups];if(P.status===a.EXACT){let p=await z(
|
|
429
429
|
g,"SIGKILL",_);if(R=[...new Set([...R,...p.signaledProcessGroups])],p.inspection.status===a.AMBIGUOUS)return{identityStatus:p.
|
|
430
430
|
inspection.status,processExitVerified:!1,signaledProcessGroups:R,stopped:!1};P=await A(g,_,m(_.killTimeoutMs,1e3))}let l=[
|
|
431
431
|
a.ABSENT,a.MISMATCH].includes(P.status);return{descendantProcessGroups:R.filter(p=>p!==Number(g.pid)),identityStatus:P.status,
|
|
432
432
|
pid:Number(g.pid),processExitVerified:l,signaledProcessGroups:R,stopped:l&&R.length>0}}async function W({commandHash:g="",
|
|
433
|
-
pid:_=null,reportedIdentity:S=null,runtimeToken:
|
|
433
|
+
pid:_=null,reportedIdentity:S=null,runtimeToken:M=""}={}){let P=L(g),R=L(M),l=v(S);if(I(l)&&l.commandHash===P&&l.runtimeToken===
|
|
434
434
|
R)return l;let p=Number(_);if(process.platform!=="linux"||!Number.isSafeInteger(p)||p<=0){let h=new Error(`${r} process \
|
|
435
435
|
identity could not be captured.`);throw h.code=o,h}let y=x(await pt(`/proc/${p}/stat`,"utf8").catch(()=>""));if(!y||y.processGroupId!==
|
|
436
436
|
p){let h=new Error(`${r} process identity could not be captured.`);throw h.code=o,h}return{commandHash:P,platform:c,runtimeToken:R,
|
|
437
437
|
startTimeTicks:y.startTimeTicks,version:1}}return Object.freeze({normalize:v,isValid:I,normalizeInspection:T,capture:W,inspect:N,
|
|
438
|
-
stop:q,isProcessAlive:f})}import{execFile as bo}from"node:child_process";import{open as Us,rename as To,rm as Ao,writeFile as Oo}from"node:fs/promises";
|
|
438
|
+
stop:q,isProcessAlive:f})}import{execFile as bo}from"node:child_process";import{open as Us,readFile as Bs,rename as To,rm as Ao,writeFile as Oo}from"node:fs/promises";
|
|
439
439
|
import Or from"node:path";import{promisify as Io}from"node:util";var Po=Io(bo);async function Ir({command:t,runtimeDir:e,bundled:r=!1,signal:o,additionalModels:n=[]}){let s,i=new Map;try{let{stdout:m}=await Po(
|
|
440
440
|
t,["debug","models",...r?["--bundled"]:[],"-c","check_for_update_on_startup=false"],{encoding:"utf8",maxBuffer:16777216,
|
|
441
441
|
timeout:2e4,signal:o});if(s=JSON.parse(m),!Array.isArray(s?.models)||!s.models.length)throw new Error("Invalid native mo\
|
|
@@ -443,8 +443,7 @@ del catalogue");for(let d of s.models){if(!d||typeof d.slug!="string"||!d.slug.t
|
|
|
443
443
|
valid native model catalogue");i.set(d.slug,d)}}catch{throw new Error("Codex could not load its model catalogue. Restart\
|
|
444
444
|
the assistant service after checking the Codex installation and connection.")}let c=s.models.reduce((m,d)=>Math.max(m,d.
|
|
445
445
|
priority||0),0);for(let m of n)i.set(m.slug,{...m,priority:++c});let u=Or.join(e,"models.json"),a=`${u}.tmp`;try{o?.throwIfAborted(),
|
|
446
|
-
await Oo(a,JSON.stringify({...s,models:[...i.values()]}),{mode:384}),await To(a,u)}finally{await Ao(a,{force:!0})}return u}
|
|
447
|
-
var Ro=Object.freeze(["apps","artifact","browser_use","browser_use_external","browser_use_full_cdp_access","code_mode","\
|
|
446
|
+
await Oo(a,JSON.stringify({...s,models:[...i.values()]}),{mode:384}),await To(a,u)}finally{await Ao(a,{force:!0})}return u}var Ro=Object.freeze(["apps","artifact","browser_use","browser_use_external","browser_use_full_cdp_access","code_mode","\
|
|
448
447
|
code_mode_host","computer_use","default_mode_request_user_input","deferred_executor","goals","hooks","image_generation",
|
|
449
448
|
"in_app_browser","memories","multi_agent","multi_agent_v2","plugins","psp","recommended_plugins","request_permissions_to\
|
|
450
449
|
ol","shell_tool","skill_mcp_dependency_install","skill_search","tool_call_mcp_elicitation","tool_suggest","unified_exec",
|
|
@@ -465,11 +464,11 @@ currentHelperExecutionContext!="function")throw f("Codex helper execution requir
|
|
|
465
464
|
currentHelperExecutionContext(),y=L(p?.cwd),h=L(p?.accountIdentitySignature);if(p?.executionMode!=="helper"||!y||!Or.isAbsolute(
|
|
466
465
|
y)||!/^sha256:[a-f0-9]{64}$/u.test(h))throw f("Codex helper runtime isolation could not be verified.");return Object.freeze(
|
|
467
466
|
{accountIdentitySignature:h,cwd:y,executionMode:"helper"})}function I(l=""){let p=L(l).match(/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/u);
|
|
468
|
-
if(!p)return null;let y=p.slice(1).map(h=>Number.parseInt(h,10));return y.every(Number.isSafeInteger)?y:null}function
|
|
467
|
+
if(!p)return null;let y=p.slice(1).map(h=>Number.parseInt(h,10));return y.every(Number.isSafeInteger)?y:null}function j(l=""){
|
|
469
468
|
let p=L(l);if(!p||p.length>o||ht(p))return null;let y=`${t}/`;if(!p.startsWith(y))return null;let h=p.slice(y.length).match(
|
|
470
469
|
/^((?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*))(?:$|[ \t].*$)/u);return h?I(h[1]):null}function b(l){if(typeof l?.currentServerInfo!=
|
|
471
470
|
"function")throw f("Codex helper execution cannot verify the app-server version. Update Codex and retry.",{minimumVersion:e});
|
|
472
|
-
let p=L(l.currentServerInfo()?.userAgent),y=
|
|
471
|
+
let p=L(l.currentServerInfo()?.userAgent),y=j(p);if(!y)throw f("Codex helper execution received an unrecognised app-serv\
|
|
473
472
|
er version. Update Codex and retry.",{minimumVersion:e});let h=y.join("."),O=I(e),w=y.findIndex((B,X)=>B!==O[X]);if(w!==
|
|
474
473
|
-1&&y[w]<O[w])throw f(`Codex helper execution requires app-server ${e} or newer; current version is ${h}. Update Codex a\
|
|
475
474
|
nd retry.`,{actualVersion:h,minimumVersion:e});return Object.freeze({minimumVersion:e,version:h})}function T(l=null){if(!Ar(
|
|
@@ -499,7 +498,7 @@ unction")throw f("Codex helper execution cannot inventory configuration and hook
|
|
|
499
498
|
listHooks([h.cwd]);if(x(l)!==O)throw f("Codex app-server reconnected during helper policy verification.");let X=T(w),fe=k(
|
|
500
499
|
B,h.cwd);return Object.freeze({accountIdentitySignature:h.accountIdentitySignature,config:N({effort:p,summary:y,hookKeys:fe.
|
|
501
500
|
hookKeys,mcpServerNames:X}),connectionGeneration:O,executionCwd:h.cwd,hookFingerprint:fe.fingerprint,hookKeys:Object.freeze(
|
|
502
|
-
[...fe.hookKeys]),mcpServerNames:Object.freeze([...X])})}function
|
|
501
|
+
[...fe.hookKeys]),mcpServerNames:Object.freeze([...X])})}function D(l=null,p=null){return l?.accountIdentitySignature===
|
|
503
502
|
p?.accountIdentitySignature&&l?.connectionGeneration===p?.connectionGeneration&&l?.executionCwd===p?.executionCwd&&l?.hookFingerprint===
|
|
504
503
|
p?.hookFingerprint&&JSON.stringify(l?.mcpServerNames||[])===JSON.stringify(p?.mcpServerNames||[])}function z(l,p,y=""){let h=L(
|
|
505
504
|
y);if(!p)return l.codexAppServerHelperThreadId=h,l.codexAppServerHelperThreadRetired=!0,l;let O=f("Codex could not retir\
|
|
@@ -508,32 +507,32 @@ e a helper thread after policy verification failed.",{cleanupFailed:!0,threadId:
|
|
|
508
507
|
deleteThread(y)}catch(O){h=O}throw z(l,h,y)}async function W(l,p){if(typeof l?.startThread!="function"||typeof l?.deleteThread!=
|
|
509
508
|
"function")throw f("Codex helper execution cannot own and clean up its app-server thread.");let y=await p(),h=await l.startThread(
|
|
510
509
|
y.settings),O=L(h?.id);if(!O)throw f("Codex app-server did not return a helper thread id.");try{let w=await A(l,{effort:y.
|
|
511
|
-
enforcement.config.model_reasoning_effort,summary:y.enforcement.config.model_reasoning_summary});if(!
|
|
510
|
+
enforcement.config.model_reasoning_effort,summary:y.enforcement.config.model_reasoning_summary});if(!D(y.enforcement,w))
|
|
512
511
|
throw f("Codex execution surfaces changed while the helper thread was starting.");return Object.freeze({enforcement:w,thread:h,
|
|
513
512
|
threadId:O})}catch(w){await q({error:w,provider:l,threadId:O})}}async function g(l,p,y){if(typeof l?.resumeThread!="func\
|
|
514
513
|
tion"||typeof l?.deleteThread!="function")throw f("Codex helper execution cannot safely resume and clean up its app-serv\
|
|
515
514
|
er thread.");let h=L(p);if(!h)throw f("Codex helper resume requires a controller-owned thread id.");let O=await y(),w=O.
|
|
516
515
|
enforcement,B=await l.resumeThread(h,O.settings);try{let X=await A(l,{effort:w.config.model_reasoning_effort,summary:w.config.
|
|
517
|
-
model_reasoning_summary});if(!
|
|
516
|
+
model_reasoning_summary});if(!D(w,X))throw f("Codex execution surfaces changed while the helper thread was resuming.");return Object.
|
|
518
517
|
freeze({enforcement:X,thread:B,threadId:h})}catch(X){await q({error:X,provider:l,threadId:h})}}function _({configResult:l,
|
|
519
518
|
hookResult:p,workdir:y,effort:h="",summary:O=""}){let w=T(l),B=k(p,y);return N({effort:h,summary:O,hookKeys:B.hookKeys,mcpServerNames:w})}
|
|
520
519
|
function S({approvalPolicy:l,baseInstructions:p,config:y,cwd:h,effectiveSettings:O,sandbox:w,systemPrompt:B}){return{allowProviderModelFallback:!1,
|
|
521
520
|
approvalPolicy:l,baseInstructions:p,config:y,cwd:h,systemPrompt:B||null,dynamicTools:[],environments:[],model:O.model,runtimeWorkspaceRoots:[],
|
|
522
|
-
sandbox:w,selectedCapabilityRoots:[]}}function
|
|
521
|
+
sandbox:w,selectedCapabilityRoots:[]}}function M(l,p){return{...l,sessionStartSource:"startup",threadSource:p}}function P(l){
|
|
523
522
|
return{approvalPolicy:l.approvalPolicy,baseInstructions:l.baseInstructions,config:l.config,cwd:l.cwd,systemPrompt:l.systemPrompt,
|
|
524
523
|
model:l.model,runtimeWorkspaceRoots:l.runtimeWorkspaceRoots,sandbox:l.sandbox}}function R({approvalPolicy:l,cwd:p,effectiveSettings:y,
|
|
525
524
|
outputSchema:h}){let O={approvalPolicy:l,cwd:p,environments:[],model:y.model,outputSchema:h,runtimeWorkspaceRoots:[],sandboxPolicy:{
|
|
526
525
|
networkAccess:!1,type:"readOnly"},summary:"none"};return y.request.reasoning&&(O.effort=y.thinking),O}return Object.freeze(
|
|
527
|
-
{assertCompatibility:b,executionContext:v,inspect:A,configuration:_,hasConfiguration:l=>C.has(l),threadSettings:S,threadStartSettings:
|
|
528
|
-
threadResumeSettings:P,turnSettings:R,start:W,resume:g})}var
|
|
526
|
+
{assertCompatibility:b,executionContext:v,inspect:A,configuration:_,hasConfiguration:l=>C.has(l),threadSettings:S,threadStartSettings:M,
|
|
527
|
+
threadResumeSettings:P,turnSettings:R,start:W,resume:g})}var zs=Rr();function mt({models:t}){return{models:t.map((e,r)=>({slug:e.id,display_name:e.label,description:e.label,default_reasoning_level:e.
|
|
529
528
|
defaultThinking,supported_reasoning_levels:e.variants.map(o=>({effort:o,description:o})),shell_type:"shell_command",visibility:"\
|
|
530
529
|
list",supported_in_api:!0,priority:r,base_instructions:"You are a coding assistant. Complete the user's task in the work\
|
|
531
530
|
space, use the available tools, preserve unrelated work, and verify your changes.",supports_reasoning_summaries:!1,default_reasoning_summary:"\
|
|
532
531
|
none",support_verbosity:!1,truncation_policy:{mode:"tokens",limit:1e4},context_window:e.contextWindow,max_context_window:e.
|
|
533
532
|
contextWindow,effective_context_window_percent:95,supports_parallel_tool_calls:!0,experimental_supported_tools:[],input_modalities:e.
|
|
534
|
-
images?["text","image"]:["text"],prefer_websockets:!1,...e.freeformPatch?{apply_patch_tool_type:"freeform"}:{}}))}}var
|
|
535
|
-
import Lo from"node:path";import{Readable as Uo}from"node:stream";import{isDeepStrictEqual as
|
|
536
|
-
gunzipSync as Bo,zstdDecompressSync as
|
|
533
|
+
images?["text","image"]:["text"],prefer_websockets:!1,...e.freeformPatch?{apply_patch_tool_type:"freeform"}:{}}))}}var Gs=1024*1024,qs=256*1024;var Fs=16*1024;import{open as No,realpath as Nr}from"node:fs/promises";import{isUtf8 as Mo}from"node:buffer";import{createServer as Do}from"node:http";
|
|
534
|
+
import Lo from"node:path";import{Readable as Uo}from"node:stream";import{isDeepStrictEqual as Mr}from"node:util";import{
|
|
535
|
+
gunzipSync as Bo,zstdDecompressSync as jo}from"node:zlib";var Ge=(t,e,r,o={})=>Object.freeze({id:t,contextWindow:e,variants:Object.freeze(r),...o}),kr=Object.freeze([Object.freeze(
|
|
537
536
|
{id:"deepseek",baseUrl:"https://api.deepseek.com/",claudeBaseUrl:"https://api.deepseek.com/anthropic",claudeAutoCompactWindow:786432,
|
|
538
537
|
webSearch:!1,models:Object.freeze([Ge("deepseek-flash",1048576,["low","high","max"],{images:!0,freeformPatch:!0,codexHistoryRouting:!0}),
|
|
539
538
|
Ge("deepseek-v4-pro",1048576,["low","high","max"],{freeformPatch:!0})])}),Object.freeze({id:"zai-coding-plan",baseUrl:"h\
|
|
@@ -542,9 +541,9 @@ freeze([Ge("glm-5.3",1048576,["low","high","max"],{freeformPatch:!0,codexHistory
|
|
|
542
541
|
baseUrl:"https://api.z.ai/api/v1",claudeBaseUrl:"https://api.z.ai/api/anthropic",claudeAutoCompactWindow:1e6,webSearch:!1,
|
|
543
542
|
models:Object.freeze([Ge("glm-5.3",1048576,["low","high","max"],{freeformPatch:!0,codexHistoryRouting:!0})])})]);function Z(t){
|
|
544
543
|
return kr.find(e=>e.id===t)||null}function qe(t,e=""){for(let r of kr){if(e&&r.id!==e)continue;let o=r.models.find(n=>n.
|
|
545
|
-
id===t);if(o)return{...o,modelProviderId:r.id}}return null}var Lr=32*1024*1024
|
|
544
|
+
id===t);if(o)return{...o,modelProviderId:r.id}}return null}var Lr=32*1024*1024,$o=Object.freeze({chatgpt:"https://chatgpt.com/backend-api/codex",apiKey:"https://api.openai.com/v1",
|
|
546
545
|
deepseek:Z("deepseek").baseUrl.replace(/\/$/u,""),"zai-coding-plan":Z("zai-coding-plan").baseUrl,zai:Z("zai").baseUrl}),
|
|
547
|
-
|
|
546
|
+
Ho=["connection","keep-alive","proxy-authenticate","proxy-authorization","te","trailer","transfer-encoding","upgrade"];function zo(t,e="\
|
|
548
547
|
openai"){if(!Array.isArray(t?.input)||e==="zai-coding-plan"||e==="zai")return t;if(e==="deepseek"){let n=new Set(t.input.
|
|
549
548
|
filter(s=>["custom_tool_call","function_call"].includes(s?.type)&&s.name==="exec").map(s=>s.call_id));return{...t,input:t.
|
|
550
549
|
input.map(s=>{if(!n.has(s?.call_id))return s;if(["custom_tool_call","function_call"].includes(s.type))return{type:"messa\
|
|
@@ -576,72 +575,72 @@ ssistant",content:[{type:"output_text",text:`[Historical reasoning from the prev
|
|
|
576
575
|
s]
|
|
577
576
|
${[...n.summary||[],...n.content].map(c=>c.text).join(`
|
|
578
577
|
`)}
|
|
579
|
-
[/Historical reasoning]`}]}})}}function
|
|
578
|
+
[/Historical reasoning]`}]}})}}function H(t,e=422){return Object.assign(new Error(`Codex cannot safely send this compact\
|
|
580
579
|
ed conversation to the selected model: ${t} Continue with the previous model or start a new conversation. Saved history \
|
|
581
580
|
has not been changed.`),{statusCode:e})}function _t(t){if(t?.type!=="message"||t.role!=="user")return null;let{encrypted_content:e,
|
|
582
|
-
id:r,...o}=t;return o}async function*
|
|
583
|
-
r;){o.throwIfAborted();let{bytesRead:m}=await t.read(s,0,Math.min(s.length,r-a),a);if(!m)throw
|
|
581
|
+
id:r,...o}=t;return o}async function*Dr(t,e,r,o,{strictComplete:n=!1}={}){let s=Buffer.alloc(65536),i=[],c=0,u=e;for(let a=e;a<
|
|
582
|
+
r;){o.throwIfAborted();let{bytesRead:m}=await t.read(s,0,Math.min(s.length,r-a),a);if(!m)throw H("the saved history chan\
|
|
584
583
|
ged during recovery. Retry the turn.");let d=s.subarray(0,m),f=0;for(;f<m;){let C=d.indexOf(10,f),E=C>=0,x=E?C:m;if(c+=x-
|
|
585
|
-
f,c>Lr)throw
|
|
586
|
-
if(o.throwIfAborted(),c){let v=Buffer.concat(i,c);if(n&&!
|
|
587
|
-
row:JSON.parse(v.toString("utf8")),offset:u}}i=[],c=0,u=a+C+1}f=x+(E?1:0)}a+=m}if(n&&c)throw
|
|
584
|
+
f,c>Lr)throw H("a saved history record exceeds the recovery size limit.",413);if(i.push(Buffer.from(s.subarray(f,x))),E){
|
|
585
|
+
if(o.throwIfAborted(),c){let v=Buffer.concat(i,c);if(n&&!Mo(v))throw H("the saved history contains invalid UTF-8.");yield{
|
|
586
|
+
row:JSON.parse(v.toString("utf8")),offset:u}}i=[],c=0,u=a+C+1}f=x+(E?1:0)}a+=m}if(n&&c)throw H("the saved history has an\
|
|
588
587
|
incomplete final record.")}async function Go(t,{destination:e,historyPath:r,codexHome:o,signal:n,maxRequestBytes:s}){if(!Z(
|
|
589
588
|
e)||!Array.isArray(t?.input)||!t.input.some(d=>d?.type==="compaction"))return t;let i=qe(t.model,e);if(i?.modelProviderId!==
|
|
590
|
-
e||!i.codexHistoryRouting)throw
|
|
589
|
+
e||!i.codexHistoryRouting)throw H("this model has not been qualified for history recovery.");if(!r||!o)throw H("the nati\
|
|
591
590
|
ve history location is unavailable.");n.throwIfAborted();let c,u=new Map(t.input.filter(d=>d?.type==="compaction").map(d=>[
|
|
592
591
|
d.encrypted_content,{count:0}]));try{let d=await Nr(o),f=await Nr(r),C=Lo.relative(d,f),E=/^(?:sessions\/\d{4}\/\d{2}\/\d{2}|archived_sessions)\/rollout-[^/]+-([0-9a-f-]{36})\.jsonl$/iu.
|
|
593
|
-
exec(C);if(!E)throw
|
|
594
|
-
stat();if(!x.isFile())throw
|
|
595
|
-
c,0,x.size,n)){if(b.type==="session_meta"&&(v+=1,b.payload?.id!==E[1]||b.payload?.forked_from_id))throw
|
|
596
|
-
tory does not identify one supported conversation.");if(b.type==="event_msg"&&b.payload?.type==="thread_rolled_back")throw
|
|
592
|
+
exec(C);if(!E)throw H("the history is outside this Codex runtime's saved conversations.");c=await No(f,"r");let x=await c.
|
|
593
|
+
stat();if(!x.isFile())throw H("the saved history is not a regular file.");let v=0,I=0;for await(let{row:b,offset:T}of Dr(
|
|
594
|
+
c,0,x.size,n)){if(b.type==="session_meta"&&(v+=1,b.payload?.id!==E[1]||b.payload?.forked_from_id))throw H("the saved his\
|
|
595
|
+
tory does not identify one supported conversation.");if(b.type==="event_msg"&&b.payload?.type==="thread_rolled_back")throw H(
|
|
597
596
|
"history recovery after Undo is not supported yet.");if(b.type!=="compacted")continue;let k=b.payload?.replacement_history;
|
|
598
|
-
for(let[N,A]of u)typeof N=="string"&&N.length&&k?.some(
|
|
597
|
+
for(let[N,A]of u)typeof N=="string"&&N.length&&k?.some(D=>D?.type==="compaction"&&D.encrypted_content===N)&&(A.count+=1,
|
|
599
598
|
A.start=I,A.end=T,A.retainedUsers=k.map(_t).filter(Boolean));typeof b.payload?.message=="string"&&b.payload.message.trim()&&
|
|
600
|
-
Array.isArray(k)&&k.length&&!k.some(N=>N?.type==="compaction")&&(I=T)}if(v!==1)throw
|
|
601
|
-
ify one supported conversation.");let
|
|
602
|
-
undary could not be identified.");b.history=[];for await(let{row:T,offset:k}of
|
|
599
|
+
Array.isArray(k)&&k.length&&!k.some(N=>N?.type==="compaction")&&(I=T)}if(v!==1)throw H("the saved history does not ident\
|
|
600
|
+
ify one supported conversation.");let j=0;for(let b of u.values()){if(b.count!==1)throw H("its exact saved compaction bo\
|
|
601
|
+
undary could not be identified.");b.history=[];for await(let{row:T,offset:k}of Dr(c,b.start,b.end,n)){let N=[];T.type===
|
|
603
602
|
"response_item"?N=[T.payload]:T.type==="compacted"&&k===b.start&&(N=T.payload.replacement_history);for(let A of N||[])if(!(A?.
|
|
604
|
-
type==="compaction"||A?.type==="message"&&["developer","system"].includes(A.role))){if(
|
|
605
|
-
A)),
|
|
606
|
-
d.statusCode?d
|
|
603
|
+
type==="compaction"||A?.type==="message"&&["developer","system"].includes(A.role))){if(j+=Buffer.byteLength(JSON.stringify(
|
|
604
|
+
A)),j>s)throw H("the recovered history exceeds the request size limit.",413);b.history.push(A)}}}}catch(d){throw n.aborted||
|
|
605
|
+
d.statusCode?d:H("the native history could not be read completely.")}finally{await c?.close()}let a=[],m=Buffer.byteLength(
|
|
607
606
|
JSON.stringify(t));for(let[d,f]of t.input.entries()){if(a.push(f),f?.type!=="compaction")continue;let C=u.get(f.encrypted_content).
|
|
608
607
|
history,E=t.input.slice(0,d).map(_t).filter(Boolean),x=u.get(f.encrypted_content).retainedUsers.filter(T=>{let k=E.findIndex(
|
|
609
|
-
N=>
|
|
610
|
-
"function_call","function_call_output","custom_tool_call","custom_tool_call_output"].includes(T?.type))throw
|
|
611
|
-
d history contains an unsupported item.");let{encrypted_content:k,id:N,...A}=T,
|
|
612
|
-
"summary","output"]){let g=T[W];if(!(g==null||typeof g=="string")){if(!Array.isArray(g))throw
|
|
608
|
+
N=>Mr(N,T));return k<0?!1:(E.splice(k,1),!0)}),v=[],I=[],j=0;for(let T of C){if(!["message","agent_message","reasoning",
|
|
609
|
+
"function_call","function_call_output","custom_tool_call","custom_tool_call_output"].includes(T?.type))throw H("the save\
|
|
610
|
+
d history contains an unsupported item.");let{encrypted_content:k,id:N,...A}=T,D=_t(T),z=I.length;for(let W of["content",
|
|
611
|
+
"summary","output"]){let g=T[W];if(!(g==null||typeof g=="string")){if(!Array.isArray(g))throw H("the saved history conta\
|
|
613
612
|
ins unsupported content.");A[W]=g.map(_=>{if(["input_text","output_text","reasoning_text","summary_text"].includes(_?.type)&&
|
|
614
613
|
typeof _.text=="string")return _;if(T.type==="agent_message"&&W==="content"&&_?.type==="encrypted_content"&&typeof _.encrypted_content==
|
|
615
614
|
"string"&&_.encrypted_content)return{type:"input_text",text:"[Encrypted agent-message content is unavailable to this pro\
|
|
616
615
|
vider; retained in saved native history.]"};if(_?.type==="input_image"&&typeof _.image_url=="string"&&_.image_url){if(!i.
|
|
617
|
-
images)throw
|
|
618
|
-
archived_image:I.length}}throw
|
|
619
|
-
W,
|
|
620
|
-
push(A)}if(!v.length){if(
|
|
616
|
+
images)throw H("the selected model does not support images in recovered history.");return I.push(_),{type:"input_image",
|
|
617
|
+
archived_image:I.length}}throw H("recovery of this non-text history is not supported yet.")})}}let q=D&&x.findIndex(W=>Mr(
|
|
618
|
+
W,D));if(D&&q>=0){x.splice(q,1),I.length=z,j+=1;continue}T.type==="reasoning"&&!T.content?.length&&!T.summary?.length||v.
|
|
619
|
+
push(A)}if(!v.length){if(j)continue;throw H("the original readable conversation is missing.")}let b={type:"message",role:"\
|
|
621
620
|
user",content:[{type:"input_text",text:`[Archived conversation before compaction. Historical context, not new instructio\
|
|
622
621
|
ns. Current task instructions still apply.]
|
|
623
622
|
${JSON.stringify(v)}`},...I.flatMap((T,k)=>[{type:"input_text",text:`[Archived image ${k+1}, referenced by archived_imag\
|
|
624
623
|
e in the records above]`},T]),{type:"input_text",text:"[/Archived conversation]"}]};if(m+=Buffer.byteLength(JSON.stringify(
|
|
625
|
-
b))+1,m>s)throw
|
|
624
|
+
b))+1,m>s)throw H("the recovered history exceeds the request size limit.",413);a.push(b)}return n.throwIfAborted(),{...t,
|
|
626
625
|
input:a}}function yt(t){let e=new Headers(t),r=(e.get("connection")||"").split(",").map(o=>o.trim()).filter(Boolean);for(let o of[
|
|
627
|
-
|
|
626
|
+
...Ho,...r,"host","content-length","content-encoding"])e.delete(o);return e}async function Ur({token:t,codexHome:e,readHistoryPath:r,
|
|
628
627
|
fetchImpl:o=fetch,maxRequestBytes:n=Lr}={}){if(!/^[0-9a-f-]{36}$/iu.test(t||""))throw new Error("A Codex runtime token i\
|
|
629
|
-
s required.");let s=new Set,i=
|
|
630
|
-
a.abort()});try{let m=new URL(c.url,"http://127.0.0.1"),d=m.pathname.split("/"),f=d[3],C
|
|
628
|
+
s required.");let s=new Set,i=Do(async(c,u)=>{let a=new AbortController;s.add(a),u.once("close",()=>{s.delete(a),u.writableFinished||
|
|
629
|
+
a.abort()});try{let m=new URL(c.url,"http://127.0.0.1"),d=m.pathname.split("/"),f=d[3],C=$o[f],E=d[4]==="history",x=E?Buffer.
|
|
631
630
|
from(d[5]||"","base64url").toString("utf8"):"",v=d.slice(E?6:4).join("/");if(d[1]!==t||d[2]!=="v2"||!C||!(c.method==="PO\
|
|
632
631
|
ST"&&["responses","responses/compact"].includes(v)||c.method==="GET"&&v==="models")){u.writeHead(404).end();return}let I;
|
|
633
632
|
if(c.method==="POST"){let k=[],N=0;for await(let z of c){if(N+=z.length,N>n)throw Object.assign(new Error("Codex history\
|
|
634
|
-
exceeds the adapter request limit."),{statusCode:413});k.push(z)}let A=Buffer.concat(k),
|
|
635
|
-
try{if(
|
|
633
|
+
exceeds the adapter request limit."),{statusCode:413});k.push(z)}let A=Buffer.concat(k),D=c.headers["content-encoding"];
|
|
634
|
+
try{if(D==="zstd")A=jo(A,{maxOutputLength:n});else if(D==="gzip")A=Bo(A,{maxOutputLength:n});else if(D&&D!=="identity")throw new Error(
|
|
636
635
|
"Unsupported encoding");I=JSON.parse(A.toString("utf8"))}catch{throw Object.assign(new Error("Codex sent an unreadable o\
|
|
637
636
|
r oversized history request."),{statusCode:400})}if(!x&&Z(f)&&Array.isArray(I?.input)&&I.input.some(z=>z?.type==="compac\
|
|
638
637
|
tion")&&(x=await r?.(a.signal)),I=await Go(I,{destination:f,historyPath:x,codexHome:e,signal:a.signal,maxRequestBytes:n}),
|
|
639
|
-
I=JSON.stringify(zo(I,f)),Buffer.byteLength(I)>n)throw
|
|
640
|
-
c.headers);
|
|
638
|
+
I=JSON.stringify(zo(I,f)),Buffer.byteLength(I)>n)throw H("the translated history exceeds the request size limit.",413)}let j=yt(
|
|
639
|
+
c.headers);j.set("accept-encoding","identity");let b=await o(`${C}/${v}${m.search}`,{method:c.method,headers:j,body:I,signal:a.
|
|
641
640
|
signal,redirect:"error"});if(f==="deepseek"&&b.status===400&&b.headers.get("content-type")?.split(";",1)[0].trim()==="ap\
|
|
642
|
-
plication/json"){let k=Buffer.from(await b.arrayBuffer());try{let N=JSON.parse(k.toString("utf8")),A=N?.error,
|
|
641
|
+
plication/json"){let k=Buffer.from(await b.arrayBuffer());try{let N=JSON.parse(k.toString("utf8")),A=N?.error,D=typeof A?.
|
|
643
642
|
message=="string"&&/^This model's maximum context length is ([1-9]\d*) tokens\. However, you requested ([1-9]\d*) tokens \((\d+) in the messages, (\d+) in the completion\)\. Please reduce the length of the messages or completion\. \(request_id: [0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\)$/u.
|
|
644
|
-
exec(A.message);if(A?.type==="invalid_request_error"&&A.code==="invalid_request_error"&&
|
|
643
|
+
exec(A.message);if(A?.type==="invalid_request_error"&&A.code==="invalid_request_error"&&D){let[z,q,W,g]=D.slice(1).map(Number);
|
|
645
644
|
[z,q,W,g].every(Number.isSafeInteger)&&q>z&&q===W+g&&(A.code="context_length_exceeded",k=Buffer.from(JSON.stringify(N)))}}catch{}
|
|
646
645
|
u.writeHead(b.status,Object.fromEntries(yt(b.headers))).end(k);return}if(u.writeHead(b.status,Object.fromEntries(yt(b.headers))),
|
|
647
646
|
!b.body){u.end();return}let T=Uo.fromWeb(b.body);T.once("error",()=>u.destroy()),u.once("close",()=>T.destroy()),T.pipe(
|
|
@@ -653,7 +652,7 @@ Content-Length: 0\r
|
|
|
653
652
|
\r
|
|
654
653
|
`)}),await new Promise((c,u)=>{i.once("error",u),i.listen(0,"127.0.0.1",()=>{i.removeListener("error",u),c()})}),{baseUrl:`\
|
|
655
654
|
http://127.0.0.1:${i.address().port}/${t}/v2`,server:i,async close(){for(let u of s)u.abort();let c=new Promise(u=>i.close(
|
|
656
|
-
u));i.closeAllConnections(),await c}}}var
|
|
655
|
+
u));i.closeAllConnections(),await c}}}var si=new URL("./../../../../@jskit-ai/assistant-core/src/server/conversation/codexProcess.js",import.meta.url).href;var Ei=Object.freeze({HELPER:"helper",INTERACTIVE:"interactive"}),wi=Tr();async function gt({runtimeDir:t,command:e,args:r=[],
|
|
657
656
|
runtimeToken:o,bundled:n=!1,additionalModels:s=[]}){let i=Br.join(t,"history-adapter.json"),c=new AbortController,u=()=>c.
|
|
658
657
|
abort();process.once("SIGTERM",u),process.once("SIGINT",u);let a=await Ir({command:e,runtimeDir:t,bundled:n,additionalModels:s,
|
|
659
658
|
signal:c.signal}),m=await Ur({token:o,codexHome:process.env.CODEX_HOME||Br.join(Xo.homedir(),".codex")});await Wo(`${i}.\
|
|
@@ -661,11 +660,11 @@ tmp`,JSON.stringify({baseUrl:m.baseUrl,runtimeToken:o}),{mode:384}),await Fo(`${
|
|
|
661
660
|
catalog_json=${JSON.stringify(a)}`],{stdio:"inherit"}),f=!1,C;function E(v="SIGTERM"){f||(f=!0,m.close(),d.kill(v),C=setTimeout(
|
|
662
661
|
()=>d.kill("SIGKILL"),5e3),C.unref())}process.on("SIGTERM",()=>E()),process.on("SIGINT",()=>E("SIGINT")),process.removeListener(
|
|
663
662
|
"SIGTERM",u),process.removeListener("SIGINT",u),c.signal.aborted&&E(),m.server.on("error",()=>{process.exitCode=1,E()});
|
|
664
|
-
let x=await new Promise(v=>{d.once("error",()=>v({code:1})),d.once("exit",(I,
|
|
665
|
-
await m.close(),await Vo(i,{force:!0}),process.exitCode||=x.code??(f?0:1)}var Jo=Object.freeze({UNIX:"unix"});var
|
|
666
|
-
UNREACHABLE:"unreachable"}),
|
|
667
|
-
SUSPECT:"suspect"}),
|
|
668
|
-
ambiguous",EXACT:"exact",INVALID:"invalid",MISMATCH:"mismatch"});var
|
|
663
|
+
let x=await new Promise(v=>{d.once("error",()=>v({code:1})),d.once("exit",(I,j)=>v({code:I,signal:j}))});clearTimeout(C),
|
|
664
|
+
await m.close(),await Vo(i,{force:!0}),process.exitCode||=x.code??(f?0:1)}var Jo=Object.freeze({UNIX:"unix"});var vi=process.platform==="linux"?107:103,Ci=Object.freeze({MISSING:"missing",RESPONSIVE:"responsive",TIMEOUT:"timeout",
|
|
665
|
+
UNREACHABLE:"unreachable"}),bi=Object.freeze({EXITED:"exited",INCOMPATIBLE:"incompatible",LIVE:"live",MISSING:"missing",
|
|
666
|
+
SUSPECT:"suspect"}),Ti=Object.freeze({RUNNING:"running",STOPPED:"stopped"}),Ai=Object.freeze({ABSENT:"absent",AMBIGUOUS:"\
|
|
667
|
+
ambiguous",EXACT:"exact",INVALID:"invalid",MISMATCH:"mismatch"});var ea=16*1024*1024;var na=new URL("./../../../../@jskit-ai/assistant-core/src/server/conversation/commandWrapper.js",import.meta.url).href;var Fe=(t,e,r,o)=>{let{modelProviderId:n,...s}=qe(e,t);return Object.freeze({...s,label:r,defaultThinking:o})},jr=Object.
|
|
669
668
|
freeze([Object.freeze({...Z("deepseek"),label:"DeepSeek",description:"DeepSeek API key \xB7 usage-based billing",keyUrl:"\
|
|
670
669
|
https://platform.deepseek.com/api_keys",guideUrl:"https://api-docs.deepseek.com/quick_start/agent_integrations/codex/",ownerOnly:!1,
|
|
671
670
|
models:Object.freeze([Fe("deepseek","deepseek-flash","DeepSeek V4.1 Flash","high"),Fe("deepseek","deepseek-v4-pro","Deep\
|
|
@@ -675,5 +674,5 @@ vpack/tool/codex",ownerOnly:!0,models:Object.freeze([Fe("zai-coding-plan","glm-5
|
|
|
675
674
|
...Z("zai"),label:"GLM \xB7 Pay-as-you-go API",description:"Z.AI API key \xB7 pay-as-you-go account",keyUrl:"https://z.a\
|
|
676
675
|
i/manage-apikey/apikey-list",guideUrl:"https://docs.z.ai/guides/overview/quick-start",setupNote:"Use a key from a Z.AI a\
|
|
677
676
|
ccount without a Coding Plan. Pay-as-you-go access through Codex and Claude Code still needs live verification; a succes\
|
|
678
|
-
sful check confirms model access, not billing.",ownerOnly:!1,models:Object.freeze([Fe("zai","glm-5.3","GLM 5.3","max")])})]);var
|
|
679
|
-
bundled:process.env.VIBE64_CODEX_MODEL_CATALOG_SOURCE==="bundled",additionalModels
|
|
677
|
+
sful check confirms model access, not billing.",ownerOnly:!1,models:Object.freeze([Fe("zai","glm-5.3","GLM 5.3","max")])})]);var Ma=Object.freeze(["auth","codex","status.json"]),Da=Object.freeze(["auth","codex","auth-status.json"]);function $r(t){let e=t?.models||[...new Map(jr.flatMap(r=>r.models).map(r=>[r.id,r])).values()];return mt({models:e})}var[ts,rs,...ns]=process.argv.slice(2);await gt({runtimeDir:ts,command:rs,args:ns,runtimeToken:process.env.VIBE64_CODEX_APP_SERVER_RUNTIME_TOKEN,
|
|
678
|
+
bundled:process.env.VIBE64_CODEX_MODEL_CATALOG_SOURCE==="bundled",additionalModels:$r().models});
|