Skip to content

fix(knowledge): vendored dirs poison conflict detection#200

Merged
unohee merged 1 commit into
mainfrom
fix/int-2320-vendored-conflict-noise
Jul 2, 2026
Merged

fix(knowledge): vendored dirs poison conflict detection#200
unohee merged 1 commit into
mainfrom
fix/int-2320-vendored-conflict-noise

Conversation

@unohee

@unohee unohee commented Jul 2, 2026

Copy link
Copy Markdown
Owner

Summary

With #199's same-project parallel selection live, the KG conflict detector deferred 4/5 intrect-platform tasks as "conflicting" — the shared modules were entirely vendored google-cloud-sdk/ files (a.py, run.py, api.py, …). Same failure family as the INT-1810 R3 trash/ false conflicts. (INT-2320)

Two compounding causes, both fixed:

  1. Scanner indexed vendored third-party trees → SKIP_DIRS now excludes google-cloud-sdk / third_party / vendor / vendors
  2. analyzeIssueImpact matched filenames as raw substrings of issue text (1–2 char names matched everything; run matched "running") → filename matching now requires a whole-word boundary match and a minimum length of 3 (camelCase word-split and path-segment matching unchanged)

Verification

  • New tests: scanner skips vendored trees; analyzer rejects a.py/run.py-vs-"running" while keeping legitimate boundary matches (api, login)
  • Full suite 1401 passed · oxlint 0 · tsc clean
  • After merge: force a full rescan of the cached intrect-platform graph and verify the same 5 tasks enqueue without fake conflicts

🤖 Generated with Claude Code

With INT-2318's same-project parallel selection live, the KG conflict
detector deferred 4/5 intrect-platform tasks as 'conflicting' — the
shared modules were entirely vendored google-cloud-sdk files (a.py,
run.py, api.py, read.py, ...). Two compounding causes, same family as
the INT-1810 R3 trash/ false conflicts:

- the scanner indexed vendored third-party trees, adding thousands of
  short generic filenames to the graph → SKIP_DIRS now excludes
  google-cloud-sdk / third_party / vendor / vendors
- analyzeIssueImpact matched filenames as raw substrings of the issue
  text, so 1-2 char names matched everything and 'run' matched
  'running' → filename matching now requires a whole-word boundary
  match and a minimum name length of 3 (camelCase word-split and
  path-segment matching unchanged)

Full suite 1401 passed, lint 0, tsc clean.
@unohee unohee merged commit bba3c7b into main Jul 2, 2026
9 checks passed
@unohee unohee deleted the fix/int-2320-vendored-conflict-noise branch July 2, 2026 04:33
@unohee unohee mentioned this pull request Jul 2, 2026
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