Skip to content

fix(data): resolve 45 generic SoC placeholder references (Google Pixel) - #338

Merged
Seungpyo1007 merged 2 commits into
developfrom
Seungpyo1007/soc-placeholder-sourcing
Sep 29, 2026
Merged

Seungpyo1007 merged 2 commits into
developfrom
Seungpyo1007/soc-placeholder-sourcing

Conversation

@Seungpyo1007

@Seungpyo1007 Seungpyo1007 commented Sep 29, 2026 •

Copy link
Copy Markdown
Member

Summary

Resolves a subset of generic/placeholder soc references on device records by
re-pointing them to the correct, specific SoC records that already exist in
data/soc/. Scoped to the cases that are unambiguously determinable and
fully sourced
— the Google Pixel line — and documents the much larger
remainder that cannot be repaired without per-record web sourcing (which would
mean inventing values at scale, contrary to project policy).

Scope characterized (fresh scan of current develop)

Three genuine placeholder SoC records account for essentially all the
placeholder soc references across smartphone/tablet/watch/pda:

Placeholder SoC record Path Device refs
0 (name "0", raw_chipset "0") data/soc/arm/2014/0.json 3,610
qualcomm-snapdragon (bare family, no model) data/soc/qualcomm/2011/qualcomm-snapdragon.json 1,762
n-a (name "N/A") data/soc/arm/2008/n-a.json 273

Total: 5,645 device references across ~2,793 distinct base models. Every one
of these placeholder records carries the tell-tale signature: verified: false,
a single generic source (kaggle GSMArena dump / phonedb), and
"Unknown mobile GPU" / "N/A" fields.

What was fixed (45 records)

Google Pixel phones ship a single global SoC per model (no regional
Exynos/Snapdragon split), so the chip is unambiguous and documented on each
model's Wikipedia page. I re-pointed 45 Pixel smartphone variants off the
placeholders to the correct existing Snapdragon records:

Pixel model → SoC record count
Pixel (2016) snapdragon-821 1
Pixel 3 snapdragon-845 1
Pixel 3a / 3a XL (+ region variants) snapdragon-670 29
Pixel 4 / 4 XL snapdragon-855 4
Pixel 4a snapdragon-730g 1
Pixel 4a 5G / Pixel 5 / Pixel 5a 5G snapdragon-765g 9

Breakdown by source placeholder: 30 from "0", 15 from qualcomm-snapdragon.

Each repaired record gains the canonical Wikipedia device-page URL in
source_urls as the citation for the corrected soc. No other fields were
changed and no values were invented; all six target SoC records already existed
(verified: true, complete CPU/GPU/benchmark data). The assignments were
cross-checked against Wikipedia/Google and are corroborated by sibling Pixel
records in the dataset that already point at the same chips via other imports.

What was intentionally left unresolved (documented, not guessed)

The remaining ~5,600 placeholder references were not touched. The device
records carry no embedded chipset signal (no raw_chipset/chipset/raw_soc);
they hold only name/RAM/battery/display, almost all from the aitoolbuzz or
phonedb Kaggle bulk imports. Determining each real chip requires per-record web
sourcing of thousands of mostly obscure/regional devices — the exact
"repair-by-inventing-at-scale" situation prior batches (#324, #329, #330)
explicitly refused and documented instead.

A notable trap left alone on purpose: Samsung Galaxy S/Note flagships ship
different SoCs by region (e.g. SM-N960F = Exynos 9810 vs SM-N960U =
Snapdragon 845), so their placeholder-linked region variants cannot be safely
mapped without decoding each model number — a per-record sourcing task, not a
blanket mapping.

Verification

  • python -m app.validate → ✅ passed.
  • integrity_check.py --strict (TechEngine) → ✅ integrity gate: no hard anomalies (exit 0); hard-anomaly baseline vs. after are both 0 (no new hard
    anomalies introduced).
  • Final commit refreshes the static API dump
    (python -m app.dump, TECHAPI_DATA_DIR → this worktree, fresh scratch
    DATABASE_URL): 191,819 records; the 45 Pixel smartphone detail files now
    resolve to their real Snapdragon SoC.

Closes #296

Re-point the soc field on 45 Google Pixel smartphone variants away from generic placeholder SoC records (30 from '0', 15 from 'qualcomm-snapdragon') to the correct specific Qualcomm Snapdragon records that already exist in data/soc/.

Pixel phones ship a single global SoC per model (no regional Exynos/Snapdragon split), so the chip is unambiguous and documented on each model's Wikipedia page:

- Pixel (2016) -> snapdragon-821; Pixel 3/3 XL -> snapdragon-845; Pixel 3a/3a XL -> snapdragon-670; Pixel 4/4 XL -> snapdragon-855; Pixel 4a -> snapdragon-730g; Pixel 4a 5G / Pixel 5 / Pixel 5a 5G -> snapdragon-765g.

Each repaired record gains the canonical Wikipedia device-page URL in source_urls. No other fields touched; no values invented. app.validate and integrity_check.py --strict (0 hard anomalies) both pass.

Refs #296
Regenerates site/public/v1 from current data after rebasing onto develop. The 45 repaired Google Pixel smartphone detail files resolve to their correct Snapdragon SoC (821/845/670/730G/855/765G) instead of the generic placeholder. Remaining churn is catalog-wide benchmark percentile drift and parallel data merges picked up since develop's last dump.
@Seungpyo1007
Seungpyo1007 force-pushed the Seungpyo1007/soc-placeholder-sourcing branch from 97550c0 to 2528200 Compare September 29, 2026 20:06
@Seungpyo1007
Seungpyo1007 merged commit ff811f5 into develop Sep 29, 2026
4 of 5 checks passed
@Seungpyo1007
Seungpyo1007 deleted the Seungpyo1007/soc-placeholder-sourcing branch September 29, 2026 22:30
@Seungpyo1007 Seungpyo1007 removed the enhancement New feature or request label Sep 29, 2026
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

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Data accuracy: corrections, duplicates and dates (workstream)

1 participant