Skip to content

docs(registry): the fabricated-edge blind spot is cross-language, not Python - #73

Merged
inth3shadows merged 1 commit into
mainfrom
docs/widen-fabricated-edge-scope
Sep 5, 2026
Merged

docs(registry): the fabricated-edge blind spot is cross-language, not Python#73
inth3shadows merged 1 commit into
mainfrom
docs/widen-fabricated-edge-scope

Conversation

@inth3shadows

Copy link
Copy Markdown
Owner

journeys/testgraph.json described the append spot-check's fabricated edges as a defect in codegraph's Python resolver. That understates it — and testgraph is public now, so it is a claim strangers read.

Reproduced on 1.5.0 and 1.6.0 in three languages, same exact-match signature each time, each with a plain-identifier control that resolves correctly:

language call fabricated target
Python d.setdefault(k, []).append(v) unrelated top-level append
JavaScript m.getOrInit(k, []).push(v) unrelated top-level push
Go r.lookup(k).Get(v) package-level Get, not Bag.Get

So it is the shared extractor dropping any non-identifier receiver, not a Python heuristic. Go also shows it is not confined to collection-method names — Get collides with an ordinary package-level function, which widens the exposed surface to any repo where a method name is also a top-level function name.

Filed upstream with patches: colbymchenry/codegraph#1683 (the fabrication) and #1681 (the module-member false negative).

No behavior change — the append spot-check is already suspended, so nothing was returning a false green. Ran 264 tests, OK.

… Python

journeys/testgraph.json described the append spot-check's fabricated edges as a
defect in codegraph's Python resolver. That understates it, and testgraph is
public now, so the claim is one a stranger reads.

Reproduced on 1.5.0 and 1.6.0 in three languages, same exact-match signature
each time, each with a plain-identifier control that resolves correctly:

  python  d.setdefault(k, []).append(v)  -> unrelated top-level append
  js      m.getOrInit(k, []).push(v)     -> unrelated top-level push
  go      r.lookup(k).Get(v)             -> package-level Get, not Bag.Get

So it is the shared extractor dropping any non-identifier receiver, not a
Python heuristic. Go also shows it is not confined to collection-method names:
Get collides with an ordinary package-level function, which widens the exposed
surface to any repo where a method name is also a top-level function name.

Filed upstream with patches: colbymchenry/codegraph#1683 (the fabrication) and
#1681 (the module-member false negative). No behavior change here - the append
spot-check is already suspended, so nothing was returning a false green.
@inth3shadows
inth3shadows merged commit f408aa1 into main Sep 5, 2026
2 checks passed
@inth3shadows
inth3shadows deleted the docs/widen-fabricated-edge-scope branch September 5, 2026 16:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant