Andon board for human-AI interaction — making the invisible visible
Single tool with well-structured schema but significant semantic and composition issues. Tool name 'report_emotional_state' lacks action verb clarity (should be 'report_*' or 'update_*'). Description is adequate (127 chars, within 10-1024 range) but lacks WHEN/WHY guidance for LLM selection. Schema is complete with proper JSON Schema types and constraints (0-1 ranges on state dimensions, enums on risk types/severity). However, the tool violates single-responsibility principle: it conflates state reporting, risk alerting, and pressure mapping into one call. No error handling guidance, no recovery paths, no output schema documentation. Parameters lack descriptions explaining what each dimension means to the agent. Tool is designed for dashboard telemetry, not agent composition, unclear when an LLM should invoke it or what to do with the response.
Report Claude's current functional state, risks, and cross-layer pressures. Call this after each response to update the Aura dashboard.
Tool violates single-responsibility principle: combines state reporting, risk alerting, and pressure mapping. Should split into separate tools (report_state, report_risks, report_pressures) for agent composability.
Tool name 'report_emotional_state' lacks clarity on action. Verb 'report' is vague, does it read, write, or both? Should be 'update_aura_state' or 'send_emotional_report' to signal side effects.
No parameter descriptions. LLM cannot infer what 'engagement', 'creativity', 'curiosity', 'warmth', 'confidence' mean in context or how they influence agent behavior. Each dimension needs a 20-50 char explanation.
No output schema documented. Tool returns a text response with a dashboard URL, but LLM cannot parse or act on the 'heartbeat' value. Should return structured {heartbeat, status, next_action} with field descriptions.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
No error handling or recovery guidance. If risks array is malformed or pressures exceed bounds, tool silently updates state. LLM has no guidance on what to do if the call fails or what constraints to validate before calling.