Skip to content

feat: resolve issues #27, #29, #30, #31, #33, #34 - #35

Open
IFindMe wants to merge 1 commit into
stanvx:mainfrom
IFindMe:issues/27-29-30-31-33-34
Open

feat: resolve issues #27, #29, #30, #31, #33, #34#35
IFindMe wants to merge 1 commit into
stanvx:mainfrom
IFindMe:issues/27-29-30-31-33-34

Conversation

@IFindMe

@IFindMe IFindMe commented Sep 4, 2026

Copy link
Copy Markdown

PR: resolve issues #27, #29, #30, #31, #33, #34

Branch: issues/27-29-30-31-33-34 (off main, commit 9d21d37)
Base: main

Summary

One coordinated batch that reconciles docs to code and closes six open issues.
All Rust changes were verified in a rust:1.98 container (Linux CI scope:
--workspace --exclude anyplug, matching upstream CI).

Issues closed

What changed

  • New files: shared/usbip-core/src/discovery_txt.rs,
    server/usbip-server/src/latency_hwm.rs,
    shared/usbip-core/benches/aead_inplace_bench.rs,
    server/usbip-server/benches/urb_high_water_mark.rs,
    docs/adr/0006-what-not-to-borrow.md.
  • Deleted: server/usbip-server/src/hotplug.rs,
    server/usbip-server/tests/hotplug_integration.rs.
  • Modified: docs + 4 counter/gauge statics removed from metrics.rs; server &
    client wired to the discovery TXT seam; URB loop threaded latency HWM.

Verification (all GREEN, Linux CI scope)

  • cargo test --release --workspace --exclude anyplug → pass
  • cargo clippy --workspace --exclude anyplug -- -D warnings → clean
  • cargo fmt --all -- --check → clean
  • cargo bench --no-run --workspace --exclude anyplug → builds (new benches)

Notes

  • The windows crate is not built on Linux (CI-excluded); its MdnsBrowser
    public surface used by windows/src/actions.rs is unchanged (new decode
    helpers are purely additive).
  • Reviewer: APPROVE after addressing 3 doc findings (resolved); see
    AgentsReport/reviewer/2026-09-04_batch-review.md.
  • Issue macOS client (DriverKit VHCI equivalent) #13 (macOS client) is out of scope ("ready-for-human").

…vx#33, stanvx#34

- stanvx#27: reconcile docs to code; add authoritative "## Module ownership"
  section to CONTEXT.md and align CLAUDE/ARCHITECTURE/PROTOCOL/ROADMAP/
  README/BUILDING/PERFORMANCE with the codebase; add ADR-0006
  "what-not-to-borrow".
- stanvx#29: delete the unwired poll-based hotplug module and its tests; defer
  device hot-plug detection to v1.1 per ADR-0005.
- stanvx#30: collapse the discovery TXT wire format into a single
  usbip_core::discovery_txt seam (encode+decode) used by both the server
  (advertise) and client (browse).
- stanvx#31: delete the four never-wired Prometheus statics, keeping the live
  /metrics router and ENCRYPTION_ENABLED gauge.
- stanvx#33: add per-thread high-water-mark latency sampling in the URB receive
  loop (private HighWaterMark, broadcast only on new global peak) plus a
  CAS-reduction criterion bench; no public API change, LatencySample shape
  unchanged.
- stanvx#34: audit decrypt call sites confirming in-place AEAD is the production
  decrypt path; add an in-place-vs-allocating criterion bench.

Verified via Docker (rust:1.98): cargo test/clippy/fmt all green;
bench binaries build.  Windows crate excluded on Linux (unchanged).

Signed-off-by: opencode <opencode@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants