Critical Audit — v2.0.0-alpha → v2.0.0 Stable¶
Date: 2026-07-03 Auditor: AI Agent (GLM-5.2) Status: Complete
1. Version Consistency¶
| File | Current | Expected | Status |
|---|---|---|---|
src/lib/00-core.sh | v2.0.0-alpha | v2.0.0 | OK (bump at release) |
setup.sh:3 | v1.1.0 | v2.0.0 | FIX |
README.md:1 | v1.1.0 | v2.0.0 | FIX |
CHANGELOG.md | links to v1.0.0/v1.1.0 | add v2.0.0 | FIX |
AGENTS.md | v2.0.0-alpha | v2.0.0 | OK (bump at release) |
2. Module Numbering¶
Duplicates found: - 22-mise.sh + 22-webui-service.sh — both use prefix 22 - 32-isolated.sh + 32-observability.sh — both use prefix 32
Modules not in AGENTS.md: - 32-observability.sh — Prometheus + Grafana stack - 33-gui.sh — Web management interface
Fix: Renumber to avoid duplicates: - 22-webui-service.sh → keep as 22-webui-service.sh, rename 22-mise.sh → 29-mise.sh - 32-observability.sh → 34-observability.sh - 33-gui.sh → 35-gui.sh - 32-isolated.sh → keep as 32-isolated.sh
3. Provider Registry Gaps¶
Providers in opencode (from source code analysis)¶
opencode bundles 22 SDK providers: 1. @ai-sdk/anthropic — Anthropic Claude 2. @ai-sdk/amazon-bedrock — Amazon Bedrock 3. @ai-sdk/azure — Azure OpenAI 4. @ai-sdk/google — Google Gemini 5. @ai-sdk/google-vertex — Google Vertex AI 6. @ai-sdk/openai — OpenAI 7. @ai-sdk/openai-compatible — OpenAI-compatible (z.ai, Moonshot, etc.) 8. @openrouter/ai-sdk-provider — OpenRouter 9. @ai-sdk/xai — xAI Grok 10. @ai-sdk/mistral — Mistral 11. @ai-sdk/groq — Groq 12. @ai-sdk/deepinfra — DeepInfra 13. @ai-sdk/cerebras — Cerebras 14. @ai-sdk/cohere — Cohere 15. @ai-sdk/gateway — Gateway 16. @ai-sdk/togetherai — Together AI 17. @ai-sdk/perplexity — Perplexity 18. @ai-sdk/vercel — Vercel 19. @ai-sdk/alibaba — Alibaba/Qwen 20. gitlab-ai-provider — GitLab 21. @ai-sdk/github-copilot — GitHub Copilot 22. venice-ai-sdk-provider — Venice AI
Providers in project (26-providers.sh)¶
20 providers registered: 1. deepseek ✓ 2. opencode ✓ 3. xai ✓ 4. mimo ✓ 5. moonshot ✓ 6. minimax ✓ 7. openai ✓ 8. anthropic ✓ 9. google ✓ 10. mistral ✓ 11. groq ✓ 12. together ✓ 13. cohere ✓ 14. fireworks ✓ (not in opencode bundled — use openai-compatible) 15. cerebras ✓ 16. perplexity ✓ 17. ollama ✓ (local) 18. litellm ✓ (local) 19. vllm ✓ (local) 20. sglang ✓ (local)
Missing providers (CRITICAL)¶
| Provider | Priority | Reason |
|---|---|---|
| z.ai (GLM) | CRITICAL | Key provider for RU/CN users. GLM-5.2 is current flagship. Uses openai-compatible SDK. |
| OpenRouter | HIGH | Aggregator access to 100+ models via single API key. |
| Alibaba/Qwen | HIGH | Major Chinese provider. Qwen3 series. Native SDK in opencode. |
| DeepInfra | MEDIUM | Fast inference, competitive pricing. |
| GitHub Copilot | MEDIUM | Free for GitHub users. Native SDK. |
| Venice AI | LOW | Privacy-focused. Niche. |
Model version audit¶
| Provider | Current in project | Actual latest (2026-07) | Status |
|---|---|---|---|
| DeepSeek | V4 Pro / V4 Flash | V4 Pro / V4 Flash | OK |
| xAI | Grok 3 | Grok 4 | UPDATE |
| Moonshot | Kimi K2.6 | Kimi K2 | VERIFY |
| Anthropic | Claude 4 | Claude 4 Opus / Sonnet 4.5 | UPDATE |
| Gemini 2.5 | Gemini 2.5 Pro | OK | |
| OpenAI | GPT-5 | GPT-5 | OK |
| Mistral | Large 3 | Large 3 | OK |
| z.ai | — (missing) | GLM-5.2 / GLM-4.6 | ADD |
4. Infrastructure¶
Missing files: - infra.yml — referenced in CHANGELOG but not found in repo - Docker Compose file for PostgreSQL + Qdrant + Redis + Prometheus + Grafana + MemoryLayer
Fix: Create infra.yml or verify it's generated by 30-infra.sh at runtime.
5. Test Coverage¶
| Module | Unit test | Status |
|---|---|---|
| 00-core.sh | test_core.sh | OK |
| helpers.sh | test_helpers.sh | OK |
| 30-infra.sh | test_infra.sh | OK |
| 31-cockpit.sh | test_cockpit.sh | OK |
| 33-gui.sh | test_gui.sh | OK |
| 12-mcp-lsp.sh | test_mcp_registry.sh | OK |
| 18-opencode-json.sh | test_opencode_json_gen.sh | OK |
| 32-isolated.sh | — | MISSING |
| 32-observability.sh | — | MISSING |
| 26-providers.sh | — | MISSING |
| embed-proxy.py | — | MISSING |
6. CI/CD Gaps¶
| Workflow | Covers | Missing |
|---|---|---|
test.yml | bash tests | Go tests (cockpit), Python tests (embed-proxy) |
shellcheck.yml | shell scripts | — |
docs.yml | docs build | — |
Fix: Add Go test step to test.yml, add Python syntax check for scripts/.
7. Documentation¶
| Doc | Status | Action |
|---|---|---|
| README.md | v1.1.0, outdated | Rewrite for v2.0.0 |
| CHANGELOG.md | Missing v2.0.0 section | Add v2.0.0 entry |
| AGENTS.md | Mostly current | Add missing modules, fix numbering |
| docs/ (landing) | May be outdated | Audit and update |
| CONTRIBUTING.md | Needs check | Verify accuracy |
8. opencode.json¶
Current model: deepseek/deepseek-v4-pro Issue: No z.ai/GLM provider configured, despite being a key use case.
Fix: Add z.ai provider with GLM-5.2 as option, add OpenRouter as fallback aggregator.
Action Plan¶
Phase A: Critical Fixes (before Phase 3)¶
- Fix version consistency (setup.sh, README.md)
- Fix module numbering duplicates
- Add z.ai (GLM) provider to registry + opencode.json
- Add OpenRouter provider
- Update model versions (Grok 4, Claude 4 Opus/Sonnet)
- Create/verify infra.yml
- Update AGENTS.md with all modules
Phase B: Phase 3 — Tests & CI¶
- Add unit tests for 32-isolated.sh, 32-observability.sh, 26-providers.sh
- Add Python test for embed-proxy.py
- Add Go test step to CI
- Add Python syntax check to CI
Phase C: Finalization¶
- Rewrite README.md for v2.0.0
- Update CHANGELOG.md with v2.0.0
- Update docs/ landing page
- Bump version to v2.0.0
- Tag release