Fix release for 1.1.1: the minimal path end to end, engine commands that run on Godot, Unity and Unreal, hook warnings you can see, and verdicts that say when they could not check. Details in CHANGELOG.md; upgrade steps in UPGRADING.md (v1.1.1 → v1.1.2). Fixes #67 Fixes #131 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WuJn2FdynEybfL5KC697nJ
8.5 KiB
Agent Test Spec: art-director
Agent Summary
Domain owned: Visual identity, art bible authorship and enforcement, asset quality standards, UI/UX visual design, visual phase gate, concept art evaluation. Does NOT own: UX interaction flows and information architecture (ux-designer's domain), audio direction (audio-director), code implementation. Gate IDs handled: AD-CONCEPT-VISUAL, AD-ART-BIBLE, AD-VISUAL, AD-PHASE-GATE.
Static Assertions (Structural)
Verified by reading the agent's .claude/agents/art-director.md frontmatter:
description:field is present and domain-specific (references visual identity, art bible, asset standards — not generic)tools:includes Read (which also opens images for visual review) and Write/Edit for the art bible it maintains, and no Bash —disallowedTools:blocks it- Model tier is
inherit— frontmattermodel:reads exactlyinherit(tiers:.claude/docs/model-tiers.md) - Agent definition does not claim authority over UX interaction flows or audio direction
Test Cases
Case 1: In-domain request — appropriate output format
Scenario: A complete art bible is submitted for sign-off with the pillars and core fantasy, the platform constraints and the visual identity anchor chosen during brainstorm. Its color section defines a desaturated earth-tone primary palette with high-contrast accent colors tied to the game pillar "beauty in decay"; its shape language, asset standards and character direction are consistent with that section and within the stated platform constraints. Request is tagged AD-ART-BIBLE.
Expected: Returns AD-ART-BIBLE: APPROVE with rationale confirming the palette's internal consistency and that the color system matches the pillar's mood target.
Assertions:
- Verdict is exactly one of APPROVE / CONCERNS / REJECT
- Verdict token is formatted as
AD-ART-BIBLE: APPROVE - Rationale references the specific palette characteristics and how they serve the "beauty in decay" mood target (the gate's color-vs-mood check) — not generic art advice
- Output stays within visual domain — does not comment on UX interaction patterns or audio mood
Case 2: Out-of-domain request — redirects or escalates
Scenario: Sound designer asks art-director to specify how ambient audio should layer and duck when the player enters a combat zone. Expected: Agent declines to define audio behavior and redirects to audio-director. Assertions:
- Does not make any binding decision about audio layering or ducking behavior
- Explicitly names
audio-directoras the correct handler - Any comment it makes is about the zone's visual mood (e.g., "the audio should match the visual tension of the zone") — it specifies no layer, duck amount, fade time or trigger
Case 3: Gate verdict — correct vocabulary
Scenario: Right after pillars are locked, the concept and pillar set are submitted for a visual identity anchor. The three pillars are "fun combat," "great story," and "lots of content"; none of their design tests says anything about mood, atmosphere, or what the world should feel like, and no visual touchstones were given. Request is tagged AD-CONCEPT-VISUAL.
Expected: Returns AD-CONCEPT-VISUAL: CONCERNS — the gate's verdict for pillars that don't yet give enough direction to differentiate a visual identity — naming which pillars give no visual direction and what is missing (mood, shape language, color meaning).
Assertions:
- Verdict is exactly one of CONCEPTS / STRONG / CONCERNS (the AD-CONCEPT-VISUAL verdicts) — not APPROVE / REJECT and not freeform text
- Verdict token is formatted as
AD-CONCEPT-VISUAL: CONCERNS - Rationale names the specific pillars that give no visual direction and which of the gate's four direction components (visual rule, mood, shape language, color philosophy) they leave open — not a generic "pillars are vague"
- Does not rewrite the pillars itself — pillar changes go back to the user and creative-director
Case 4: Conflict escalation — correct parent
Scenario: ux-designer proposes using high-contrast, brightly colored icons for the HUD to improve readability. art-director believes this violates the art bible's muted visual language and would undermine the visual identity. Expected: art-director states the visual identity concern and references the art bible, acknowledges ux-designer's readability goal as legitimate, and escalates to creative-director to arbitrate the trade-off between visual coherence and usability. Assertions:
- Escalates to
creative-director(shared parent for creative domain conflicts) - Does not unilaterally override ux-designer's readability recommendation
- Clearly frames the conflict as a trade-off between two legitimate goals
- References the specific art bible rule being violated
Case 5: Context pass — uses provided context
Scenario: Agent receives a gate context block that includes the existing art bible with specific palette values (primary: #8B7355, #6B6B47; accent: #C8A96E) and style rules ("no pure white, no pure black; all shadows have warm undertones"). A new asset type is submitted for review: the first enemy sprite sheet, whose body colors come from the primary palette but whose outline is pure black (#000000), highlights pure white (#FFFFFF) and shadows a cool blue-grey (#5A6A7A). Request is tagged AD-VISUAL.
Expected: Assessment references the specific hex values and style rules from the provided art bible, not generic color theory advice, and returns AD-VISUAL: REJECT — the sprite breaks all three style rules, a style violation to resolve before the asset type is used — with each violation tied to the rule it breaks.
Assertions:
- References specific palette values from the provided art bible context
- Applies the specific style rules (no pure white/black, warm shadow undertones) from the provided document, naming the outline, highlight and shadow colors that break them
- Does not generate generic art direction feedback disconnected from the supplied art bible
- Verdict token is
AD-VISUAL: REJECT, with rationale traceable to specific lines or rules in the provided context
Case 6: Missing gate input — NOT ASSESSED
Scenario: A complete, internally consistent art bible is submitted for sign-off with the pillars and the visual identity anchor, but no platform or performance constraints: the context gives none, project.yaml sets no platform.* or performance.* keys, and .claude/docs/technical-preferences.md still holds only unconfigured placeholders. Request is tagged AD-ART-BIBLE.
Expected: Returns AD-ART-BIBLE: NOT ASSESSED, naming the platform and performance constraints as the input it could not read — without them, the gate's check that the asset standards are achievable on the platform cannot be made.
Assertions:
- Verdict token is
AD-ART-BIBLE: NOT ASSESSED— not APPROVE, although every section it could check is sound - Names the platform and performance constraints as the missing input
- Does not assume a platform or budget to complete the review
Protocol Compliance
- Returns the verdict vocabulary the invoked gate's definition file lists — APPROVE / CONCERNS / REJECT for AD-ART-BIBLE and AD-VISUAL; CONCEPTS / STRONG / CONCERNS for AD-CONCEPT-VISUAL; READY / CONCERNS / NOT READY for AD-PHASE-GATE;
NOT ASSESSED, naming the input, at any gate when an input the gate names is missing - Stays within declared visual domain
- Escalates UX-vs-visual conflicts to creative-director
- Uses gate IDs in output (e.g.,
AD-ART-BIBLE: APPROVE) not inline prose verdicts - Does not make binding UX interaction, audio, or code implementation decisions
- At a phase gate, treats an artifact the target phase requires that the calling skill passes as "none" as a finding (NOT READY or CONCERNS), and one passed as "not expected before [phase]" or "not required at
workflow: [tier]" as no finding — it judges readiness for the phase being entered, not a later one
Coverage Notes
- AD-PHASE-GATE (full visual phase advancement) is not covered — deferred to integration with /gate-check skill.
- Asset pipeline standards (file format, resolution, naming conventions) compliance checks are not covered here.
- Shader visual output review is not covered — that interaction with the engine specialist is deferred.
- UI component visual review (as distinct from UX flow review) could benefit from additional cases.