Trạng thái
console.logHoạt động bình thườngconsole.clearHiếm khi dùngYogaHoạt động bình thườngTurbolog encoderHoạt động bình thườngDevTools ThrottlerTuân thủtextjs.orgHoạt động bình thườngĐo hiệu năng trực tiếp
Pipeline @textjs/core chạy trong thẻ này trên bảng tổng quan 100×32 và ghi frame vào console trong bộ nhớ.
- Toàn bộ frame
- —
- layout + vẽ + mã hóa
- Gõ phím
- —
- sửa một dòng
- Frame nhàn rỗi
- —
- không có thay đổi
- span %c
- —
- 3.200 ô
Tự khởi chạy khi trang rảnh.
Lịch sử hiệu năng
packages/core/test/perf.test.ts tại mỗi mốc, trên cùng máy (Apple M5 Pro · Bun 1.4.4). Trung bình của 1.000 frame.
| Bản phát hành | Toàn bộ frame | Gõ phím | Rảnh | span %c |
|---|---|---|---|---|
0.1.0thg 3 2025 · @textjs/core · 7c91cea | 0.194ms | 0.065ms | 0.043ms | 205 |
0.2.0thg 7 2025 · textjs.org · 92437cc | 0.192ms | 0.067ms | 0.042ms | 205 |
0.3.0thg 11 2025 · 10× input · 8c2d1b1 | 0.205ms | 0.065ms | 0.043ms | 146 |
0.3.0thg 11 2025 · Mobile pass · e2e6e46 | 0.212ms | 0.067ms | 0.045ms | 146 |
0.4.0thg 5 2026 · Zero-flash frames · f007ade | 0.184ms | 0.046ms | 0.028ms | 146 |
1.0.0thg 10 2026 · Text.js 1.0 · 57968b6 | 0.163ms | 0.011ms | 0.000ms | 149 |
Frontend DevTools
bench/devtools trong Chrome for Testing: lượt vẽ trống, frame đã chuyển và độ trễ hiển thị, 5 giây mỗi lần chạy. Cách chúng tôi đo.
| Trình điều khiển | FPS | Lượt vẽ trống | Đã vẽ / đã phát | Độ trễ p50 |
|---|---|---|---|---|
| Nối thêm (đang phát hành) | 15 | 1.0% | 74 / 75 | 10.4ms |
| Xóa mỗi frame | 15 | 70.6% | 70 / 75 | 60.4ms |
| Nối thêm, không giãn nhịp | 60 | 0.8% | 67 / 295 | 31.2ms |
| Xóa mỗi frame | 60 | 81.1% | 45 / 300 | 9.8ms |
Sự cố trước đây
Mới nhất trước. Thời gian theo UTC.
tháng 10 năm 2026
Trang bị kẹt dưới đầu trang trên iOS Safari27 thg 10 – 28 thg 10, 2026 · Đã giải quyết
- Đã giải quyết
Đã giải quyết sự cố này.
- Đang theo dõi
Đã triển khai bản sửa lỗi. Đã tắt neo cuộn (
overflow-anchor: none). Chúng tôi đang theo dõi. - Đã xác định
Tiêu đề chính vẫn có thể bị ghim dưới đầu trang cố định sau khi cuộn xuống rồi cuộn lên. Tính năng neo cuộn của Safari đang điều chỉnh vị trí cuộn.
- Đang theo dõi
Đã triển khai bản sửa lỗi. Các phần tử đó giờ chỉ cuộn ngang, và
scrollbar-gutter: stablechỉ áp dụng cho thiết bị dùng chuột. - Đã xác định
Các thẻ tệp, khối mã và bảng văn bản tràn dọc 1 px do gạch chân của thẻ đang chọn, nên chúng cuộn theo cả hai trục và iOS chuyển cho chúng thao tác vuốt dọc dành cho trang.
scrollbar-gutter: stablecũng khiến lần cuộn đầu bị nhảy trên iOS. - Đang điều tra
Chúng tôi đang điều tra báo cáo rằng các trang textjs.org không thể cuộn về đầu trên iOS Safari.
Sự cố này ảnh hưởng đến: textjs.org.
Phân tích sau sự cố
Các trang textjs.org không dịch chuyển khi tải, nên tính năng neo cuộn không có gì để chỉnh. Trên iOS Safari, tính năng này ghim phần đầu trang dưới thanh đầu trang cố định và chặn cuộn về đầu.
?debug=scrolltrên textjs.org giờ hiển thị trực tiếp sự kiện cuộn, chạm và đổi kích thước, đồng thời nêu tên bên gọi mỗi lệnh focus hoặc cuộn bằng mã.Các bản sửa:
297c5d7,55da525,8424fcd· Nhật ký thay đổi: 1.0.0- Đã giải quyết
Kiểm thử quy tắc lint thất bại trong CI23 thg 10, 2026 · Đã giải quyết
- Đã giải quyết
Trình kiểm thử giờ chỉ đọc
it.onlykhi một kiểm thử gọiRuleTester.itOnly. CI đang chạy thành công. - Đã xác định
Bun báo lỗi khi đọc
it.onlylúc biến môi trườngCIcó giá trị. Trình kiểm thử quy tắc gánRuleTester.itOnly = it.onlykhi import, nên tải thất bại. - Đang điều tra
Bộ kiểm thử
eslint-plugin-textjsthất bại trong CI trước khi chạy bất kỳ kiểm thử quy tắc nào. Chạy cục bộ thì đạt.
Phân tích sau sự cố
@typescript-eslint/rule-testernhận các hàm kiểm thử qua thuộc tính tĩnh củaRuleTester. Bản sửa lỗi bọcit.onlytrong một hàm. Không có gói hay trang nào bị ảnh hưởng.Bản sửa:
eca3f78- Đã giải quyết
Dịch chuyển layout trên /playground và /opencode21 thg 10 – 22 thg 10, 2026 · Đã giải quyết
- Đã giải quyết
Độ dịch chuyển layout tích lũy là 0 trên mọi route.
- Đang theo dõi
Đã triển khai bản sửa lỗi. Cả hai trang dùng chung một layout pad và kích thước được nối thêm mà không di chuyển “Vừa console”. Chúng tôi đang theo dõi.
- Đã xác định
Bộ điều khiển kích thước console nối thêm kích thước đo được vào nhãn sau hydration (
Fit console · 120×36), làm dịch chuyển nút văn bản “Vừa console”. Hàng trên và dưới của vùng focus cũng có chiều cao khác nhau giữa hai trang, nên vùng focus căn giữa lại khi chuyển trang. - Đang điều tra
Kiểm tra dịch chuyển layout của chúng tôi ghi nhận mức dịch chuyển layout tích lũy là 0,0001 trên /playground và /opencode. Mọi route khác trong phạm vi kiểm tra đều ghi nhận 0. Vùng focus cũng di chuyển khi chuyển giữa hai trang.
Sự cố này ảnh hưởng đến: textjs.org.
Phân tích sau sự cố
Pad hiện có vùng trên và dưới với chiều cao cố định, và mọi bản demo đều dành sẵn cùng số dòng, nên đổi trang hay bản demo không làm gì dịch chuyển. Bảng kết nối OpenCode hiển thị một dòng trạng thái trong mọi trạng thái, với khung chờ cho đến khi hydrate xong.
apps/web/scripts/e2e-layout.mjskiểm tra các hộp giống hệt nhau giữa các route, bản demo, kích thước viewport và trạng thái kết nối.Bản sửa:
8f22b9b· Nhật ký thay đổi: 1.0.0- Đã giải quyết
Tên gói textjs không khả dụng trên npm14 thg 10 – 15 thg 10, 2026 · Đã giải quyết
- Đã giải quyết
Đã giải quyết sự cố này.
- Đang theo dõi
Gói framework và CLI hiện là
@textjs/next, cùng scope với@textjs/corevà@textjs/react. Các lệnh import đổi từtextjssang@textjs/next. - Đã xác định
Tên
textjsđã thuộc về một gói npm khác từ ngày 25 tháng 3 năm 2016. - Đang điều tra
Xuất bản gói framework
textjslên npm thất bại với lỗi403 Forbidden.
Phân tích sau sự cố
Từ Text.js 1.0, ứng dụng import từ
@textjs/nextthay vìtextjs, và cầu nối OpenCode làbunx @textjs/app proxy, chạy từ bất kỳ thư mục nào.- Đã giải quyết
tháng 9 năm 2026
Lớp vẽ trống tại chỗ ngắt dòng15 thg 9 – 16 thg 9, 2026 · Đã giải quyết
- Đã giải quyết
Đã giải quyết sự cố này.
- Đang theo dõi
Đã triển khai bản sửa lỗi. Chỗ ngắt dòng không tiếp tục một đoạn giờ đặt lại
%cvề kiểu trống trước, nên DevTools tạo ký tự xuống dòng thuần. Mỗi frame mang một màn che. - Đã xác định
Khi một đoạn có định dạng kết thúc tại chỗ ngắt dòng,
\nnằm trong span%ccủa đoạn đó. DevTools tách span tại chỗ xuống dòng, và phần dư trống trở thành spandisplay: inline-blockvớicontain: paint, có lớp vẽ riêng. - Đang điều tra
Chúng tôi đang điều tra các phần tử
<span>trống ở hầu hết chỗ ngắt dòng trong frame DevTools, và span màn che bị nhân đôi ở một số frame.
Sự cố này ảnh hưởng đến: Turbolog encoder.
Phân tích sau sự cố
Các span cùng kiểu vẫn gộp qua chỗ ngắt dòng. Màn che cũng chuyển sang dòng riêng: DevTools đẩy liên kết nguồn (
VM12:1) sang bên phải dòng đầu của thông điệp, và màn che nội tuyến để liên kết đó cạnh dòng 0, khiến dòng này hẹp lại.- Đã giải quyết
tháng 8 năm 2026
Độ trễ hiển thị tăng sau console.clear27 thg 8 – 31 thg 8, 2026 · Đã giải quyết
- Đã giải quyết
Độ trễ hiển thị trung vị trong
bench/devtoolslà 10,4 ms. Bản sửa lỗi có trong Text.js 1.0. - Đang theo dõi
Đã triển khai bản sửa lỗi. Sau mỗi frame có xóa console, bộ render đợi 110 ms một lần, nên các frame sau đến sau lần làm mới trước của DevTools hơn 50 ms và đi theo luồng xử lý ngay.
- Đã xác định
Sau khi xóa, DevTools chèn một dòng “Đã xóa bảng điều khiển”. Dòng này chiếm lượt xử lý ngay của bộ giới hạn tần suất và đẩy frame tiếp theo sang bộ hẹn giờ 50 ms. Với các frame cách nhau 66 ms, mọi frame sau đều nằm trên bộ hẹn giờ đó.
- Đang điều tra
bench/devtoolsghi nhận độ trễ hiển thị trung vị là 63 ms sau khi xóa console. Độ trễ giữ nguyên mức đó ở mọi frame sau.
Sự cố này ảnh hưởng đến: DevTools Throttler, console.clear.
Phân tích sau sự cố
Đầu vào rời rạc vẫn render đồng bộ khi khoảng cách frame cho phép.
- Đã giải quyết
Spinner làm lệch dòng trong console DevTools11 thg 8 – 12 thg 8, 2026 · Đã giải quyết
- Đã giải quyết
Đã giải quyết sự cố này. Bản sửa lỗi có trong Text.js 1.0.
- Đang theo dõi
Đã triển khai bản sửa lỗi. Spinner
dotsmặc định giờ vẽ khối phần tư (▘ ▝ ▗ ▖), mỗi khối chiếm một ô trong Menlo. Các frame braille có sẵn quavariant="braille"cho terminal. - Đã xác định
Spinner mặc định vẽ mẫu braille (U+2800 đến U+28FF). Text.js đo mỗi mẫu là một ô, nhưng Menlo, phông chữ console DevTools trên macOS, không có ký tự braille. Ký tự thay thế rộng hơn một ô và đẩy phần còn lại của dòng sang phải.
- Đang điều tra
Trên macOS, dòng chứa
<Spinner>bị lệch trong DevTools. Các ô bên phải spinner nằm lệch khỏi lưới.
Sự cố này ảnh hưởng đến: console.log.
Phân tích sau sự cố
LineChartmặc định vẽ chấm phần tư vì cùng lý do. Braille có sẵn quamarker="braille".- Đã giải quyết
tháng 5 năm 2026
Tỷ lệ lần vẽ trống tăng trong console DevTools5 thg 5 – 19 thg 5, 2026 · Đã giải quyết
- Đã giải quyết
Bản sửa lỗi đã phát hành trong Text.js 0.4.0. Tỷ lệ lần vẽ trống là 1,0%, tất cả đều ở frame đầu tiên.
- Đang theo dõi
textjs.org giờ nối thêm frame thay vì xóa. Một span màn che có chiều rộng bằng không giữ các frame trước ngoài tầm nhìn, và các frame cách nhau ít nhất 66 ms.
- Đã xác định
DevTools áp dụng
console.clear()đồng bộ nhưng giới hạn tần suất vẽ thông điệp mới ở 50 ms. Mỗi frame xóa frame trước ngay lập tức và vẽ sau tối đa 50 ms. Trongbench/devtools, bảng tổng quan 100×32 bị trống ở 70,6% số lần vẽ của DevTools tại 15 fps và 81,1% tại 60 fps. - Đang điều tra
Chúng tôi đang điều tra báo cáo về console DevTools chớp trống giữa các frame khi chịu tải.
Sự cố này ảnh hưởng đến: console.clear, DevTools Throttler.
Phân tích sau sự cố
Từ 0.1.0, Turbolog đã gửi một
console.clear()và mộtconsole.log()cho mỗi frame thay đổi.bench/devtools, công cụ điều khiển frontend DevTools thật trong Chrome for Testing, được xây dựng để đo sự cố này và tạo ra các số liệu trong bảng frontend DevTools ở trên.Bản sửa:
f007ade· Turbolog: loại bỏ nhấp nháy · Nhật ký thay đổi: 0.4.0- Đã giải quyết
tháng 4 năm 2026
Đường dẫn tệp trong frame console đổi sang kiểu liên kết14 thg 4 – 15 thg 4, 2026 · Đã giải quyết
- Đã giải quyết
Đã giải quyết sự cố này.
- Đang theo dõi
Đã triển khai bản sửa lỗi. Bộ mã hóa chèn word joiner (U+2060) vào văn bản
path:line,//host:portvàdata:, trừ khi ô cho phép liên kết. - Đã xác định
DevTools biến URL, văn bản
path:linevà//host:porttrong thông điệp console thành liên kết và buộc chúng dùng màu theme của nó. Bộ mã hóa đã ngắt://vàwww., nhưngpath:linevà//host:portsau giao thức vẫn khớp. - Đang điều tra
Văn bản như
src/app.tsx:12vàhttp://localhost:3000render bằng màu liên kết của DevTools thay vì kiểu%c.
Sự cố này ảnh hưởng đến: Turbolog encoder.
Phân tích sau sự cố
://vàwww.đã mang word joiner từ 0.1.0. Các ô cần giữ khả năng nhấp đặt thuộc tính allow-link và được ghi nguyên trạng.- Đã giải quyết
tháng 11 năm 2025
Phím gõ bị trễ trong ứng dụng console4 thg 11 – 18 thg 11, 2025 · Đã giải quyết
- Đã giải quyết
Bản sửa lỗi đã phát hành trong Text.js 0.3.0.
- Đang theo dõi
Đã triển khai bản sửa lỗi. Đầu vào rời rạc, như nhấn phím hay dán, giờ render đồng bộ trong cùng tác vụ. Các cập nhật khác vẫn commit trên
requestAnimationFrame. - Đã xác định
Mọi cập nhật, kể cả lần nhấn phím, đều đợi
requestAnimationFrametiếp theo trước khi React commit và ghi frame vào nhật ký. - Đang điều tra
Nội dung gõ trong ứng dụng console hiển thị chậm hơn bàn phím, rõ nhất trong OpenCode trên textjs.org.
Sự cố này ảnh hưởng đến: textjs.org.
Phân tích sau sự cố
Thao tác nhấn phím không còn chờ frame hoạt ảnh tiếp theo. Các commit không đến từ đầu vào, như bộ hẹn giờ và dữ liệu truyền liên tục, vẫn được gom theo từng frame hoạt ảnh.
Bản sửa:
8c2d1b1· Nhật ký thay đổi: 0.3.0- Đã giải quyết