원클릭으로
syncmeta
// Sync changes from hotpath and hotpath-macros crates to their meta counterparts (hotpath-meta and hotpath-macros-meta). Use when meta crates need to be updated with recent changes.
// Sync changes from hotpath and hotpath-macros crates to their meta counterparts (hotpath-meta and hotpath-macros-meta). Use when meta crates need to be updated with recent changes.
| name | syncmeta |
| description | Sync changes from hotpath and hotpath-macros crates to their meta counterparts (hotpath-meta and hotpath-macros-meta). Use when meta crates need to be updated with recent changes. |
| allowed-tools | Bash, Read, Edit, Write, Glob, Grep |
Sync recent changes from hotpath → hotpath-meta and hotpath-macros → hotpath-macros-meta.
The meta crates are copies of the main crates used to profile the profiler itself. They must stay in sync with the source crates.
DO NOT copy entire files from hotpath to hotpath-meta and then sed-replace. This approach fails because the meta crates have many naming differences beyond simple hotpath:: → hotpath_meta:: substitution:
hotpath → hotpath-meta, hotpath-alloc → hotpath-alloc-meta, hotpath-off → hotpath-off-metahotpath_macros → hotpath_macros_metaHOTPATH_FOCUS → HOTPATH_META_FOCUS, HOTPATH_EXCLUDE_WRAPPER → HOTPATH_META_EXCLUDE_WRAPPER, HOTPATH_OUTPUT_PATH → HOTPATH_META_OUTPUT_PATH#[cfg_attr(feature = "hotpath-meta", hotpath_meta::measure_all)] exist in hotpath but must NOT exist in hotpath-metaInstead, apply diffs to the existing meta files:
git diff HEAD~N..HEAD -- crates/hotpath/src/path/to/file.rscrates/hotpath/ and crates/hotpath-macros/:git log --oneline -N
git diff HEAD~N..HEAD --name-only -- crates/hotpath/src/ crates/hotpath-macros/src/
git diff HEAD~N..HEAD -- crates/hotpath/src/path/to/file.rs
Read the corresponding meta file and apply the equivalent changes using Edit tool. The meta files are at:
crates/hotpath/src/** → crates/hotpath-meta/src/**crates/hotpath-macros/src/** → crates/hotpath-macros-meta/src/**Verify the meta crates compile:
cargo check -p hotpath-meta --features hotpath-meta
cargo check -p hotpath-macros-meta --features hotpath-meta
cargo check -p hotpath-meta --features hotpath-alloc-meta
cargo check -p hotpath-meta --features hotpath-off-meta
src/ files, never Cargo.toml or other config files.#[cfg_attr(feature = "hotpath-meta", hotpath_meta::...)] in hotpath are self-instrumentation and must NOT be copied to meta crates.hotpath-meta, hotpath-alloc-meta, hotpath-off-meta (NOT hotpath, hotpath-alloc, hotpath-off).