feat: Address review comments, add stage/unstage functionality, conflict resolution improvements, support for Sonnet 4.6

This commit is contained in:
gsxdsm
2026-02-18 18:58:33 -08:00
parent df9a6314da
commit 983eb21faa
66 changed files with 2317 additions and 823 deletions

View File

@@ -360,10 +360,10 @@ describe('claude-provider.ts', () => {
});
describe('getAvailableModels', () => {
it('should return 4 Claude models', () => {
it('should return 5 Claude models', () => {
const models = provider.getAvailableModels();
expect(models).toHaveLength(4);
expect(models).toHaveLength(5);
});
it('should include Claude Opus 4.6', () => {
@@ -375,12 +375,12 @@ describe('claude-provider.ts', () => {
expect(opus?.provider).toBe('anthropic');
});
it('should include Claude Sonnet 4', () => {
it('should include Claude Sonnet 4.6', () => {
const models = provider.getAvailableModels();
const sonnet = models.find((m) => m.id === 'claude-sonnet-4-20250514');
const sonnet = models.find((m) => m.id === 'claude-sonnet-4-6');
expect(sonnet).toBeDefined();
expect(sonnet?.name).toBe('Claude Sonnet 4');
expect(sonnet?.name).toBe('Claude Sonnet 4.6');
});
it('should include Claude 3.5 Sonnet', () => {

View File

@@ -69,19 +69,19 @@ describe('opencode-provider.ts', () => {
it('should include free tier GLM model', () => {
const models = provider.getAvailableModels();
const glm = models.find((m) => m.id === 'opencode/glm-4.7-free');
const glm = models.find((m) => m.id === 'opencode/glm-5-free');
expect(glm).toBeDefined();
expect(glm?.name).toBe('GLM 4.7 Free');
expect(glm?.name).toBe('GLM 5 Free');
expect(glm?.tier).toBe('basic');
});
it('should include free tier MiniMax model', () => {
const models = provider.getAvailableModels();
const minimax = models.find((m) => m.id === 'opencode/minimax-m2.1-free');
const minimax = models.find((m) => m.id === 'opencode/minimax-m2.5-free');
expect(minimax).toBeDefined();
expect(minimax?.name).toBe('MiniMax M2.1 Free');
expect(minimax?.name).toBe('MiniMax M2.5 Free');
expect(minimax?.tier).toBe('basic');
});

View File

@@ -59,8 +59,8 @@ describe('provider-factory.ts', () => {
expect(provider).toBeInstanceOf(ClaudeProvider);
});
it('should return ClaudeProvider for claude-sonnet-4-20250514', () => {
const provider = ProviderFactory.getProviderForModel('claude-sonnet-4-20250514');
it('should return ClaudeProvider for claude-sonnet-4-6', () => {
const provider = ProviderFactory.getProviderForModel('claude-sonnet-4-6');
expect(provider).toBeInstanceOf(ClaudeProvider);
});