Ben Meadors
eead467ce6
Added NodeDB fixtures and refactored to use std maps for better memory efficiency ( #10464 )
...
* Added NodeDB fixtures and refactored to use std maps for better efficiency
* Defer NodeDB save during xmodem transfer to prevent mid-transfer fsFormat
2026-05-12 17:23:29 -05:00
Ben Meadors
f6a954b97e
Implement rotating JSONL recorder for persistent logging ( #10428 )
...
* Implement rotating JSONL recorder for persistent logging
* Fixes
* Update documentation and clean up imports in command files
* Address remaining recorder review feedback
Agent-Logs-Url: https://github.com/meshtastic/firmware/sessions/2541773c-869a-463f-9fae-8505272c06ff
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
* recorder: fix lock re-entry deadlock on start() and force_rotate_all()
The previous "Fixes" commit added `_files_snapshot()` which acquires
`self._lock` so handlers don't race with `stop()` clearing `_files`.
But two callers were already holding `self._lock` when they invoked
methods that go through the snapshot:
- `start()` writes the `recorder_start` event from inside its `with
self._lock:` block. `_write_event` -> `_files_snapshot` re-acquires
the same non-reentrant `threading.Lock`, freezing process startup.
- `force_rotate_all()` calls `self.status()` (which also acquires
`self._lock`) while still holding the lock from rotating each file.
Both fixes release the lock before the call. The recorder_start marker
still lands in events.jsonl because the started/started_at flags are
already set when we write it.
Verified end-to-end against the standalone /tmp/verify_pr_fixes.py
harness — all 9 PR review-comment fixes pass, including pause/resume
event ordering and concurrent start/stop without KeyError.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
* Fix markdown linting issues in leakhunt.md and repro.md
* Handle recorder startup and query review fixes
Agent-Logs-Url: https://github.com/meshtastic/firmware/sessions/78540a9f-fe62-4350-b252-0ae5621f0b8a
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
* Tighten recorder follow-up tests
Agent-Logs-Url: https://github.com/meshtastic/firmware/sessions/78540a9f-fe62-4350-b252-0ae5621f0b8a
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
* Stabilize recorder startup tests
Agent-Logs-Url: https://github.com/meshtastic/firmware/sessions/78540a9f-fe62-4350-b252-0ae5621f0b8a
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
* Remove brittle recorder startup test
Agent-Logs-Url: https://github.com/meshtastic/firmware/sessions/78540a9f-fe62-4350-b252-0ae5621f0b8a
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
* Polish recorder follow-up errors
Agent-Logs-Url: https://github.com/meshtastic/firmware/sessions/78540a9f-fe62-4350-b252-0ae5621f0b8a
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
* Refine recorder startup and regex errors
Agent-Logs-Url: https://github.com/meshtastic/firmware/sessions/78540a9f-fe62-4350-b252-0ae5621f0b8a
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
* Clean up recorder follow-up nits
Agent-Logs-Url: https://github.com/meshtastic/firmware/sessions/78540a9f-fe62-4350-b252-0ae5621f0b8a
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
* Trunk
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-10 09:22:40 -05:00
Ben Meadors
21cef8c2e5
Add TCP support for Meshtastic MCP interface / tests and update docs ( #10355 )
...
* Add TCP support for Meshtastic MCP interface / tests and update docs
* Address TCP endpoint validation and error handling in connection
* TCP connection handling and device listing logic
* Fix docstring formatting in normalize_tcp_endpoint function
2026-04-30 13:51:29 -05:00
Ben Meadors
de23e5199d
Add USB camera and uhubctl support for new test suite. Also included some bug fixes ( #10204 )
...
* Add USB camera and uhubctl support for new test suite. Also added some bug fixes
* Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
* Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
* Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
* Refactor test messages for clarity and consistency in regex tests
---------
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-04-19 06:51:41 -05:00
Ben Meadors
6b15571e14
Add MCP server for interacting with meshtastic devices and testing framework / TUI ( #10194 )
...
* Start of MCP server and test suite
* Add MCP server for interacting with meshtastic devices and testing framework / TUI
* Update mcp-server/README.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix mcp-server review feedback from thread
Agent-Logs-Url: https://github.com/meshtastic/firmware/sessions/91dc128a-ed50-4d07-8bb2-3dc6623a05f7
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
* Enhance StreamAPI and PhoneAPI for improved log record handling and concurrency control
* Semgrep fixes
* Trunk and semgrep fixes
* optimize pio streaming tee file writes
Agent-Logs-Url: https://github.com/meshtastic/firmware/sessions/04e26c6b-6a2b-45be-bbeb-79ae4d0be633
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
* chore: remove redundant log handle assignment
Agent-Logs-Url: https://github.com/meshtastic/firmware/sessions/04e26c6b-6a2b-45be-bbeb-79ae4d0be633
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
* Consolidate type imports and remove placeholder test files
* Add tests for config persistence and more exchange messages
* Refactor position test to validate on-demand request/reply behavior
* Remove position request/reply test and update README for telemetry behavior
* Fix transmit history file to get removed on factory reset
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
2026-04-18 11:29:02 -05:00