Skip to content

fix(data): populate base_model_slug on 31,372 smartphone records - #247

Merged
Seungpyo1007 merged 191 commits into
developfrom
data/base-model-slug-fill
Sep 24, 2026
Merged

Seungpyo1007 merged 191 commits into
developfrom
data/base-model-slug-fill

Conversation

@Seungpyo1007

@Seungpyo1007 Seungpyo1007 commented Sep 24, 2026 •

Copy link
Copy Markdown
Member

Summary

TechPicks (reference-consumer app) reported its canonical flagship catalog had base_model_slug null on 100% of records, blocking variant-grouping. Of 93,396 smartphone records, 61,731 already had it (populated on bulk-imported derivative records grouped by physical device); the 31,665 gap was almost entirely the curated/flagship records that never got it computed.

  • 12,698 joined an existing same-brand group (12,688 exact slug match, 10 via known import-suffix stripping)
  • 18,674 self-referenced (their own slug, since no sibling group exists yet — mostly 2023-2026 flagships with no bulk-import sibling)
  • 293 left null on purpose: cross-brand slug collisions (287, e.g. flash exists under alcatel/dell/zte) or multiple same-brand candidate bases (6) — no guessing.

Test plan

  • python -m app.validate passed

Closes #1

@TechEngineBot

Copy link
Copy Markdown
Member

🔎 Data verification — Tier 0 (offline existence/trust)

Scored by app.verify; posted by TechEngineBot. Informational only — the structural gate (app.validate) is separate and authoritative for merge.

Changed records in this PR

31372 record(s) scored.

%%{init: {"theme":"base","themeVariables":{"pie1":"#3fb950","pie2":"#d29922","pie3":"#f85149","pieStrokeWidth":"0px","pieOpacity":"1"}}}%%
pie showData
    title Verification bands — all records
    "Green" : 13819
    "Yellow" : 17552
    "Red" : 1
Loading
Category Distribution Total 🟢 🟡 🔴 🟢 %
smartphone 🟩🟩🟩🟩🟩🟨🟨🟨🟨🟨🟨🟥 31372 13819 17552 1 44.0%
All 🟩🟩🟩🟩🟩🟨🟨🟨🟨🟨🟨🟥 31372 13819 17552 1 44.0%

Full-dataset baseline

105800 record(s) scored.

%%{init: {"theme":"base","themeVariables":{"pie1":"#3fb950","pie2":"#d29922","pie3":"#f85149","pieStrokeWidth":"0px","pieOpacity":"1"}}}%%
pie showData
    title Verification bands — all records
    "Green" : 23435
    "Yellow" : 81244
    "Red" : 1121
Loading
Category Distribution Total 🟢 🟡 🔴 🟢 %
brand 🟩🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨 207 24 183 0 11.6%
soc 🟩🟨🟨🟨🟨🟨🟥🟥🟥🟥🟥🟥 2104 231 825 1048 11.0%
smartphone 🟩🟩🟨🟨🟨🟨🟨🟨🟨🟨🟨🟥 93396 17909 75420 67 19.2%
tablet 🟩🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟥 3455 277 3177 1 8.0%
watch 🟩🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟥 433 39 390 4 9.0%
pda 🟩🟩🟩🟩🟩🟩🟩🟨🟨🟨🟨🟨 140 83 57 0 59.3%
gpu 🟩🟩🟩🟩🟩🟩🟩🟨🟨🟨🟨🟨 2030 1211 819 0 59.7%
cpu 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟨🟥 4035 3661 373 1 90.7%
All 🟩🟩🟩🟨🟨🟨🟨🟨🟨🟨🟨🟥 105800 23435 81244 1121 22.2%

Hard violations (forced red):

Count Check
1 !boost_ge_base

green = authoritative source + complete + consistent · yellow = plausible, needs confirmation · red = sparse/weak source or a hard contradiction. Promotion to verified runs in the scheduled verify-network workflow.

@TechEngineBot

TechEngineBot commented Sep 24, 2026 •

Copy link
Copy Markdown
Member

TechEngine change review: PASS

Check Result
python -m app.validate PASS
New hard integrity anomalies vs PR base PASS

