Giai đoạn: 13/07 (chiều) – 20/07/2026 · Tổng hợp từ lịch sử Git, dữ liệu vận hành trong DB và transcript phiên làm việc Claude
Người thực hiện: jc-hello
Ngày lập: 20/07/2026
Phạm vi: 3 dự án
Tổng quan tuần
Tuần này có ba trục rõ rệt — và điểm chung của cả ba là làm cho dữ liệu đáng tin để ra quyết định:
Dashboard — dựng "hộp đen" ghi lại mọi thao tác của BD. Toàn bộ chỉnh sửa dữ liệu giờ được ghi nhật ký: ai sửa, sửa gì, từ giá trị nào sang giá trị nào, lúc nào. Kèm trang xem lịch sử và tab thống kê hiệu suất theo từng BD.
chicgo_data — tự xây research engine thay Perplexity. Từ đi thuê provider ngoài sang tự chủ, chi phí ~$8/1.000 địa điểm, có báo cáo đối chiếu chất lượng để QC tự đánh giá.
ecom_data — nghiên cứu 2 ngách sản phẩm Amazon.Bamboo wall fan (quạt tre treo tường) và Basket set (bộ giỏ đựng đồ) — lọc sạch sản phẩm lạc để có bức tranh đủ tin cậy mà chọn hàng.
37
commit trong tuần
3.192
địa điểm BD confirm vận hành
3.664
địa điểm được enrich thêm
$8,06
chi phí enrich / 1.000 điểm
Khối lượng commit theo dự án:
29
chicdata_dashboard Nhật ký BD / Phân quyền / Lọc tỉnh
8
chicgo_data Research engine
—
ecom_data Phân tích ngách
1. Số liệu vận hành — đội BD đang chạy tới đâu
Ngoài phần code, đây là kết quả thực tế đội BD tạo ra trong tuần (số liệu lấy trực tiếp từ DB ngày 20/07):
32.693
tổng địa điểm trong kho
10.421
đã enrich (đủ điều kiện confirm)
8.815
đã được BD confirm
79%
tiến độ confirm trên số đã enrich
Địa điểm BD confirm theo ngày:
43313/07
51414/07
54615/07
41716/07
24517/07
39918/07
46519/07
17320/07
Trung bình ~431 địa điểm/ngày (tính 13–19/07; ngày 20/07 mới hết buổi sáng). Ngày 17/07 thấp bất thường (245) — đáng hỏi lại đội để biết nguyên nhân.
2. chicdata_dashboard — Nhật ký BD, phân quyền & lọc tỉnh — trọng tâm tuần
2.1 Nhật ký chỉnh sửa của BD (BD Commits) tính năng lớn nhất tuần
Trước đây khi một địa điểm bị sửa sai, không có cách nào biết ai sửa và sửa gì. Tuần này dựng hẳn một hệ thống ghi nhật ký giống như lịch sử chỉnh sửa của Google Docs, áp cho toàn bộ thao tác dữ liệu.
Vì sao quan trọng: đây là nền tảng để quản lý chất lượng và đánh giá hiệu suất đội BD. Chị vừa truy được nguồn gốc một thay đổi sai (ai, khi nào, giá trị cũ là gì để khôi phục), vừa nhìn được ai đang làm nhiều — làm ít, làm loại việc gì.
Ghi lại những gì:
Sửa thông tin địa điểm, confirm, chấm điểm (scoring), duyệt/từ chối (verify/reject).
Xoá đánh giá & bình luận, ẩn/hiện phản hồi, xác minh ShopeeFood, khôi phục dữ liệu từ kho lưu trữ.
Mỗi thay đổi lưu giá trị trước → giá trị sau, người thực hiện và thời điểm.
Xem lại thế nào:
Trang Lịch sử (/commits) — dòng thời gian có lọc theo người thực hiện; quyền xem được phân theo vai trò (BD chỉ thấy phần của mình).
Diễn giải dễ đọc — các trường phức tạp (bảng giá, mạng xã hội, link) hiển thị thành câu tiếng Việt dễ hiểu thay vì đoạn JSON thô; lịch sử link hiện rõ URL cũ/mới.
Tab Phân tích — biểu đồ hoạt động theo ngày, bảng xếp hạng BD làm nhiều nhất, biểu đồ tròn theo loại hành động, phân bố theo loại dữ liệu, kèm số tổng toàn hệ thống.
Đã xử lý các lỗi phát sinh: danh sách trắng trơn do lỗi tải dữ liệu phía máy chủ, lỗi 401 khi vào trang, các dòng "(trống) → (trống)" vô nghĩa, và dải trắng khi cuộn quá đà. Có bộ kiểm thử tự động cho phần so sánh thay đổi và lọc theo tác giả.
2.2 Phân quyền: BD chỉ thấy đúng phần việc của mình bảo mật
Phân quyền theo năng lực (capability) — tài khoản không phải super-admin chỉ nhìn thấy BD Confirm, không vào được các mảng dữ liệu khác.
BD làm việc theo link được giao — mở thẳng một địa điểm cụ thể ở chế độ toàn màn hình, thay vì duyệt tự do toàn kho. Quyền duyệt toàn bộ giữ cho super-admin.
Link sheet nhận data (Apps Script) đặt ngay trên thanh tiêu đề BD Confirm và ở màn hình trống, BD bấm là lấy được phần việc được phân.
Từ trang thành tích cá nhân sửa lại được — bấm vào một địa điểm đã verify sẽ mở thẳng màn chỉnh sửa của địa điểm đó.
2.3 Công cụ AI hỗ trợ BD
Luôn hiện công cụ prompt AI — kể cả với địa điểm đã enrich; kèm chú thích (i) ở từng bước hướng dẫn quy trình sao chép prompt → dán vào AI → dán kết quả trở lại, để BD mới cũng dùng được ngay.
Duyệt đề xuất của AI có so sánh trước → sau — với các trường phân loại (sub-category, intent, keyword), BD thấy rõ AI định đổi gì trước khi đồng ý, không còn ghi đè mù.
2.4 Ảnh & trải nghiệm xem
Xem ảnh phóng to toàn màn hình — zoom bằng cuộn chuột/bấm, kéo di chuyển, chuyển ảnh bằng bàn phím; xem preview 11 ảnh thay vì vài ảnh như trước.
Sửa 2 lỗi khó chịu khi xem ảnh — bấm nút đóng/zoom bị "lọt" xuống link Google Maps phía dưới; và bảng chi tiết bị đóng nhầm khi đang xem ảnh phóng to.
Sửa lỗi mất ảnhquan trọng — thao tác khôi phục một ảnh đã ẩn vô tình gộp trùng toàn bộ danh sách ảnh của địa điểm, làm mất các ảnh trùng hợp lệ. Đã sửa để chỉ đụng đúng ảnh được khôi phục. Đồng thời lọc bỏ các mục ảnh rỗng/lỗi.
2.5 Lọc theo 34 tỉnh/thành sau sáp nhập
Việt Nam còn 34 tỉnh/thành từ 01/07/2025, trong khi dữ liệu vẫn còn nhiều bản ghi ghi tên tỉnh cũ. Dashboard giờ lọc theo đơn vị mới và tự quy đổi tên cũ nên không sót dữ liệu.
Lọc được ở mọi nơi — Places, hàng chờ duyệt, các API thống kê; chọn tỉnh bằng dải chip cuộn ngang nên thấy ngay tỉnh nào nhiều dữ liệu.
BD Confirm: các con số luôn khớp nhau — trước đây chọn một tỉnh thì danh sách lọc theo tỉnh nhưng thẻ danh mục vẫn hiện số toàn quốc, còn số trong ô chọn tỉnh lại đếm theo tiêu chuẩn khác (tính cả địa điểm chưa enrich): ba con số trên cùng màn hình không nói cùng một chuyện. Giờ chọn tỉnh cập nhật đồng bộ mọi thẻ danh mục, mọi dòng phường/xã, danh sách và huy hiệu tiến độ.
Ô chọn tỉnh thiết kế lại — có tìm kiếm, nhãn "TP" cho thành phố trực thuộc TƯ, hiện đã confirm / tổng trên từng dòng, tỉnh chưa có dữ liệu vẫn hiện (làm mờ), có nút xoá lọc.
Kiểm thử khẳng định số liệu cộng khớp — tổng theo danh mục của một tỉnh phải bằng tổng của tỉnh đó tính theo chiều ngược lại.
2.6 Bản đồ & danh mục
Bản đồ toàn màn hình và ghim riêng theo danh mục — nhìn bản đồ phân biệt được loại hình địa điểm; gỡ trang thử nghiệm bản đồ không còn dùng.
Tách danh mục homestay_hotel thành homestay và hotel riêng — hai loại hình khác nhau về giá và nhu cầu khách, gộp chung làm sai thống kê.
Lâu nay để biết một quán giá bao nhiêu và thuộc nhóm nào, chic phải gửi câu hỏi ra ngoài cho Perplexity — dịch vụ trả phí của bên thứ ba. Tuần này đã dựng xong engine nghiên cứu của riêng chic: tự tìm kiếm web, tự đọc trang, tự tổng hợp thành dữ liệu có cấu trúc, và giữ lại bằng chứng từng bước để kiểm chứng.
Vì sao quan trọng: bước chuyển từ đi thuê sang tự làm chủ. Chi phí giảm mạnh, không phụ thuộc chính sách/giá bên thứ ba, và engine được thiết kế dùng chung cho nhiều loại nghiên cứu chứ không riêng giá/phân loại — nhu cầu dữ liệu mới sau này dùng lại được ngay.
3.1 Kết quả đối chiếu với Perplexity 10 địa điểm mẫu
Chọn 10 địa điểm mà Perplexity đã làm tốt (có giá, phân loại đầy đủ) rồi chạy lại bằng engine mới để so sòng phẳng:
Tiêu chí
Perplexity (cũ)
Engine mới
Nhận xét
Độ phủ giá (có số)
100%
70%
Điểm cần cải thiện
Phân loại (category) đúng
100%
90%
Gần ngang
Mã phân loại đúng chuẩn
100%
100%
Đạt
Số nhãn phụ / điểm
6,8
4,7
Ít hơn nhưng 100% hợp lệ, không bịa
Chi phí / điểm
trả phí bên ngoài
$0,0081
≈ $8 cho 1.000 điểm
Điểm BD/QC cần lưu ý: engine mới ít tìm ra giá hơn Perplexity (70% so với 100%) vì công cụ tìm kiếm miễn phí không mạnh bằng hạ tầng của Perplexity. Chất lượng phân loại đã ngang, và không có trường hợp bịa dữ liệu nào — mọi nhãn sinh ra đều nằm trong bộ phân loại chuẩn.
3.2 Các cải tiến để tiệm cận Perplexity
Gợi ý sẵn nhóm ngành — phân loại đúng 50%→100%, không còn kết quả "không xác định".
Câu tìm kiếm nhắm thẳng vào giá — độ phủ giá 50%→70%.
Đọc được trang cần JavaScript — foody, shopeefood, kiotviet đọc bằng trình duyệt ẩn nên lấy được giá.
Gộp nhiều địa điểm vào một lần gọi AI — tiết kiệm 31% dung lượng xử lý và 37% chi phí (đo trên 6 quán cafe), chất lượng giữ nguyên.
Chịu được lỗi kết nối — DB Neon tự ngắt kết nối nhàn rỗi làm hỏng các lần chạy dài; đã sửa.
3.3 Trạng thái triển khai
Engine ở chế độ bật tuỳ chọn (ENRICH_LOCAL_RESEARCH=1) — mặc định vẫn chạy Perplexity, không rủi ro cho dữ liệu đang chạy.
Báo cáo HTML đối chiếu tự sinh cho BD/QC xem 10 địa điểm cạnh nhau kèm bảng điểm.
17 bài kiểm thử tự động, toàn bộ mạng được giả lập nên chạy test không tốn phí API.
4. ecom_data — Nghiên cứu ngách Amazon: Bamboo wall fan & Basket set
Crawler Amazon dựng tuần trước tuần này đi vào khai thác thật trên hai ngách: Bamboo wall fan (quạt tre treo tường trang trí) và Basket set (bộ giỏ đựng đồ), kèm công cụ tự sinh báo cáo phân tích để chọn hàng.
116
SP đúng ngách quạt tre treo tường
460
đánh giá đã phân tích (quạt tre)
74
SP ngách Basket set bị chặn 1 phần
2
ngách đã nghiên cứu
4.1 Phát hiện quan trọng: một từ khoá — hai thị trường khác nhau
Từ khoá "bamboo wall fan" trên Amazon KHÔNG phải một ngách. Trong 1.002 sản phẩm thu được, chỉ 116 sản phẩm thực sự là quạt tre treo tường trang trí. Phần còn lại là quạt cầm tay gấp (~$13), quạt điện gắn tường, thậm chí giàn leo cây bằng tre. Nếu phân tích gộp, mọi con số về giá và nhu cầu khách đều sai lệch.
4.2 Ngách A — Quạt tre treo tường (Bamboo wall fan)
Chỉ số
Giá trị
Ý nghĩa
Số sản phẩm đúng ngách
116
Sau khi loại quạt cầm tay, quạt điện, hàng dưới $30
Giá median
$46
Dải thực tế $30 – $73
Rating trung bình
4,47
Ngách "sạch", ít hàng lỗi
Nhóm $30–50
56% số SP · ~220 đánh giá/SP
Bán chạy nhất
Nhóm $50–70
41% số SP · ~123 đánh giá/SP
Nhiều người bán nhưng bán chậm hơn
Đọc gì từ đây: người bán đang dồn về phân khúc $50–70, nhưng sức mua thực tế nằm ở $30–50 — nhóm này có lượng đánh giá trung bình gần gấp đôi. Dẫn đầu ngách là ChumDecor (479 đánh giá, thứ hạng bán chạy 57), sau đó là Oriental-Decor và SUCHUBU.
Khách hàng nói gì (phân tích 460 đánh giá + dữ liệu tổng hợp của Amazon):
Điểm mạnh gần như tuyệt đối: ngoại hình (2.683 lượt nhắc, 98% tích cực), dễ lắp treo (644 lượt, 100% tích cực), nâng tầm không gian phòng.
Hai điểm đau để khai thác:mùi — 80 lượt nhắc, 60 tiêu cực (quạt có mùi khi mới mở hộp); màu lệch so với ảnh — 175/785 lượt nhắc là tiêu cực.
Không có vấn đề độ bền nghiêm trọng — đây là ngách "sạch", rủi ro hàng lỗi/đổi trả thấp.
4.3 Ngách B — Bộ giỏ đựng đồ (Basket set) dữ liệu chưa đầy đủ
Chỉ số
Giá trị
Ý nghĩa
Sản phẩm đã thu
74
48 listing gốc + biến thể
Giá median
$24
Dải rộng $3 – $130
Rating trung bình
4,66
Cao hơn cả ngách quạt tre
Phân khúc đông nhất
$20–30 (41% số SP)
Kế đó là dưới $20 (24%)
Thương hiệu dẫn đầu
Amazon Basics
119.066 đánh giá — áp đảo
Cảnh báo cho quyết định chọn hàng: ngách này nhìn "đẹp" (rating 4,66) nhưng Amazon Basics thống trị tuyệt đối với hơn 119 nghìn đánh giá trên một listing duy nhất — cạnh tranh trực diện về giá gần như không có cửa. Nếu vào ngách này phải đi hướng khác biệt (chất liệu, thẩm mỹ, bộ sản phẩm), không đi hướng rẻ hơn.
Khách hàng nói gì: tín hiệu rất tích cực về chất lượng (35.434 lượt nhắc, 95% tích cực), đáng tiền (26.396 lượt, 98% tích cực) và khả năng chứa đồ. Hai điểm đau duy nhất đáng kể là kích thước không như mong đợi (4.875/20.583 lượt nhắc tiêu cực — khách đặt về thấy nhỏ hơn hình dung) và độ cứng/giữ form (4.670 lượt tiêu cực).
4.4 Công cụ & vướng mắc
Công cụ xuất báo cáo phân tích (tools/export_niche_analysis.py) — một lệnh sinh file Excel gồm tổng quan ngách, phân bố giá, top sản phẩm (đã gộp biến thể cùng listing), toàn bộ sản phẩm, toàn bộ đánh giá và phân tích định tính. Quy tắc lọc ngách khai báo tập trung một chỗ, dễ chỉnh khi đổi tiêu chí.
Vướng mắcAmazon chặn crawl ngách "Basket set" — lần chạy cuối gặp 16 captcha nên chỉ 15/49 listing lấy được dữ liệu chi tiết, và 0 đánh giá thu được do Amazon bắt đăng nhập (cookie phiên hết hạn). Số liệu giá/rating/thương hiệu vẫn dùng được vì lấy từ trang tìm kiếm; phần phân tích định tính dựa trên dữ liệu tổng hợp "Customers say" của Amazon. Cần đăng nhập lại thủ công rồi crawl bổ sung.
Sự cốMột lần crawl bị gián đoạn do rớt mạng tới DB, dừng ở 8/48 sản phẩm; phát hiện qua log, đặt lại trạng thái và chạy lại thành công.
Việc tiếp theo
chicgo_data — nâng độ phủ giá của engine nội bộ từ 70% lên ≥90%, chạy thử diện rộng trước khi cân nhắc thay hẳn Perplexity.
ecom_data — làm mới cookie Amazon rồi crawl bổ sung ngách Basket set (hiện thiếu chi tiết của 34/49 listing và toàn bộ đánh giá); ngách quạt tre treo tường đã đủ dữ liệu để ra quyết định chọn hàng.
chicdata_dashboard — dùng tab Phân tích của Nhật ký BD để theo dõi hiệu suất thực tế; theo dõi phản hồi của BD khi dùng bộ lọc tỉnh mới.
Vận hành — còn 2.234 địa điểm đã enrich nhưng chưa confirm; với tốc độ ~431 điểm/ngày thì cần khoảng 5 ngày làm việc để dọn hết tồn. Song song, enrich vẫn chạy (3.664 điểm tuần này) nên tồn sẽ được bù thêm.