Runtime jank đến từ long task chặn main thread — luồng đơn xử lý JS, layout, paint và input. Khi một task chạy quá lâu, input không được xử lý, nên tương tác thấy như bị đơ và INP tăng vọt.
Mô hình cốt lõi: main thread
text
Main thread: [ event handler 180ms ] input xếp hàng... render ─▶ INP = thời gian tới paint kế
└── một "long task" (>50ms) chặn mọi thứ, kể cả phản hồi cú click
INP đo độ trễ từ khi người dùng tương tác tới lần paint kế tiếp. Nó gồm ba phần: (main thread bận lúc bạn click), (handler của bạn), và (style/layout/paint sau đó).
