forge: step 13 — validate bot parity and export patch

This commit is contained in:
cj-vana
2026-05-15 11:50:37 -06:00
parent 4af47dc09c
commit dc7004f7f1
15 changed files with 4020 additions and 4336 deletions

View File

@@ -9,6 +9,8 @@ bot_sources=(
"${MESHCORE_DIR}/examples/companion_radio/FirmwareBot.cpp"
"${MESHCORE_DIR}/examples/companion_radio/BotCommands.h"
"${MESHCORE_DIR}/examples/companion_radio/BotCommands.cpp"
"${MESHCORE_DIR}/examples/companion_radio/BotCommandRegistry.h"
"${MESHCORE_DIR}/examples/companion_radio/BotCommandRegistry.cpp"
"${MESHCORE_DIR}/examples/companion_radio/BotPolicy.h"
"${MESHCORE_DIR}/examples/companion_radio/BotPolicy.cpp"
"${MESHCORE_DIR}/examples/companion_radio/BotPrefs.h"
@@ -65,6 +67,8 @@ require_pattern 'recordBotObservation\(|sendQueuedEmergencyForwards\(|tickBot\('
"${MESHCORE_DIR}/examples/companion_radio/MyMesh.cpp"
require_pattern '_prefs\.path_hash_mode[[:space:]]*=[[:space:]]*1' 'bot firmware defaults to two-byte path hashes' \
"${MESHCORE_DIR}/examples/companion_radio/MyMesh.cpp"
require_pattern 'command\.args_len > 0 \? botConfiguredTraceHashSize\(_prefs\.path_hash_mode\) : message\.path_hash_size' 'explicit bot trace paths use configured hash width' \
"${MESHCORE_DIR}/examples/companion_radio/MyMesh.cpp"
if grep -R -n -E 'BOT_EMERGENCY_RATE_LIMIT|isEmergencyRateLimited|recordEmergencyRateLimitEvent|emergency_rate_window_started|emergency_rate_count' \
"${MESHCORE_DIR}/examples/companion_radio"; then
echo "Emergency forwarding must not be globally rate limited or dropped by a bot-local quota." >&2