Commit 8778317
unworked validation sweep: fix all remaining major findings (tasks 020-031)
Closes the last batch of major-severity unworked findings. The 43
majors in the backlog at the start of this sweep are now all
addressed (resolved by later commits and marked, fixed in this
sweep, or closed with explicit "deferred-until-profile" rationale
where the recommendation is a hot-path optimisation that the new
bench_route_lookup harness should drive).
Behavioural / structural changes
--------------------------------
- src/detail/webserver_routes.cpp: extract `make_non_prefix_entry`
helper used by both branches of `insert_fresh_v2_entry`. The
other two construction sites stay open-coded because their
inputs don't match the helper's contract (set_all + variable
is_prefix, or merge-into-existing). [manual-validation #6]
Documentation / comment trims
-----------------------------
- src/httpserver/detail/route_cache.hpp: file-level comment
trimmed to the WHY-only portion (mutex choice + lock order),
cross-references architecture §4.7. [task-027 #7]
- src/httpserver/detail/webserver_impl.hpp: drop the tier-order
prose; keep only the lock-order paragraph plus the (newer)
CWE-407 paragraph and a pointer to lookup_v2's implementation
comment for the walk-order rationale. [task-027 #9]
- src/httpserver/webserver.hpp: collapse the 9-line top-of-file
comment into 4 lines that explain only the include-firewall
rationale and point to the per-method Doxygen blocks for ABI
details. [task-020 #4]
Already-fixed findings, marked with a pointer to the resolving
commit:
- task-027 #14 (radix tree hash-DoS) → fixed by TASK-056
- task-027 #18 (terminus collision) → fixed by TASK-056
- task-031 #3, #4 (CWE-209 in default error body) → fixed by
TASK-055 / DR-009 Revision 1
- task-036 #3 (dual dispatch branches) → removed by TASK-046+
- task-049 #2 (snapshot reserve) → resolved by TASK-048
- manual-validation #10 (PMD sha256 pin) → fixed by TASK-059
Closed with deferred-until-profile rationale (hot-path
optimisations the bench harness should drive, not speculative
rewrites):
- task-027 #11 (best_prefix_caps copy)
- task-027 #12 (cache_value copy-on-hit)
- task-027 #13 (normalize_path allocation)
- task-025 #2 (lambda fast path bypassing virtual dispatch)
- manual-validation #7 (canonicalize_lookup_path allocation)
- manual-validation #8 (normalize_path pre-normalisation)
- manual-validation #9 (serialize_allow_methods caching)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>1 parent 97bd08e commit 8778317
9 files changed
Lines changed: 71 additions & 81 deletions
File tree
- specs/unworked_review_issues
- src
- detail
- httpserver
- detail
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
24 | | - | |
| 24 | + | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
| 27 | + | |
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
| |||
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
| 14 | + | |
15 | 15 | | |
16 | 16 | | |
17 | | - | |
| 17 | + | |
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| |||
0 commit comments