diff --git a/.github/.wordlist.txt b/.github/.wordlist.txt index f3954d1eb89358..76485a2a013b9a 100644 --- a/.github/.wordlist.txt +++ b/.github/.wordlist.txt @@ -1452,6 +1452,8 @@ trackFree TransferSession transitionTime TransportMgrBase +triaged +triaging TriggerEffect TRNG trustm diff --git a/.spellcheck.yml b/.spellcheck.yml index 7313f64ebd6976..757034586b9bd0 100644 --- a/.spellcheck.yml +++ b/.spellcheck.yml @@ -65,7 +65,7 @@ matrix: # converts markdown to HTML - pyspelling.filters.markdown: sources: - - '**/*.md|!third_party/**|!examples/common/**/repo/**|!docs/ERROR_CODES.md|!docs/clusters.md|!docs/testing/yaml_schema.md|!docs/testing/yaml_pseudocluster.md | !docs/testing/python.md | !docs/testing/ChipDeviceCtrlAPI.md' + - '**/*.md|!third_party/**|!examples/common/**/repo/**|!docs/ERROR_CODES.md|!docs/clusters.md|!docs/testing/yaml_schema.md|!docs/testing/yaml_pseudocluster.md|!docs/testing/python.md|!docs/testing/ChipDeviceCtrlAPI.md|!docs/issue_triage.md' aspell: ignore-case: true camel-case: true diff --git a/docs/README.md b/docs/README.md index e5aad317e6d556..e96ab29f042f56 100644 --- a/docs/README.md +++ b/docs/README.md @@ -15,6 +15,11 @@ [Visual Studio Code](https://code.visualstudio.com/) can be found in [the development guide](./VSCODE_DEVELOPMENT.md) +## Issue triage + +Project issues are triaged and maintained according to the +[issue triage](./issue_triage.md) guide. + ## Platform Guides - Various guides are available [here](./guides/README.md) that cover platform diff --git a/docs/index.md b/docs/index.md index 6b7553f205ae1f..89e4661e2a0e1e 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,4 +1,4 @@ -# Welcome to Matter's documentation! +# Welcome to Matter's documentation ```{toctree} :maxdepth: 2 @@ -25,6 +25,7 @@ zap_clusters spec_clusters upgrading ERROR_CODES +issue_triage ``` diff --git a/docs/issue_triage.md b/docs/issue_triage.md new file mode 100644 index 00000000000000..891bfca4716a84 --- /dev/null +++ b/docs/issue_triage.md @@ -0,0 +1,146 @@ +# Project issues + +General issues are listed at + . + +In order to be able to effectively follow up on these issues, they are separated +into groups for further review and fixing based on current maintainers on +specific areas of the code. The separation is done via `labels`. + +Issues that still need triaging are labeled as `needs triage`: + + + +## Non-SDK issues + +In some cases the issue is integrating with ecosystems or environments are not +supported. In these cases, issues can be re-directed to specific support pages +rather than the SDK GitHub issues. + +### Google Integration + +- General integration link: +- Support via the communities areas: + - Stack overflow: + + - Google Nest Community: + + +### Apple Integration + +This applies if there is an issue with Home interacting with a device (as +opposed to an issue with Matter.framework or the SDK that is encountered by code +actually running on darwin). + +General instructions available at [here](./guides/darwin.md) in the +`Providing feedback to Apple` section. + +Once a Feedback Assistant ticket is filed, the ticket ID can be sent to Boris +Zbkarsky to ensure it is noticed by the right people + +### Environments not currently supported / not maintained + +Some items are explicitly not maintained currently + +- Windows integration: no official maintainer for this so currently not + supported +- Old compiler support: CHIP requires a C++17 or higher compiler. + +## Platform maintainers + +This level of separation is generally for platform-specific issues (e.g. failure +to commission for one specific platform, failure to run on some specific +operating system). + +Contact is generally done on slack. E-mail addresses are not added here on +purpose in order to avoid spam. + +| Platform | Contact | Label | Note(s) | +| ------------ | --------------------------------------- | -------------------------------------------------------------------------------------------------------- | ------- | +| Android | Andrei Litvin, Yunhan Wang, Yufeng Wang | [android](https://github.com/project-chip/connectedhomeip/issues?q=is%3Aopen+is%3Aissue+label%3Aandroid) | | +| Darwin | Boris Zbarsky, Justin Wood | [darwin](https://github.com/project-chip/connectedhomeip/issues?q=is%3Aopen+is%3Aissue+label%3Adarwin) | | +| Espressif | Hrishikesh Dhayagude | [esp32](https://github.com/project-chip/connectedhomeip/issues?q=is%3Aopen+is%3Aissue+label%3Aesp32) | | +| Linux | Andrei Litvin | [linux](https://github.com/project-chip/connectedhomeip/issues?q=is%3Aopen+is%3Aissue+label%3Alinux) | | +| Nordic | Lucasz Duda | [nrf](https://github.com/project-chip/connectedhomeip/issues?q=is%3Aopen+is%3Aissue+label%3Anrf) | | +| NXP | Doru Gucea | [nxp](https://github.com/project-chip/connectedhomeip/issues?q=is%3Aopen+is%3Aissue+label%3Anxp) | | +| Silabs/EFR32 | Jean Francois Penven, Junior Martinez | [efr32](https://github.com/project-chip/connectedhomeip/issues?q=is%3Aopen+is%3Aissue+label%3Aefr32) | | + +## Code areas + +The following people can be contacted about issues in specific area of code are +affected that are not platform-specific. + +| Code area | Contact | Label | Note(s) | +| ------------------------------------- | -------------------------------- | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| ARM cross-compile | Andrei Litvin | N/A | Some support for cross-compiling on x64 linux for arm64 linux (like Raspberry PI) | +| Build system (darwin, xcode) | Boris Zbarsky, Justin Wood | N/A | darwin specific builds, xcode connector | +| Build system (gn, ninja) | Andrei Litvin | N/A | General build system questions and gn support, generally on Linux | +| MatterIDL | Andrei Litvin | N/A | General .matter files and code generation based on it | +| Minimal MDNS | Andrei Litvin | N/A | mdns specfic. Note that platformdns also exists and issues are often "DNSSD" rather than minmdns specific | +| Python testing infrastructure/helpers | Cecille Freeman | N/A | Writing tests cases in python. **NOTE** this is for test infrastrure and NOT for individual test issues. Test case failures are associated with test applications or the test case script. | +| ZAP Code Generation | Boris Zbarsky, Bharat Raju Dandu | [zap](https://github.com/project-chip/connectedhomeip/issues?q=is%3Aopen+is%3Aissue+label%3Azap) | Some issues may be in the zap project itself. This is for generic code generation issues and help, often regarding `.zapt` templates | +| src/crypto, src/credentials | Tennessee Carmel-Veilleux | N/A | | + +## Example maintenance + +Examples often correspond to specific device types. We have split the contact +per device type regardless of example (e.g. all-clusters will contain all device +types or functionality) as well as individual examples. + +### Per device type + +| Device Type(s) | Contact | Label | Note(s) | +| -------------------------- | ---------------------------- | ------------------------------------------------------------------------------------------------------------ | ------- | +| Fabric Bridge, Fabric Sync | Yufeng Wang, Terence Hampson | [fabric-sync](https://github.com/project-chip/connectedhomeip/pulls?q=is%3Aopen+is%3Apr+label%3Afabric-sync) | | + +### Per example + +| Example path | Contact | Note(s) | +| ---------------------------------------------- | ---------------------------- | ------------ | +| `examples/air-purifier-app` | | UNMAINTAINED | +| `examples/air-quality-sensor-app` | | UNMAINTAINED | +| `examples/all-clusters-app` | | UNMAINTAINED | +| `examples/all-clusters-minimal-app` | | UNMAINTAINED | +| `examples/android` | Yunhan Wang | | +| `examples/bridge-app` | | UNMAINTAINED | +| `examples/build_overrides` | | UNMAINTAINED | +| `examples/chef` | Andrei Litvin | | +| `examples/chip-tool` | | UNMAINTAINED | +| `examples/contact-sensor-app` | | UNMAINTAINED | +| `examples/darwin-framework-tool` | Boris Zbarsky | | +| `examples/dishwasher-app` | | UNMAINTAINED | +| `examples/energy-management-app` | James Harrow | | +| `examples/fabric-admin` | Yufeng Wang, Terence Hampson | | +| `examples/fabric-bridge-app` | Yufeng Wang, Terence Hampson | | +| `examples/java-matter-controller` | Yunhan Wang, Yufeng Wang | | +| `examples/kotlin-matter-controller` | Yunhan Wang, Yufeng Wang | | +| `examples/laundry-washer-app` | | UNMAINTAINED | +| `examples/lighting-app` | Junior Martinez | | +| `examples/lighting-app-data-mode-no-unique-id` | | UNMAINTAINED | +| `examples/light-switch-app` | | UNMAINTAINED | +| `examples/lit-icd-app` | Yunhan Wang | | +| `examples/lock-app` | | UNMAINTAINED | +| `examples/log-source-app` | | UNMAINTAINED | +| `examples/microwave-oven-app` | Rob Bultman | | +| `examples/minimal-mdns` | Andrei Litvin | | +| `examples/network-manager-app` | Thomas Lea | | +| `examples/ota-provider-app` | | UNMAINTAINED | +| `examples/ota-requestor-app` | | UNMAINTAINED | +| `examples/persistent-storage` | | UNMAINTAINED | +| `examples/pigweed-app` | | UNMAINTAINED | +| `examples/placeholder` | | UNMAINTAINED | +| `examples/providers` | | UNMAINTAINED | +| `examples/pump-app` | | UNMAINTAINED | +| `examples/pump-controller-app` | | UNMAINTAINED | +| `examples/refrigerator-app` | | UNMAINTAINED | +| `examples/resource-monitoring-app` | | UNMAINTAINED | +| `examples/rvc-app` | | UNMAINTAINED | +| `examples/smoke-co-alarm-app` | | UNMAINTAINED | +| `examples/temperature-measurement-app` | | UNMAINTAINED | +| `examples/thermostat` | | UNMAINTAINED | +| `examples/thread-br-app` | | UNMAINTAINED | +| `examples/tv-app` | Chris DeCenzo, Lazar Kovacic | | +| `examples/tv-casting-app` | Chris DeCenzo, Lazar Kovacic | | +| `examples/virtual-device-app` | | UNMAINTAINED | +| `examples/water-leak-detector-app` | | UNMAINTAINED | +| `examples/window-app` | | UNMAINTAINED |