Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

fix(cli): launch Biome reliably in Windows architecture guards

Đã đóng
#881 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
78/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
node.js, typescript
Lĩnh vực
cli, testing-qa

Hướng nghiên cứu

Start in cli/tests/architecture/biome-guards-bite.arch.test.ts and run the Windows launch reproduction comparing node_modules/.bin/biome with the package entry point through Node. Trace biomeFindings() and its three planted positive cases, checking startup errors before findings are parsed while preserving ordinary nonzero lint results. Done means Biome launches on supported platforms and the positive guards receive their expected diagnostics.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Following the request in https://github.com/ai-driven-dev/framework/issues/863#issuecomment-5719279915, this tracks the launcher defect separately from architecture path normalization.

At 83b0246e532d3f76491baabbc8b0b266f00e3590, cli/tests/architecture/biome-guards-bite.arch.test.ts builds BIOME from node_modules/.bin/biome and passes that path directly to spawnSync. On native Windows the launch returns status: null and error.code: ENOENT. Invoking the installed package through Node succeeds with exit 0 and prints Version: 2.5.11.

Environment: Windows, Node 22.23.1, pnpm 12.3.4 for the latest architecture-suite run. Existing dependencies were originally installed with pnpm 11.19.0 and --ignore-scripts; this is not a claim of a fresh installation under 12.3.4.

From cli/, this launch-only reproduction uses the same installed dependency for both attempts:

import { spawnSync } from "node:child_process";
import { resolve } from "node:path";

const direct = spawnSync(resolve("node_modules/.bin/biome"), ["--version"], {
  encoding: "utf8",
});
const viaNode = spawnSync(process.execPath, [
  resolve("node_modules/@biomejs/biome/bin/biome"), "--version",
], { encoding: "utf8" });
for (const [name, result] of [["shim", direct], ["node", viaNode]]) {
  console.log(name, result.status, result.error?.code, result.stdout, result.stderr);
}

biomeFindings() does not inspect result.error or verify that the process started. It parses stdout/stderr and returns [] after a failed launch, which is indistinguishable from a successful invocation with no findings to a caller expecting a clean result. The planted positive cases do fail: the three tests for process.exit, process globals, and default exports all receive empty arrays instead of their expected diagnostics.

Expected: use a launcher that works on supported platforms, and surface process-start failures as explicit failures before parsing findings. Preserve ordinary nonzero lint results, since those carry the violations the guard is designed to assert.

The control above proves only executable startup, not lint correctness. No Biome launcher changes are included in the separate path-normalization contribution.

Affected file: cli/tests/architecture/biome-guards-bite.arch.test.ts

AI tool: Codex. CLI checkout version: 5.3.0. OS: Windows. Path normalization PR: #880.

Ngôn ngữ chính
TypeScript
Star
481
Fork
45
Merge trung bình
2 ngày 3 giờ
Pull request đã merge (30 ngày)
54

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của ai-driven-dev/framework

Tất cả issue của ai-driven-dev/framework

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.