v2.10.0 (#697)
Co-authored-by: Clément Drouin <clement.drouin@mistral.ai> Co-authored-by: Corentin André <corentin.andre@mistral.ai> Co-authored-by: Guillaume LE GOFF <guillaume.lgf@gmail.com> Co-authored-by: Kim-Adeline Miguel <51720070+kimadeline@users.noreply.github.com> Co-authored-by: Maxime Dolores <maxime.dolores@ext.mistral.ai> Co-authored-by: Nelson PROIA <144663685+Nelson-PROIA@users.noreply.github.com> Co-authored-by: Peter Evers <pevers90@gmail.com> Co-authored-by: Pierre Rossinès <pierre.rossines@mistral.ai> Co-authored-by: Quentin <quentin.torroba@mistral.ai> Co-authored-by: Vincent G <10739306+VinceOPS@users.noreply.github.com> Co-authored-by: MichisGitIsKing <MichisGitIsKing@users.noreply.github.com> Co-authored-by: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
parent
626f905186
commit
228f3c65a9
158 changed files with 7235 additions and 916 deletions
|
|
@ -34,7 +34,7 @@ class TestACPInitialize:
|
|||
),
|
||||
)
|
||||
assert response.agent_info == Implementation(
|
||||
name="@mistralai/mistral-vibe", title="Mistral Vibe", version="2.9.6"
|
||||
name="@mistralai/mistral-vibe", title="Mistral Vibe", version="2.10.0"
|
||||
)
|
||||
|
||||
assert response.auth_methods == []
|
||||
|
|
@ -62,7 +62,7 @@ class TestACPInitialize:
|
|||
),
|
||||
)
|
||||
assert response.agent_info == Implementation(
|
||||
name="@mistralai/mistral-vibe", title="Mistral Vibe", version="2.9.6"
|
||||
name="@mistralai/mistral-vibe", title="Mistral Vibe", version="2.10.0"
|
||||
)
|
||||
|
||||
assert response.auth_methods is not None
|
||||
|
|
|
|||
|
|
@ -47,12 +47,6 @@ class TestACPNewSession:
|
|||
cwd=str(Path.cwd()), mcp_servers=[]
|
||||
)
|
||||
|
||||
new_session_events = [
|
||||
e for e in telemetry_events if e.get("event_name") == "vibe.new_session"
|
||||
]
|
||||
assert len(new_session_events) == 1
|
||||
assert new_session_events[0]["properties"]["entrypoint"] == "acp"
|
||||
|
||||
assert session_response.session_id is not None
|
||||
acp_session = next(
|
||||
(
|
||||
|
|
@ -63,6 +57,17 @@ class TestACPNewSession:
|
|||
None,
|
||||
)
|
||||
assert acp_session is not None
|
||||
|
||||
# Telemetry now fires from the background warm-up worker once
|
||||
# `wait_until_ready` joins both MCP and experiments. Awaiting it here
|
||||
# forces emission before assertions.
|
||||
await acp_session.agent_loop.wait_until_ready()
|
||||
|
||||
new_session_events = [
|
||||
e for e in telemetry_events if e.get("event_name") == "vibe.new_session"
|
||||
]
|
||||
assert len(new_session_events) == 1
|
||||
assert new_session_events[0]["properties"]["entrypoint"] == "acp"
|
||||
assert (
|
||||
acp_session.agent_loop.session_logger.session_id
|
||||
== session_response.session_id
|
||||
|
|
|
|||
|
|
@ -74,6 +74,31 @@ class TestTelemetryNotification:
|
|||
assert props["file_extensions"] == {".py": 1}
|
||||
assert props["message_id"] == "msg-abc"
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_user_rating_feedback_dispatches_telemetry(
|
||||
self, acp_agent_loop: VibeAcpAgentLoop, telemetry_events: list[dict[str, Any]]
|
||||
) -> None:
|
||||
session = await acp_agent_loop.new_session(cwd=str(Path.cwd()), mcp_servers=[])
|
||||
telemetry_events.clear()
|
||||
|
||||
await acp_agent_loop.ext_notification(
|
||||
"telemetry/send",
|
||||
{
|
||||
"event": "vibe.user_rating_feedback",
|
||||
"session_id": session.session_id,
|
||||
"properties": {"rating": 1},
|
||||
},
|
||||
)
|
||||
|
||||
rating_events = [
|
||||
e
|
||||
for e in telemetry_events
|
||||
if e["event_name"] == "vibe.user_rating_feedback"
|
||||
]
|
||||
assert len(rating_events) == 1
|
||||
props = rating_events[0]["properties"]
|
||||
assert props["rating"] == 1
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_raises_on_invalid_params(
|
||||
self, acp_agent_loop: VibeAcpAgentLoop
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue