Thanks for the project! Tried /understand on a FastAPI (Python) + Next.js (TypeScript) monorepo via the Claude Code plugin and hit two blockers. Functions/classes extract perfectly, but the dependency graph comes out with zero import edges. Reporting with repro since the two may share a root cause (the published artifact looks out of sync).
Environment
macOS (Darwin 24.6), Node v24.11.1, pnpm 11.5.0 (corepack), plugin 2.7.5 (Claude Code /plugin marketplace add).
Issue 1 — stale lockfile blocks the Phase 0 build on pnpm 11
pnpm --filter @understand-anything/core build fails:
ERR_PNPM_OUTDATED_LOCKFILE specifiers in the lockfile don't match specifiers in package.json:
* 2 dependencies were added: graphology@~0.26.0, graphology-communities-louvain@^2.0.2
--frozen-lockfile fails outright; plain pnpm install reports "Already up to date" but does not add them, so every subsequent pnpm --filter ... build aborts in runDepsStatusCheck before tsc runs. pnpm 11 also reports ERR_PNPM_IGNORED_BUILDS for esbuild + all tree-sitter parsers (prebuilds are present, so non-fatal, but noisy).
Workaround that unblocked it:
cd packages/core && ../../node_modules/.bin/tsc # dist/index.js builds fine
Suggest committing an up-to-date pnpm-lock.yaml (and/or pnpm.onlyBuiltDependencies for the native builds).
Issue 2 — import extraction returns 0 edges (Python AND TypeScript)
After core is built, extract-structure.mjs / extract-import-map.mjs parse functions and classes correctly but extract no imports for files that clearly have many:
extract-structure.mjs on a 256-line Python file → functions=[9] classes=[3] imports: []
(the file has `from sqlalchemy import select`, `import logging`, etc.)
extract-import-map.mjs → Python, 170 files: filesScanned=170 filesWithImports=0 totalEdges=0
→ TypeScript, a component with dozens of relative+alias imports: 0
So the assembled knowledge graph has nodes (files/functions/classes) but no structural edges, and Phases 4 (layers) and 5 (tour), which consume import topology, degrade accordingly.
Hypothesis: the lockfile desync (Issue 1) installs tree-sitter grammar versions whose node types no longer match the import queries, so the query silently matches nothing across both languages. Happy to test a patch if you point me at the query.
Net
Big fan of the concept. On a fresh pnpm-11 install the deterministic dependency graph (the headline value) currently comes out edge-less. Pinning a current lockfile + verifying the import queries against the shipped grammar versions would fix both.
Thanks for the project! Tried
/understandon a FastAPI (Python) + Next.js (TypeScript) monorepo via the Claude Code plugin and hit two blockers. Functions/classes extract perfectly, but the dependency graph comes out with zero import edges. Reporting with repro since the two may share a root cause (the published artifact looks out of sync).Environment
macOS (Darwin 24.6), Node v24.11.1, pnpm 11.5.0 (corepack), plugin 2.7.5 (Claude Code
/plugin marketplace add).Issue 1 — stale lockfile blocks the Phase 0 build on pnpm 11
pnpm --filter @understand-anything/core buildfails:--frozen-lockfilefails outright; plainpnpm installreports "Already up to date" but does not add them, so every subsequentpnpm --filter ... buildaborts inrunDepsStatusCheckbeforetscruns. pnpm 11 also reportsERR_PNPM_IGNORED_BUILDSfor esbuild + all tree-sitter parsers (prebuilds are present, so non-fatal, but noisy).Workaround that unblocked it:
Suggest committing an up-to-date
pnpm-lock.yaml(and/orpnpm.onlyBuiltDependenciesfor the native builds).Issue 2 — import extraction returns 0 edges (Python AND TypeScript)
After core is built,
extract-structure.mjs/extract-import-map.mjsparse functions and classes correctly but extract no imports for files that clearly have many:So the assembled knowledge graph has nodes (files/functions/classes) but no structural edges, and Phases 4 (layers) and 5 (tour), which consume import topology, degrade accordingly.
Hypothesis: the lockfile desync (Issue 1) installs tree-sitter grammar versions whose node types no longer match the import queries, so the query silently matches nothing across both languages. Happy to test a patch if you point me at the query.
Net
Big fan of the concept. On a fresh pnpm-11 install the deterministic dependency graph (the headline value) currently comes out edge-less. Pinning a current lockfile + verifying the import queries against the shipped grammar versions would fix both.