Automated Duplicate Detection for Extension Submissions
- Dominant language
- Go
- Stars
- 569
- Forks
- 364
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 136
Description
## Description
Implement automated validation checks during the extension submission process to detect and prevent duplicate registrations that could cause conflicts in the extension ecosystem.
## Acceptance Criteria
- Automated validation runs during submission process
- Detection of duplicate namespace + extension name combinations
- Detection of duplicate language/host provider names
- Detection of duplicate command registrations within same namespace
- Clear error messages guiding authors to resolve conflicts
- Registry integrity maintained across all submissions
## Examples of Duplicates to Detect
### 1. Namespace + Extension Name Conflicts
- Extension A registers as `azure.ai.agents`
- Extension B attempts to register as `azure.ai.agents` → **REJECTED**
### 2. Language/Host Provider Name Conflicts
- Extension A registers language provider for `python`
- Extension B attempts to register language provider for `python` → **REJECTED**
- Extension C registers host provider for `aspire`
- Extension D attempts to register host provider for `aspire` → **REJECTED**
### 3. Command Registration Conflicts (within namespace)
- Extension A (namespace: `azure.ai`) registers command `agent init`
- Extension B (namespace: `azure.ai`) attempts to register command `agent init` → **REJECTED**
- Extension C (namespace: `microsoft.demo`) registers command `agent init` → **ALLOWED** (different namespace)
## Implementation Notes
- Run checks before accepting submission to registry
- Maintain registry index of all registered namespaces, providers, and commands
- Consider reservation system for planned registrations
- Handle version conflicts (same extension, different versions)
## Parent Issue
This is part of the 3rd Party Extension Submission Process epic.
## Labels
extensions, registry, automation, validation
Contributor guide
Assessment
This issue has not been assessed yet.