Skip to content

Keep FIT unknown messages/fields instead of dropping them - #5

Merged
tabishm52 merged 1 commit into
mainfrom
fit-unknown-field-passthrough
Jul 5, 2026
Merged

tabishm52 merged 1 commit into
mainfrom
fit-unknown-field-passthrough

Conversation

@tabishm52

@tabishm52 tabishm52 commented Jul 5, 2026 •

Copy link
Copy Markdown
Owner

Mirrors TCX/GPX's unrecognized-element passthrough. copy_fit_frames/frame_to_dict were dropping FIT message types and fields fitdecode can't resolve against the FIT SDK profile before parse_fit_frames ever saw them. They now pass through under fitdecode's own unknown_<num> names, landing in parse_fit's records/extra like any other FIT data. ActivityParser.parse()'s canonical output is unaffected — its selectors already only pick known column names.

Added tests confirming unknown fields/messages surface in parse_fit's output and stay excluded from ActivityParser.parse()'s canonical columns. Full pre-commit gate (ruff, pyright, pytest) is green.

Mirrors TCX/GPX's unrecognized-element passthrough: fitdecode already
names unrecognized message types and fields unknown_<num>, but
copy_fit_frames/frame_to_dict filtered them out before parse_fit_frames
ever saw them. Now they pass through into records/extra like any other
FIT data, under fitdecode's own unknown_<num> names.
ActivityParser.parse()'s canonical selectors are unaffected, since they
already only pick known column names.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@tabishm52
tabishm52 merged commit 9e527b6 into main Jul 5, 2026
4 checks passed
@tabishm52
tabishm52 deleted the fit-unknown-field-passthrough branch July 5, 2026 18:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant