feat(hotpath): fill code-index parse/index gaps - #784
Conversation
Co-authored-by: Zack Jackson <ScriptedAlchemy@users.noreply.github.com>
|
…sor/hotpath-code-index-gaps-c42d
…sor/hotpath-code-index-gaps-c42d
…sor/hotpath-code-index-gaps-c42d
Performance Comparison
|
3ba9af6
into
codex/tracedecay-total-redesign-plan-reopened
|
Merged into PR #707's integration branch at |
|
Corrective follow-up: the instrumentation from this PR was reverted in The deep audit found that four labels have no production callers, several labels duplicate centralized spans, and the published profile proves none of the 27 added labels. Focused labels may return only with matched runtime evidence showing that each proposed measurement corresponds to observed production cost. |
Summary
Fills the remaining hotpath coverage gaps in
crates/tracedecay-code-index(HP-index) only. Adds 27#[hotpath::measure]attributes across 13 previously zero-coverage production source files, targeting leftover parse/index/join paths. All macros compile to no-ops without the opt-inhotpathfeature; nothing is enabled in default or production builds, and no Cargo.toml features were touched.New measures (
code_index.<area>.<verb>)build_registry,index_descriptorslanguages.rscompute_seal,emit,validatecapabilities.rsimpact.join,test_attribution.join,test_attribution.digest_evidence,diagnostics.joinimpact_join.rs,test_attribution.rs,diagnostics.rsindex_symbols,resolvelineage.rsdigest_request,build_batch,verify_batchreceipts.rsbuild_manifest,open,traverse,collect_ancestors,read_stack_revision,read_worktree_occupancygit_projection.rs,git_projection/declared_topology.rsscan_import_candidatesgraph_projection/interactive/imports.rsassemble,verify_importschunks/artifacts.rsignored_sources.admit,ignored_sources.restore,imports.derive,imports.validateproduction/ignored_sources.rs,production/import_evidence.rsIntentionally skipped
graph_projection/traversal.rs,graph_projection/schema.rs,graph_projection/interactive/models.rs— per-node/per-entity helpers inside tight loops; the crate'shotpath_observedoctrine forbids per-node measurement (file-operation granularity only).provider.rs(trait definitions plus cheap envelope validators) andproduction/generation_attribution.rs(getter-shaped stale-read shim) — getter-class code, skipped per instructions.Displayimpls, and getters throughout.code_index_chunks/retained_parse) are deliberately not wired here — deferred to the separate coverage PR.Out-of-scope note
cargo clippy --all-targets -- -D warningsfails in the dependency cratetracedecay-graph-db(too_many_argumentsonstage_generation_pagesingeneration_runtime.rs); that pre-exists on the base branch and is untouched by this PR.Verification
cargo check -p tracedecay-code-index— passcargo check -p tracedecay-code-index --features hotpath— passcargo clippy -p tracedecay-code-index --all-targets --no-deps -- -D warnings— clean (both with and without--features hotpath)cargo test -p tracedecay-code-index— 345 passed, 0 failed (all targets, default features)cargo test -p tracedecay-code-index --features hotpath --lib— 190 passed, 0 failednpm run lint:commit— pass