@dahawa/hawa-cli-analysis 1.0.8 → 1.0.10

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.
@@ -350,7 +350,7 @@ const startServer = async () => {
350
350
  // 输出端口信息到标准输出,供父进程读取
351
351
  logger.system.debug(`PROXY_PORT:${port}`);
352
352
  } catch (err) {
353
- fastify.log.error(err);
353
+ logger.system.debug("代理服务启动失败:",err)
354
354
  process.exit(1);
355
355
  }
356
356
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dahawa/hawa-cli-analysis",
3
- "version": "1.0.8",
3
+ "version": "1.0.10",
4
4
  "main": "index",
5
5
  "bin": {
6
6
  "uclaude": "uclaude.js",
package/port-manager.js CHANGED
@@ -17,23 +17,28 @@ class PortManager {
17
17
  * @returns {Promise<boolean>} - 端口是否可用
18
18
  */
19
19
  async isPortAvailable(port) {
20
- return new Promise((resolve) => {
20
+ return new Promise((resolve, reject) => {
21
21
  const server = net.createServer();
22
22
 
23
23
  server.once('error', (err) => {
24
- if (err.code === 'EADDRINUSE') {
25
- resolve(false);
26
- } else {
27
- resolve(false);
28
- }
24
+ server.close(() => {
25
+ // 确保服务器已关闭
26
+ if (err.code === 'EADDRINUSE') {
27
+ resolve(false);
28
+ } else {
29
+ reject(err); // 其他错误应该抛出
30
+ }
31
+ });
29
32
  });
30
33
 
31
34
  server.once('listening', () => {
32
- server.close();
33
- resolve(true);
35
+ server.close(() => {
36
+ // 等待 close 完成后再 resolve
37
+ resolve(true);
38
+ });
34
39
  });
35
-
36
- server.listen(port);
40
+ // 必须指定地址 不然 mac 下是 ipv6 ,检查端口不生效
41
+ server.listen(port,'0.0.0.0');
37
42
  });
38
43
  }
39
44