Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1544 commits
Select commit Hold shift + click to select a range
14cff00
feat(webrtc): addIceCandidate dispatcher (#38161)
stefpi Jun 11, 2026
cd052f1
webrtc: speed ups (#38163)
stefpi Jun 11, 2026
f9cc678
Improve lateral maneuvers (#38159)
elkoled Jun 12, 2026
a40fa3a
modeld: run the driving model as a single combined onnx (#38173)
haraschax Jun 13, 2026
2feca92
bump opendbc (#38175)
sshane Jun 13, 2026
fafcee0
replay: fix current time (#38179)
pd0wm Jun 15, 2026
0240a62
encoder: add ability to request keyframes from livestream encoders (#…
stefpi Jun 15, 2026
15fb1a8
webrtc: revert prewarm and import movements (#38181)
stefpi Jun 15, 2026
3739074
webrtc/athena: revert addIceCandidate changes (#38180)
stefpi Jun 15, 2026
291315a
webrtc/athena: allow webrtc connection with only data channel (#38177)
stefpi Jun 16, 2026
586dd4c
webrtc: add error handling middleware (#38182)
stefpi Jun 16, 2026
4cefe72
fetch_image_from_route: fix missing f-string in error message (#38183)
apgeorg Jun 16, 2026
f3b1f97
webrtc/athena: speed up first time stream connection (#38184)
stefpi Jun 16, 2026
c045659
mici ui: add branch switcher (#38153)
adeebshihadeh Jun 16, 2026
3c4790c
bugfix: should be Error not Exception (#38071)
eFiniLan Jun 16, 2026
29e7f36
clip: add wide camera stream (#37677)
TheSecurityDev Jun 16, 2026
8a80bd7
fix: cruise faults should not disable silently (#37557)
RJWadley Jun 16, 2026
93224b3
speedup pytest collection (#37977)
hypery11 Jun 16, 2026
82a945d
scons: enforce max file size for build products (#38077)
adeebshihadeh Jun 17, 2026
3939f1e
webrtc: signal shutdown over datachannel (#38185)
stefpi Jun 17, 2026
e2e3703
ui: fix false "NO PANDA" flash on screen wake (#37404)
andiradulescu Jun 17, 2026
5ab7e48
fix(ui): fill and center onroad camera if too small (#37673)
TheSecurityDev Jun 17, 2026
d4db600
ui diff: add multithreading and improve logging (split from #37328) (…
TheSecurityDev Jun 17, 2026
ddc8d37
Desire keep pulsing is dead (#38187)
haraschax Jun 17, 2026
cd2c590
bump tinygrad (#38176)
sirhcm Jun 17, 2026
0038d84
webrtc: do not replace connection on prewarm (#38190)
stefpi Jun 17, 2026
45d8bcd
car livestream (#38193)
stefpi Jun 20, 2026
f257544
tools: goodbye webjoystick (#38194)
stefpi Jun 20, 2026
62b97fa
merge selfdrive/debug/ into tools/scripts/ (#38195)
adeebshihadeh Jun 20, 2026
b2a7084
move webcam to system/camerad/ (#38196)
adeebshihadeh Jun 20, 2026
f48e99b
updated: remove (never used) casync support (#38198)
adeebshihadeh Jun 20, 2026
cb6e422
move esim to common/ (#38199)
adeebshihadeh Jun 20, 2026
f0f7b87
athena: remove getNetworks (#38200)
adeebshihadeh Jun 20, 2026
3b4077d
system/hardware/ cleanup (#38201)
adeebshihadeh Jun 20, 2026
52e25eb
we don't have this anymore
adeebshihadeh Jun 20, 2026
160942d
move HAL to common/hardware/ (#38202)
adeebshihadeh Jun 20, 2026
e0e9f1a
move test_power_draw.py
adeebshihadeh Jun 20, 2026
7cee534
rm dead scripts
adeebshihadeh Jun 20, 2026
f0831e5
rm dead updated tests
adeebshihadeh Jun 20, 2026
b871364
remove rest of docker (#38203)
adeebshihadeh Jun 20, 2026
fddb9fb
remove statsd (#38204)
adeebshihadeh Jun 20, 2026
ad5151b
single IsOffroad param (#38205)
adeebshihadeh Jun 20, 2026
d8bd6c7
rename androidLog -> operatingSystemLog (#38209)
adeebshihadeh Jun 21, 2026
cea5273
move version to common/ (#38210)
adeebshihadeh Jun 21, 2026
d79267f
modem: fall back when cellular DNS is missing (#38213)
fangli Jun 21, 2026
bc168bb
rm opencv-python-headless (#38214)
adeebshihadeh Jun 21, 2026
df1663c
the one true car.capnp (#38221)
adeebshihadeh Jun 22, 2026
37eda06
move cereal/ into nested openpilot (#38220)
adeebshihadeh Jun 22, 2026
20e0f21
prefix paths with openpilot (#38223)
adeebshihadeh Jun 22, 2026
5edc0bd
mv root dirs into nested openpilot (#38219)
adeebshihadeh Jun 22, 2026
8a9ca15
cleanup leftovers from the shuffling (#38224)
adeebshihadeh Jun 22, 2026
2e9fa51
simple pip install test (#38218)
adeebshihadeh Jun 22, 2026
1474d54
move root include to the end to prevent using stale build products
adeebshihadeh Jun 22, 2026
cddb610
webrtc: replace aiohttp with stdlib http server (#38226)
adeebshihadeh Jun 22, 2026
288aa60
[bot] Update Python packages (#38227)
commaci-public Jun 22, 2026
7d325d6
Simplify lane change logic (#38229)
haraschax Jun 23, 2026
addca46
move some tools back to root (#38235)
adeebshihadeh Jun 25, 2026
5629b5a
bump sensors test limits (#38245)
probablyanasian Jun 26, 2026
069506a
sound: use log enum (#38246)
ZwX1616 Jun 26, 2026
f9c555a
DM: update escalation/lockout specs; softer sounds (#38244)
ZwX1616 Jun 26, 2026
e9e5548
bump DM NoEntryAlert priority (#38253)
ZwX1616 Jun 27, 2026
da6313d
Update CHANGELOG.md
sunnyhaibin Jun 27, 2026
61b6d52
Fix broken tools README link (#38260)
tfpgh Jun 28, 2026
31dc4d8
ci: fix cereal validation for upstream directory restructure (#1869)
sunnyhaibin Jun 29, 2026
97215b1
modeld: remove prepare_only (#38252)
Armandpl Jun 29, 2026
8c927d0
modeld: enqueue in policy (#38264)
Armandpl Jun 29, 2026
8a3bbcd
Revert "modeld: enqueue in policy" (#38266)
Armandpl Jun 30, 2026
4fc5e30
Reapply "modeld: enqueue in policy" (#38267)
Armandpl Jun 30, 2026
724971a
usbgpu: never materialize model weights in RAM (#38265)
Armandpl Jun 30, 2026
8196b74
Revert "usbgpu: never materialize model weights in RAM" (#38271)
Armandpl Jun 30, 2026
e1e9efb
add USB logging (#38186)
elkoled Jun 30, 2026
a2c5548
Reapply "usbgpu: never materialize model weights in RAM" (#38273)
Armandpl Jul 1, 2026
fa0c687
lebowski model (#38268)
Armandpl Jul 1, 2026
8e0ba7a
modeld: use correct intrinsics for extra transform when wide camera d…
Quantizr Jul 2, 2026
4c5bef5
rm modeld/models README
YassineYousfi Jul 2, 2026
4532320
desire: enter preLaneChange if blinker before engaged (#38276)
YassineYousfi Jul 2, 2026
9d03e73
test_onroad: fix service timing threshold
adeebshihadeh Jul 2, 2026
07ec389
bump ty (#38277)
adeebshihadeh Jul 3, 2026
70a6efb
ci: update GitHub Actions to latest versions (#38278)
adeebshihadeh Jul 3, 2026
2aa934e
[bot] Update Python packages (#38263)
commaci-public Jul 3, 2026
d606014
ci: delete closed PR branches automatically (#38280)
adeebshihadeh Jul 3, 2026
92f3d24
Remove lateral MPC library (#38281)
adeebshihadeh Jul 4, 2026
6de5d2c
revert checkout@v7 to fix nightly release (#38294)
stefpi Jul 6, 2026
0d93f0e
declare submodules as dependencies in pyproject (#38300)
adeebshihadeh Jul 7, 2026
c02cf70
fix cabana launch script
adeebshihadeh Jul 7, 2026
1b6e127
fix juggle.py
sshane Jul 7, 2026
05cf802
fix cabana
sshane Jul 7, 2026
960c988
Replace xvfb with headless raylib backend (#38298)
adeebshihadeh Jul 8, 2026
cb82722
remove libjpeg (#38305)
adeebshihadeh Jul 8, 2026
1ab1ed7
Use PyPI comma-deps packages (#38295)
adeebshihadeh Jul 9, 2026
9877f6a
ffmpeg: use shared libraries (#38308)
adeebshihadeh Jul 9, 2026
1e49eac
rm libyuv (#38306)
adeebshihadeh Jul 9, 2026
3b3f596
rm crcmod-plus (#38309)
adeebshihadeh Jul 9, 2026
bf5540c
rm pyserial (#38311)
adeebshihadeh Jul 9, 2026
b827c0f
try removing submodule symlinks (#38310)
adeebshihadeh Jul 9, 2026
f283f67
Revert "try removing submodule symlinks (#38310)"
adeebshihadeh Jul 9, 2026
1478d0c
Fix diff report artifact download (#38313)
adeebshihadeh Jul 9, 2026
39117a5
remove submodule symlinks (#38312)
adeebshihadeh Jul 9, 2026
6392096
op setup: init submodules before uv sync (#38314)
adeebshihadeh Jul 9, 2026
ee11c24
ci: test op setup with empty submodules (#38316)
adeebshihadeh Jul 9, 2026
6092455
athena: minimal json-rpc implementation (#38318)
adeebshihadeh Jul 9, 2026
c91731b
athena: remove take snapshot (#38319)
stefpi Jul 10, 2026
a262543
Move eigen dependency into rednose (#38321)
adeebshihadeh Jul 11, 2026
a52da0d
bump msgq, no runtime deps
adeebshihadeh Jul 11, 2026
503531a
replace psutil with simple /proc helper (#38326)
adeebshihadeh Jul 11, 2026
4fd4ddb
long_mpc: remove unused solver state and timings (#38335)
adeebshihadeh Jul 14, 2026
f42dbbb
longitudinal planner: remove unused model trajectory parsing (#38336)
adeebshihadeh Jul 14, 2026
cf8371c
add usb link err counter (#38338)
elkoled Jul 15, 2026
45b53cf
Rename LeadData.status to LeadData.present (#38339)
adeebshihadeh Jul 15, 2026
d1e143a
longcontrol: simplify state machine (#38337)
adeebshihadeh Jul 15, 2026
c16039e
lagd: lower max lag (#38307)
fredyshox Jul 15, 2026
45661ee
tmp disable ui_report
adeebshihadeh Jul 15, 2026
a9ffebe
plannerd: check all services for validity (#38341)
adeebshihadeh Jul 15, 2026
d275c65
fix ui.py
sshane Jul 15, 2026
eee1347
longitudinal: add e2e flag to tuning report (#38345)
haraschax Jul 15, 2026
ec72ee0
cleanup unused radar fields (#38346)
adeebshihadeh Jul 15, 2026
2b1fd89
annotate radar fields (#38347)
adeebshihadeh Jul 15, 2026
79b79ed
MADS: add tests and prevent re-enable at standstill in Pause mode (#1…
sunnyhaibin Jul 15, 2026
48a5bdc
Revert "msgq: point back to comma's" (#1874)
sunnyhaibin Jul 15, 2026
db99c8e
op: add `-u` to scons command line (#38348)
adeebshihadeh Jul 15, 2026
680dd7c
bump opendbc (#38352)
elkoled Jul 15, 2026
41886a9
rm redundant params tests
adeebshihadeh Jul 16, 2026
91b067c
jenkins speedups (#38328)
adeebshihadeh Jul 16, 2026
a43fc92
Merge commit 'b871364e1f48af04113f05c0f6604a9c42f57ac7' into sync-202…
sunnyhaibin Jul 16, 2026
70f2c3a
Sync: `commaai/openpilot:master` → `sunnypilot/sunnypilot:master` (#1…
sunnyhaibin Jul 16, 2026
61608db
jp: fix linking on macOS (#38353)
adeebshihadeh Jul 16, 2026
14318d2
Merge commit '91b067cca0913d0cc9f8b5dab68e3302e278efdc' into sync-202…
sunnyhaibin Jul 16, 2026
60716ed
Fix thumbnail creation (#38354)
sshane Jul 16, 2026
06a73f5
cabana: de-Qt, part 1 (#38357)
adeebshihadeh Jul 16, 2026
5d23a78
cabana: de-Qt, part 2 (#38359)
adeebshihadeh Jul 16, 2026
9aa5c3d
expose submodule dependencies as an extra
rkdune Jul 17, 2026
a04c045
cabana: de-Qt, part 3 (#38360)
adeebshihadeh Jul 17, 2026
3a55f31
agnos 18.5 (#38302)
adeebshihadeh Jul 17, 2026
c8786d9
DM: reasonable lockout ramp up (#38358)
ZwX1616 Jul 17, 2026
b9f25f8
webrtcd: move to libdatachannel (#38228)
adeebshihadeh Jul 17, 2026
c21b082
fix(ui): label alignment and text with icon (#38365)
stefpi Jul 17, 2026
3f93b00
webrtc: remove av (#38369)
adeebshihadeh Jul 18, 2026
3f49e2d
jp: add thumbnail source (#38363)
adeebshihadeh Jul 18, 2026
f0841b8
remove av (#38366)
adeebshihadeh Jul 18, 2026
1c07e00
rm xattr (#38373)
adeebshihadeh Jul 18, 2026
cefcf10
rm jinja2
adeebshihadeh Jul 19, 2026
7d74c3c
rm setuptools (#38376)
adeebshihadeh Jul 19, 2026
e475d10
more ruff (#38377)
adeebshihadeh Jul 19, 2026
ecac2d3
these go in tools
adeebshihadeh Jul 19, 2026
19ecc37
more ty (#38378)
adeebshihadeh Jul 19, 2026
f0d93eb
more ty, part 2 (#38379)
adeebshihadeh Jul 19, 2026
39e12c8
rm cffi, it's a raylib transitive dep
adeebshihadeh Jul 19, 2026
24893eb
rm pre-commit-hooks (#38382)
adeebshihadeh Jul 19, 2026
caa9e77
manager: remove preimport stage (#38381)
adeebshihadeh Jul 19, 2026
157c708
bump opendbc (#38370)
adeebshihadeh Jul 19, 2026
fef29ad
start porting tests to unittest style (#38384)
adeebshihadeh Jul 19, 2026
3dbf02f
cereal: gc dead ZMQ branches in tests
adeebshihadeh Jul 19, 2026
e124d6d
more dead code gc
adeebshihadeh Jul 19, 2026
d9596fa
gc old athena and uploader migration code
adeebshihadeh Jul 19, 2026
560cde6
sync: fix upstream conflicts
royjr Jul 16, 2026
bae7e49
Sync: `commaai/openpilot:master` → `sunnypilot/sunnypilot:master` (#1…
sunnyhaibin Jul 20, 2026
bf1b93f
Revert "agnos: split launch for c3 and c3x to support custom agnos" (…
sunnyhaibin Jul 20, 2026
24a9b6d
profile usb gpu link stability (#38368)
elkoled Jul 20, 2026
78909da
soundd: add complete sound (#38390)
elkoled Jul 20, 2026
2c334ed
mapd: ignore in plannerd health check (#1880)
sunnyhaibin Jul 20, 2026
5472e69
New sounds (#38154)
elkoled Jul 20, 2026
c20263d
speedup chunk reading (#38389)
elkoled Jul 20, 2026
b1f2e63
fix branch cleanup burning GH API requests (#38392)
elkoled Jul 20, 2026
031b1ad
longcontrol: remove starting state (#38340)
adeebshihadeh Jul 20, 2026
fdd1df7
longitudinal: remove per-car stopping tunes (#38394)
adeebshihadeh Jul 21, 2026
41b14fa
Merge commaai/openpilot fdd1df79 into sync-20260721
sunnyhaibin Jul 21, 2026
93bb596
Sync: `commaai/openpilot:master` → `sunnypilot/sunnypilot:master` (#1…
sunnyhaibin Jul 24, 2026
a0cc313
version: bump to 2026.003.000
sunnyhaibin Jul 24, 2026
9163d1c
Revert "mapd: ignore in plannerd health check (#1880)"
sunnyhaibin Jul 25, 2026
0265ae5
Revert "plannerd: check all services for validity (#38341)"
sunnyhaibin Jul 25, 2026
7801bdf
Reapply "mapd: ignore in plannerd health check (#1880)"
sunnyhaibin Jul 25, 2026
ee3583d
[tizi/tici] ui: Camera offset controls (#1813)
CHaucke89 Jul 25, 2026
fd22de1
SCC-M: fix operator precedence in quadratic roots (#1816)
0x3k Jul 25, 2026
3a05c03
ci: no more docker (#1886)
sunnyhaibin Jul 25, 2026
978ec80
plannerd & selfdriveStateSP: poll `modelV2`, relay button state via b…
sunnyhaibin Aug 2, 2026
50b860c
Reapply "plannerd: check all services for validity (#38341)"
sunnyhaibin Aug 2, 2026
1a07e47
Tesla: MADS Screen Activation (#1808)
AmyJeanes Aug 2, 2026
5bdc0c2
modeld_v2: Support Deep Models (#1887)
nayan8teen Aug 5, 2026
6909aa9
ui: use sunnypilot and sunnylink branding fonts (#1895)
sunnyhaibin Aug 6, 2026
099143a
[mici] ui: fix swipe-down in sunnylink and models panels (#1896)
sunnyhaibin Aug 6, 2026
fec5a97
docs: update policy (#1898)
sunnyhaibin Aug 7, 2026
9e0d899
Honda Clarity: brake hold fix (#1247)
mvl-boston Aug 7, 2026
6f2a1d5
ci: sunnypilot CI test routes (#1899)
sunnyhaibin Aug 8, 2026
f531952
ci: sunnypilot process replay (#1900)
sunnyhaibin Aug 8, 2026
9e32dee
ci: fix process replay with missing sunnypilot service ignores (#1902)
sunnyhaibin Aug 9, 2026
fc4699a
controls: abstract update_output_torque to ExtBase (#1903)
sunnyhaibin Aug 9, 2026
91a53aa
Controls: Lateral Jerk Torque Controller (#693)
sunnyhaibin Aug 9, 2026
617fcd4
[bot] Update Python packages (#1866)
github-actions[bot] Aug 10, 2026
c6595fd
offroad alerts: replace comma references with sunnypilot community an…
sunnyhaibin Aug 10, 2026
2a16b0f
ui: screensaver (#1551)
nayan8teen Aug 10, 2026
2d859a8
Controls: Road Edge Lane Change Controller (#1085)
rav4kumar Aug 11, 2026
3a4c363
tesla: wire Pre-AP boot selection, schema, and madsRequired
daggerhashjack Aug 13, 2026
5d355b8
tesla: default NAP boot params and pin opendbc leftover
daggerhashjack Aug 13, 2026
bce4682
tesla: prove Task2 schema ordinals and boot migration contracts
daggerhashjack Aug 13, 2026
654846e
tesla: freeze v1 MADS snapshot and Pre-AP boot selection
daggerhashjack Aug 13, 2026
edbf83b
Update opendbc safety test harness
daggerhashjack Aug 13, 2026
35b1dda
tesla: use central ignition tick cdef in Pre-AP tests
daggerhashjack Aug 13, 2026
751c068
Update opendbc ignition test cleanup
daggerhashjack Aug 13, 2026
6b05648
tesla_preap: close boot authority gaps
daggerhashjack Aug 13, 2026
e4e7b67
tesla_preap: preserve boot migration state
daggerhashjack Aug 13, 2026
3938a28
tesla_preap: integrate safety health state
daggerhashjack Aug 13, 2026
58178e4
tesla preap: integrate intent with MADS
daggerhashjack Aug 13, 2026
d7c846e
Port Tesla Pre-AP control integration
daggerhashjack Aug 15, 2026
19ebcb9
tesla preap: integrate vehicle support
daggerhashjack Aug 15, 2026
e015d22
tesla preap: update fail-closed controls
daggerhashjack Aug 15, 2026
90ed72f
tesla preap: update controller tests
daggerhashjack Aug 15, 2026
8626077
tesla preap: surface active pedal timeout
daggerhashjack Aug 15, 2026
d25abb0
point opendbc at personal port fork
daggerhashjack Aug 15, 2026
332da7a
point opendbc at NotAutopilot port fork
daggerhashjack Aug 15, 2026
0e80723
point panda at published port history
daggerhashjack Aug 16, 2026
63c93ff
restore legacy AGNOS updater path
daggerhashjack Aug 17, 2026
8e3b0ae
Revert "restore legacy AGNOS updater path"
daggerhashjack Aug 17, 2026
e42aa79
Route Tesla Pre-AP vehicle selections
daggerhashjack Aug 17, 2026
c80cb70
tesla_preap: update RX checksum validation
daggerhashjack Aug 17, 2026
085c68b
tesla_preap: update guarded RX parser
daggerhashjack Aug 17, 2026
0123446
tesla_preap: keep defaulted pedal boot params
daggerhashjack Aug 22, 2026
1a06614
tesla_preap: default only missing pedal bus/range
daggerhashjack Aug 22, 2026
cf93430
tesla_preap: quiet pedal-bus helper test lint
daggerhashjack Aug 22, 2026
dc5fb28
tesla_preap: move MADS engagement into native settings
daggerhashjack Aug 22, 2026
b0deccc
tesla_preap: restyle Vehicle settings to native widgets
daggerhashjack Aug 22, 2026
52a0736
tesla_preap: match native Sunny Vehicle layout
daggerhashjack Aug 22, 2026
2fd1962
tesla_preap: point opendbc at field handshake fixes
daggerhashjack Aug 25, 2026
493ee7e
tesla_preap: add NAP sidebar and port nap-dev radar
daggerhashjack Sep 1, 2026
9eaeb44
tesla_preap: don't chime on gas override
daggerhashjack Sep 2, 2026
39c4b50
test: fail if panda gitlink lacks pandad health fields
daggerhashjack Sep 2, 2026
0086925
tesla_preap: restore mici widget and fix host CI
daggerhashjack Sep 2, 2026
c30adaa
tesla_preap: don't crash UI when a tool is onroad
daggerhashjack Sep 2, 2026
a572b8a
tesla_preap: don't crash radar HUD on liveTracks.measured
daggerhashjack Sep 3, 2026
89edaa5
test: cereal liveTracks must not use p.measured
daggerhashjack Sep 3, 2026
0ed9a81
tesla_preap: show tools on the comma screen
daggerhashjack Sep 3, 2026
e8b9fc2
tesla_preap: scroll the on-device tool runner
daggerhashjack Sep 3, 2026
5c6d4e4
tesla_preap: pedal idle watchdog isn't unavailable
daggerhashjack Sep 3, 2026
880f4eb
bump opendbc: drop unnamed pedal STATE=6
daggerhashjack Sep 3, 2026
8f7cbe1
bump opendbc: STATE 4/5 idle available + PreAPEngagement set-speed
daggerhashjack Sep 3, 2026
8946815
bump opendbc: nap-faithful engagement + long-enable gate
daggerhashjack Sep 3, 2026
ff3901c
bump opendbc: Pre-AP NO_FAULT refuse regressions
daggerhashjack Sep 4, 2026
3e8314a
bump opendbc: 0x551 idle disabled-zero for STATE 4/5
daggerhashjack Sep 4, 2026
738f231
tesla_preap: integrate NAP controls with sunnypilot
daggerhashjack Sep 5, 2026
02780df
tesla_preap: load compressed EPAS firmware
daggerhashjack Sep 6, 2026
1563e88
tesla_preap: restore startup and cruise intent
daggerhashjack Sep 7, 2026
e702d13
tesla_preap: keep cruise through optional pause
daggerhashjack Sep 8, 2026
47281bb
preap: fix pedal calibration sessions
daggerhashjack Sep 8, 2026
4e62b17
preap: wait for initial lateral permission
daggerhashjack Sep 9, 2026
78085a3
preap: add hands-on levels and pause prompts
daggerhashjack Sep 10, 2026
41ac2cd
Fix combined lead decoding and Pre-AP radar matching
daggerhashjack Sep 15, 2026
03e20e8
Sync NAP follow-distance picker
daggerhashjack Sep 17, 2026
3d51173
Fix follow-distance picker returning to stale selection
daggerhashjack Sep 17, 2026
b688860
preap: live stalk follow-distance overlay and hardwared Params fix
daggerhashjack Sep 19, 2026
576f359
Add VIN Learn Radar UI button and script
Sep 28, 2026
39bd97e
Update opendbc submodule reference
Sep 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
7 changes: 7 additions & 0 deletions .codespellignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Wen
REGIST
PullRequest
cancelled
FOF
NoO
assertIn
18 changes: 0 additions & 18 deletions .dockerignore

This file was deleted.

13 changes: 2 additions & 11 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,5 @@
*.otf filter=lfs diff=lfs merge=lfs -text
*.wav filter=lfs diff=lfs merge=lfs -text

selfdrive/car/tests/test_models_segs.txt filter=lfs diff=lfs merge=lfs -text
system/hardware/tici/updater_weston filter=lfs diff=lfs merge=lfs -text
system/hardware/tici/updater_magic filter=lfs diff=lfs merge=lfs -text
third_party/**/*.a filter=lfs diff=lfs merge=lfs -text
third_party/**/*.so filter=lfs diff=lfs merge=lfs -text
third_party/**/*.so.* filter=lfs diff=lfs merge=lfs -text
third_party/**/*.dylib filter=lfs diff=lfs merge=lfs -text
third_party/acados/*/t_renderer filter=lfs diff=lfs merge=lfs -text
third_party/qt5/larch64/bin/lrelease filter=lfs diff=lfs merge=lfs -text
third_party/qt5/larch64/bin/lupdate filter=lfs diff=lfs merge=lfs -text
third_party/catch2/include/catch2/catch.hpp filter=lfs diff=lfs merge=lfs -text
openpilot/selfdrive/car/tests/test_models_segs.txt filter=lfs diff=lfs merge=lfs -text
openpilot/common/hardware/tici/updater filter=lfs diff=lfs merge=lfs -text
11 changes: 11 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
* @sunnypilot/dev-internal
/.github/ @devtekve @sunnyhaibin
/release/ci/ @devtekve @sunnyhaibin
/tinygrad_repo @devtekve @Discountchubbs
/tinygrad/ @devtekve @Discountchubbs
/selfdrive/controls/lib/longitudinal_planner.py @devtekve @Discountchubbs
/selfdrive/controls/lib/longitudinal_mpc_lib/long_mpc.py @devtekve @Discountchubbs
/selfdrive/modeld/ @devtekve @Discountchubbs
/sunnypilot/model* @devtekve @Discountchubbs
/sunnypilot/sunnylink/ @devtekve
/system/athena/ @devtekve
8 changes: 0 additions & 8 deletions .github/ISSUE_TEMPLATE/enhancement.md

This file was deleted.

18 changes: 11 additions & 7 deletions .github/labeler.yaml
Original file line number Diff line number Diff line change
@@ -1,27 +1,31 @@
CI / testing:
ci:
- changed-files:
- any-glob-to-all-files: "{.github/**,**/test_*,**/test/**,Jenkinsfile}"

chore:
- changed-files:
- any-glob-to-all-files: "{.github/**}"

car:
- changed-files:
- any-glob-to-all-files: '{selfdrive/car/**,opendbc_repo}'
- any-glob-to-all-files: '{openpilot/selfdrive/car/**,opendbc_repo}'

simulation:
- changed-files:
- any-glob-to-all-files: 'tools/sim/**'
- any-glob-to-all-files: 'openpilot/tools/sim/**'

ui:
- changed-files:
- any-glob-to-all-files: '{selfdrive/assets/**,selfdrive/ui/**,system/ui/**}'
- any-glob-to-all-files: '{openpilot/selfdrive/assets/**,openpilot/selfdrive/ui/**,openpilot/system/ui/**}'

tools:
- changed-files:
- any-glob-to-all-files: 'tools/**'
- any-glob-to-all-files: 'openpilot/tools/**'

multilanguage:
- changed-files:
- any-glob-to-all-files: 'selfdrive/ui/translations/**'
- any-glob-to-all-files: 'openpilot/selfdrive/ui/translations/**'

autonomy:
- changed-files:
- any-glob-to-all-files: "{selfdrive/modeld/models/**,selfdrive/test/process_replay/model_replay_ref_commit}"
- any-glob-to-all-files: "{openpilot/selfdrive/modeld/models/**,openpilot/selfdrive/test/process_replay/model_replay_ref_commit,openpilot/sunnypilot/modeld*/models/**}"
4 changes: 2 additions & 2 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ Explain how you tested this bug fix.

**Checklist**

- [ ] added entry to CAR in selfdrive/car/*/values.py and ran `selfdrive/car/docs.py` to generate new docs
- [ ] test route added to [routes.py](https://github.com/commaai/openpilot/blob/master/selfdrive/car/tests/routes.py)
- [ ] added entry to CAR in openpilot/selfdrive/car/*/values.py and ran `openpilot/selfdrive/car/docs.py` to generate new docs
- [ ] test route added to [routes.py](https://github.com/commaai/openpilot/blob/master/openpilot/selfdrive/car/tests/routes.py)
- [ ] route with openpilot:
- [ ] route with stock system:
- [ ] car harness used (if comma doesn't sell it, put N/A):
Expand Down
43 changes: 43 additions & 0 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
exclude-labels:
- 'no-changelog'
categories:
- title: '🚀 Features'
labels:
- 'feature'
- 'enhancement'
- title: '🐛 Bug Fixes'
collapse-after: 5
labels:
- 'fix'
- 'bugfix'
- 'bug'
- title: '🧰 Maintenance'
collapse-after: 5
label: 'chore'
change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
change-title-escapes: '\<*_&'
replacers:
- search: '/[Ss][Uu][Nn][Nn][Yy][Pp][Ii][Ll][Oo][Tt]/g'
replace: 'sunnypilot'
- search: '/\b[Ss][Pp]\b/g'
replace: 'SP'
version-resolver:
major:
labels:
- 'major'
minor:
labels:
- 'minor'
patch:
labels:
- 'patch'
default: patch
name-template: 'v$RESOLVED_VERSION 🚀'
tag-template: 'v$RESOLVED_VERSION'
version-template: "0.$MAJOR.$MINOR.$PATCH" # The day OP becomes v1, we need to bump this
tag-prefix: "v0." # The day OP becomes v1, we need to bump this
prerelease-identifier: "staging"
template: |
## Changes

$CHANGES
81 changes: 60 additions & 21 deletions .github/workflows/auto_pr_review.yaml
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
name: "PR review"
on:
pull_request_target:
types: [opened, reopened, synchronize, edited]
types: [ opened, reopened, synchronize, edited ]

jobs:
labeler:
name: review
permissions:
contents: read
pull-requests: write
issues: write
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v7
with:
submodules: false

Expand All @@ -23,30 +24,68 @@ jobs:

# Check PR target branch
- name: check branch
uses: Vankka/pr-target-branch-action@def32ec9d93514138d6ac0132ee62e120a72aed5
if: github.repository == 'commaai/openpilot'
uses: Vankka/pr-target-branch-action@5da68a42bcb7b43d39104295a876a6f3f8d7908b
if: github.repository == 'sunnypilot/sunnypilot'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
target: /^(?!master$).*/
exclude: /commaai:.*/
exclude: /sunnypilot:.*/
change-to: ${{ github.base_ref }}
already-exists-action: close_this
already-exists-comment: "Your PR should be made against the `master` branch"

# Welcome comment
- name: "First timers PR"
uses: actions/first-interaction@v1
if: github.event.pull_request.head.repo.full_name != 'commaai/openpilot'
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
pr-message: |
<!-- _(run_id **${{ github.run_id }}**)_ -->
Thanks for contributing to openpilot! In order for us to review your PR as quickly as possible, check the following:
* Convert your PR to a draft unless it's ready to review
* Read the [contributing docs](https://github.com/commaai/openpilot/blob/master/docs/CONTRIBUTING.md)
* Before marking as "ready for review", ensure:
* the goal is clearly stated in the description
* all the tests are passing
* the change is [something we merge](https://github.com/commaai/openpilot/blob/master/docs/CONTRIBUTING.md#what-gets-merged)
* include a route or your device' dongle ID if relevant
update-pr-labels:
name: Update fork's PR Labels
runs-on: ubuntu-latest
if: (github.event.pull_request.head.repo.fork && (contains(github.event_name, 'pull_request') && github.event.action == 'synchronize'))
env:
PR_LABEL: 'dev'
TRUST_FORK_PR_LABEL: 'trust-fork-pr'
steps:
- name: Check if PR has dev label
id: check-labels
uses: actions/github-script@v7
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
const prNumber = context.payload.pull_request.number;
const { data: labels } = await github.rest.issues.listLabelsOnIssue({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: prNumber
});

const hasDevC3Label = labels.some(label => label.name === process.env.PR_LABEL);
const hasTrustLabel = labels.some(label => label.name === process.env.TRUST_FORK_PR_LABEL);

console.log(`PR #${prNumber} has ${process.env.PR_LABEL} label: ${hasDevC3Label}`);
console.log(`PR #${prNumber} has ${process.env.TRUST_FORK_PR_LABEL} label: ${hasTrustLabel}`);

core.setOutput('has-dev', hasDevC3Label ? 'true' : 'false');
core.setOutput('has-trust', hasTrustLabel ? 'true' : 'false');

- name: Remove trust-fork-pr label if present
if: steps.check-labels.outputs.has-dev == 'true' && steps.check-labels.outputs.has-trust == 'true'
uses: actions/github-script@v7
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
const prNumber = context.payload.pull_request.number;

await github.rest.issues.removeLabel({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: prNumber,
name: process.env.TRUST_FORK_PR_LABEL
});

console.log(`Removed '${process.env.TRUST_FORK_PR_LABEL}' label from PR #${prNumber} as it received new commits`);

// Add a comment to the PR
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: prNumber,
body: `The \`${process.env.TRUST_FORK_PR_LABEL}\` label has been automatically removed because new commits were pushed to this PR. This PR will need to be re-reviewed before the label can be applied again.`
});
35 changes: 0 additions & 35 deletions .github/workflows/badges.yaml

This file was deleted.

Loading
Loading