|
| 1 | +# **Coding Guidelines Subcommittee Meeting on 2026-03-18 @ 1600 CET / 1100 EDT** |
| 2 | + |
| 3 | +[Link](https://www.worldtimebuddy.com/?qm=1&lid=5,12,2643743,8,1850147,100,14&h=5&date=2026-3-18&sln=11-12&hf=1) to meeting time in common time zones. |
| 4 | + |
| 5 | +| Search Key | Description | |
| 6 | +| :---- | :---- | |
| 7 | +| \[todo\] | Action Item | |
| 8 | +| \[decision\] | Something decided on | |
| 9 | +| \[important\] | Key information | |
| 10 | + |
| 11 | +## **Agenda** |
| 12 | + |
| 13 | +1. Solicitation of notetaker |
| 14 | +2. Acceptance of [Previous Meeting Minutes](https://github.com/rustfoundation/safety-critical-rust-consortium/blob/main/subcommittee/coding-guidelines/meetings/2026-03-11/minutes.md) |
| 15 | +3. Introduction of new members |
| 16 | +4. Rust readiness for ISO 26262 (kudos to Stefan Akatyschew\!) |
| 17 | + - Analysis added and home page updated to guide towards that |
| 18 | + - [https://arewesafetycriticalyet.org/](https://arewesafetycriticalyet.org/) |
| 19 | +5. Review batches for [CERT C \=\> Rust Mapping](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/336) (Félix) |
| 20 | + - [\#427 \[CERT C Review Batch 1/5\] Review proposed Rust categorization](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/427) |
| 21 | + - [\#428 \[CERT C Review Batch 2/5\] Review proposed Rust categorization](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/428) |
| 22 | + - [\#429 \[CERT C Review Batch 3/5\] Review proposed Rust categorization](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/429) |
| 23 | + - [\#430 \[CERT C Review Batch 4/5\] Review proposed Rust categorization](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/430) |
| 24 | + - [\#431 \[CERT C Review Batch 5/5\] Review proposed Rust categorization](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/431) |
| 25 | +6. Coverage of MISRA C and CERT C in 2026 (Félix / Markus) |
| 26 | + - MISRA C one has a [PR up](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/pull/432) from Markus |
| 27 | + - Félix wanted the review batches done first IIRC |
| 28 | +7. Progress on ongoing tasks (all) |
| 29 | +8. Round table |
| 30 | + |
| 31 | +## **Check-in area** |
| 32 | + |
| 33 | +* David Svoboda :) |
| 34 | +* Douglas Deslauriers 💍 |
| 35 | +* William Barsse |
| 36 | +* Samuel Wright 😪 |
| 37 | +* Félix Fischer ☕ |
| 38 | +* Max Jacinto 🏹 |
| 39 | +* Pete LeVasseur 📆 |
| 40 | +* Arshad Mahmood ☀️ |
| 41 | +* Andreas Weis 📝 |
| 42 | +* Markus Hosch |
| 43 | +* Achim Kriso |
| 44 | + |
| 45 | +**Please add your name, and an emoji that describes your day.** |
| 46 | + |
| 47 | +**Notetaker:** |
| 48 | + |
| 49 | +* Andreas Weis |
| 50 | + |
| 51 | +For tips on how we take notes in the Safety-Critical Rust Consortium, please see the [Meeting Notetaker Role](https://github.com/rustfoundation/safety-critical-rust-consortium/blob/main/docs/notetaker-role.md) doc. |
| 52 | + |
| 53 | +## **Housekeeping section** |
| 54 | + |
| 55 | +* Document space: [coding-guidelines](https://github.com/rustfoundation/safety-critical-rust-consortium/tree/main/subcommittee/coding-guidelines) |
| 56 | +* Zulip: [safety-critical-consortium: Coding Guidelines](https://rust-lang.zulipchat.com/#narrow/channel/445688-safety-critical-consortium/topic/Coding.20Guidelines) |
| 57 | +* [Kanban board](https://github.com/orgs/rustfoundation/projects/1/views/3) |
| 58 | + * [`contributor experience`](https://github.com/orgs/rustfoundation/projects/1/views/4) view |
| 59 | + * [`coding guideline`](https://github.com/orgs/rustfoundation/projects/1/views/5) view |
| 60 | + |
| 61 | +## **Tasks** |
| 62 | + |
| 63 | +* Félix: remove “Anyone with the link can be Editor” as soon as the meeting is done |
| 64 | + * **Completed\! 🙂** |
| 65 | + |
| 66 | +## **Meeting Minutes** |
| 67 | + |
| 68 | +* Approval of minutes from last meeting. |
| 69 | +* Introduction of new members: Arshad Mahmood |
| 70 | +* Draft roadmap to ISO26262 readiness at [https://arewesafetycriticalyet.org/docs/intro](https://arewesafetycriticalyet.org/docs/intro) |
| 71 | + |
| 72 | + Got feedback from safety experts. If you have experience in functional safety, please give feedback. Having reds and yellows in there is not a bad thing, because it gives an honest impression of where we stand. |
| 73 | +* **Question**: Why is supporting processes red? |
| 74 | + * There was a discussion about this at [https://rust-lang.zulipchat.com/\#narrow/channel/445688-safety-critical-consortium/topic/ISO.2026262.20.2F.20Rust.20gap.20analysis/with/575829353](https://rust-lang.zulipchat.com/#narrow/channel/445688-safety-critical-consortium/topic/ISO.2026262.20.2F.20Rust.20gap.20analysis/with/575829353) |
| 75 | +* **Topic**: mapping CERT-C to Rust [https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/336](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/336) |
| 76 | + * POS and WIN rules are omitted for now, other rules are grouped in batches and are ready for feedback. The idea is to see if we agree on the rationale and the mapping of the rules. We have links to the full rule texts. The question is whether it is useful in all of Rust or only in unsafe (especially rules dealing with undefined behaviour), or not at all. |
| 77 | + * **Call to action:** please take a look at the proposed classification and give feedback. If a rule does not apply to Rust we give a rationale. Each rule will eventually become an item in the Kanban board and people can grab an item to write that guideline. |
| 78 | +* **Conversation:** *Why Guidelines? And why these?* |
| 79 | + * Potential users of this, like Eclipse S-Core want a development environment up to ASIL B until the end of 2026\. Having coding guidelines is a prerequisite. People have internal guidelines now. Having users for these guidelines that give us feedback from real world projects is good and will help us shape those guidelines. |
| 80 | + * Using the guidelines means we need a tool that enforces them automatically. The first step is to have people just read them and try to follow them, but we only get the real feedback once we have them in tools. What is useful there is a mapping from rules to already existing Clippy rules. We already enforce Clippy, but we can’t claim anything from that. If we could just switch to a safety-critical set of Clippy checks, that would be very useful. |
| 81 | + 1. **Note:** is a Rust project goal for 2026 to do this: [https://rust-lang.github.io/rust-project-goals/2026/safety-critical-lints-in-clippy.html](https://rust-lang.github.io/rust-project-goals/2026/safety-critical-lints-in-clippy.html) |
| 82 | + Contributions are very welcome. Goal period starts in April 2026\. |
| 83 | + 2. **Note:** guidelines currently have an item whether they are decidable/undecidable. Some rules are difficult or impossible to enforce automatically. It will be very important when writing lints for those rules, since well, a rule being undecidable means that a lint cannot exist for that rule. |
| 84 | +* **FAQs about CERT mapping:** |
| 85 | + * We have an issue where we discuss implications of interfacing with C from Rust: |
| 86 | + 1. [Question](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/430#issuecomment-4071115521) about FFI in the context of CERT C, |
| 87 | + 2. [Answer](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/430#issuecomment-4074338619) given from the POV of the scope of CERT |
| 88 | + * It will add a lot of credibility to the guidelines if we can show mapping to established guidelines. |
| 89 | +* **Question**: When do you plan to add this to the addendum? We should have uniform mappings for all the different guidelines in the end. |
| 90 | + * The MISRA C table is good but it is missing some info. |
| 91 | + * Discussion about ensuring the same form of the content. All table entries should have the same fields in the columns in the end. |
| 92 | + * Reading difficulties: |
| 93 | + 1. With the MISRA C table not all columns fit on the page without scrolling, making it difficult to read (**note that this is a CSS issue, not a content issue**). There are no headlines in the table, only directives. |
| 94 | + 2. The rationale acronyms should be explained before the table, because they are required to understand the table. |
| 95 | + * We can’t put the MISRA rule content in there for IP reasons. |
| 96 | + 1. Adding the headlines from MISRA rules is usually fine, using the body of the rule text is not. **\[todo\]** Get in contact with Andrew Banks of MISRA C to discuss details, he can sort out any IP question.. |
| 97 | + * **Goal of the addendum:** is to argue that our guidelines are not a step back. We need to document that we covered everything that the existing rules cared about. When you omit a rule you need a rationale so that we have proof that we did not miss anything accidentally. |
| 98 | + * The aim is to finish the CERT mapping’s feedback stage by the beginning of April. |
| 99 | + * Idea: maybe if the MISRA table is slightly off and we merge it like that, we can just change some of the columns later. As long as we’re not showing incorrect information. |
| 100 | + * The main difference is that MISRA focuses on subsetting the language and CERT focuses on potential vulnerabilities. In format and in spirit they should look the same though. |
| 101 | + * **How the two tables relate:** it would be helpful to resolve this offline and unify the format of the two tables. For now put a version in a PR what it would look like with the current categories. I think that would help to reveal any issues. |
| 102 | + 1. We should avoid having different approaches to different standards. The way to map should be formulaic, normative. We want a cohesive document in the end. |
| 103 | + 2. During mapping we may find, e.g. that we only want to apply a subset of a rule. But that should not impact the format. |
| 104 | + |
| 105 | +## **Material** |
| 106 | + |
| 107 | +Any material to read before the meeting should be included here. |
| 108 | + |
| 109 | +* Milestone: [Prepare for launch to wider Rust community](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/milestone/1) |
0 commit comments