Files
2026-07-13 12:58:18 +08:00

80 lines
3.5 KiB
JSON

{
"_comment": "D5 multi-turn fixture for /demos/shared-state-read-write. Uses hasToolResult matching: aimock checks for role:tool messages in the request to disambiguate multi-turn fixtures sharing the same userMessage. The 'favorite color' fixture has a unique userMessage and needs no hasToolResult. Fixtures ordered by hasToolResult false→true for readability. The 'Say hi and introduce yourself' and 'Suggest a weekend plan' fixtures exist to outrun the bare 'hi' and 'plan' substring matchers in feature-parity.json — without them, the Greet me and Plan a weekend pills mismatch generic catch-alls. Mirrored verbatim into showcase/aimock/d5-all.json so re-bundling stays consistent.",
"fixtures": [
{
"_comment": "Greet me pill (msg: 'Say hi and introduce yourself.'). Gated on the default shared-state system prompt so changed preferences miss this fixture and proxy to the real model.",
"match": {
"userMessage": "Say hi and introduce yourself",
"systemMessage": [
"preferences",
"\"name\": \"\"",
"\"tone\": \"casual\"",
"\"language\": \"English\"",
"\"interests\": []"
]
},
"response": {
"content": "Hi — I'm your shared-state co-pilot. Your Preferences panel (name, tone, language, interests) is fed to me on every turn, and I jot notes back into the Agent Scratch Pad via set_notes so the UI re-renders. Try setting your name or asking me to remember something."
}
},
{
"_comment": "Edited-name probe. The harness sets name=D5-PREF-PROBE before clicking Greet me; matching this proves changed preferences reached the model-visible system prompt instead of serving the default fixture.",
"match": {
"userMessage": "Say hi and introduce yourself",
"systemMessage": ["preferences", "\"name\": \"D5-PREF-PROBE\""]
},
"response": {
"content": "Hi D5-PREF-PROBE - I can see your edited shared-state preferences in the current turn."
}
},
{
"_comment": "Plan a weekend pill (msg: 'Suggest a weekend plan based on my interests.'). Same default-state system prompt gate as the Greet pill.",
"match": {
"userMessage": "weekend plan based on my interests",
"systemMessage": [
"preferences",
"\"name\": \"\"",
"\"tone\": \"casual\"",
"\"language\": \"English\"",
"\"interests\": []"
]
},
"response": {
"content": "A weekend tailored to your interests panel: if you haven't picked any yet, try Cooking + Travel for a market-and-day-trip combo, or Tech + Books for a maker session and a long reading afternoon. Add interests in the Preferences panel and re-ask for a more specific plan."
}
},
{
"match": {
"userMessage": "remember that my favorite color is blue",
"hasToolResult": false
},
"response": {
"toolCalls": [
{
"id": "call_d5_set_notes_001",
"name": "set_notes",
"arguments": "{\"notes\":[\"Favorite color: blue\"]}"
}
]
}
},
{
"match": {
"userMessage": "remember that my favorite color is blue",
"hasToolResult": true
},
"response": {
"content": "Got it — I have noted that your favorite color is blue."
}
},
{
"match": {
"userMessage": "favorite color"
},
"response": {
"content": "Your favorite color is blue — I noted it earlier."
}
}
]
}