added parameter used to ignore dependecies during debpkg creation#28
Merged
Conversation
etr
pushed a commit
that referenced
this pull request
Jul 24, 2012
added parameter used to ignore dependecies during debpkg creation
etr
added a commit
that referenced
this pull request
May 28, 2026
Major findings resolved: - peer_address.cpp: add static_cast<unsigned> before IPv6 byte shifts to eliminate signed-int promotion UB and %x format-specifier mismatch (findings #1/#25, CWE-704) - webserver_impl.hpp: rewrite any_hooks_ comment — remove "relaxed", expand acquire-pairing rationale with the correct hot-path pattern (finding #2, race-condition risk in future TASK-046+ consumers) - hook_handle.hpp: add @warning lifetime block documenting the raw-pointer use-after-free risk and safe usage patterns (finding #3, CWE-416) - webserver_impl.hpp: add phase_hook_count(hook_phase) accessor; test phase_size helper now delegates to it, decoupling test from field names (finding #4) Minor findings resolved: - hook_phase.hpp: remove verbose std::string_view{} wrappers from to_string - hook_action.hpp: add assert(response_.has_value()) precondition guard in take_response() (finding #26, CWE-476) - hook_context.hpp: add @security doc blocks on request_received_ctx and before_handler_ctx mutable pointer fields (finding #27) - hook_context.hpp: update to_string placement comment (finding #28) - hook_handle.cpp: use erase_if_found return value in each switch arm to skip gate reset on no-op erase; add explanatory comment (findings #9/#10/#19) - hook_handle.cpp: add detach() inline comment distinguishing detached-disarmed from default-disarmed state (finding #8) - hook_handle.cpp: add TODO comment on switch repetition trade-off (#7/#17) - webserver.cpp: add comment on any_hooks_ store-under-lock redundancy (#24) - test: add add_hook_throws_on_phase_mismatch + add_hook_throws_on_empty_callable runtime tests (finding #11) - test: strengthen double_remove_is_noop with observable assertions (#12/#32) - test: capture detached handle in detach_disarms_destructor (#13) - test: add move_assign_removes_target_registration runtime test (#14) - test: verify take_response() returns correct status in hook_action test (#31) - test: add second remove() to default_constructed_handle_is_inert (#33) - test: add accept_decision_hook_callable pinned-phase SFINAE static_assert (#34) - test: add design-intent comment explaining compile-time vs runtime split (#29) - spec: mark all 34 items resolved/deferred in findings file Deferred: hooks.md doc updates (#5/#6), detach refactor (#15/#18), lambda inlining (#16), port 0 cleanup (#30), per-phase mutex (#23). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
etr
added a commit
that referenced
this pull request
May 28, 2026
Address all 48 minor findings from the 2026-05-26 review pass. Summary of changes by file: src/detail/webserver_aliases.cpp - Remove redundant `static` from `append_sanitized` (anon namespace already provides internal linkage; findings #6/#15/#16) - Trim verbose format-compatibility comment to single-line reference (#7) src/detail/webserver_finalize.cpp - Trim file-level comment block to two-sentence summary (#20) - Add clarifying comment to the `!mr->response` defensive guard (#21) - Rename `bytes` → `bytes_queued` to match the ctx field it populates (#22) - Add inline NOTE to elapsed ternary: alias must not read ctx.elapsed (#36) - Sentinel check for degenerate start_time: emit nanoseconds{-1} when answer_to_connection never ran, so hook authors can distinguish port-scan paths from real (but very slow) requests (#37) src/detail/webserver_request.cpp - Remove redundant `mr->ws = parent` from complete_request; add comment noting the field is pre-populated in answer_to_connection (#3) - Add NOTE comments at both before_handler and skip_handler short-circuit paths documenting that after_handler does not fire there (#38) - Collapse stale TASK-050 migration comment to one line (#25) src/httpserver/hook_context.hpp - Add @note to response_sent_ctx documenting elapsed==zero when only the log_access alias fires (no add_hook(response_sent, ...) registered) (#9) - Add @note to request_completed_ctx documenting the nanoseconds{-1} sentinel for degenerate start_time paths (#37) src/httpserver/create_webserver.hpp - Add @param note to log_access() setter documenting that the callable must be CopyConstructible (#35) examples/clf_access_log.cpp - Refactor emit_clf_line to use early null guard + unconditional extraction of method/path (idiomatic pattern matching webserver_aliases.cpp) (#12-14) - Add comment explaining intentional 'HTTP/1.1' hardcoding (#33) specs/architecture/04-components/hooks.md - Update after_handler, response_sent, request_completed rows with file:symbol fire-site references (#26, #27) - Fix stale webserver.cpp references for route_resolved, before_handler, and handler_exception rows (pre-existing staleness from TASK-048) (#27) - Update API surface comment: after_handler_ctx uses http_response* not http_response& (#4) - Add after_handler firing rules paragraph documenting which paths fire / skip after_handler (#1, #2) specs/tasks/M5-routing-lifecycle/TASK-050.md - Update three action items to reference correct TUs (webserver_finalize.cpp, webserver_callbacks.cpp) and correct field types (#28, #40) test/integ/hooks_no_firing.cpp - Add positive firing-count assertions for all wired phases on the happy-path GET (after_handler, response_sent, request_completed, route_resolved, before_handler, connection_opened, connection_closed, request_received) to give the test lasting regression value (#10, #42) test/integ/hooks_request_completed_fires_on_early_failure.cpp - Remove timing-dependent 50ms sleep; rely on ws.stop() as synchronisation barrier, consistent with other integ tests in this task (#11, #43) test/unit/hooks_log_access_alias_slot_test.cpp - Add assertion that '-' replacement appears at injection site in path sanitization test (not just absence of control chars) (#44) - Add assertion that 'GET' remains intact in method sanitization test (#46) - Add fourth test case pinning construction-time isolation between two webservers each with their own log_access callable; documents that runtime re-registration is deferred to a future task (#48) specs/unworked_review_issues/2026-05-26_123948_task-050.md - Mark all 48 items with [x] and disposition notes Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
etr
added a commit
that referenced
this pull request
May 28, 2026
…eview-cleanup) Major findings (5 total): - #1 (adr-violation): implementation is correct per DR-012/DR-009 §5.2; deferred. - #2/#3/#28 (code-structure, triplicate): extracted append_impl<P,Sig> template helper in resource_hook_table.cpp anonymous namespace; each of the five append_* methods now delegates in one line (mirrors fire_short_circuit_impl / fire_void_impl pattern). - #4/#5 (test-structure, advisory): deferred — project prefers per-case explicit test bodies for independent failure reporting. Key minor fixes applied (cosmetic, no behavior change): - TOCTOU anti-pattern (#6/#35/#36/#45/#47/#48): removed expired()+lock() double-check from per_route_table() helper; fire_request_completed_gated now uses the helper consistently (was inline-expanded). - Shadow variable (#15/#38): renamed local var per_route_table → rtable in fire_before_handler_gated, consistent with other gated-fire helpers. - Lifetime comment (#12): added "res keeps the resource alive while rtable is in use" note in handle_dispatch_exception. - Memory-order comment (#50): documented acquire-chain at rtable fetch site in fire_before_handler_gated. - Sentinel assertions (#41/#61/#62): removed LT_CHECK_EQ(true, true) from hooks_per_route_resource_destroyed_first.cpp and hook_api_shape_test.cpp; replaced with descriptive comments. - resource_hook_table.hpp comments (#8): clarified named-vector vs std::array tradeoff and any_hooks_ unused slots. - http_resource.hpp (#24/#27): added copy-shares-hook-table note; added comment before HTTPSERVER_COMPILATION guard. - http-resource.md / DR-012.md (#9/#42/#43): documented per-route hook bus and PIMPL storage choice. All 62 items marked [x] in specs/unworked_review_issues/2026-05-26_230100_task-051.md. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
etr
added a commit
that referenced
this pull request
May 28, 2026
Major fixes: - Extract as_shared() to test/integ/test_utils.hpp (DRY: removes 10 verbatim copies from integ TUs; fixes majors #2, #3 and minors #9, #16, #27). Add safety contract documentation in the header. Update test/Makefile.am noinst_HEADERS. - Add performance note in webserver_impl.hpp documenting the v1 route_cache_mutex_ serialization bottleneck and future migration path to route_cache_v2 (major #4). - Document §4.7 compliance status: route_entry variant exists in the v2 3-tier table (route_entry.hpp); v1 maps are transitional legacy flagged for Cycle K removal (major #1). Minor fixes: - Reword duplicate-registration comment to accurately describe both unique_ptr and shared_ptr ownership paths (#7, #8). - Add lock-order explanation before manual registered_resources_lock .unlock() call (#15, #18). - Rename is_exact to is_plain_path with explanatory comment (#14). - Rename fe to exact_it in resolve_resource_for_request (#17). - Add comments documenting necessary shared_ptr copies on hot paths to prevent reviewers from "optimising" them away (#19, #21). - Add curl_global_cleanup() after curl_easy_cleanup in unique_ptr_overload_compiles_and_serves (#11). - Document PORT macro sequential assumption and ephemeral-port migration path (#10, #13). - Add compile-time vs runtime note on unique_ptr_overload test (#28). - Rename threw to caught_invalid_argument in null/dup throw tests with post-catch assertion (#29). - Add comment in set_up documenting dtor_count reset dependency (#30). - Various already-addressed items noted in spec (ws raw pointer removed #5/#26, unregister implicit-conversion bug fixed #22). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
etr
added a commit
that referenced
this pull request
May 28, 2026
Final cleanup pass over the unworked review issues tracker: - Flipped 7 checkboxes whose *Status:* already indicated Resolved / Accepted / No-action (task-028 #9/#25, task-031 #25/#27/#28/#29/#35). - Converted 74 clearly-cosmetic deferrals (naming preferences, idiom choices, comment trim suggestions, "consider renaming" notes) to explicit *Status:* wontfix. Kept the checkbox as [ ] so they remain visible in the open list but are no longer in the actionable backlog. Final state of specs/unworked_review_issues/: - 1974 total findings across 37 review files - 1578 closed [x] / [~] (80%) - 322 still-open deferred (actionable backlog) - 74 wontfix (cosmetic, explicit close) - 0 items missing a *Status:* line The 322 actionable deferrals skew toward substantive backlog: missing tests, missing input validation, perf hot paths, refactor candidates, and spec/architecture drift. The full list of "real engineering work worth a follow-up pass" surfaced by Passes 1-3 is preserved in each review file's *Status:* lines. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
resolved issue with debpkg creation