github / github/spec-kit

[Feature]: make catalog add command as "UPSERT"

Open
#4,505 6 comments 0 reactions 0 assignees View on GitHub
enhancement feature-assess feature-go triage-nice-to-have
Dominant language
Python
Stars
137k
Forks
12.3k
Avg merge
2d 12h
Merged PRs (30d)
159

Description

### Problem Statement

When we run a catalog add command, be it extension catalog or present catalog or others, it gives an error if the catalog already exists. If this can be made as UPSERT, it would help to simply use the command without failing.

This is especially useful in scenarios where these commands are part of a workflow and thus can potentially be executed multiple times. Without the UPSERT behavior, the consumers have to add that logic in the workflow.

### Proposed Solution

Make catalog add command idempotent / work like add + update OR add + ignore.

### Alternatives Considered

_No response_

### Component

Specify CLI (initialization, commands)

### AI Agent (if applicable)

None

### Use Cases

_No response_

### Acceptance Criteria

_No response_

### Additional Context

_No response_

Contributor guide

Open the contributing guide

Research direction

Start at the CLI initialization and commands entry point for the catalog add command, then trace how existing catalogs are handled. Review the catalog command tests and clarify whether an existing catalog should be updated or ignored. Done means repeated catalog-add workflow runs no longer fail and the chosen existing-catalog behavior is covered by tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.