36 Commits

Author SHA1 Message Date
CI System
869b99a1ed docs: update repository references to Gitea
Some checks are pending
Build Documentation PDFs / Generate PDF Documentation (push) Waiting to run
Build Documentation PDFs / Publish PDFs to Release (push) Blocked by required conditions
- Update README with correct Gitea URLs for controller, probe, agentrunner
- Remove outdated GitHub issue links from assessment documents
- Update security contact and support references

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 11:24:00 -07:00
ClearGrow Agent
018576485e docs: update safe mode recovery UI documentation for CG-4
Updated documentation to reflect the new diagnostics panel in Safe Mode:
- reference/firmware/controller/safe-mode.md: Added diagnostics panel section,
  updated screen layout diagram, added diagnostic interpretation guide
- guides/user/troubleshooting/common-issues.md: Enhanced boot loop section with
  diagnostics information and recovery option guidance
- guides/user/maintenance/factory-reset.md: Updated Safe Mode section with
  diagnostics panel details and recovery options

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 16:31:47 -07:00
ClearGrow Agent
ec42e33b28 docs: update storage and error recovery docs for CG-44
Updates documentation for proactive filesystem error handling:

- storage.md: Added two-level protection section explaining backend and
  application layer thresholds, storage error states enum, REST API
  integration examples, and monitoring best practices

- recovery-procedures.md: Added comprehensive storage recovery section
  with REST API and serial monitor diagnostics, SPIFFS/SD full recovery
  steps, mount error troubleshooting, and automatic recovery behavior

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 15:57:16 -07:00
ClearGrow Agent
0b2de7b46f docs: update for CG-38 HTTPS-only enforcement in production
Document the new HTTPS enforcement feature for production builds:

- REST API Reference: Add Production Mode section explaining HTTPS-only
  behavior, updated base URL examples, updated security best practices
- Security Architecture: Add HTTPS Enforcement section with build mode
  comparison table, updated API layer status, removed HTTPS from future
  enhancements (now implemented)
- Production Build Guide: Add HTTPS-Only API section, update feature
  list and comparison table
- Firmware Security: Add HTTPS Enforcement section with build behavior

