Skip to content

feat(DATAGO-130052): Add model dependents functionality with endpoint for retrieving dependent agents#1281

Open
cyrus2281 wants to merge 3 commits intomainfrom
cyrus/DATAGO-130052/deployer
Open

feat(DATAGO-130052): Add model dependents functionality with endpoint for retrieving dependent agents#1281
cyrus2281 wants to merge 3 commits intomainfrom
cyrus/DATAGO-130052/deployer

Conversation

@cyrus2281
Copy link
Copy Markdown
Collaborator

What is the purpose of this change?

Add support for safely deleting model configurations by providing a mechanism to identify and handle agent dependencies before deletion. This helps prevent broken deployments when a model configuration is removed while agents are still using it.

How was this change implemented?

High-level approach:

  • Added a ModelDependentsHandler interface that enterprise code can implement
  • Created endpoints for model-dependent agent management:
    • GET /models/{alias}/dependents to list agents using a model
    • Enhanced DELETE /models/{alias} to automatically undeploy dependent agents
  • Added a registration mechanism for enterprise-specific model dependent handling
  • Implemented comprehensive unit tests for the new functionality

Key commits:

  • feat: Add model dependents handling and endpoint for retrieving dependent agents
  • test: Add unit tests for model dependents endpoint and handler functionality

Key Design Decisions

  • Used a handler pattern with dependency injection to allow enterprise-specific code to handle model dependencies
  • Default implementation is a no-op to maintain backward compatibility in community edition
  • Enterprise implementation is loaded dynamically via import to maintain separation between editions

How was this change tested?

  • Manual testing: Verified model dependents API returns empty list in community edition
  • Unit tests: Added comprehensive tests for model dependents endpoint and handler functionality
  • Integration tests: Not applicable for this change
  • Known limitations: Enterprise-specific functionality is tested separately in the enterprise repo

Is there anything the reviewers should focus on/be aware of?

The enterprise implementation details are handled in a separate repository, this PR only adds the interface and community version.

@cyrus2281 cyrus2281 self-assigned this Mar 27, 2026
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 27, 2026

✅ FOSSA Guard: Licensing (SolaceLabs_solace-agent-mesh) • PASSED

Compared against main (4a355dab7572521050d2f26f9dae2b267ccddcbf) • 0 new, 6 total (6 in base)

Scan Report | View Details in FOSSA

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 27, 2026

✅ FOSSA Guard: Vulnerability (SolaceLabs_solace-agent-mesh) • PASSED

Compared against main (4a355dab7572521050d2f26f9dae2b267ccddcbf) • 0 new, 3 total (3 in base)

Scan Report | View Details in FOSSA

@sonarqube-solacecloud
Copy link
Copy Markdown

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