You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor: align identifier naming with house style + re-enable the gate (#124)
Correct the readability-identifier-naming policy to match the documented house
style and re-enable the check as a WarningsAsErrors gate (it was "temporarily
disabled during rename migration"). The SDK already follows the policy closely;
this is a config alignment plus a small internal-only cleanup.
.clang-tidy amendments:
- LocalConstant/LocalVariable = lower_case: const/constexpr *locals* stay
lower_case; the k-prefix Constant policy applies to file-scope/global
constants only (without this, const locals falsely flag en masse).
- NamespaceIgnoredRegexp '^(PJ|Ui)$': the flat `PJ` namespace (house style) and
uic-generated `Ui`.
- C-ABI / canonical-schema / STL exemptions (the plugin binary + wire contract):
* Struct/Enum/EnumConstant/Function/GlobalConstant `PJ_`/`pj_` extern "C"
C-ABI identifiers, plus the camelBack vtable member `fetchMessageData`.
* PublicMember single-capital `D K R P` (ROS/OpenCV CameraInfo/DepthImage
intrinsics -- a wire-format field contract).
* Method has_value/value_or/error_or (std::expected drop-in interface) and
load_config/save_config/ui_content/widget_data/trampoline_* (plugin-author
and C-ABI-bridge methods every compiled plugin links by name).
* TypeAlias `json` (nlohmann alias).
Recasing any of these breaks wire compat, STL-shaped generic code, or the
plugin ABI -- they are grandfathered (revisit the snake_case plugin virtuals
in a future coordinated 1.0.0).
- StructIgnoredRegexp `overloaded` (std::visit idiom).
- ParameterIgnoredRegexp '.*_': a trailing underscore on a parameter is the
idiomatic shadow-avoidance form (`PayloadView(Span bytes_) : bytes(bytes_)`);
stripping it reintroduces a -Wshadow error, so trailing-underscore params are
exempt.
Internal-only renames (no public API/ABI change -- local variables, file-local
helpers, test/example code):
flatten_impl/count_leaf_fields_impl -> camelBack; test helpers (ColorEq,
ColorNear, schema_release, array_release, stream_release, make_robot_pose)
-> camelBack; local vars (requiredString/withPath/writeField/...) -> lower_case;
named constants (ns_per_second, default_a_/default_b_) -> k-prefix.
Versioning: config + invisible internal renames only; no installed public API,
ABI struct, or wire-format change, and abi/baseline.abi is untouched -> no
version bump warranted.
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
0 commit comments