Commit Graph
92 Commits
Author SHA1 Message Date
Commander1024 42f6423d4e Implement SSH authorized key management 2026-09-08 16:37:47 +02:00
Commander1024 22a7c7b0a5 Record 8D.8–8D.10 target sign-off
Document user-supplied telemetry, functional testing, and acceptance of
the implemented Serial and account settings scope.
2026-09-08 15:19:49 +02:00
Commander1024 23c190bcf0 Load the PlatformIO extra script 2026-09-08 15:17:00 +02:00
Commander1024 94433ef975 Add typed account and password settings
- Add admin account list, create, role, delete, and password workflows
- Execute identity-checked mutations through the existing dispatcher
- Bound queued credential lifetime and wipe transient secrets
- Add explicit password generation with saved-value acknowledgement
- Handle self-revocation and uncertain outcomes without automatic
  retries
- Register optional account routes without disrupting terminal
  transports
- Expand host regressions and document contracts and pending target
  checks

Validated host suites and pio run; hardware validation remains pending.
2026-09-08 09:27:02 +02:00
Commander1024 42548f6334 Add typed serial settings operations
Route bounded admin mutations through the existing administration
dispatcher,
covering apply, lifecycle, persistence, authorization, and result
tracking.
Add the browser controls, automatic result refresh, regression coverage,
and
phase documentation.
2026-09-08 00:25:31 +02:00
Commander1024 5a2aa0d4d8 Add admin serial settings view 2026-09-07 20:12:33 +02:00
Commander1024 c73674cda2 Document M2 sign-off and update project status 2026-09-07 19:29:56 +02:00
Commander1024 93d8d1e5ca Mark 8D.7 Implemented Scope Validated 2026-09-07 19:04:49 +02:00
Commander1024 fe1e2d98b4 Enable bounded browser account administration for Phase 8D.7
Allow other-account add/password and forced delete/role commands through
shared dispatcher and handler policy. Keep self-target,
generated-secret,
key, bootstrap, and recovery workflows blocked.

Revalidate currentness after password prompts and before database API
admission. Document that admitted mutations may finish after disconnect,
while subsequent stale operations must reject.

Add policy, transaction-failure, cleanup, and targeted-revocation
regressions. Record completed review, passing host tests and firmware
build, with target validation and M2 acceptance still pending.
2026-09-07 10:03:45 +02:00
Commander1024 326119812f Extend browser admin lifecycle actions
Support browser reboot and HTTPS stop through deferred control, plus
exact
`web certificate rotate --force` handoff to the dispatcher. Add typed
request
validation and focused boundary and lifecycle coverage.
2026-09-07 09:36:38 +02:00
Commander1024 17520b15b7 Configure clangd for ESP-IDF development
Enable PlatformIO compilation database generation and configure
toolchain discovery for Clang-based editors.
2026-09-07 09:35:37 +02:00
Commander1024 0b86fd9c70 Close 8D.6 With Validation Sign-Off 2026-09-06 21:30:26 +02:00
Commander1024 f15491f233 Place admin controls before terminal selector 2026-09-06 20:37:39 +02:00
Commander1024 71f588360a Fix admin ticket validation format mismatch 2026-09-06 20:32:00 +02:00
Commander1024 e6db5428eb Add browser Serial/Admin terminal switching
Keep the serial connection and lease intact while providing a separate,
bounded admin terminal with explicit open and close controls. Fence
retained
terminal state across sessions and add fit-readiness retries with
regression
coverage.
2026-09-06 19:46:38 +02:00
Commander1024 aeb2043396 feat: add bounded admin WebSocket backend (Phase 8D.5)
- Require current admin cookie sessions, Origin checks and single-use
  tickets
- Reuse the shared console with session-aware authorization and slot
  allocation
- Add HTTPD-owned I/O, bounded buffering and revocation cleanup
- Prevent LRU eviction of serial clients and stale admin socket closure
- Reject unsupported web-shell mutations before side effects
- Add host regressions, a smoke client and resource accounting