Changed data

Category Added Modified Deleted Added verified Added unverified Added Kaggle-sourced
brand 0 0 0 0 0 0
soc 0 0 0 0 0 0
smartphone 0 31372 0 0 0 0
tablet 0 0 0 0 0 0
watch 0 0 0 0 0 0
pda 0 0 0 0 0 0
gpu 0 0 0 0 0 0
cpu 0 0 0 0 0 0

Changed record examples

smartphone modified

  • smartphone/acer/2001/acer-s10.json - Acer s10
  • smartphone/acer/2002/acer-s50.json - Acer s50
  • smartphone/acer/2002/acer-s60.json - Acer s60
  • smartphone/acer/2003/acer-n10.json - Acer n10
  • smartphone/acer/2003/acer-n20.json - Acer n20
  • smartphone/acer/2003/acer-n20w.json - Acer n20w
  • smartphone/acer/2004/acer-n30.json - Acer n30
  • smartphone/acer/2004/acer-n35.json - Acer n35
  • smartphone/acer/2004/acer-n50.json - Acer n50
  • smartphone/acer/2005/acer-n300.json - Acer n300
  • smartphone/acer/2005/acer-n311.json - Acer n311
  • smartphone/acer/2006/acer-c510.json - Acer c510
  • smartphone/acer/2006/acer-c530.json - Acer c530
  • smartphone/acer/2006/acer-d155-d156.json - Acer d155 / d156
  • smartphone/acer/2009/acer-betouch-e100-acer-c1.json - Acer beTouch E100 (Acer C1)
  • ... 31357 more

Heuristic review

  • Heuristic warnings: none found.

@TechEngineBot

TechEngineBot commented Sep 24, 2026 •

Copy link
Copy Markdown
Member

TechEngine validation stats: PASS

Data summary

Category Total Verified Unverified Missing verified Tracked Verified % of tracked
brand 207 24 183 0 207 11.6%
soc 2104 184 1920 0 2104 8.7%
smartphone 93396 17495 75901 0 93396 18.7%
tablet 3455 248 3207 0 3455 7.2%
watch 433 39 394 0 433 9.0%
pda 140 74 66 0 140 52.9%
gpu 2030 1021 1009 0 2030 50.3%
cpu 4035 2868 1167 0 4035 71.1%
all 105800 21953 83847 0 105800 20.7%

Warning

Tracked verified coverage is below 50% for tablet 7.2% (248/3455), soc 8.7% (184/2104), watch 9.0% (39/433), brand 11.6% (24/207), smartphone 18.7% (17495/93396), all 20.7% (21953/105800).
Tracked coverage excludes records missing the verified field; see the Missing verified column for those records.
This does not fail validation. Keep imported records verified: false until manual audit, but treat this as follow-up verification work before relying on the affected categories as curated data.

Validation notes

  • The integrity gate blocks only hard anomalies introduced by this PR relative to its merge base.
  • Full advisory outlier listings are suppressed on successful runs because they are dataset-wide and mostly stable between PRs.
  • Failure runs still include a detailed log excerpt for debugging.

Key output:

## app.validate
## integrity_check.py (PR head compared with PR base)
loaded CPU=4035 GPU=2030
Integrity section Flagged lines
structural 18
CPU name/tier consistency (desktop mainstream only) 0
CPU single>multi (cinebench/geekbench — should be multi>=single) 0
CPU era-vs-score outliers 8
CPU cross-source ratio outliers (possible wrong-variant) 155
GPU cross-source ratio outliers + sanity 18

@Seungpyo1007
Seungpyo1007 force-pushed the data/base-model-slug-fill branch from 9992aeb to f82af9b Compare September 24, 2026 22:46
@Seungpyo1007
Seungpyo1007 merged commit d91eee0 into develop Sep 24, 2026
5 checks passed
@Seungpyo1007
Seungpyo1007 deleted the data/base-model-slug-fill branch September 24, 2026 22:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working data Dataset changes enhancement New feature or request

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Massive dataset rebuild: CPU + brand + GPU + smartphone + SoC (1989-2026)

2 participants