mirror of
https://github.com/tiennm99/thptqg.git
synced 2026-10-14 10:19:00 +00:00
refactor(parser): remove the Rust crate now that Go is at parity
The Go parser has matched the Rust one field-by-field across all four datasets, so the Rust crate is retired and CI builds the Go binary instead. crawl-baotintuc.js moves to go-parser/scripts/ — it is the only mechanism for refreshing data/2017 and has a documented runbook. check-duplicates.js and diff-datasets.js are dropped: both had been broken since before the repo was unified, and neither had a caller. db-stats.js and verify-parity.js are dropped as superseded by differential-parity.mjs, which compares more and cannot silently skip a dataset. The reader-fidelity oracle is kept and marked frozen. It was produced by the Rust reader so it can no longer be regenerated, but it still fails if any single cell of any of the 299 input files reads differently. Source comments cite the original Rust by file and line; those paths resolve at tag pre-go-parser-removal, recorded in go-parser/README.md.
This commit is contained in:
1 parent
0eb174721d
commit
00a08d5fab
42 files changed
+112
-4790
No files matched your search
@@ -1,32 +0,0 @@
|
||||
# thptqg2016 data/ — 4 .xls + 115 .xlsx mixed files.
|
||||
#
|
||||
# Three column layouts exist across the 119 files; the binary selects the
|
||||
# right one per-file at runtime via format_detection = "thptqg2016":
|
||||
#
|
||||
# separate-scores header SBD(0)/HOTEN(1)/TOAN(2)... — dhhanghai files
|
||||
# mapped header SOBAODANH|SBD + DIEM_THI — most provinces
|
||||
# default no header; positional 6-col layout — remaining files
|
||||
#
|
||||
# This is the only dataset that populates ten_cum_thi and gioi_tinh, and the
|
||||
# only one whose files carry Tiếng Đức / Tiếng Nhật scores.
|
||||
#
|
||||
# sheet_mode = "all": several provinces overflow into Sheet2 (65k Excel row cap).
|
||||
# strip_blank_rows = false: no blank-row anomaly observed in this dataset.
|
||||
#
|
||||
# Table shape, INSERT and subject regexes are canonical — see src/schema.rs.
|
||||
|
||||
format_detection: thptqg2016
|
||||
|
||||
reader:
|
||||
sheet_mode: all
|
||||
strip_blank_rows: false
|
||||
|
||||
validation:
|
||||
require_numeric_sbd: false
|
||||
require_nonempty_name: true
|
||||
require_nonempty_sbd: true
|
||||
|
||||
header:
|
||||
# Tokens that identify a header row by first-cell content (uppercased).
|
||||
# Covers both SOBAODANH-style and SBD-style headers.
|
||||
tokens: ["SOBAODANH", "SBD", "HO_TEN", "HOTEN", "HỌ TÊN", "STT"]
|
||||
@@ -1,25 +0,0 @@
|
||||
# thptqg2017 data-old/ — 63 .xlsx files (pre-baotintuc refresh).
|
||||
#
|
||||
# sheet_mode = "first": single-sheet workbooks, never hit the 65k row cap.
|
||||
# SBD validation: require ^\d+$ (build-database-old.js:55 guard).
|
||||
# strip_blank_rows = false: no explicit blank-skip in build-database-old.js.
|
||||
#
|
||||
# Table shape, INSERT and subject regexes are canonical — see src/schema.rs.
|
||||
|
||||
reader:
|
||||
sheet_mode: first
|
||||
strip_blank_rows: false
|
||||
|
||||
columns:
|
||||
ho_ten: 0
|
||||
ngay_sinh: 1
|
||||
so_bao_danh: 2
|
||||
diem_thi: 3
|
||||
|
||||
validation:
|
||||
require_numeric_sbd: true
|
||||
require_nonempty_name: true
|
||||
require_nonempty_sbd: true
|
||||
|
||||
header:
|
||||
tokens: ["HO_TEN", "HỌ TÊN", "STT"]
|
||||
@@ -1,26 +0,0 @@
|
||||
# thptqg2017 data-old2/ — 54 .xlsx files (corrected-export set).
|
||||
#
|
||||
# sheet_mode = "all": 24.HCM_UTLQ.xlsx overflows into Sheet2 (+6,446 rows).
|
||||
# SBD validation: require ^\d+$ (build-database-old2.js:57 guard).
|
||||
# strip_blank_rows = true: skip fully blank rows BEFORE counting sourceRows
|
||||
# (build-database-old2.js:50-51 checks blank before sourceRows++).
|
||||
#
|
||||
# Table shape, INSERT and subject regexes are canonical — see src/schema.rs.
|
||||
|
||||
reader:
|
||||
sheet_mode: all
|
||||
strip_blank_rows: true
|
||||
|
||||
columns:
|
||||
ho_ten: 0
|
||||
ngay_sinh: 1
|
||||
so_bao_danh: 2
|
||||
diem_thi: 3
|
||||
|
||||
validation:
|
||||
require_numeric_sbd: true
|
||||
require_nonempty_name: true
|
||||
require_nonempty_sbd: true
|
||||
|
||||
header:
|
||||
tokens: ["HO_TEN", "HỌ TÊN", "STT"]
|
||||
@@ -1,25 +0,0 @@
|
||||
# thptqg2017 data/ — 63 .xls files from baotintuc.vn (current generation).
|
||||
#
|
||||
# sheet_mode = "all": Hà Nội and HCM overflow into Sheet2 (65k Excel row cap).
|
||||
# SBD validation: no numeric guard — build-database.js did not apply ^\d+$.
|
||||
# strip_blank_rows = false: no blank-row anomaly in this dataset.
|
||||
#
|
||||
# Table shape, INSERT and subject regexes are canonical — see src/schema.rs.
|
||||
|
||||
reader:
|
||||
sheet_mode: all
|
||||
strip_blank_rows: false
|
||||
|
||||
columns:
|
||||
ho_ten: 0
|
||||
ngay_sinh: 1
|
||||
so_bao_danh: 2
|
||||
diem_thi: 3
|
||||
|
||||
validation:
|
||||
require_numeric_sbd: false
|
||||
require_nonempty_name: true
|
||||
require_nonempty_sbd: true
|
||||
|
||||
header:
|
||||
tokens: ["HO_TEN", "HỌ TÊN", "STT"]
|
||||
Reference in new issue
Block a user