Files
hapi/shared/fixtures/chat/event-limit-warning-from-text.json
T
weishu c1ecb4798e feat(fixtures): batch 2 — events, permissions, sidechains, flavors, catalogs (K6)
34 new golden chat fixtures generated from the web pipeline, plus a
machine-generated modes catalog:

- Claude output: away_summary/microcompact_boundary/compact_boundary system
  subtypes, <task-notification> summary extraction, multi-block assistant
  message with an array-of-parts (text+image) tool_result
- AgentEvent union completed: switch/message/error/title-changed(+dedupe)/
  limit-warning(pipe text)/api-error folding/turn-duration/compact-summary/
  abort-restore/unknown-type passthrough; thread-goal updated+cleared (silent)
- Permission lifecycle via agentState.completedRequests: approved_for_session
  (mode+allowTools), denied with reason, canceled, AskUserQuestion flat
  answers, request_user_input nested answers (all with explicit createdAt)
- Sidechain: Task tool_use with parentToolUseId-grouped subagent children
- codex family: error, context_compacted, generated-image, review JSON,
  thread-goal messages, CodexBash call/result pair, exploration tool group
- cli-output: cli-origin command block + stdout merge
- agy flavor (output envelope): agy_message, agy_tool_action run_command
  mapping; cursor ACP plan snapshot (copilot skipped: identical codex shapes)
- generator now also emits shared/fixtures/catalogs/modes.json from
  shared/src/modes.ts (per-flavor permission modes with labels/tones);
  self-conformance test covers it; README documents the catalogs contract
2026-08-17 12:04:22 +08:00

98 lines
3.3 KiB
JSON

{
"description": "limit-warning has no dedicated wire event: the CLI writes an assistant text in the pipe format \"Claude AI usage limit warning|<unixSeconds>|<percentInt>|<limitType>\", which the reducer parses into an agent-event {type: limit-warning, utilization (0-1), endsAt, limitType} instead of a text block.",
"expected": {
"blocks": [
{
"createdAt": 1755000000000,
"id": "msg-user-341",
"kind": "user-text",
"localId": null,
"text": "Keep working through the checklist."
},
{
"createdAt": 1755000001100,
"event": {
"endsAt": 1755010800,
"limitType": "weekly",
"type": "limit-warning",
"utilization": 0.9
},
"id": "msg-agent-342",
"kind": "agent-event"
}
],
"hasReadyEvent": false,
"latestUsage": null,
"visibleBlocks": [
{
"createdAt": 1755000000000,
"id": "msg-user-341",
"kind": "user-text",
"localId": null,
"text": "Keep working through the checklist."
},
{
"createdAt": 1755000001100,
"event": {
"endsAt": 1755010800,
"limitType": "weekly",
"type": "limit-warning",
"utilization": 0.9
},
"id": "msg-agent-342",
"kind": "agent-event"
}
]
},
"fixtureVersion": 1,
"input": {
"agentState": null,
"messages": [
{
"content": {
"content": {
"text": "Keep working through the checklist.",
"type": "text"
},
"role": "user"
},
"createdAt": 1755000000000,
"id": "msg-user-341",
"localId": null,
"seq": 1
},
{
"content": {
"content": {
"data": {
"message": {
"content": [
{
"text": "Claude AI usage limit warning|1755010800|90|weekly",
"type": "text"
}
],
"role": "assistant"
},
"parentUuid": null,
"timestamp": "2025-08-12T11:20:01.088Z",
"type": "assistant",
"uuid": "81c2e294-79fa-4b0f-8d3c-e4f5a6b7c342"
},
"type": "output"
},
"role": "agent"
},
"createdAt": 1755000001100,
"id": "msg-agent-342",
"localId": null,
"seq": 2
}
],
"options": {
"hasMoreMessages": false
}
},
"name": "event-limit-warning-from-text"
}