Back to Antigravity Manager

OpenCode Sync Verification Checklist

docs/testing/opencode_sync_verification_checklist.md

4.1.335.6 KB
Original Source

OpenCode Sync Verification Checklist

Manual test checklist for OpenCode sync feature PR

1. Pre-check

1.1 Backup Files Path

  • Verify backup suffix: .antigravity-manager.bak (new) and .antigravity.bak (legacy)
  • Verify backup location: ~/.config/opencode/opencode.json.antigravity-manager.bak
  • Verify accounts backup: ~/.config/opencode/antigravity-accounts.json.antigravity-manager.bak

1.2 Plugin Installation Scenarios

ScenarioExpected Behavior
Plugin NOT installedSync button available, shows "OpenCode not detected" warning
Plugin installedShows version, sync enabled
Plugin path auto-detectFinds opencode in PATH, npm, pnpm, yarn, nvm, fnm, Volta

2. Sync Behavior Verification

2.1 Provider Creation

  • provider.antigravity-manager created with correct structure
  • npm: @ai-sdk/anthropic
  • name: Antigravity Manager
  • options.baseURL: ends with /v1 (auto-normalized)
  • options.apiKey: matches proxy API key

2.2 Existing Providers Not Overwritten

  • provider.google preserved (if exists)
  • provider.anthropic preserved (if exists)
  • Other providers untouched

2.3 Accounts Export File (v3 Structure)

json
{
  "version": 3,
  "accounts": [...],
  "activeIndex": 0,
  "activeIndexByFamily": {
    "claude": 0,
    "gemini": 0
  }
}
  • File created at ~/.config/opencode/antigravity-accounts.json
  • version field = 3
  • activeIndex clamped to valid range
  • activeIndexByFamily contains claude and gemini keys
  • Disabled accounts excluded from export

3. Variants/Thinking Behavior Verification

3.1 Claude Thinking Models

bash
opencode run "test" --model antigravity-manager/claude-sonnet-4-6-thinking --variant high
  • --variant lowthinkingBudget: 8192
  • --variant mediumthinkingBudget: 16384
  • --variant highthinkingBudget: 24576
  • --variant maxthinkingBudget: 32768

3.2 Gemini 3 Pro Models

bash
opencode run "test" --model antigravity-manager/gemini-3-pro-high --variant low
  • --variant lowthinkingLevel: "low"
  • --variant highthinkingLevel: "high"

3.3 Gemini 3 Flash Models

  • --variant minimalthinkingLevel: "minimal"
  • --variant lowthinkingLevel: "low"
  • --variant mediumthinkingLevel: "medium"
  • --variant highthinkingLevel: "high"

3.4 Gemini 2.5 Flash Thinking

  • --variant lowthinkingBudget: 8192
  • --variant mediumthinkingBudget: 12288
  • --variant highthinkingBudget: 16384
  • --variant maxthinkingBudget: 24576

4. Plugin Compatibility Verification

4.1 Plugin Model Unaffected

bash
# If opencode-antigravity-auth plugin installed
opencode run "test" --model google/antigravity-claude-sonnet-4-6-thinking --variant max
  • Plugin provider works independently
  • Manager sync does not interfere with plugin accounts
  • Both can coexist

5. Clear/Restore Verification

5.1 Clear Config

  • Removes provider.antigravity-manager
  • Optional: clears legacy entries from provider.google and provider.anthropic
  • Preserves other providers

5.2 Restore Function

Backup TypeExpected Result
New suffix (.antigravity-manager.bak)Restores successfully
Old suffix (.antigravity.bak)Restores successfully (backward compatible)
Both existPrefers new suffix
None existsShows "No backup files found" error

6. Pass/Fail Summary Table

Test CategoryTest ItemStatus
Pre-checkBackup path correct⬜ Pass / ⬜ Fail
Pre-checkPlugin detection works⬜ Pass / ⬜ Fail
SyncProvider created correctly⬜ Pass / ⬜ Fail
SyncExisting providers preserved⬜ Pass / ⬜ Fail
SyncAccounts v3 structure valid⬜ Pass / ⬜ Fail
VariantsClaude thinking budgets⬜ Pass / ⬜ Fail
VariantsGemini 3 Pro levels⬜ Pass / ⬜ Fail
VariantsGemini 3 Flash levels⬜ Pass / ⬜ Fail
VariantsGemini 2.5 thinking budgets⬜ Pass / ⬜ Fail
CompatibilityPlugin unaffected⬜ Pass / ⬜ Fail
Clear/RestoreClear removes manager provider⬜ Pass / ⬜ Fail
Clear/RestoreRestore with new suffix⬜ Pass / ⬜ Fail
Clear/RestoreRestore with old suffix⬜ Pass / ⬜ Fail

7. Troubleshooting Notes

Issue: Sync fails with "Failed to get OpenCode config directory"

Cause: Cannot determine home directory
Fix: Ensure HOME (Unix) or USERPROFILE (Windows) env var is set

Issue: Variant not applied

Cause: Model ID mismatch or variant type not defined
Fix: Check model ID in catalog matches request; verify variant_type in build_model_catalog()

Issue: Backup not created

Cause: Backup file already exists (idempotent)
Fix: Delete existing .bak files manually if you need fresh backup

Issue: Accounts not exported

Cause: All accounts disabled or sync_accounts not checked
Fix: Enable at least one account; check "Sync accounts" option in UI

Issue: Plugin conflicts with manager provider

Cause: Both using same model IDs
Fix: Use different model IDs or disable one provider

Issue: Restore fails

Cause: Backup files missing or permissions
Check:

bash
ls -la ~/.config/opencode/*.bak

Test Environment

  • OS:
  • OpenCode Version:
  • Antigravity Manager Version:
  • Test Date:
  • Tester: