V2 config: ignore {file:...} in JSONC comments
Maintainer thường phản hồi trong vòng 1 ngày
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 70/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ệ
- typescript
Hướng nghiên cứu
Vấn đề nằm trong logic thay thế token của trình phân tích cấu hình V2. Hãy tìm mã xử lý các token {file:...}, có thể trong một tệp như src/config/parser.ts hoặc tương tự. Bản sửa lỗi cần bỏ qua các token bên trong chú thích JSONC (// và /* */), không chỉ các dòng bắt đầu bằng //. Hãy bắt đầu bằng cách chạy các bước tái tạo được cung cấp để xem lỗi, sau đó kiểm tra pull request được liên kết #50899 để hiểu ngữ cảnh của bản sửa lỗi dự kiến.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Description
In V2, a {file:...} token inside an inline // or /* ... */ comment in opencode.jsonc is treated as a real file reference. If that file does not exist, an otherwise valid config fails to load. The current substitution code skips only lines that begin with //.
Expected: comments are left alone; only active config values are substituted. Missing files in active values should still be errors.
Related #14478 concerned an active token shadowed by a commented duplicate in the older config path; here V2 dereferences tokens that occur only in comments.
Implementation: #50899 (targets v2).
Plugins
None
OpenCode version
V2 9c8a63e852722a9bced4a0de1179de58a85dfa20
Steps to reproduce
-
Create
opencode.jsoncwith:{ "username": "demo" // {file:./not-present.txt} } -
Load the configuration. It fails trying to read
not-present.txteven though the token is in a comment. A block comment containing the token has the same problem.
Screenshot and/or share link
Not applicable. A Core config regression test reproduces the failure with NotFound for missing-inline.txt before the fix.
Operating System
Linux x86_64
Terminal
Not applicable (Core test)
- Ngôn ngữ chính
- TypeScript
- Star
- 215k
- Fork
- 28.9k
- Merge trung bình
- 8 giờ 11 phút
- Pull request đã merge (30 ngày)
- 365
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của anomalyco/opencode
-
reproduced
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 67/100
anomalyco/opencode#57711 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
anomalyco/opencode#57698 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
pending close triaging
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
anomalyco/opencode#57664 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
anomalyco/opencode#57579 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
anomalyco/opencode#57536 · 1 bình luận · 1 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của anomalyco/opencode
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
endora-commerce/endora-commerce#397 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
level/task
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
wazuh/wazuh-dashboard-plugins#9472 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 63/100
Maintainer thường phản hồi trong vòng 1 ngày
-
ready-for-agent
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
xavxyz/bei-shan-lin-shui#57 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
opennextjs/opennextjs-cloudflare#1461 ·
Maintainer thường phản hồi trong vòng 1 ngày