Commit Graph

18600 Commits

Author SHA1 Message Date
whoisdomi 712ec2c0f7 CEM standstill, road data, and flicker left 2026-10-13 14:53:25 -05:00
firestar5683 d9e6fef798 Preserve CEM hold across clock sampling 2026-10-13 14:41:43 -05:00
firestar5683 304b0105c1 Trace planner publication delays 2026-10-13 14:34:10 -05:00
firestar5683 eda46d9ecc Correct CEM clock sampling bounds 2026-10-13 14:21:51 -05:00
firestar5683 268668a39b Trace CAN producer delays 2026-10-13 10:57:06 -05:00
firestar5683 f54ba5711c Keep CEM recovery cutoff stable 2026-10-13 10:37:45 -05:00
firestar5683 566838a019 Preserve temporary steering intent and CEM settings 2026-10-13 10:20:08 -05:00
whoisdomi 7d84f27fbb CEM rejection logging 2026-10-13 09:26:03 -05:00
firestar5683 0cc8d91b69 Add vehicle-specific Panda wake settings 2026-10-13 07:08:18 -05:00
firestar5683 2d321aeb6c Preserve stock lateral intent during temporary lag 2026-10-13 04:07:50 -05:00
firestar5683 4dd0036141 Preserve control recovery during temporary lag
Keep existing ordinary controls under the normal soft-disable countdown when current vehicle data and native permissions remain healthy. Preserve original command deadlines and qualify retained steering intent against completed publication provenance.
2026-10-13 03:27:31 -05:00
firestar5683 b2d62aa85a Update Card fixtures and keep startup traffic fresh 2026-10-12 23:41:03 -05:00
firestar5683 6f67fde67c Publish vehicle state before radar processing 2026-10-12 23:12:24 -05:00
firestar5683 8275858f4e Restore ordinary control recovery after source gaps 2026-10-12 22:48:33 -05:00
firestar5683 fefb631774 Preserve lateral intent through temporary lag 2026-10-12 21:39:39 -05:00
Prabhaav Pillai 6c07d1e338 build params 2026-10-12 21:00:45 -04:00
prabhaavp c7b990a330 Merge pull request #216 from dirwin31:Stardust-PR-7
AA Mobile Layout Edit Tweaks
2026-10-12 20:56:21 -04:00
Prabhaav Pillai 3710b49280 blind-spot camera settings and UI feedback in OnroadLayoutPage 2026-10-12 20:54:27 -04:00
dirwin31 f05eb234c2 Duplicated CSS in widget removal dialog styling and Glow Line 2026-10-12 17:37:35 -07:00
firestar5683 2cb6e18f0b Instrument CAN receive scheduling boundaries 2026-10-12 19:17:00 -05:00
dirwin31 ccd85013cd Allow the comma display to sleep while Android Auto stays active
Add the off-by-default TurnOffCommaScreen preference and retain display ownership and wake behavior, with display tests.
2026-10-12 16:46:11 -07:00
dirwin31 33aec5977c Refine Android Auto display controls and blind-spot camera popups
Support blind-spot camera popups through the Android Auto layout, remove the redundant BSM camera toggle, and separate projection settings from comma-screen preferences. Refine pinned editor corners and widget removal dialogs.
2026-10-12 16:46:11 -07:00
dirwin31 aee88a2d40 Make the Galaxy layout editor compact and touch-friendly
Pin the preview and save bar, tighten display rows, and group color controls for phone screens. Stabilize touch selection, resizing, drag autoscroll, and menu dismissal.
2026-10-12 16:46:10 -07:00
firestar5683 834705eae8 Reconcile control inputs before authority decisions 2026-10-12 18:43:25 -05:00
firestar5683 a7e7ba591c Restore inherited Card worker scheduling 2026-10-12 18:33:34 -05:00
Dom fdd8bbfdf1 aol: retain established intent across newly received expired combined proof
Handle a strictly newer same-identity combined proof first consumed after
its output lease expires. Require an established healthy combined Ioniq6
baseline, valid fresh-at-publication source, healthy current native requests
and permission for both axes, and unchanged original retention bounds.

Advance only accepted signature/sequence. Do not renew source/native clocks,
extend output leases, grant expired commands, rearm after genuine disarm,
or automatically restore longitudinal control.

Validation: 940 tests on exact f04b source, 19 additional independent cases,
783 unchanged imported modules plus two intended files, Ruff and ty pass.
A prior run with stale test-fixture provenance is retained and superseded.
Road88 supports the mechanism; its exact consumed proof is unlogged.
This repairs intent retention, not the underlying producer delay.
Update protected inventory receipt.
2026-10-12 15:53:11 -06:00
Dom f04b5d1693 selfdrived: short-circuit redundant final-publication qualification
Evaluate the existing active-axis and source-age predicates before the
pure vehicle qualification predicate. Preserve the same captured clock,
branch body, deadlines, native permission checks and output behavior.

Validation: 39 exact owner-output/clock comparisons, 1728 Capnp cases,
and 851 broad plus 70 rebased functional passes. An unchanged Card-only
host timing test failed in aggregate and passed isolated without importing
SelfdriveD; retain that performance limitation rather than claim all-green.

One qualification call is removed on the healthy fixture path. Host timing
benefit is small/noisy and is not evidence that road stalls are fixed.
Update protected source inventory receipt.
2026-10-12 15:45:34 -06:00
Dom 091f640ac3 card: move conditional settings reads off the control loop
Use the existing settings worker for proactive conditional-mode source
verification. Adopt one immutable snapshot per Card frame, with verified
age strictly below 500 ms. Busy, invalid, or stale snapshots defer
conditional proposals without disengaging ordinary control or AOL.

Preserve fresh per-request SafeMode and gesture mapping checks. Replay
retains its source-clock synchronous owner. Polling phase changes; no
blanket one-second cached permission is added.

Validation: 353 aggregate tests, independent boundary and actual-control
continuity checks, exact source imports and inventory receipt verification.
Measured conditional source reads on main drop from 36 to zero over a
three-second initialized fixture; worker reads increase proactively.
This removes a blocking path, not a demonstrated cure for all road stalls.
2026-10-12 15:38:20 -06:00
Dom 2878c992b2 diagnostics: capture bounded Ioniq control timing and latch-clear evidence
Enable compact Card phase capture for qualified Ioniq6 production runs,
including unlatched ordinary control. Record publication gaps, source and
receive clocks, thread CPU, settings-worker context, and latch-clear reasons.

Add bounded SelfdriveD phase, admission, original-proof and Ratekeeper
snapshots with off-thread reporting and suppression counters. Preserve
control predicates, original deadlines, thresholds and scheduling policy.

Validation: 583 combined tests pass on unchanged rerun; an initial host
wall-time microbenchmark failure and isolated pass are retained. Exact-source
import audits and independent review pass. Host overhead is measured, not
a target-device bound. This adds diagnostics, not a producer-lag fix.

Update protected source inventory receipt.
2026-10-12 14:49:44 -06:00
Dom f169ca0f4c selfdrived: check bounded proof deferral after intent drain
Use the same post-drain clock for source-expiry deferral and intent
admission, avoiding premature state disable when draining crosses the
source freshness cutoff. Preserve the original proof and deadline.

Add cutoff, follow-through, and restrictive-input regression coverage.
Update the protected source inventory receipt.

Validation: 416 focused aggregate tests and 79 independent boundary and
restriction checks; exact source import audits, Ruff, and ty pass.
This addresses a reproduced admission race, not underlying producer lag.
2026-10-12 14:19:45 -06:00
Dom 6c4dde8a07 Restore Ioniq 6 friction threshold and error behavior only
Exclude HYUNDAI_IONIQ_6 from the recent Hyundai CAN-FD highway friction wrapper, restoring original friction threshold/error passthrough in both controller modes. Preserve all steering limits, ramp rates, startup PID settings, scalar calibration, other vehicles, native assets and dropout repairs.

Update regression expectations and add exact Ioniq friction passthrough coverage. Focused suite: 22 passed; 559 repository Python imports match exact parent plus the three intended files. Independent numerical checks: 80,640 comparisons. Protected inventory receipt independently verified. This is the user-requested tuning revert, not a lag fix or on-device qualification.
2026-10-12 12:52:39 -06:00
Dom e3446423d6 Resolve matched availability recovery before failing the pending join
A recovered axis and its healthy event can arrive through separate sockets in either order. After a previously verified availability pause, resolve an exact fresh healthy LAT-only recovery pair before treating the pending first half as unmatched failure.

Require the original pending deadline, exact newer event association, unchanged session/producer/epoch/inventory, fresh source and positive native LAT authority. Preserve failed-state, physical cancellation, restrictive events and native-denial handling. This only clears join bookkeeping; it grants no output and extends no lease.

Add 24 regression cases. Exact parent fails four split-recovery positives while together-delivery and restriction controls pass. Candidate focused suite: 396 passed; independent adversarial review: 58 passed. Import inventory and protected receipt verified. Host qualification is not road verification; separate lag/producer stalls remain unresolved.
2026-10-12 12:42:54 -06:00
Dom fb38c11888 Preserve fresh AOL renewal during an already-held brake
Recognize the existing qualified Ioniq lateral-only held-brake override when checking fresh-source renewal after an old output deadline. Exempt only recurring pedalPressed USER_DISABLE; retain new physical edges, other disable events, source/intent/session validation, native permission checks, and all expired-output enforcement. Do not extend leases or reenable longitudinal control.

Add 28 owner/Controls/Card regression cases and update two old held-brake handoff expectations. Clean serial focused suite: 369 passed; independent adversarial review: 56 passed. Exact parent import inventory and protected receipt verified. Host validation is not device/road qualification; separate lag and producer-stall failures remain under investigation.
2026-10-12 12:29:47 -06:00
Dom b494d5c880 Remove redundant CAN signal-history dictionary lookups
Clear the existing value lists directly rather than repeatedly looking up the address and signal key. Preserve aliases, lazy registration and in-place mutation semantics; decoding, validation and scheduling are unchanged.

51 CAN tests and 56 independent combined tests passed, including 1,000 paired mixed updates. Recorded actual-Card output and parser state match the parent. Repeated host component measurements saved approximately 45 microseconds across the three-parser fixture; no whole-Card or road-stall fix is claimed.

No native artifacts changed.
2026-10-12 12:16:24 -06:00
Dom 3cda7e5ac9 Reconcile fresh queued input after the previous axis packet expires
Do not gate nonblocking carState reconciliation on an old output packet's deadline. Process queued physical samples once before selected-source owners and the state-machine decision; retain the existing total 32-envelope bound, freshness/native/intent checks and no blocking wait beyond the old deadline.

Controlled route52-shaped retained-timeout schedules reproduce stale-selected-carState/fresh-intent rejection on the parent, including ordinary unlatched critical disable. Candidate consumes the fresh pair before deciding. 341 focused tests and 84 independent adversarial cases passed; exact-source import audit, Ruff, type and inventory checks passed.

No lease extension, scheduling rewrite or native artifact change. Separate Card production gaps remain unproven fixed.
2026-10-12 12:06:30 -06:00
firestar5683 8a0249abef Keep native zero-time polling nonblocking 2026-10-12 11:16:48 -06:00
firestar5683 f38c17f4a2 Avoid scheduler waits in nonblocking message reads 2026-10-12 10:57:46 -06:00
Dom 2c1b7d86a0 Match reduced authority test fixture to production carControl subscription
Initialize carControl as subscribed but unseen, then feed the preceding actual Controls packet with its original timestamp and validity. Preserve all expired-source withdrawal and recovery assertions; add unseen-to-received coverage.

Reproduces and resolves three KeyError failures from exact 25252cb CI. 317 owner/runtime/projection tests plus five independent initialization/packet guard cases passed; Ruff and type checks passed. Production and native code unchanged.
2026-10-12 10:29:22 -06:00
Dom 25252cb91e Fix early source-expiry handoff without losing restrictive intent bursts
Check bounded retention after event processing before source-expiry handling mutates authority. Preserve only the original unexpired proof for one normal tick; track all intent drains in the step so a later empty drain cannot conceal an intermediate deny.

Preserve fd14 fresh-owner continuity semantics and reconcile five legacy test expectations. Add early handoff and engagement/deny recovery regressions. 239 distinct focused tests and 277 platform tests passed; Ruff, type checks and exact-source import/inventory audits passed.

No native artifacts or lease extensions. This does not establish a fix for the separate measured Card production stall.
2026-10-12 10:05:15 -06:00
firestar5683 fd14b4b396 Keep fresh authority independent of expired output 2026-10-12 09:46:32 -06:00
Dom 4ef9686a91 Fix premature Ioniq axis withdrawal during fresh-input handoff
Keep an existing unexpired axis proof for one normal iteration when the selected source expires at publication, without renewing the proof or re-running stateful owners. Preserve physical overrides, restrictive intents, original deadlines and alerts; reject stale construction-time publication.

Add 79 owner-chain cases and refresh the protected source inventory. 183 focused tests, lint and type checks pass. Longer Card producer stalls remain outside this fix.
2026-10-12 08:27:40 -06:00
firestar5683 2f16acaf36 Preserve Bolt lateral intent through belt transitions 2026-10-12 06:32:06 -06:00
firestar5683 e55db51af5 Preserve Bolt lateral intent during driver overrides 2026-10-12 02:20:45 -06:00
firestar5683 2381fee499 Refresh Toyota dashboard replay references 2026-10-12 02:19:50 -06:00
firestar5683 8e6745ff00 Repair incoming test fixtures 2026-10-12 02:19:50 -06:00
prabhaavp 5f95832a98 Merge pull request #215 from dirwin31:Stardust-PR-6
Easy Sign In
2026-10-12 02:29:02 -04:00
Prabhaav Pillai 41c6c61755 Refactor Android Auto UI components for improved structure and styling 2026-10-12 02:27:55 -04:00
firestar5683 4ca2636966 Match Toyota dashboard lanes to lateral control 2026-10-11 23:23:00 -06:00
dirwin31 baa8937660 Tint the Android Auto border red for blind spots and amber for blinkers, with its own off-by-default switches. 2026-10-11 22:18:38 -07:00
dirwin31 1c8fc08089 Apply saved Android Auto layouts live using a background file watcher. 2026-10-11 22:18:38 -07:00