Skip to content

test: Add datastore unit tests#196

Open
fede-kamel wants to merge 6 commits intooracle:mainfrom
fede-kamel:feature/datastore-unit-tests
Open

test: Add datastore unit tests#196
fede-kamel wants to merge 6 commits intooracle:mainfrom
fede-kamel:feature/datastore-unit-tests

Conversation

@fede-kamel
Copy link
Copy Markdown
Contributor

Summary

  • Comprehensive unit tests for vectorstores, tools, selector, and factory (660 lines)

Dependency

PR 6/13 of the deep research agent stack. Depends on PR 5.

Test plan

  • 44 datastore tests pass

Stacked PR — merge in order after predecessors.

@oracle-contributor-agreement oracle-contributor-agreement Bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label Apr 15, 2026
@fede-kamel fede-kamel force-pushed the feature/datastore-unit-tests branch 9 times, most recently from db48866 to 9fa9f17 Compare April 22, 2026 15:40
@fede-kamel fede-kamel force-pushed the feature/datastore-unit-tests branch 3 times, most recently from 9567789 to 3355915 Compare April 27, 2026 18:56
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request Apr 27, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
@fede-kamel fede-kamel force-pushed the feature/datastore-unit-tests branch from 3355915 to c6373fb Compare April 27, 2026 21:42
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request Apr 27, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
@fede-kamel fede-kamel force-pushed the feature/datastore-unit-tests branch from c6373fb to 56227f5 Compare April 27, 2026 23:50
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request Apr 27, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
@fede-kamel fede-kamel force-pushed the feature/datastore-unit-tests branch from 56227f5 to 0585a8f Compare April 28, 2026 00:05
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request Apr 28, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
@fede-kamel fede-kamel force-pushed the feature/datastore-unit-tests branch from 0585a8f to 3b26fd2 Compare May 4, 2026 13:29
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 4, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
@fileames fileames self-requested a review May 4, 2026 14:00
fileames
fileames previously approved these changes May 4, 2026
@fede-kamel fede-kamel requested a review from fileames May 4, 2026 15:04
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 4, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 4, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 4, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 4, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 4, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 4, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
@fede-kamel fede-kamel force-pushed the feature/datastore-unit-tests branch from 3b26fd2 to 0287041 Compare May 4, 2026 16:21
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 4, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
@fede-kamel fede-kamel force-pushed the feature/datastore-unit-tests branch from 0287041 to a48c36b Compare May 6, 2026 23:37
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 6, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added 6 commits May 8, 2026 14:06
Adds the datastore tool factory and selector to langchain-oci:
- create_datastore_tools() factory (datastores/tools/factory.py)
- StoreSelector for routing across multiple stores (datastores/tools/selector.py)
- get_document and stats tools (datastores/tools/{get_document,stats}.py)
- Top-level langchain_oci exports for datastores
- Compile-test scaffold (tests/integration_tests/test_compile.py)

Builds on the tool framework from PR oracle#194.
…pile test

The compile-import smoke test imported `create_deep_research_agent` alongside the
datastore symbols added in this PR, but that symbol is introduced in a later PR
in the stack (oracle#197 — feat: Add deep research agent). Until that PR lands the
import fails with `ImportError: cannot import name 'create_deep_research_agent'`,
which makes the integration suite red on this branch alone.

Drop the forward reference here. The deep-research import will be added back to
this test in oracle#197 once the symbol exists.
Mirrors the description rename from PR oracle#194 across the factory layer:
- Add store_list field back to DatastoreTool (used by stats/get_document
  for fallback messaging).
- StatsTool / GetDocumentTool now declare description as a field default
  instead of base_description: ClassVar.
- Factory build_description() reads each tool's description field default
  via model_fields["description"].default rather than a custom class
  attribute.
…d tool

Replace the two-tool [search, keyword_search] pair in create_datastore_tools
with a single HybridSearchTool. The factory now returns [stats, search, get_document].
Adds comprehensive unit tests covering:
- VectorDataStore base class behavior
- ADB and OpenSearch adapter wiring
- Datastore tool factory (search, keyword_search, get_document, stats)
- StoreSelector routing logic
@fede-kamel fede-kamel force-pushed the feature/datastore-unit-tests branch from a48c36b to f735e51 Compare May 8, 2026 18:06
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 8, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 8, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 8, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 8, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 8, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 8, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
fede-kamel added a commit to fede-kamel/langchain-oracle that referenced this pull request May 8, 2026
Adds a deep research agent built on the deepagents library, integrating
the datastore framework from PRs oracle#192-oracle#196.

- create_deep_research_agent() entrypoint (agents/deep_research/agent.py)
- DeepResearchConfig for runtime configuration
- Lazy imports in top-level langchain_oci and agents packages

Requires the deep-research optional dependency group:
    pip install langchain-oci[deep-research]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

OCA Verified All contributors have signed the Oracle Contributor Agreement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants