Skip to content

Broaden ECU scan table with OBDb-grounded F/G addresses (v0.8.0 PR #4) - #116

Merged
ohgeeceee merged 1 commit into
mainfrom
feat/v0.8.0-scan-table
Jul 18, 2026
Merged

Broaden ECU scan table with OBDb-grounded F/G addresses (v0.8.0 PR #4)#116
ohgeeceee merged 1 commit into
mainfrom
feat/v0.8.0-scan-table

Conversation

@ohgeeceee

Copy link
Copy Markdown
Owner

Summary

Tier A per CLAUDE.md — community/address data + simulator + docs; no transport/protocol behavior change. Implements the v0.8.0 plan's PR #4 slice.

Scan table 12 → 17 entries. Every new address is grounded in the OBDb-verified DIDs of research/bmw_diag_dim04_uds_dids.md — no guessed addresses:

  • 0x19 DSC — 5-Series/X5 chassis variant of 0x29 (explicit 0x19-vs-0x29 note in research)
  • 0x56 body domain — doors/hood/trunk/locks, 3/4/5/X3/X5/Z4 2012+
  • 0x63 GWS — current-gear DID; module naming honestly flagged unconfirmed
  • 0x0D KOMBI — secondary cluster target (vehicle speed)
  • 0x07 SME — HV battery, PHEV/BEV only (gasoline cars time out, by design)

The existing 12 entries get per-group provenance comments; four (0x30/0x64/0x65/0x70) are marked as standard E-series assignments with no in-repo confirmation — kept, since absent modules only cost one timeout. The simulator answers the five new addresses.

New doc docs/hardware/addressing-model.md explains why the one-byte scan-table model holds on both K+DCAN and ENET (HSFZ one-byte src/tgt routed by the ZGW; DoIP u16 logical addresses live only in vehicle discovery).

Test plan

  • lint-toml clean (24 files); cargo build warning-clean
  • cargo test 99+1; node --test 57/57; pytest green (2 known local artifacts)
  • Merger smoke: Diagnostics scan on simulator lists the 5 new modules

Merge policy

Tier A — agent may self-merge when CI is green.

… (plan PR #4)

Scan table 12 -> 17 entries. New addresses, all grounded in the
OBDb-verified DIDs of research/bmw_diag_dim04_uds_dids.md:

- 0x19 DSC   chassis variant of 0x29 on 5-Series/X5 (did:DBE4/DB32/DFE7)
- 0x56 Body  F-series body-domain module (did:DCDD doors/hood/trunk/locks)
- 0x63 GWS   current-gear DID D031; exact module naming unconfirmed
- 0x0D KOMBI secondary cluster target (did:D240 vehicle speed)
- 0x07 SME   HV battery management, PHEV/BEV variants only

Existing 12 entries get honest provenance comments (OBDb+sim /
sim+DTC-corpus / standard E-series assignment, no in-repo confirmation).
Simulator answers the five new addresses. New doc
docs/hardware/addressing-model.md explains why the one-byte scan-table
model holds on both K+DCAN and ENET (HSFZ one-byte src/tgt routed by
the ZGW; DoIP u16 logical addresses only in vehicle discovery).
@ecc-tools

ecc-tools Bot commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

ECC bundle files are already tracked in this repository. Skipping generation of another bundle PR.

@ohgeeceee
ohgeeceee merged commit 458b0d9 into main Jul 18, 2026
10 of 11 checks passed
@ohgeeceee
ohgeeceee deleted the feat/v0.8.0-scan-table branch July 18, 2026 11:55

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 16dbc8038d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src-tauri/src/data/ecus.rs
ohgeeceee added a commit that referenced this pull request Jul 18, 2026
…#119)

* docs: v0.9.0 cycle plan — "Guided Fault Finding" (gap survey + 5 slices)

Seed-for-Discussion plan for the next cycle, mirroring the v0.8.0
plan's shape. Survey of the existing guided-fault-finding surface
(3 Opinions TOML files, 2 Oracle JSON files / 7 patterns, 2 Story
TOML files / 8 entries — all flat, none branching) identifies the
extension points: a new community/testplans TOML tree with [[step]]
branching (inherits the v0.8.0 PR #1 TOML parse gate), a read-only
plan query command, and a walkthrough UI mounted in the existing
fault-detail composition. Also surfaces that community/oracle/*.json
has no parse gate today.

Five slices: (1) test-plan schema + branch-integrity gate + oracle
JSON gate (Tier A, test-only); (2) grounded first corpus of ~8-10
DTC plans with per-step source citations + known-missing list
(Tier A data); (3) loader + read-only get_test_plan command (Tier B,
protected paths); (4) walkthrough UI with live-data measurement
deep-links and freeze-frame seeding (Tier A frontend); (5) validation
harness + label conventions (Tier A docs). Standing NOT-do list gains
guided-diagnostics-adjacent items: emissions-monitor tampering,
VIN/odometer fraud, imported ISTA test plans, auto-executing writes,
unreviewed LLM procedures, cloud fault upload.

ROADMAP: v0.8.0 status updated (merged #114/#115/#116, #117 pending
human merge), v0.9.0 planned section added. README What's-coming
refreshed to match.

* docs: replace Discussion-gate process with direct-PR model

Owner directive: work lands on GitHub as PRs as soon as it's done -
no Discussion seed, no thread-conclusion gate.

- COMMUNITY_FRAMEWORK.md: Rule 2 rewritten from "No Feature Is
  Accepted Without Public Discussion" to "Work Lands Directly as
  Pull Requests". Reasoning moves into the PR body; Discussions stay
  as an optional venue for genuinely open questions, never a gate.
  Rules 1/3/4 untouched.
- docs/v0.9.0_plan.md + docs/v0.8.0_plan.md: seed-for-Discussion
  framing and cycle-starts-when-thread-concludes gates removed; plans
  stand on their own as PRs.
- ROADMAP.md: v0.9.0 section + footer now say slices dispatch as PRs
  directly.
- README.md: decisions-in-public row, ideas-being-explored section,
  and contributor commitment #2 updated to the direct-PR model.
- CONTRIBUTING.md: feature-ideas path is now PR-first; Discussion
  optional for open directions.

Deliberately kept: Discussions as a venue/contact channel (framework
intro + heads-up line, README contact URL, CONTRIBUTING optional link)
and historical mentions in CHANGELOG.md / RELEASE_NOTES_v0.3.0.md /
v0.5.0-v0.7.0 plan docs (records of what the rule was at the time).
CLAUDE.md has no Discussion references (verified by grep).

---------

Co-authored-by: ohgeeceee <ohgeeceee@users.noreply.github.com>
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.

1 participant