summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorinfo@mode42.com <info@mode42.com>2026-08-07 18:23:28 +0000
committerinfo@mode42.com <info@mode42.com>2026-08-07 18:23:28 +0000
commitfa05a5f8238e9e1417235711656e5062ccc843a7 (patch)
tree46fbbd18de54492b59307c16efcc7f3152723238 /.github
Initial push
Diffstat (limited to '.github')
-rw-r--r--.github/ISSUE_TEMPLATE/bug_report.md38
-rw-r--r--.github/ISSUE_TEMPLATE/config.yml1
-rw-r--r--.github/ISSUE_TEMPLATE/feature_request.md22
-rw-r--r--.github/pull_request_template.md37
-rw-r--r--.github/workflows/ci.yml30
5 files changed, 128 insertions, 0 deletions
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
new file mode 100644
index 0000000..5cfc7ab
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -0,0 +1,38 @@
+---
+name: Bug report
+about: Something does not work as documented or expected
+title: "[bug] "
+labels: bug
+---
+
+## What happened?
+
+## What did you expect?
+
+## Steps to reproduce
+
+1.
+2.
+3.
+
+## Environment
+
+- MainAX25 version / commit:
+- OS:
+- Hardware: TNC2C / BayCom SER12 / CRDOP / other
+- Operating mode: standalone / hybbx-host / service
+- Config (relevant paths or INI sections only, no secrets):
+
+## Logs / output
+
+```
+(paste here)
+```
+
+## Documentation checked
+
+- [ ] [README.md](../../README.md)
+- [ ] [docs/README.md](../../docs/README.md)
+- [ ] [docs/DEVELOPMENT.md](../../docs/DEVELOPMENT.md)
+- [ ] [docs/HYBBX.md](../../docs/HYBBX.md)
+- [ ] [docs/PLATFORMS.md](../../docs/PLATFORMS.md)
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644
index 0000000..0086358
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -0,0 +1 @@
+blank_issues_enabled: true
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
new file mode 100644
index 0000000..eedec4c
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -0,0 +1,22 @@
+---
+name: Feature request
+about: Suggest a new capability or improvement
+title: "[feature] "
+labels: enhancement
+---
+
+## Problem / use case
+
+## Proposed solution
+
+## Alternatives considered
+
+## Fits MainAX25 model?
+
+- [ ] Standalone-first stack; HyBBX attaches after prep ([docs/HYBBX.md](../../docs/HYBBX.md))
+- [ ] Plugin fits operating mode → Hardware → Device hierarchy ([docs/ARCHITECTURE.md](../../docs/ARCHITECTURE.md))
+- [ ] Linux-primary / BSD-later platform stance ([docs/PLATFORMS.md](../../docs/PLATFORMS.md))
+
+## Documentation
+
+Should update plugin.yaml / HYBBX INI when implemented: yes / no
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
new file mode 100644
index 0000000..57f4469
--- /dev/null
+++ b/.github/pull_request_template.md
@@ -0,0 +1,37 @@
+## Summary
+
+<!-- What does this PR do and why? -->
+
+## Type
+
+- [ ] Bug fix
+- [ ] Feature
+- [ ] Documentation
+- [ ] Refactor / internal
+- [ ] Build / CI
+- [ ] Plugin / stack integration
+
+## Testing
+
+- [ ] `./scripts/build.sh` succeeds
+- [ ] `./scripts/test.sh` succeeds (offline)
+- [ ] `./scripts/release-check.sh` succeeds
+- [ ] Manual hardware verification (if TNC/modem/RF touched):
+
+## Documentation
+
+- [ ] Updated `plugins/manifest.yaml` and/or `plugins/**/plugin.yaml` (if plugin changed)
+- [ ] Updated [docs/README.md](../docs/README.md) index (if docs added/removed)
+- [ ] Updated [docs/HYBBX.md](../docs/HYBBX.md) and/or `share/hybbx/*.ini.example` (if HyBBX attach changed)
+- [ ] Updated [docs/PLATFORMS.md](../docs/PLATFORMS.md) (if platform limits changed)
+- [ ] Updated [docs/V1.0.0-SCOPE.md](../docs/V1.0.0-SCOPE.md) (if v1 scope changed)
+
+## Architecture
+
+- [ ] Standalone-first: MAX25 owns TNC/modem lifecycle, not HyBBX sessions
+- [ ] Plugin hierarchy unchanged or documented ([docs/ARCHITECTURE.md](../docs/ARCHITECTURE.md))
+- [ ] HyBBX remains external consumer — no vendoring hyBBX
+
+## Notes
+
+<!-- Optional: breaking changes, follow-ups -->
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..b77de00
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,30 @@
+name: CI
+
+on:
+ push:
+ branches: [main, preview-source-tree]
+ pull_request:
+ branches: [main, preview-source-tree]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v5
+
+ - name: Install build tools
+ run: |
+ sudo apt-get update
+ sudo apt-get install -y build-essential cmake libasound2-dev pkg-config libncurses-dev
+
+ - name: Configure
+ run: cmake -B build -DCMAKE_BUILD_TYPE=Release -DMAX25_BUNDLE_AX25=OFF
+
+ - name: Build merged stacks
+ run: cmake --build build -j$(nproc)
+
+ - name: Offline tests
+ run: cmake --build build --target max25_test
+
+ - name: Release gates
+ run: bash scripts/release-check.sh
git clone -b <branch> https://cgit.mode42.com/<repo>.git
git clone -b <branch> git://cgit.mode42.com/<repo>.git

info@mode42.com