Skip to content

Jimmy Sprint 1 - #177

Open
jmacd867 wants to merge 4 commits into
mainfrom
JimmySpring1
Open

Jimmy Sprint 1#177
jmacd867 wants to merge 4 commits into
mainfrom
JimmySpring1

Conversation

@jmacd867

@jmacd867 jmacd867 commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator

Fixes #172, #173, #175


What was changed?

  • inference/README.md — rewritten to document the complete ML workflow end-to-end (data collection → label generation → label validation → dataset preparation → model training → model testing), with purpose, inputs/outputs, and copy-pasteable commands for each step.
  • inference/README_TRAINING.md — removed; its content was folded into the main inference/README.md.
  • inference/requirements.txt — filled in missing packages (e.g. scikit-learn, joblib) with version ranges so the pipeline installs cleanly with one command.
  • inference/.python-version, inference/pyproject.toml, inference/uv.lock — added to pin and lock the supported Python version and dependencies.
  • inference/validate_labels.py — updated during requirements/workflow verification.
  • inference/Models/bestModel.pkl, inference/Models/finalModel.pkl, inference/evaluation_metrics.json, inference/predictions_output.csv — retrained model artifacts and regenerated outputs.
  • .gitignore — updated (adds .venv exclusion per Complete and Verify Python Requirements #173).
  • docs/telemetry_schema.md — new schema document for pilot telemetry: every field the X-Plane plugin currently emits (name, type, units, source DataRef), the target-state schema (including fields not yet implemented), and explicit deviation formulas for altitude, heading, vertical speed, and airspeed.
  • CLAUDE.md, docs/agents/issue-tracker.md, docs/agents/triage-labels.md, docs/agents/domain.md — added repo configuration for AI coding agent skills (GitHub as issue tracker, default triage labels, single-context domain docs).

Why was it changed?

  • The inference/ folder had separate scripts for each ML pipeline stage, but no documented order or setup instructions, making it hard for a new contributor to run the pipeline (Verify and Document the complete ML Workflow #172).
  • inference/requirements.txt was missing packages the pipeline actually imports, so a clean install failed and required undocumented manual steps (Complete and Verify Python Requirements #173).
  • No agreed-upon schema existed for pilot telemetry ahead of the client's real data arriving. The client's performance metric depends on designated-vs-actual deviation for altitude, heading, vertical speed, and airspeed, but the plugin only emits actual values today — this needed to be documented as a contract and the gap flagged explicitly rather than assumed (Define Telemetry Data Schema & Performance Deviation Metrics #175).

How was it changed?

  • Reviewed every script under inference/ and documented its purpose, execution order, and inputs/outputs directly in inference/README.md; verified the instructions in a fresh virtual environment.
  • Reviewed all Python imports under inference/, added the missing third-party packages and version ranges to requirements.txt, and introduced pyproject.toml/uv.lock plus .python-version to lock the environment; confirmed validate_labels.py, prepare_data.py, train_model.py, and test_model.py all run from that clean install.
  • Reviewed xplane_plugin/src/pilotdatasync-xp11.cpp, xplane_plugin/docs/key_datarefs.md, and inference/Data/data_logger.py to document the plugin's actual field names, types, and units in docs/telemetry_schema.md. Defined deviation = actual − designated for each of the four flight-dynamics metrics, including a wrapped angular-difference formula for heading to handle the 0°/360° boundary. Called out that no designated/target values and no pilot metadata (certification level, flight hours, rating) exist anywhere in the current pipeline.

Screenshots (if applicable):

  • N/A — this PR is documentation, dependency/config, and ML pipeline verification; no UI or runtime output changes.

@jmacd867 jmacd867 linked an issue Sep 9, 2026 that may be closed by this pull request
18 tasks
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.

Complete and Verify Python Requirements Verify and Document the complete ML Workflow

1 participant