You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Default PDF import source names collide across unrelated URL basenames #480
Verified at v4.10.0, 55c15761845b00931ab2ea4aa184a7797dfd0614.
Locations
src/knowledge/importer.py:416,450-455
Failure scenario / concrete benefit and affected installs
Bulk PDF imports without explicit source where different hosts share manual.pdf. Both source names become manual.pdf; second import replaces unrelated first document in current searchable corpus.
Verification
Independently traced basename naming and source replacement ingest. Reviewer actual importer+KnowledgeStore with only downloads/PDF extraction mocked yielded one source containing only second content.
Correction and regression coverage
Default to collision-resistant canonical URL identity while preserving explicit source override and existing-source compatibility. Distinct from #327 chunk hash identity.
Duplicate screening
Checked all open/closed inventory and GitHub title/body searches, no matching root cause. Excluded #399, #303 and declined search-transaction changes. Harmless temporary fixtures/source traces only.
Validated as fixed on campaign/v4.10.0-review (PR #629) at 3047c46c: the fix was reviewed against the final code, and its regression tests pass on the branch and in CI. Round-1 correction caf9d3be: unchanged durable legacy basename PDF imports are reused without duplication; changed or unverifiable legacy content returns an actionable explicit-source conflict rather than duplicating or overwriting an unrelated same-basename document. It is not merged to master yet. Closing per the maintainer's instruction; reopen if a later change regresses it.
Activity
Calmingstorm commentedon Sep 30, 2026
Validated as fixed on
campaign/v4.10.0-review(PR #629) at3047c46c: the fix was reviewed against the final code, and its regression tests pass on the branch and in CI. Round-1 correctioncaf9d3be: unchanged durable legacy basename PDF imports are reused without duplication; changed or unverifiable legacy content returns an actionable explicit-sourceconflict rather than duplicating or overwriting an unrelated same-basename document. It is not merged to master yet. Closing per the maintainer's instruction; reopen if a later change regresses it.