Production builds (CONFIG_NETWORK_API_PRODUCTION_MODE) now:
- Default http_port to 0 (disabled)
- Reject any HTTP configuration with ESP_ERR_INVALID_ARG
- Require HTTPS for all API communications

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 15:55:50 -07:00
ClearGrow Agent
810cd2680b docs: document checksum validation for multi-controller sync (#39)
- reference/architecture/controller/multi-controller-sync.md:
  - Added Checksum Validation section with strict/permissive modes
  - Documented checksum failure handling flow diagram
  - Added Checksum Validation Modes subsection under Error Handling
  - Updated Implementation Status with new features

- reference/architecture/controller/event-system.md:
  - Added new Multi-Controller Sync Events section
  - Documented CLEARGROW_EVENT_SYNC_CHECKSUM_FAILED event
  - Added sync_checksum_type_t enum and event data structure
  - Included example handler code

- reference/errors/error-codes.md:
  - Added Configuration Error Codes subsection
  - Documented error code 0x0039 for sync checksum mismatch
  - Updated ERROR_CAT_CONFIG example errors

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 15:52:44 -07:00
ClearGrow Agent
59db35a11e docs: add credential encryption developer guide for #15
- Add guides/developer/security/ section with credential encryption guide
- Document AES-128-CBC and AES-128-CBC+HMAC patterns for secure storage
- Include code examples, best practices, and testing guidelines
- Update developer guide index to reference new security section

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 15:46:04 -07:00
ClearGrow Agent
553865df61 docs: update security architecture for CG-15 credential encryption
Update security documentation to accurately reflect the implemented
credential encryption architecture:

- Change algorithm description from AES-256-GCM to AES-128-CBC (actual impl)
- Document defense-in-depth approach: app-layer encryption in all builds,
  plus NVS encryption in production builds
- Add complete list of encrypted credentials: WiFi SSID, password,
  Thread network key, and MQTT password
- Document storage formats and NVS keys for each credential type
- Add HMAC-SHA256 authentication for settings component (MQTT password)
- Update key derivation details: HKDF-SHA256 from device MAC address
- Fix WiFi password theft threat scenario to match implementation

Files updated:
- reference/architecture/security.md - Main security architecture doc
- reference/firmware/controller/security.md - Controller-specific security

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 15:42:48 -07:00
ClearGrow Agent
4a77688d46 docs: update for #46 - add static analysis and heap stress test documentation
- Updated CI/CD guide with static analysis (cppcheck) job documentation
- Added static-analysis-report artifact to artifacts table
- Documented cppcheck configuration and false positive suppression
- Updated CI pipeline diagram to show static analysis step
- Added heap stress test documentation to testing guide
- Updated test organization structure and coverage table
2025-12-11 15:25:52 -07:00
ClearGrow Agent
11629b38f4 docs: CG-44 add filesystem error detection documentation
Some checks failed
ci/woodpecker/push/build Pipeline was successful
Build Documentation PDFs / Generate PDF Documentation (push) Has been cancelled
Build Documentation PDFs / Publish PDFs to Release (push) Has been cancelled
Document new proactive filesystem error handling:
- Critical thresholds: SPIFFS 25KB (~5%), SD Card 10MB
- When thresholds breached: error_log, LED_PATTERN_WARNING, REST API errors
- REST API error states returned in /api/logs endpoint
- Possible error values: ok, full, not_mounted, io_error, corrupt

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 15:21:11 -07:00
ClearGrow Agent
ce2488cbbe docs: add test credential configuration documentation for CG-2
- Added Test Credential Configuration section to testing guide
- Added Secrets Configuration section to CI/CD documentation
- Documents required environment variables for unit and hardware tests
- Includes local development setup instructions (env vars and Kconfig)
- Documents GitHub Secrets configuration for CI/CD pipeline
- References OWASP CWE-259 security best practice

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 11:57:42 -07:00
ClearGrow Agent
e1f71837ad docs: update for #51 - WiFi coexistence and stack safety
- Add WiFi/BLE Radio Coexistence section to wifi-manager.md explaining
  why CONFIG_ESP_COEX_SW_COEXIST_ENABLE is not required
- Add Event Handler Stack Safety section documenting stack analysis
  and the new log_event_handler_stack() monitoring function
- Update task-architecture.md to reference event-driven WiFi pattern

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 09:57:57 -07:00
ClearGrow Agent
3f904a2487 docs: add power management reference for CG-31
Add new power management documentation covering:
- Light sleep behavior and peripheral power-down
- CONFIG_CLEARGROW_PM_GPIO_HOLD Kconfig option
- GPIO hold requirements for each peripheral (SD_CS, RCP_RESET required;
  LCD backlight recommended; Touch I2C optional)
- Error handling and logging
- Testing instructions for disabling GPIO hold

Update firmware reference index to include the new document.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 09:37:51 -07:00
ClearGrow Agent
2e929e9a3e Merge issue/CG-73 to main
Some checks failed
ci/woodpecker/push/build Pipeline was successful
Build Documentation PDFs / Generate PDF Documentation (push) Has been cancelled
Build Documentation PDFs / Publish PDFs to Release (push) Has been cancelled
2025-12-11 08:27:36 -07:00
ClearGrow Agent
3b5fe564c2 fix: CG-73 create test marker document for documentation workflow testing
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2025-12-11 08:24:48 -07:00
ClearGrow Agent
563f1ca145 docs: add ADR-001 for verification output parsing (CG-62) 2025-12-11 07:58:14 -07:00
ClearGrow Agent
f0e86d6920 docs: document automatic pairing retry feature (CG-19)
Updated documentation for the automatic retry logic added to code-based
probe pairing:

- guides/user/getting-started/pairing-probes.md: Added "Automatic Retries"
  section explaining retry behavior and Skip Retry button
- reference/firmware/controller/thread-br.md: Added comprehensive
  "Automatic Pairing Retry" section with configuration, API, events, and
  UI integration details
- reference/ui/screen-inventory.md: Updated PAIRING_PROGRESS entry with
  retry UI changes
- reference/architecture/controller/event-system.md: Added
  CLEARGROW_EVENT_PAIRING_RETRY and CLEARGROW_EVENT_PAIRING_SKIP_RETRY
  events, updated probe pairing flow diagram

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 06:56:33 -07:00
ClearGrow Agent
8cba3f8c0f docs: update toast API reference for #18
- Document cg_toast_show_action() for toasts with action buttons
- Document cg_toast_dismiss() and cg_toast_dismiss_all()
- Add queue support and lifecycle notes
- Note automatic cleanup during screen manager deinit

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 06:51:53 -07:00
ClearGrow Agent
f091d68ee0 docs: add touch calibration verification documentation for #20
- Add reference/firmware/controller/touch-driver.md with complete GT911
  driver documentation including calibration verification, coordinate
  validation, and troubleshooting guidance
- Update guides/user/troubleshooting/common-issues.md with new section
  explaining touch calibration warnings in serial logs
- Add touch-driver.md to controller firmware index

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 06:41:15 -07:00
ClearGrow Agent
e381b50de4 docs: CG-22 add Thread version requirements to thread-br.md
Some checks failed
ci/woodpecker/push/build Pipeline was successful
Build Documentation PDFs / Generate PDF Documentation (push) Has been cancelled
Build Documentation PDFs / Publish PDFs to Release (push) Has been cancelled
- Document ESP-IDF, OpenThread, and RCP minimum version requirements
- Explain version check behavior at initialization
- Document error handling for version mismatch
- Include instructions for updating RCP firmware

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 06:26:28 -07:00
ClearGrow Agent
0606ea2d2f docs: update watchdog and initialization docs for CG-29 early watchdog coverage
Updated documentation to reflect the new two-tier boot loop detection system:

- reference/architecture/controller/initialization.md:
  - Reordered Phase 1 to show watchdog initialization before NVS
  - Added section 1.0 (Status LED), 1.1 (Watchdog), 1.2 (NVS), 1.3 (Enable NVS-based boot loop detection)
  - Updated dependency graph to show watchdog has no NVS dependency
  - Added note explaining the two-tier detection approach

- reference/firmware/controller/safe-mode.md:
  - Added comprehensive "Two-Tier Detection Architecture" section
  - Documented Tier 1 (RTC Memory) and Tier 2 (NVS-based) detection
  - Added initialization order code example
  - Added API reference table for watchdog functions
  - Updated related documentation links

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 06:10:52 -07:00
ClearGrow Agent
289605fa63 docs: update error log documentation for CG-32 NVS persistence handling
- Add error_log_get_status() API documentation with usage examples
- Document NVS persistence warning behavior in error log
- Add recovery procedure for error log persistence issues
- Update NVS storage section to describe persistence monitoring

Relates to: CG-32

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 05:57:34 -07:00
CI System
a0a7c7e577 Add Gitea release upload for tagged versions
All checks were successful
ci/woodpecker/push/build Pipeline was successful
ci/woodpecker/tag/build Pipeline was successful
When a tag is pushed, build PDFs and upload them to a
Gitea release. Uses wp-gitea-release plugin.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
v0.1.0
2025-12-10 20:28:52 -07:00
CI System
06799a6be2 Install DejaVu fonts in CI container
All checks were successful
ci/woodpecker/push/build Pipeline was successful
The pandoc/extra Alpine image doesn't include DejaVu fonts
which are required for XeLaTeX PDF generation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 20:22:33 -07:00
CI System
c09dd035e4 Add proper failure detection to PDF build script
Some checks failed
ci/woodpecker/push/build Pipeline failed
Build Documentation PDFs / Generate PDF Documentation (push) Has been cancelled
Build Documentation PDFs / Publish PDFs to Release (push) Has been cancelled
Track PDF generation failures and exit with non-zero code
if any PDFs fail to build. This ensures CI properly detects
build failures.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 20:21:37 -07:00
CI System
ce039c859b Fix docs build pipeline for Alpine container
All checks were successful
ci/woodpecker/push/build Pipeline was successful
Install bash in pandoc/extra (Alpine) container since the
build script requires bash.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 20:17:57 -07:00
CI System
002c61a93c Fix YAML syntax in Woodpecker pipeline
Some checks failed
ci/woodpecker/push/build Pipeline failed
Build Documentation PDFs / Generate PDF Documentation (push) Has been cancelled
Build Documentation PDFs / Publish PDFs to Release (push) Has been cancelled
Quote echo commands containing colons to prevent YAML parsing errors.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 20:01:44 -07:00
CI System
e72bfc4e7d Add Woodpecker CI pipeline for PDF generation
Some checks failed
Build Documentation PDFs / Generate PDF Documentation (push) Has been cancelled
Build Documentation PDFs / Publish PDFs to Release (push) Has been cancelled
Migrating from TeamCity to Woodpecker CI. Pipeline:
- Triggers on push and pull requests
- Uses pandoc/extra Docker image
- Generates PDF documentation via build-pdf.sh

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 19:47:24 -07:00
ClearGrow Agent
2985dbbde8 docs: add OTA downgrade policy documentation for #30
- reference/firmware/controller/ota-system.md: Added comprehensive
  Downgrade Policy section covering configuration, classification,
  security considerations, statistics tracking, and data structures

- reference/api/rest-api.md: Updated GET /ota and POST /ota/start
  endpoints with full response schemas including downgrade status,
  confirmation flow, and statistics. Marked OTA Integration as
  IMPLEMENTED.

- guides/user/maintenance/firmware-updates.md: Added user-facing
  Downgrade Protection section explaining why downgrades are blocked,
  UI confirmation flow, when to use downgrades, and recommended
  rollback alternative.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 19:25:34 -07:00
ClearGrow Agent
f6b4fe3860 docs: #34 add power metrics to REST API /status endpoint
Added documentation for the new `power` object in the /api/status
response, including:
- cpu_freq_mhz field (current CPU frequency)
- light_sleep_enabled field
- Response field table for all /status fields
- Note on CONFIG_PM_ENABLE requirement
- Cross-reference to controller-power.md

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 17:36:00 -07:00
ClearGrow Agent
39c42a6ac3 docs: #34 add expected idle power consumption and runtime PM monitoring
- Add expected idle power consumption table (350mA active to 10µA deep sleep)
- Document runtime power monitoring via periodic PM stats logging
- Document REST API /api/status power metrics
- List PM lock holders (thread_br, wifi_prov, ota_dl)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 17:32:48 -07:00
ClearGrow Agent
eee47b91b4 docs: add Thread credential validation documentation for #14
Document the Thread network credential validation feature including:
- Setup wizard input validation for network key and name
- Hardware RNG usage for secure key generation
- Reserved PAN ID value handling
- User-facing error messages and validation feedback

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 17:23:43 -07:00
ClearGrow Agent
6cf4c8c358 docs: add automation CRUD REST API documentation for #12
- Update REST API reference with all 6 new automation endpoints
- Add detailed field reference tables for rule configuration
- Create user guide for automation API integration
- Update advanced guides index
2025-12-10 16:44:39 -07:00
CI System
1b780aa0ed docs: add alert history API and fix paths
Some checks failed
Build Documentation PDFs / Generate PDF Documentation (push) Has been cancelled
Build Documentation PDFs / Publish PDFs to Release (push) Has been cancelled
- Add Alert History endpoints to REST API reference
- Create alert-history.md firmware component doc
- Update firmware controller index to include alert history
- Fix all /root/cleargrow paths to /opt/repos

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-10 15:50:36 -07:00
ClearGrow Agent
3f341490b0 docs: update for #17 graceful degradation
Some checks failed
Build Documentation PDFs / Generate PDF Documentation (push) Has been cancelled
Build Documentation PDFs / Publish PDFs to Release (push) Has been cancelled
- Add system_status API to internal API index
- Add "Degraded Mode" troubleshooting section for users

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 13:18:42 -07:00
ClearGrow Agent
ae3b2d301f docs: update for #17 - add system_status module documentation
Document the new system_status public API for querying component
initialization status, including:
- Component classification (critical vs optional)
- API functions for querying status
- UI indication for degraded mode boot

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 12:58:44 -07:00
ClearGrow Agent
05fb085a85 Initial commit: migrate from GitHub
Some checks failed
Build Documentation PDFs / Generate PDF Documentation (push) Has been cancelled
Build Documentation PDFs / Publish PDFs to Release (push) Has been cancelled
2025-12-10 09:32:46 -07:00