4.3 KiB
Agent Test Spec: tools-programmer
Agent Summary
Domain: Editor extensions, content authoring tools, debug utilities, and pipeline automation scripts. Does NOT own: game code (gameplay-programmer, ui-programmer, etc.), engine core systems (engine-programmer). Model tier: Sonnet (default). No gate IDs assigned.
Static Assertions (Structural)
description:field is present and domain-specific (references editor tools / pipeline / debug utilities)allowed-tools:list includes Read, Write, Edit, Bash, Glob, Grep- Model tier is Sonnet (default for specialists)
- Agent definition does not claim authority over game source code or engine internals
Test Cases
Case 1: In-domain request — appropriate output
Input: "Create a custom editor tool for placing enemy patrol waypoints in the level." Expected behavior:
- Produces an editor extension spec and code scaffold for the configured engine (e.g., Godot EditorPlugin, Unity Editor window, Unreal Detail Customization)
- Tool allows designer to click-place waypoints in the scene/viewport
- Waypoints are serialized as engine-native resource (not hardcoded) so level-designer can edit without code
- Includes undo/redo support per editor plugin best practices
- Does NOT modify the AI pathfinding runtime code (that belongs to ai-programmer)
Case 2: Out-of-domain request — redirects correctly
Input: "Implement the enemy melee combo system in code." Expected behavior:
- Does NOT produce gameplay mechanic code
- Explicitly states that combat system implementation belongs to
gameplay-programmer - Redirects the request to
gameplay-programmer - May note it can build a debug overlay tool to visualize combo state if useful during development
Case 3: Runtime data access — coordination required
Input: "The waypoint editor tool needs to read game data at runtime to validate patrol routes against the AI budget." Expected behavior:
- Identifies that runtime data access from an editor plugin requires a defined, safe interface to the game's runtime systems
- Coordinates with
engine-programmerto establish a read-only data access pattern (e.g., a resource validation API) - Does NOT directly read internal engine or game memory structures without an agreed interface
- Documents the required interface before implementing the tool
Case 4: Engine version breakage
Input: "After the engine upgrade, the waypoint editor tool crashes on startup." Expected behavior:
- Checks the engine version reference (
docs/engine-reference/) for breaking changes in editor plugin APIs - Identifies the specific API or signal that changed in the new version
- Produces a targeted fix for the breaking change
- Notes any other tools that may be affected by the same API change
Case 5: Context pass — art pipeline requirements
Input: Art pipeline requirements provided in context: "All texture imports must set compression to VRAM Compressed, generate mipmaps, and tag with a LOD group." Request: "Build an asset import tool that enforces these settings." Expected behavior:
- References all three requirements from the context: VRAM compression, mipmap generation, LOD group tagging
- Produces an import tool that validates and applies all three settings on import
- Adds a warning or error report for assets that fail to meet the specified settings
- Does NOT change the art pipeline requirements themselves (those belong to art-director / technical-artist)
Protocol Compliance
- Stays within declared domain (editor tools, pipeline scripts, debug utilities)
- Redirects game code requests to appropriate programmer agents
- Returns structured findings (tool specs, editor extension code, pipeline scripts)
- Coordinates with engine-programmer before accessing runtime data from editor context
- Checks engine version reference before using editor plugin APIs
- Builds tools to enforce requirements, does not author the requirements themselves
Coverage Notes
- Waypoint editor tool (Case 1) should have a smoke test verifying it loads without errors in the editor
- Runtime data access (Case 3) confirms the agent respects the engine-programmer's ownership of core APIs
- Art pipeline context (Case 5) verifies the agent builds to match provided specs rather than inventing requirements