Validated by user sign-off after a 15-minute full-client soak at 230400
baud, with a few broker drops under heavy output. Browser UI remains
for Phase 8D.6; numeric memory reserves remain open.
2026-09-06 14:41:41 +02:00
Commander1024 e5dce12ed4 Close Phase 8D.4 validation
The user confirmed successful empty-Enter and soak testing, closing
8D.4 while leaving numeric reserve gates open and advancing the next
planned work to 8D.5.
2026-09-06 11:23:58 +02:00
Commander1024 117c694cd4 Add SSH Console Ownership Boundary (Phase 8D.4)
Implement transport-qualified session identity and immutable owner
adapters
for SSH console lifecycle and output-drain operations. Add focused host
tests
covering admission, stale identities, deferred actions, completion
races,
prompts, backpressure, and slot reuse. Update Phase 8D documentation and
current-state tracking.
2026-09-06 09:07:11 +02:00
Commander1024 f9ee6eec9c Record Phase 8D.3 M1 sign-off 2026-09-06 08:38:41 +02:00
Commander1024 5a609fa40b Replace Web Basic Auth With Cookie Sessions
Add bounded login challenges, CSRF/origin enforcement, logout, and
session-bound WebSocket admission. Isolate private HTTPD access behind a
version-guarded adapter and add focused host coverage. Also let empty
admin
SSH input reach the normal console handler.
2026-09-05 23:55:05 +02:00
Commander1024 4435a7fddd Add Standalone Login Page Renderer
Add a hash-bound, no-store login document with focused C and Node host
tests. Keep rendering inert until the 8D.3 authentication cutover.
2026-09-05 18:45:12 +02:00
Commander1024 00f226dc59 Add allocation-free web auth parsers
Implement strict origin, cookie, and login JSON parsing with
fail-closed validation and output wiping. Add focused host contract
tests
and document the preparatory 8D.3 parser split.
2026-09-05 18:22:15 +02:00
Commander1024 a62a655ac1 Bind Serial Transports To Web Sessions 2026-09-05 18:01:39 +02:00
Commander1024 93eef0e676 Added docs. 2026-09-05 17:16:17 +02:00
Commander1024 27c54c0a92 Phase 8D.1 implemented and validated. 2026-09-05 17:15:22 +02:00
Commander1024 d4991658b1 Phase 8D validation completed 2026-09-05 16:11:23 +02:00
Commander1024 d8999cd4a9 Updated memory baselines 2026-09-05 15:20:09 +02:00
Commander1024 02fdeee345 Record Phase 8D baseline and browser contract 2026-09-05 13:08:17 +02:00
Commander1024 af89dd1bd9 Define staged Phase 8D delivery plan 2026-09-05 12:46:27 +02:00
Commander1024 31d3561d47 Document integrated web administration scope 2026-09-01 23:55:48 +02:00
Commander1024 6318f0c770 Unify browser connection controls (Connect / Disconnect) 2026-09-01 22:34:02 +02:00
Commander1024 10b6d65fa9 Mark Phase 8C hardware validation complete 2026-09-01 22:08:48 +02:00
Commander1024 4449131079 Refine Wi-Fi, mDNS, and terminal lifecycles
- Stage disabled station profile edits without restarting the radio
- Make mDNS initialization failure-isolated and reannounce in place
- Document deferred admin actions and explicit browser disconnect
  behavior
2026-08-31 04:29:54 +02:00
Commander1024 3feb3b5916 Add configurable Wi-Fi station mDNS hostname support. Mini-Feature #1 2026-08-31 04:14:38 +02:00
Commander1024 06bf33b3cf Add Explicit Session Exit Controls Mini-Features ä2+3 2026-08-31 04:02:19 +02:00
Commander1024 c37fab67db Avoid Wi-Fi restarts for disabled profiles Fix #3 2026-08-31 03:51:24 +02:00
Commander1024 d9bd86bb84 Move RS-232 status under debug. Fix #2 from list. 2026-08-31 03:45:38 +02:00
Commander1024 2aafff25be Keep USB line coding diagnostic only. Fix cdc connect reconfiguring UART
1
2026-08-31 03:40:55 +02:00
Commander1024 6ad6c00d68 Harden cleanup and reduce internal RAM use. Phase 8C nearly validated
and somewhat stable.
2026-08-31 03:33:43 +02:00
Commander1024 868e9ebc23 Remove outdated startup and SSH banners 2026-08-30 23:20:52 +02:00
Commander1024 26e8bbe905 Revert "Remove SSH console startup instructions"
This reverts commit ec56d20b3e.
2026-08-30 23:14:18 +02:00
Commander1024 ec56d20b3e Remove SSH console startup instructions 2026-08-30 23:11:39 +02:00
Commander1024 5ecd88e19f Align UART completion with SSH behavior 2026-08-30 23:07:59 +02:00
Commander1024 35a6f32e8b Display SSH completion candidates for ambiguous prefixes 2026-08-30 23:00:01 +02:00
Commander1024 21d1b12f31 Share completion and add SSH line editing 2026-08-30 22:45:58 +02:00
Commander1024 2f383cd283 Refresh agent documentation for current behavior 2026-08-30 22:45:33 +02:00
Commander1024 7b87375980 Align Documentation With Current Firmware Behavior 2026-08-30 19:11:39 +02:00
Commander1024 f227a2026f Add Project Guidance For Agents 2026-08-30 18:55:11 +02:00
Commander1024 c2c11fee4e Expand admin SSH command capabilities
Add per-session history, tab completion, interactive prompts, and
bounded input handling. Support deferred lifecycle and host-key actions
after output drains, and document the expanded administration workflow.
2026-08-30 18:34:01 +02:00
Commander1024 0a1bbd6782 Add Serialized SSH Administrative Console 2026-08-30 18:07:02 +02:00
Commander1024 44e3962444 Complete Local Display and Button Interface Validation 2026-08-30 12:27:09 +02:00
Commander1024 302b9065bd Mark Phase 8B complete and add Phase 8E
Document target-hardware validation for role-aware authentication and
outline the planned web session login and logout architecture.
2026-08-30 12:23:01 +02:00
Commander1024 7a4769fdd8 Allow SSH keys on multiple accounts
Update validation and duplicate checks to scope key uniqueness per
account, and clarify the console error message. Document cross-account
key assignment and authentication testing.
2026-08-30 12:11:16 +02:00
Commander1024 c7d0d59f3e Cache web authentication results
Add a short-lived, HMAC-keyed cache for validated principals and
invalidate entries when principals become stale. Improve duplicate SSH
key
errors and enable Ed25519 streaming verification.
2026-08-30 12:02:44 +02:00
Commander1024 b7999043ca Mark Phase 7 As Target-Hardware Validated 2026-08-30 07:53:51 +02:00
Commander1024 bb8e385354 Separate user administration test documentation 2026-08-30 01:35:26 +02:00
Commander1024 0c058b6a8f Implement role-aware HTTPS and SSH authentication 2026-08-30 01:31:05 +02:00
Commander1024 cd235445c7 Add role-based user database administration 2026-08-30 00:56:18 +02:00
Commander1024 0c7b763bec Add role-based user administration phase 2026-08-30 00:05:58 +02:00
Commander1024 57a18be9bd Add project logo to authenticated web UI 2026-08-29 21:25:25 +02:00
Commander1024 96e5792273 Add bounded OLED boot identity animation 2026-08-29 21:05:22 +02:00
Commander1024 276559536b Add persistent OLED UI settings and recovery 2026-08-29 20:18:08 +02:00
Commander1024 16c0c02389 Add Wi-Fi next-profile rotation control 2026-08-29 19:43:21 +02:00
Commander1024 371c0ab896 Add local OLED recovery controls 2026-08-29 19:31:57 +02:00
Commander1024 e291e29357 Implement Phase 7C local status dashboard
Add fixed status icons, OLED dimming and wake behavior, lowercase
glyphs, and access-point metadata tracking. Update validation guidance,
roadmap status, and provide an icon layout mockup with licensing.
2026-08-29 19:05:06 +02:00
Commander1024 c10e7d24a8 Implement Read-Only OLED Status UI 2026-08-29 15:29:19 +02:00
Commander1024 4aa5ca80da Add Panel-Aware Local OLED Display Service 2026-08-29 14:37:44 +02:00
Commander1024 ec9ca5e6d2 Add OLED and button diagnostics 2026-08-29 14:13:34 +02:00
Commander1024 bb04e0ba79 Document Phase 7 display hardware and implementation plan 2026-08-27 16:46:08 +02:00
Commander1024 fa339a3dfa Stabilize concurrent SSH and WebSocket transports 2026-08-26 23:53:13 +02:00
Commander1024 a350ba2f5e Add SSH phase roadmap documentation 2026-08-25 15:48:02 +02:00
Commander1024 a58eacb7d2 Move wiring documentation under docs directory 2026-08-25 15:28:49 +02:00
Commander1024 bbcdf37a3b Document commands and electrical test procedures, delittered README,
overall restructure of docs.
2026-08-25 15:16:08 +02:00
Commander1024 d779fb046e Add memory diagnostics and optimize PSRAM usage 2026-08-25 11:08:02 +02:00
Commander1024 f6a275c543 Bound WolfSSH reads per I/O operation
Add callback-scoped read budgets to prevent excessive socket reads and
map network errors to WolfSSH statuses. Also shut down sockets after
repeated authentication failures.
2026-08-25 10:29:40 +02:00
Commander1024 72d030bc7a Implemented initial SSH support. Memory pressure too high for HTTPS and
SSH. Dirty commit.
2026-08-24 22:30:34 +02:00
Commander1024 c018bfe361 Constrain terminal layout and externalize TLS memory
Improve CSP and favicon handling while preventing terminal resize loops.
Configure mbedTLS allocations in external PSRAM and document its
security implications.
2026-08-24 20:52:10 +02:00
Commander1024 5f7ea5b79d Add authenticated WebSocket serial terminal - dirty commit with front-
and backend issues
2026-08-24 19:45:36 +02:00
Commander1024 8b5417881c Add Authenticated HTTPS Admin Foundation 2026-08-23 17:37:49 +02:00
Commander1024 0dcc0d20d4 Add reboot command and late terminal activation 2026-08-23 16:14:19 +02:00
Commander1024 f9d3e9ece5 Add Network Tools And Nested Command Completion 2026-08-23 15:47:28 +02:00
Commander1024 c5f3595173 Add native Wi-Fi management and persistence 2026-08-23 14:57:53 +02:00
Commander1024 aa5fa207b6 Add native USB CDC broker transport 2026-08-23 00:47:56 +02:00
Commander1024 6793f6bcc2 Add custom dual-OTA flash partition layout
Document the 16 MiB flash layout and one-time migration procedure.
2026-08-23 00:07:23 +02:00
Commander1024 2524f43fac Add Transport-Neutral Serial Session Broker 2026-08-23 00:01:50 +02:00
Commander1024 535c27350d Add Phase 1 UART service foundation
Add versioned NVS-backed configuration, buffered UART1 I/O, modem
monitoring, counters, and serial console controls. Coordinate UART1
ownership with Phase 0 diagnostics and document loopback verification.
2026-08-22 23:23:13 +02:00
Commander1024 126314a277 Add CTS and RTS flow-control tests 2026-08-22 22:36:37 +02:00
Commander1024 3024b135dc Add Phase 0 RS-232 characterization harness and test firmware with cli 2026-08-22 16:15:53 +02:00
Commander1024 e43b624aec Add project logo and update ignore rules 2026-08-22 13:27:11 +02:00
Commander1024 146dfe51a7 Add GPL-3.0 license and document hardware wiring 2026-08-21 13:02:18 +02:00
Commander1024 9fe4ac75fd text formatting 2026-08-21 12:28:17 +02:00
Commander1024 0ce360da20 Initialize ESP32-S3 smoke-test project cycling the RGB led. 2026-08-21 11:51:56 +02:00