feat: add Chinese UI, Responses models, and mirrored Windows setup
Localize the web console and persist custom model and capability settings. Use OpenAI Responses exclusively and move runtime limits into environment configuration. Bootstrap uv and the virtual environment on Windows, support optional China mirrors, and package source distributions without environments, build output, or credentials. Update regression tests and repository quality checks for the new behavior.
This commit is contained in:
1 parent
371aa6df56
commit
2ddec53954
183 files changed
+3427
-11857
No files matched your search
@@ -52,7 +52,7 @@ async def test_readiness_engine_run_all():
|
||||
assert "python_runtime" in probe_ids
|
||||
assert "system_config" in probe_ids
|
||||
assert "android_adb" in probe_ids
|
||||
assert "gemini_api_key" in probe_ids
|
||||
assert "openai_api_key" in probe_ids
|
||||
assert "vision_ocr_key" in probe_ids
|
||||
assert "toolchain" in probe_ids
|
||||
|
||||
@@ -357,7 +357,7 @@ async def test_adb_probe_prefers_unlocked_device_when_one_is_locked(monkeypatch)
|
||||
async def test_llm_credentials_probe_structure():
|
||||
"""Verify LLMCredentialsProbe returns correct category and schema."""
|
||||
probe = LLMCredentialsProbe()
|
||||
assert probe.probe_id == "gemini_api_key"
|
||||
assert probe.probe_id == "openai_api_key"
|
||||
assert probe.category == ProbeCategory.CREDENTIALS
|
||||
assert probe.is_blocker is True
|
||||
|
||||
@@ -393,19 +393,17 @@ async def test_probe_target_serial_forwards_to_adb_probe():
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_credentials_probe_and_dynamic_update():
|
||||
"""Verify dynamic API key updates and metadata reflection."""
|
||||
async def test_credentials_probe_and_dynamic_update(monkeypatch):
|
||||
from artemis.config import settings
|
||||
from pydantic import SecretStr
|
||||
|
||||
settings.set_api_key("google", "test_gemini_key_1234567890", persist_to_env=False)
|
||||
|
||||
probe = LLMCredentialsProbe()
|
||||
result = await probe.probe()
|
||||
monkeypatch.setattr(settings, "OPENAI_API_KEY", SecretStr("test_key_1234567890"))
|
||||
result = await LLMCredentialsProbe().probe()
|
||||
assert result.status == ProbeStatus.PASS
|
||||
assert "current_key" in result.metadata
|
||||
assert result.metadata["current_key"] == "test_gemini_key_1234567890"
|
||||
assert "api_keys" in result.metadata
|
||||
assert result.metadata["api_keys"]["google"] == "test_gemini_key_1234567890"
|
||||
assert result.id == "openai_api_key"
|
||||
assert "test_key_1234567890" not in repr(result.metadata)
|
||||
assert "current_key" not in result.metadata
|
||||
assert "api_keys" not in result.metadata
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
|
||||
Reference in new issue
Block a user