- adapt meta-/code-/obs- rules to the local Python benchmark pipeline - replace db-sql-ddl, code-config-env-scope, test-e2e-pytest with pipeline equivalents - add code-python-style, data-determinism, data-naming-units, bench-methodology, build-pipeline-tasks - normalize specs and README typography to ASCII per code-data-formatting - rewrite root CLAUDE.md trigger table; add .cursorrules and .gitignore - specs: pipeline plan and task specs 00-11 - rules: 19 binding rule files adapted for this project - docs: CLAUDE.md rule-trigger table - config: .cursorrules commit convention, .gitignore excluding out/ and .venv/ - docs: rewrite README.md with pipeline diagrams, setup guide, result placeholders - config: requirements.txt for the closed dependency list - datagen: make_lab_config.py writes out/config/lab_config.yaml and .done marker
1.1 KiB
1.1 KiB
Task 07 — Column Mapping (raw → canonical)
Goal
For every measurement_type × fingerprint, a complete mapping of raw columns to canonical columns.
Input
manifest/fingerprint_report.md,manifest/inconsistencies.csv.- Target canonical schemas (ERD):
xrf_spectrum_points,nanoindentation_points,friction_data_points,macro_friction_points.
Actions
- For each fingerprint create
config/column_mappings/<type>__<fingerprint>.json:{raw_name|position → canonical_name, unit_in, unit_out, dtype, transform(optional)}. - Resolve synonyms, reordering, unit variants; record every decision inline as
"note". - Columns with no canonical target → escalate to Task 08 (ontology change) instead of dropping silently.
macro_friction_pointsschema is PROVISIONAL — finalize from an actual macro-friction file profile here; propagate to Task 08.
Intermediate Result (done when)
- Every fingerprint has a mapping file; no raw column is unmapped or undocumented.
- Escalation list for Task 08 written to
schema/ontology_escalations.md.