GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GeezerVison is showing github.com — (6/9) Code graph indexes a project repository nested in an ignoring folder by Obed0101 · Pull Request #133 · MendCode/MendCode Conversation
|
|
MendCode: @Obed0101's MendCode worked on this pull request on one of its devices; released 2026-11-10 19:25 UTC. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
No findings · nothing in this change was confirmed as a problem
head 785277dbae21
Merge risk: 🟢 Low · The change is confined to directory selection and ignore inheritance in the shared walker, without changing graph schemas or public interfaces. A regression would affect graph coverage or indexing eligibility for projects containing ignored nested repositories.
Change: Bug fix · Review effort: 1/5, about 5 minutes
The change indexes otherwise ignored directories when they contain their own .git entry, applying the nested repository’s ignore rules independently of the outer project. It adds a focused regression test and changelog entry; no introduced defects were found in the scoped review. Risk is low, and verification was by source inspection only—tests were not run.
Readers: 3 code files no reader could read went to the review pass whole (the diff is small: one reader call costs more than the readers' share of this review's cap, so the review pass reads it).
Stacked on #132: only this pull request's own commits since #132's head 43a0917.
The source walker now checks ignored directories for a .git entry instead of always excluding them. Matching directories are queued with an empty inherited-ignore list, allowing their own .gitignore files to control discovery. Existing hard exclusions, symlink handling, file-size limits, cancellation checks, and file-count limits remain unchanged. The behavior reaches index refreshes, drift detection, and automatic indexing size checks through their existing walker calls.
Changes
| Layer / files | Summary |
|---|---|
Source discovery packages/codegraph/src/walk.ts |
Discover ignored nested repositories and traverse them without inheriting the outer project’s ignore rules. |
Regression coverage packages/codegraph/test/reliability.test.ts |
Verify that nested repository symbols are searchable while its generated directory and an ordinary ignored directory remain excluded. |
Release documentation CHANGELOG.md |
Document graph discovery of a project repository ignored by its enclosing workspace. |
| Check | Status | Explanation |
|---|---|---|
| Title | ✅ Passed | The title accurately describes the nested-repository discovery fix. |
| Description | ✅ Passed | The description explains the behavior and user-visible motivation, and reports traversal measurements, a head typecheck, and full-suite results at the top of the stack. Those execution results were supplied by the PR and were not independently verified in this read-only review. |
| Out of scope | ✅ Passed | All three changed files directly implement, test, or document the stated fix; no unrelated changes appear in this stacked diff. |
Performance (perf-attrib, base 43a0917 against head 785277d)
perf-attrib: igual: nothing above the measured noise
base 43a091792e8326c6f060a3272eaf65bad31d5590 (43a09179) vs cand 785277dbae21b3f364b365ed6e78e02fd6c08280 (785277db, cached build), median of 2 faux-engine session(s) per side; flagged = beyond the noise measured on 18 base-vs-base runs (x1.5).
| metric | base | cand | diff |
|---|---|---|---|
| tui.after.fp_mb | 57.2 | 57.1 | -0.1 |
| tui.after.peak_mb | 73.2 | 73.1 | -0.1 |
| tui.ready.fp_mb | 55 | 54.8 | -0.2 |
| tui.ready.peak_mb | 73.2 | 73.1 | -0.1 |
| tui.rest.fp_mb | 56.7 | 56.4 | -0.3 |
| tui.rest.peak_mb | 73.2 | 73.1 | -0.1 |
| tui.after.rss_mb | 136 | 137.4 | +1.4 |
| tui.ready.rss_mb | 114 | 114.1 | +0.1 |
| tui.rest.rss_mb | 130.6 | 137.3 | +6.7 UP |
| tui.after.heap.extra_b | 6734934 | 6849589 | +114655 |
| tui.after.heap.objects | 240735 | 240848 | +113 |
| tui.after.heap.protected | 19 | 19 | 0 |
| tui.after.heap.size_b | 24393542 | 24496853 | +103311 |
| tui.ready.heap.extra_b | 2895000 | 2895002 | +2 |
| tui.ready.heap.objects | 216483 | 216483 | 0 |
| tui.ready.heap.protected | 18 | 18 | 0 |
| tui.ready.heap.size_b | 19274984 | 19274682 | -302 |
| tui.rest.heap.extra_b | 4624658 | 4669442 | +44784 |
| tui.rest.heap.objects | 237659 | 237666 | +7 |
| tui.rest.heap.protected | 18 | 18 | 0 |
| tui.rest.heap.size_b | 22012850 | 22059906 | +47056 |
| tui.rest.js_code_b | 5833499 | 5879520 | +46021 |
| tui.rest.js_live_b | 19238183 | 19238197 | +14 |
| tui.cpu_ms.after | 6061 | 6034 | -27 |
| tui.cpu_ms.ready | 363 | 365 | +2 |
| tui.cpu_ms.rest | 541 | 543 | +2 |
| binary.bytes | 72290528 | 72290528 | 0 |
| disk.bytes | 4111 | 4115 | +4 |
| disk.bytes_per_session | 2056 | 2058 | +2 |
JS object types that rose (count):
JS heap bytes by constructor that rose:
Modules loaded at start: 230 -> 230, 4631287 -> 4631407 bytes of chunks; chunk sizes only in cand: [4421], only in base: [4301] (chunk names are hashes: the list says which changed in size, not by what name)
Reference (skill, 2026-11-03, real model): footprint 64 ready / 66 after / peak 80 MB, 2.6 KB per session. This run (faux engine, whole process tree): 54.8 / 57.1 / peak 73.1 MB, 2058 B per session.
CHANGELOG.mdpackages/codegraph/src/walk.tspackages/codegraph/test/reliability.test.tsComment @mendcode review to review again · @mendcode pause / resume · reply to a finding with explain, fix or learn · settings in .mendcode/review.yaml
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.