Files
firestar5683 a5d7db3b29 wowie zowie
2026-09-06 21:27:44 -05:00

13 KiB

Credits and Code Provenance

StarPilot stands on work by comma.ai, FrogPilot, and many other open-source contributors. This document records provenance that is not adequately represented by StarPilot's historical commit authorship. It is not an assertion that an upstream contributor endorses, maintains, or is responsible for StarPilot's adaptation.

Ford support adapted from BluePilot

StarPilot commit 3f6ccd104e826643887930b41ad3b4086b833d32 introduced a substantial adaptation of Ford work from BluePilot's bp-7.0 branch. That commit's message thanked the project, but it did not record a source revision or preserve the upstream authors in the code. This file corrects that provenance gap without rewriting published history.

The exact checkout used for the original port was not recorded and therefore cannot now be proven. At the time of the import, 3a838bba6d3d280592c2fd0496b3378977ae25f1, was the tip of the public bp-7.0 line. Some imported platform lines instead trace to the contemporaneous development line at 59e3f2f16a38ff0c16d173b0ccddded23aaa1cd8. Those histories were merged the next day as e1d051d7ba270261b4455068bd68f1a58db15a4a, which is the complete bp-7.0 snapshot used for this audit. This reconstruction is deliberately recorded as a range rather than pretending that the missing original source SHA can be recovered.

Upstream authors and work

  • Alan Polk (alan-polk) is the principal upstream author of the Ford curvature controller, angle-primary controller, manual-turn behavior, controller integration, and related panda safety work. Important lineage commits include db2bdff05, d0aac605f, 8f8d6d15f, and 97867c1eb.
  • John Christman contributed bp-7.0 lateral integration, platform data, and the upstream anti-stall work referenced by StarPilot's recovery logic, including ec0ab181c and 9012f7666, with additional vehicle data in f0c6bf51f.
  • Jacob Neulight contributed measured shadow-curvature and steering-pinion curvature/safety work, including 699c17d9f and 26030f3cb.
  • Nathan Ingraham contributed the separate high-speed damping adjustment in 1db52bc79 and 3610e3f18.
  • Praeuner contributed the damping-range update in b600a8fdb.
  • tonesto7 contributed to the Ford integration and CAN-message history represented in the imported branch, including 7f9212f7f.
  • Haibin Wen and sunnypilot contributors are named in file-level notices on upstream Ford extension files that informed StarPilot's vehicle-state and lateral-limit integration. Their published copyright and license notices are retained in THIRD_PARTY_NOTICES.md.
  • Dirk Petersen, Alex Troxel, Kacer Aleks, and other BluePilot contributors supplied Ford fingerprints, VIN/platform data, tests, and integration changes that are represented in the imported vehicle-support set. Examples include 3706b5645, 694bdbb7a, and a02c06ef3.

This list identifies contributors whose work was found during the repository and blame audit. The BluePilot repository and its Git history remain the authoritative record and may identify further contributors.

Local-to-upstream map

StarPilot area Upstream lineage What StarPilot changed
starpilot/car/ford/lateral.py human_turn.py, lateral_curv_ext.py, and values_ext.py at the reference snapshot above; earlier StarPilot revisions also adapted lateral_angle_ext.py Consolidated the runtime implementation on the extended-curvature strategy, integrated StarPilot Params, and added live-delay curvature lookahead and local tuning behavior.
starpilot/car/ford/fordcan.py fordcan_ext.py and the extended-lateral protocol, especially 8f8d6d15f Reduced the extension to the curvature CAN constructors used by StarPilot and adapted it to the local controller interface.
opendbc_repo/opendbc/car/ford/ Ford controller/state/interface/radar/platform changes in the bp-7.0 snapshot Integrated the changes directly into StarPilot's opendbc layout instead of retaining sunnypilot mixins; subsequent fixes and behavior differ by file.
opendbc_repo/opendbc/safety/modes/ford.h and Ford safety tests BluePilot panda enforcement for four-signal curvature and angle-primary control, especially 8f8d6d15f, plus shadow-curvature work Retained the extended-curvature checks, removed runtime path-angle selection, and continued adding local regression coverage.
Ford Params and settings surfaces BluePilot's curvature tuning concepts Renamed and implemented in StarPilot's native Params/Galaxy architecture; no BluePilot or sunnypilot UI classes were retained.

The local code has materially diverged, but the first four rows remain derivative in design and in parts of their implementation. Future ports should cite the exact upstream commit in the importing commit and at the relevant source boundary; when history can be retained cleanly, use a merge, subtree, or cherry-pick with origin metadata rather than a single squashed attribution.

Hyundai, Kia, and Genesis support adapted from sunnypilot

Portions of StarPilot's HKG angle steering, CAN integration, panda safety enforcement, safety tests, firmware fingerprints, and cruise-button management are adapted from sunnypilot. Some upstream HKG authorship is retained in StarPilot's Git history, and StarPilot commit e33305151 identified its ICBM/CSLC work as a sunnypilot port. Other substantial imports were committed locally without recording an exact source revision, so this section documents the reconstructed lineage.

The exact checkout used for each historical import cannot now be proven. The reference snapshots used for this audit are:

Upstream authors and work

  • Haibin (Jason) Wen contributed the original Kia EV9 HDA2/LFA2 angle-steering port, Hyundai angle integration and signals, non-SCC platform support, and Intelligent Cruise Button Management. Important lineage commits include abe78de2c, 333de6f1a, 559a37426, and 862828ad6.
  • Shane Smiskol contributed foundational angle-command limiting, driver-override behavior, and EPS-fault avoidance, including 228a397a3 and 42d84ff6c.
  • DevTekVE contributed substantial angle-controller integration, tuning, platform support, panda safety logic, and tests, including c77c7ec2e, 7ded99dba, 3819ca7f0, and 8d134e98f.
  • Nicholas Evans, dany7915, janpoo6427, Tinkerpet, royjr, Taylor Hoshino, Intelli, Joshua Mack, Mark McCallister, Discountchubbs, and other sunnypilot contributors supplied vehicle ports, fingerprints, firmware data, safety-limit updates, and related integration represented in the adapted HKG support.

This list identifies contributors found during the repository, commit, and blame audit. The sunnypilot repositories and their Git histories remain the authoritative record and may identify additional contributors.

Local-to-upstream map

StarPilot area Upstream lineage What StarPilot changed
opendbc_repo/opendbc/car/hyundai/carcontroller.py Angle controller and driver-override work in sunnypilot/opendbc hkg-angle-steering-2025 Integrated the controller into StarPilot's opendbc layout and added substantial local longitudinal, smoothing, recovery, and platform behavior.
opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py, interface.py, and values.py Angle commands, signal selection, safety flags, limits, and platform integration from the angle branch Combined later upstream changes with StarPilot flags, Params, platform tuning, and local CAN/CAN-FD behavior.
opendbc_repo/opendbc/safety/modes/hyundai_canfd.h and its tests Angle-command safety enforcement and regression tests from the angle branch Extended and reorganized the safety mode and tests for StarPilot's current supported modes.
opendbc_repo/opendbc/car/hyundai/fingerprints.py and HKG platform data sunnypilot HKG extension/fingerprint history on master plus angle-branch vehicle ports Flattened extension data into the local opendbc tree and continued adding and updating platforms.
HKG cruise-button management and settings integration sunnypilot ICBM/CSLC concepts and implementation history, including 862828ad6 and 2277e3d49 Adapted the feature to StarPilot/FrogPilot controls and settings; later revisions changed or removed portions of the original integration.

The current implementation is not a wholesale copy of either reference snapshot and has diverged substantially. Its HKG angle-control and supporting safety architecture nevertheless remain derivative in design and in identifiable portions of the implementation. The applicable upstream notices are preserved in THIRD_PARTY_NOTICES.md.

Policy for future third-party ports

Before publishing a third-party port:

  1. Read every repository-level and file-level license that may cover the source. Stop and ask the rightsholder when the terms or their scope conflict.
  2. Record the repository URL, exact commit SHA, source paths/symbols, authors found in the relevant history, and the local destination in the importing commit and this file.
  3. Preserve required copyright and license notices verbatim. Reorganization, translation, and AI-assisted rewriting do not remove source provenance.
  4. Retain authorship/history with a merge, subtree, or cherry-pick -x when practical. For a true adaptation, keep the local adapter as commit author and use an Adapted-from: trailer and source comments; do not add Co-authored-by: for a person without their agreement.
  5. Describe material local deviations and make clear that upstream contributors do not support or endorse the downstream version.

See THIRD_PARTY_NOTICES.md for licensing notices.