bugfix - scope generic callable-name helper planning (#701)#702
Merged
dannymeijer merged 1 commit intoMay 26, 2026
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR fixes #701 by making generic callable-name helper planning concrete instead of crate-wide. Generic
func.__name__support now widens only for reachable top-level function values that actually flow through calls, while imported default symbols and dependency-owned types/values are qualified through shared dependency metadata. This keeps decorator/partial/callable identity working across module boundaries without emitting invalid helpers for unrelated async, generic, stdlib, or dependency signatures.Type of change
docs/RFCs/*)Area(s)
Select the primary areas touched (used for review routing; labels are managed separately):
Key details
CallableNameUseFactsas the single codegen query for callable-name usage, scopes generic callable-name helper emission to concrete function arguments, and centralizes dependency type/value qualification metadata.modulo/modfailures are downstream canonical-name metadata, not this compiler helper-emission failure.Testing / verification
make test/cargo testmake examples(if relevant)incan fmt --check .(if relevant)Manual verification notes:
cargo test --test cli_integration issue69 --features lsppassed.cargo test --test cli_integration issue701 --features lsppassed.cargo test --test vocab_guardrails semantic_string_checks_are_classified --features lsppassed.cargo build --locked --bin incan --features lsppassed.git diff --check origin/release/v0.3...HEADpassed.make pre-commitpassed, including nextest, clippy, cargo-deny, smoke-test-fast, examples, and benchmark build checks.moduloregistering under source callable identity while tests expect canonicalmodmetadata.Docs impact
If docs updated:
workspaces/docs-site/docs/release_notes/0_3.mdChecklist
Closes #701