- 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
19 lines
1.1 KiB
Markdown
19 lines
1.1 KiB
Markdown
# 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
|
||
1. For each fingerprint create `config/column_mappings/<type>__<fingerprint>.json`: `{raw_name|position → canonical_name, unit_in, unit_out, dtype, transform(optional)}`.
|
||
2. Resolve synonyms, reordering, unit variants; record every decision inline as `"note"`.
|
||
3. Columns with no canonical target → escalate to Task 08 (ontology change) instead of dropping silently.
|
||
4. `macro_friction_points` schema 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`.
|