Conversation
Clone slimgroup/ImageGather.jl@ext_PhyParams into src/judiagent/rag/imagegather/ and wire it through the existing source-agnostic RAG plumbing: a new RAG_CATALOG entry (docs + examples), a search_imagegather_examples retrieval tool, and tool list updates for both the iterative and ReAct agents. search_codebase now greps both judi/ and imagegather/. The ImageGather example scripts get JUDI-style `# # Heading` markers so the Julia example chunker yields ~19 well-titled chunks instead of three whole-file blobs. Provenance for the new corpus is recorded in src/judiagent/rag/THIRD_PARTY.md; the CHANGELOG captures the operator step of clearing per-source caches before the next agent run. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sixteen tests covering everything we wired in for the new corpus: - Catalog: imagegather is registered with both docs and examples entries, and its cache files / collection names / persist dirs are disjoint from JUDI's so the two indices cannot collide. - Source layout: imagegather/docs/src and imagegather/examples exist and contain files of the declared filetypes. - Tool surface: search_imagegather_examples is exported from judiagent.tools, has the expected name, and references the package in its description. - Codebase grep: search_codebase finds imagegather-only terms (proving the second search root was added) and still finds JUDI-only terms (regression guard for the widening). - Chunking: the JUDI-style `# # Heading` markers we added to the three example scripts produce multiple named chunks per file (instead of the prior one-chunk-per-file behavior), every chunk carries a non-empty heading, and the docs corpus chunks too. - Agent binding: both iterative_agent and react_agent register the new tool, and GATHER_INTELLIGENCE mentions it. - Provenance: the upstream LICENSE is present and THIRD_PARTY.md lists ImageGather.jl on branch ext_PhyParams. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…clean Trim src/judiagent/rag/imagegather/ to the material actually used by RAG and attribution — drop the upstream Julia source (src/), tests (test/), CI configs (.github/), Project.toml manifests, docs build script (docs/make.jl), bib file, figures (docs/img/), and the example notebook. Keep LICENSE, README.md (which links to the upstream repo for the dropped artifacts), docs/src/*.md, and examples/*.jl. THIRD_PARTY.md and CHANGELOG.md updated to describe the trimmed snapshot accurately. Refactor the two chunking tests to use pytest tmp_path so the pickle cache no longer lands under src/judiagent/rag/loaded_store/. A small helper _spec_with_tmp_cache uses dataclasses.replace to override the spec's cache_file path while leaving every other field intact. Verified post-run that the loaded_store/ tree contains no imagegather pickles produced by the suite. Ruff-formatted import block in tests/unit_tests/test_imagegather_rag.py (ruff check src tests now passes). git diff --check is clean. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This classifier is not registered on PyPI's trove list, so hatchling's
metadata.validate_fields() raises ValueError during build_editable, which
in turn makes `uv sync` / `uv run` fail with:
Failed to build judiagent ...
Unknown classifier in field `project.classifiers`:
Programming Language :: Julia
Removing the single offending line unblocks editable installs. The "Julia"
keyword on line 13 is untouched — project.keywords is free-form, only
classifiers are validated against the trove list.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
src/judiagent/rag/imagegather/, cloned fromslimgroup/ImageGather.jl@ext_PhyParamswith the upstreamLICENSEpreserved. Provenance is recorded insrc/judiagent/rag/THIRD_PARTY.md.search_imagegather_examplesis built via the existing_build_retrieval_toolfactory and wired into both the iterative and the autonomous ReAct agents.search_codebasenow greps bothrag/judi/andrag/imagegather/in a single invocation.# # Headingmarkers so the Julia example chunker produces ~19 well-titled chunks instead of three whole-file blobs. Code itself is unchanged.env/{common,desktop,pace}-local.sh: resolve script path via${BASH_SOURCE[0]:-$0}and short-circuit the executed-not-sourced guard whenZSH_VERSIONis set, so the helpers can be sourced under zsh on macOS. Verified live that bash behavior is unchanged."Programming Language :: Julia"PyPI classifier frompyproject.toml(not on the trove list; tripstwine check).tests/unit_tests/test_imagegather_rag.pycover catalog wiring, tool surface, codebase-grep widening, chunked-output shape, agent tool binding, and provenance. Full unit suite goes from 38 → 54, all green.Commits
f62e869— Add ImageGather.jl as a second RAG corpusa4d754f— Make env helpers source-able from zsh and drop bogus PyPI classifier5cd3cd4— Add unit tests for ImageGather.jl RAG integrationTest plan
uv run pytest tests/unit_tests— 54 passedsearch_codebasereturns hits from/rag/imagegather/for imagegather-only terms and still from/rag/judi/for JUDI-only termsenv/desktop-local.shandenv/pace-local.shsource cleanly under bash 5.3 and still refuse to run when executedrag/loaded_store/loaded_imagegather_examples.pklandrag/retriever_store/retriever_imagegather_examples_<embedding_family>/on first invocationCHANGELOG.md)Notes for reviewers
imagegather/src/andimagegather/test/directories are included verbatim from upstream for license/citation completeness but are not indexed (catalog filters to.mdunderdocs/src/and.jlunderexamples/).prompting/shared.py::GATHER_INTELLIGENCE) now mentions both tools so the model can pick the right corpus for a query.