Consolidate Phase 8 documentation
Mark web administration complete, centralize current contracts and acceptance evidence, and remove superseded slice records. Update roadmap, architecture notes, and test references without changing firmware sources.
This commit is contained in:
@@ -12,9 +12,9 @@ The runner compiles production `web_cookie_auth`, `web_session_store`, `web_auth
|
||||
|
||||
Coverage includes challenge reuse/consumption/expiry, capacities without eviction, global throttle, fragmented login bodies, secure cookie attributes and two simultaneous Set-Cookie fields, session-specific logout, duplicate fields/cookies, Origin/CSRF/method/Fetch Metadata rejection, Basic denial, currentness, stop/login and failure paths, six-header login budget, upgrade-state installation, and request cleanup preserving all 0–128 pending lengths through partial reads.
|
||||
|
||||
This is **not** the full IDF parser/dispatcher, real handshake/TLS/socket, browser, multicore task or hardware test. The private struct doubles do not prove binary layout; firmware compilation uses the actual pinned headers, and the version guard requires a new audit on SDK changes. Handshake sending and transport revocation are doubled. Actual on-wire pre-101 rejection, frame routing, pipelining/early bytes, cookie/CSP/browser recovery and loaded expiry latency remain M1 target gates. No sanitizer or runtime memory-reserve result is implied.
|
||||
This is **not** the full IDF parser/dispatcher, real handshake/TLS/socket, browser, multicore task or hardware test. The private struct doubles do not prove binary layout; firmware compilation uses the actual pinned headers, and the version guard requires a new audit on SDK changes. Handshake sending and transport revocation are doubled. Actual on-wire pre-101 rejection, frame routing, pipelining/early bytes, cookie/CSP/browser recovery and loaded expiry latency require real-target evidence beyond this harness; M1 and the retained Phase 8D scope have since been accepted. No sanitizer or runtime memory-reserve result is implied.
|
||||
|
||||
See `docs/phase8d3_implementation.md` for source verification, other suite commands, build accounting and the target checklist.
|
||||
See [authentication contracts](../../docs/web_administration.md#authentication-and-admission), [acceptance evidence and limits](../../docs/web_administration_acceptance.md), and [regression procedures](../../docs/user_administration_tests.md#integrated-web-administration-regression-procedure).
|
||||
|
||||
## Accounts (8D.10)
|
||||
|
||||
@@ -32,19 +32,17 @@ authorization/currentness/no-mutation/cleanup, timer creation/start failure,
|
||||
queued expiry/replacement/executing fences, self success revocation and protected
|
||||
failure, pending/result isolation, stale IDs, submission/execution failure,
|
||||
target-only notifications, session invalidation and missed revocation/DB failure.
|
||||
Parent reports PASS for these nine groups plus shared regressions. Direct-handler
|
||||
Historical 8D.10 reports recorded PASS for these nine groups plus shared regressions; the following counts and build sizes describe that slice, not current totals. Direct-handler
|
||||
tests do not prove route registration; the missing registration is now fixed as
|
||||
an independent optional endpoint (23 handlers), and the route agent reports 15
|
||||
lifecycle groups passing for registration, failure isolation and restart.
|
||||
Implementation is host-tested/build-verified (parent `pio run` PASS, 25.61 s,
|
||||
95,908 B RAM / 1,694,237 B flash), not target accepted. New timer runtime costs
|
||||
remain unmeasured. No sanitizer validation or device/asset/commit/8D.11 action.
|
||||
95,908 B RAM / 1,694,237 B flash); target acceptance was pending at that time and is superseded by the 8D.22 signoff. Timer runtime costs remain unmeasured; no sanitizer result is implied.
|
||||
The second command separately exercises production conditional database mutation
|
||||
and zero-wait list bodies with NVS/RTOS doubles, including last-admin protection,
|
||||
target generation/recreation checks and commit-failure cleanup. It retains the
|
||||
canonical CLI account tests. These are not end-to-end RTOS/flash/TLS tests.
|
||||
See `docs/phase8d10_implementation.md` for current contracts, historical slice 1
|
||||
evidence and pending target checks. Timer doubles do not prove hard cleanup latency.
|
||||
See [Accounts contracts](../../docs/web_administration.md#accounts-and-authorized-keys) and [acceptance evidence](../../docs/web_administration_acceptance.md). Timer doubles do not prove hard cleanup latency.
|
||||
|
||||
## Read-only Serial Settings
|
||||
|
||||
@@ -64,5 +62,4 @@ registration. No SDK files are modified. Lifecycle registration/optional failure
|
||||
orchestration is separately tested by `tests/web_admin_transport/server_lifecycle.py`.
|
||||
|
||||
This does not run the full serial task/UART driver, TLS/network dispatcher or a real
|
||||
browser. Target comparison with UART0 and runtime memory/stack validation remain
|
||||
pending in `docs/phase8d8_implementation.md`; prior M2 signoff remains accepted.
|
||||
browser. See [typed Settings contracts](../../docs/web_administration.md#typed-settings-api-and-operation-lifetime) and [Serial semantics](../../docs/web_administration.md#serial-and-display). [Acceptance evidence](../../docs/web_administration_acceptance.md) records the 8D.22 signoff without inferring individual target comparisons or runtime memory/stack margins.
|
||||
|
||||
Reference in New Issue
Block a user