diff options
Diffstat (limited to 'CHANGELOG.md')
| -rw-r--r-- | CHANGELOG.md | 126 |
1 files changed, 126 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..782c862 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,126 @@ +# Changelog · MAX25-Stack + +All notable changes to MainAX25-Stack (MAX25-Stack) are documented here. + +## [MAX25-Stack 1.8.0] + +Version file `1.8.0`. BayCom/based default ON. Stale "not usable" strings removed. + +| Change | Detail | +|--------|--------| +| **Software TOT** | Time-on-target policy for max25-bcpr via `max25d.ini` (host-keyed, burst limits, trip pause/reset) | +| **1.5 s TX gap** | Minimum gap between RF/KISS frame sends to prevent keying overlap | +| **WebSocket polish** | Terminal WebSocket hardening, device list fixes | +| **HyBBX KISS PTY release** | Release KISS PTY slave_fd after HyBBX baycom attach fix | +| **max25-bcpr rename** | BayCom/based stack renamed to `max25-bcpr` throughout (betriebsform paths, INI, HyBBX host) | +| **tmodem device** | New `tmodem` device entry for T-Modem-c1224 USB KISS half-TNC | +| **privilege_drop install** | `privilege_drop.py` installed with max25d on `PREFIX/bin` | +| **BayCom default ON** | `MAX25_BUILD_MAX25_BCPR` default changed from OFF to ON; "not usable" strings purged | + +## [MAX25-Stack 1.8.5-fallback_untested-upcoming#3-2] + +Version file . + +| Change | Detail | +|--------|--------| +| Docs | Move → (development material home) | + +## [MAX25-Stack 1.8.5-fallback_untested-upcoming#3] + +Version file `1.8.5-fallback_untested-upcoming#3` (after `#2-workhard-session_night`). + +| Change | Detail | +|--------|--------| +| Release mark | **fallback_untested** · upcoming **#3** | +| CI | `max25_web_smoke` offline — `--no-stack --no-serial`, ephemeral ports, no UART | +| Docs | Ship [TNC-MODEM-DEV.md](TNC-MODEM-DEV.md) (TNC/modem bring-up) | +| Tests | Dual-device protocol smoke uses allowlisted `baycom-kiss`/`pccom-kiss` (not legacy `baycom-a`) | +| Carry-forward | Live RF fallback path not fully re-certified under this tag | + +## [MAX25-Stack 1.8.5-fallback_untested-upcoming#2-workhard-session_night] + +Version file `1.8.5-fallback_untested-upcoming#2-workhard-session_night` (operator night-session mark after `1.8.5-fallback_untested-upcoming#1`). + +| Change | Detail | +|--------|--------| +| Release mark | **fallback_untested** · upcoming **#2** · **workhard-session_night** | +| Carry-forward | Same consistency gate posture as `1.8.5-fallback_untested-upcoming#1` — live RF fallback path not fully re-certified under this tag | +| Device face | BayCom/based SER12 → **`max25e0`** (internal `stacks/max25-bcpr/`) | +| TX/RX | Live TX gated on RX (`scripts/tx-rx-test.sh`, §0.20) | + +## [MAX25-Stack 1.8.5-fallback_untested-upcoming#1] + +Version file `1.8.5-fallback_untested-upcoming#1` (operator override of prior `1.8.0-upcoming#1` marking). + +| Change | Detail | +|--------|--------| +| Release mark | **fallback_untested** — consistency gate green; live RF fallback path not fully re-certified under this tag | +| Device face | BayCom/based SER12 → **`max25e0`** (internal `stacks/max25-bcpr/`; never `bcpr-bc0` as product id) | +| Kernel baycom | Product path removed; vault legacy archive only | +| Start | `scripts/run-max25d.sh` — root only when ttyS/USB/SER12 needs it | +| TX/RX test | `scripts/tx-rx-test.sh` — live TX gated on RX (§0.20) | + +## [MAX25-Stack 1.5.0] + +Version file `1.5.0`. Product label **MAX25-Stack-v1.5.0**. + +### HyBBX boundary matrix + +| Change | Detail | +|--------|--------| +| `[features] baycom=no` | Default in max25d INI examples | +| `[features] pccom=no` | Default in max25d INI examples | +| Device filter | BayCom/PC-COM entries filtered unless features enabled | +| CMake | BayCom tools still built; runtime opt-in via INI | + +### Platform and topology matrix + +| Change | Detail | +|--------|--------| +| One RF device per Linux host | Design rule in INI examples | +| FreeBSD scaffold | `max25_platform.py`, OSS sound-proxy, FreeBSD INI | +| Modular TCP/IP server | `modular_tcp_server.py` for Main/Secondary split | +| New INI templates | `max25d.main.ini.example`, `max25d.secondary-linux.ini.example`, `max25d.freebsd.ini.example` | + +### Docs matrix + +| Item | Detail | +|------|--------| +| Operator docs | Updated for v1.5 boundary | +| New | `V2.0.0-SCOPE.md`, `MODULAR-TCPIP-SERVER.md`, `MASTER-GUIDE.md` | + +## [MAX25-Stack 1.0.0] — 2026-07-13 + +Version file `1.0.0`. Product label **MAX25-Stack-v1.0.0**. + +### Active devices matrix + +| Device | Standalone | HyBBX | +|--------|------------|-------| +| **tnc2c** | `max25-ctl start --hardware tncs --device tnc2c` | `packet_radio` | +| **baycom-ser12** (superseded → **`max25e0`**/bcpr) | legacy kernel path removed | `baycom` via MAX25 | +| **soft-crdop** | `max25-ctl start --hardware soft-modems` | `crdop` | + +### Architecture matrix + +| Item | Value | +|------|-------| +| AX.25 codec | In-tree `ax25_codec.py` via `kiss_bridge.py` | +| `MAX25_BUNDLE_AX25` | OFF default | +| `MAX25_BUILD_CRDOP` | ON default | +| Daemon | `max25d` — Linux supervisor, M25/1 | +| Client | `max25-terminal` / `max25-client` — sole official operator client | + +### Deferred to v1.1+ matrix + +| Item | Status | +|------|--------| +| `pktnc2`, `baycom-par96`, `baycom-kiss` | deferred | +| CRDOP amateur / dual workflows | INI templates ship | + +## Related + +| Goal | Doc | +|------|-----| +| Release gates | [RELEASE-READINESS.md](RELEASE-READINESS.md) | +| v1 scope | [docs/V1.0.0-SCOPE.md](docs/V1.0.0-SCOPE.md) | |
