Files
meshcore-bot/.github/ISSUE_TEMPLATE/feature_request.yml
T
agessaman ad7df3438b docs: add contributor and security policy, templates, and dependabot
CONTRIBUTING covers dev setup, reproducing all six CI jobs locally, and
the house rules a newcomer would otherwise trip over: append-only
migrations, config changes needing config.ini.example updates, new docs
pages needing an mkdocs nav entry, the ruff pin, and PRs targeting dev.

SECURITY routes reports through GitHub private vulnerability reporting
rather than an email address, with a 10-day acknowledgement and 30-day
assessment window. Scope names what this codebase actually exposes, and
explicitly puts the MeshCore protocol, RF-layer attacks, and running the
viewer without a password out of scope.

Issue forms collect the details every radio bug report needs — version,
transport, hardware, install method — and the feature form asks up front
whether a proposal spends mesh airtime. Blank issues stay enabled since
Discussions is not turned on, so they are the only route for questions.

Dependabot covers GitHub Actions weekly, where a stale or compromised
action is a real supply-chain risk. pip and npm are grouped and monthly:
runtime deps are >= ranges, so version updates are mostly floor bumps,
and security fixes arrive through Dependabot alerts regardless.
2026-08-07 13:44:55 -07:00

48 lines
1.5 KiB
YAML

name: Feature request
description: Suggest a new command, service plugin, or capability
labels: ["enhancement"]
body:
- type: markdown
attributes:
value: |
Before filing: if this is specific to your own deployment, a local plugin
may be a better fit than an upstream change — see
[docs/local-plugins.md](https://github.com/agessaman/meshcore-bot/blob/main/docs/local-plugins.md).
- type: textarea
id: problem
attributes:
label: What problem would this solve?
description: Describe the situation you are trying to handle, not just the feature.
validations:
required: true
- type: textarea
id: proposal
attributes:
label: Proposed behavior
description: What should the bot do? Include example command syntax and replies if relevant.
validations:
required: true
- type: dropdown
id: airtime
attributes:
label: Does this spend mesh airtime?
description: >
Commands and scheduled announcements consume shared, unlicensed spectrum.
Anything that transmits needs to justify its cost and default conservatively.
options:
- "No — web viewer, config, or internal only"
- "Yes — sends a reply when a user asks for it"
- "Yes — transmits on a schedule or unprompted"
- "Not sure"
validations:
required: true
- type: textarea
id: alternatives
attributes:
label: Alternatives considered
description: Existing commands, config options, or local plugins you have already tried.