2.2 KiB
2.2 KiB
Codex start prompt
Read AGENTS.md, README.md and every file under docs/ before changing code.
The two real SMK source snapshots are already present locally:
data/raw/smk_all_da.json
data/raw/smk_all_en.json
Start with Milestone 0 only. Do not jump directly into a guessed parser or full feature build.
Your first job is source reconnaissance:
- verify both files exist,
- compute file byte sizes and SHA-256 hashes,
- inspect their actual top-level JSON/envelope structure using bounded-memory techniques,
- determine how artwork records are reached,
- count/summarize records without loading an entire ~900 MB file into one Python object,
- inspect representative DA/EN records,
- compare identity sets using
object_number(including duplicates/missing IDs and DA-only/EN-only cases), - identify where the fields relevant to Dataset v1 actually occur,
- write
source-manifest.jsonand a concise source-reconnaissance report.
Important constraints:
- Treat
data/raw/as immutable. Never rewrite the source JSON files. - Do not use live API calls to rebuild information already present locally.
- Live SMK API/enrichment calls are acceptable for a few explicit verification spot-checks only.
- Do not assume DA and EN files have the same row order or identical non-language fields.
- Do not hardcode
39,508as an expected count. Report actual counts and later define corpus membership explicitly. - Prefer streaming (
ijson) / bounded-memory inspection; avoidjson.load()on the entire source dump. - Keep the solution small. No web UI, API server, PostgreSQL, job queue or distributed infrastructure.
- Add only focused tests. Do not repeatedly run expensive full-file/full-corpus operations while making small edits.
- Make a coherent Milestone 0 commit when the source structure is understood and documented.
STOP after Milestone 0 and report:
- exact structure of both files,
- record/identity counts and DA/EN overlap,
- important field locations and discrepancies,
- source-manifest path,
- any ambiguities that affect Milestones 1–3,
- the concrete parser/canonicalization approach you recommend next.
Do not implement Milestones 1–3 until the actual source structure has been established from the files.