Files
meshcore-bot-firmware/.github/PULL_REQUEST_TEMPLATE.md
cj-vana 15c7072d81 Add repo scaffolding for Colorado-Mesh publish
Adds the project metadata and CI/release workflow needed to publish this
repo under Colorado-Mesh/meshcore-bot-firmware.

- LICENSE: MIT with attribution to upstream MeshCore (also MIT)
- README: rewritten with badges, supported boards, install paths (web
  flasher / PlatformIO / esptool), bot command table, layout map,
  development quickstart
- CONTRIBUTING: submodule + patch-queue workflow, what-goes-where,
  patch hygiene rules, PR expectations
- RELEASE: cmesh-bot-vX.Y.Z tag scheme + procedure
- CHANGELOG: Keep-a-Changelog format, seeded with the hop-coordination
  fix and patch-5 utility commands
- Issue templates: bug_report (with bot stats prompt), feature_request,
  config.yml (no blank issues, link to upstream + community)
- Pull request template: layer checklist, verification gates,
  prefs-schema impact prompt
- .github/workflows/firmware-build.yml: keep PR check on representative
  envs (Heltec V3, RAK 4631 USB+BLE), add concurrency cancellation for
  PRs, scope cache key to PIO config hash
- .github/workflows/release.yml: NEW; triggers on cmesh-bot-v* tag or
  manual dispatch, enumerates all 133 *_companion_radio_(usb|ble) envs
  from vendor/MeshCore/variants/, shards across 8 parallel matrix jobs,
  aggregates artifacts into a single draft release
- scripts/verify.sh: respect MESHCORE_SKIP_APPLY_PATCHES like
  build-representative.sh does, so verify works when vendor already has
  patches applied as commits
- .gitignore: add .forge.bak.*/ for forge backup directories
2026-05-16 13:01:09 -06:00

29 lines
946 B
Markdown

<!--
Thanks for the PR. A few quick prompts to make review fast.
Delete sections that don't apply.
-->
## Summary
<!-- What changed and why. Lead with the why. -->
## Affected layer
- [ ] MeshCore submodule (`vendor/MeshCore/`) — patches re-exported
- [ ] Wrapper tooling (`scripts/`, `tests/`, `.github/`)
- [ ] Colorado overlay (`colorado/`)
- [ ] Docs only
## Verification
- [ ] `MESHCORE_SKIP_APPLY_PATCHES=1 bash scripts/verify.sh --no-build` passes locally
- [ ] (if firmware changed) Built a representative env and confirmed size impact in `out/size/summary.json`
- [ ] (if behavior changed on the radio) Flashed and tested on real hardware — note the board and what you tried:
> _e.g. Heltec V3, sent `ping`/`trace`/`path` at 0, 2, 4, 6 hops from another node on #bot_
## Bot-prefs schema impact
- [ ] No change to `BotPrefs` shape or default values
- [ ] Schema changed → `BOT_PREFS_VERSION` bumped accordingly
- [ ] N/A