Repository navigation
feat(data_engineering): add telemetry_normalizer skill for sensor harmonization (#47) - #423
Merged
rosspeili merged 3 commits intoOct 12, 2026
Conversation
…monization (ARPAHLS#47) Implement data_engineering/telemetry_normalizer resolving ARPAHLS#47. - Ingest heterogeneous telemetry arrays and normalize to canonical SI units - Universal UTC ISO-8601 timestamp parser supporting multiple epoch granularities - Physical bounds guard and sensor fault tagging (NaN, inf, sentinels) - Bundled profiles: robotics_kinematics_imu, environmental_air_quality, energy_battery_fleet, smart_building_hvac - Support actions: normalize, list_profiles, validate - W3C SOSA/SSN JSON-LD export format support - Offline unit test suite, card UI schema fixture, documentation catalog, and multi-domain stress harness
rosspeili
approved these changes
Oct 12, 2026
rosspeili
left a comment
Contributor
There was a problem hiding this comment.
@rin-katsuragi this is exceptionally well compiled and your follow up commits instantly addressed common pre-merge conflicts naturally. LGTM. Merging as is <3
Contributor
Author
|
Wow @rosspeili thank you for accepting this PR, and I did the best to follow to project standards and contributing guide! I will hope this skill will help IoT and robotics users! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Provides deterministic, physical-bounds-checked normalization of heterogeneous time-series telemetry streams across robotics (IMU kinematics), environmental monitoring (particulate and ambient air quality), energy storage (EV fleet battery state), and building automation (HVAC). The engine enforces SI base and derived unit conversion, timestamp ISO 8601 UTC canonicalization, sensor fault anomaly flagging (stuck ADC values, frozen readings), physical plausibility bounds verification, and optional semantic export to W3C SOSA / SSN Linked Data graph triples.
Type of Change
skills/skills/skillware/core/loader, env, adaptersskillware/cli.py,docs/usage/cli.mdexamples/*.py, agent loops,examples/README.mdpyproject.toml,MANIFEST.inChecklist (all PRs)
Fixes #47)python -m black --check .,flake8, andruff check .pass locally (or CI-equivalent subset)pytest skills/andpytest tests/pass locally when relevantCHANGELOG.mdupdated under[Unreleased]when user-visible behavior changesexamples/README.mdupdated if this PR adds, renames, or removes a runnable scriptpytest tests/test_registry_docs.pywhen skills, examples index, or agent-loops matrix changedpytest tests/test_skill_docs.pywhen catalog Usage Examples or provider snippets changedNew or updated skill
Bundle and metadata
skills/data_engineering/telemetry_normalizer/manifest.yaml:name(full ID),version,description,parameters,constitution, realissuershort_description,issuer.github,issuer.org,requirements,env_varsEffect, Directive, Assurance
skill.py(Effect, no ad-hoc LLM-generated execution paths)instructions.md(Directive) explains when and how to use the skillcard.json(Presentation) issuer matches manifest when presenttest_skill.py(Assurance) covers execution and schema expectationsSkillLoader.load_skill("data_engineering/telemetry_normalizer")succeedsDocumentation and catalog
docs/skills/data_engineering/telemetry_normalizer.md, category hub row, row indocs/skills/README.md, anddocs/sitemap.mdConstitution and safety (skills only)
Related Issues
Closes #47