Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Aligns with the rest of the meshtastic org. The project as a whole is
# funded via GitHub Sponsors and Open Collective at the org level; this
# repo does not run independent campaigns.
github: [meshtastic]
open_collective: meshtastic
98 changes: 98 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
name: Bug report
description: Something isn't working as documented.
title: "[bug] "
labels: ["bug", "needs-triage"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to file a bug. Please fill in as much of the form as you can.
For security issues, **do not file here** — see [`docs/security.md`](../../docs/security.md).

- type: input
id: sdk-version
attributes:
label: SDK version
description: e.g. `0.1.0`, `0.2.0-SNAPSHOT`, or commit SHA
placeholder: "0.1.0"
validations:
required: true

- type: dropdown
id: target
attributes:
label: Target platform
multiple: true
options:
- Android
- JVM (desktop / server)
- iOS
- wasmJs (browser)
validations:
required: true

- type: dropdown
id: transport
attributes:
label: Transport in use
multiple: true
options:
- BLE
- TCP
- USB Serial (Android)
- Serial (JVM)
- Other / N-A
validations:
required: true

- type: input
id: firmware
attributes:
label: Device firmware version
description: From `AdminApi.getMetadata()` or the device's About screen
placeholder: "2.5.10.abcdef"
validations:
required: true

- type: textarea
id: what-happened
attributes:
label: What happened?
description: A clear and concise description of the bug.
validations:
required: true

- type: textarea
id: expected
attributes:
label: What did you expect to happen?
validations:
required: true

- type: textarea
id: reproduction
attributes:
label: Minimal reproduction
description: Code snippet or `samples/cli` command. Smaller is better.
render: kotlin
validations:
required: true

- type: textarea
id: logs
attributes:
label: Logs
description: |
Paste relevant logs at `LogLevel.Debug`. Redact PSKs and any session tokens.
Wrap in triple backticks.
render: shell

- type: checkboxes
id: terms
attributes:
label: Affirmations
options:
- label: I have searched existing issues and this isn't a duplicate.
required: true
- label: I have read [`docs/security.md`](../../docs/security.md) and confirmed this is not a security-sensitive issue.
required: true
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Security advisory
url: https://github.com/meshtastic/kzstd/security/advisories/new
about: Don't file public issues for security problems. Use a private security advisory.
- name: Meshtastic community
url: https://meshtastic.org/docs/community/
about: General Meshtastic questions belong in the community channels.
60 changes: 60 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name: Feature request
description: Suggest an addition or change.
title: "[feature] "
labels: ["enhancement", "needs-triage"]
body:
- type: markdown
attributes:
value: |
Thanks for the suggestion! For larger design changes, consider opening a discussion first
or proposing an ADR per [`CONTRIBUTING.md`](../../CONTRIBUTING.md#adrs-architecture-decision-records).

- type: textarea
id: problem
attributes:
label: Problem
description: What gap or pain are you trying to solve? Who else has this need?
validations:
required: true

- type: textarea
id: proposal
attributes:
label: Proposed solution
description: |
What API surface, behavior, or tooling change would solve it? Keep it concrete —
ideally a snippet of the API as you'd want to use it.
render: kotlin
validations:
required: true

- type: textarea
id: alternatives
attributes:
label: Alternatives considered
description: What else have you tried or thought about?

- type: dropdown
id: scope
attributes:
label: Likely scope
options:
- "core (engine / public API)"
- "transport-* (a transport module)"
- "storage-* (a storage module)"
- "tooling / build / CI"
- "docs / spec"
- "samples"
- "not sure"
validations:
required: true

- type: checkboxes
id: terms
attributes:
label: Affirmations
options:
- label: I have searched existing issues and discussions.
required: true
- label: I am willing to discuss design trade-offs before implementation.
required: true
1 change: 1 addition & 0 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@ retryBackOffMs=500
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionSha256Sum=bafc141b619ad6350fd975fc903156dd5c151998cc8b058e8c1044ab5f7b031f