From 7c07eaf3a5a2415368c41d23500d9f8bb4b45140 Mon Sep 17 00:00:00 2001 From: zhao0335 <3797723137@qq.com> Date: Tue, 8 Sep 2026 13:33:01 +0800 Subject: [PATCH] fix(cli): preserve configured Mint host origin --- packages/cli/src/editor-process.ts | 2 +- packages/cli/src/runtime.test.ts | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/packages/cli/src/editor-process.ts b/packages/cli/src/editor-process.ts index 8017105310..27fda95382 100644 --- a/packages/cli/src/editor-process.ts +++ b/packages/cli/src/editor-process.ts @@ -203,7 +203,7 @@ async function startEditorUnlocked(options: StartEditorOptions): Promise { expect(await Bun.file(paths.database).text()).toBe('persistent') }) + test('preserves a configured Mint host origin in the editor process', async () => { + const root = await temporaryRoot() + const source = await fakeRuntime(root, '1.2.3') + const paths = resolvePascalPaths({ PASCAL_HOME: path.join(root, 'home') }) + const previousMintOrigin = process.env.MINT_PASCAL_HOST_ORIGIN + process.env.MINT_PASCAL_HOST_ORIGIN = 'https://pascal.example.com' + + try { + const started = await startEditor({ paths, sourceDirectory: source }) + const response = await fetch(`http://127.0.0.1:${started.state.port}/mint-origin`) + + expect(await response.text()).toBe('https://pascal.example.com') + } finally { + await stopEditor(paths) + if (previousMintOrigin === undefined) delete process.env.MINT_PASCAL_HOST_ORIGIN + else process.env.MINT_PASCAL_HOST_ORIGIN = previousMintOrigin + } + }) + test('serializes concurrent starts into one managed editor', async () => { const root = await temporaryRoot() const source = await fakeRuntime(root, '1.2.3') @@ -339,6 +358,10 @@ const server = http.createServer((request, response) => { })) return } + if (request.url === '/mint-origin') { + response.end(process.env.MINT_PASCAL_HOST_ORIGIN ?? '') + return + } response.end('{}') }) server.listen(Number(process.env.PORT), process.env.HOSTNAME)