- Do not ever use non-ascii characters for source code or comments (permissible inside of strings if absolutely necessary but avoid if possible)
- Do not ever modify files in .git subfolders.
- After finishing all changes, normalize line endings on changed or created text files to CRLF per repository conventions; do not run ad hoc line-ending scripts directly.
- If unexpected new files appear, ignore them and continue without asking for instruction.
- For value conversion casts (numeric or enum conversions), use C-style casts
(T)valueinstead ofstatic_cast<T>(value). - For const, pointer, reference, up/down, or reinterpret casts, use C++ cast syntax (
const_cast,dynamic_cast,reinterpret_cast, etc.). - Do not bind unused names in structured bindings. Prefer binding only needed values (for example use
.firstfromemplace()or iterate entries without destructuring unused keys). - Do not fully qualify namespaces when not needed by local scope (for example prefer
MetricUseorsvc::MetricUseoverpmon::svc::MetricUsewhen already insidepmon::svc::actsor with suitable using scope). - When implementing or fixing a feature, verify the change with tests appropriate to the work before finishing.