From bf8f85ca9d3bd7cb64baaa483511156a3fea9c72 Mon Sep 17 00:00:00 2001 From: inigo Date: Tue, 18 Nov 2025 14:22:44 -0800 Subject: [PATCH] docs: fix incorrect field naming restrictions in base-action/action.yml MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixed outdated documentation that incorrectly stated field naming restrictions that don't exist in the implementation. Changes: - Removed incorrect claim about field naming requirements (letter/underscore start) - Removed incorrect claim about special character sanitization - Clarified that field names can use any valid JSON property name - Updated access pattern to show fromJSON() usage - Clarified 1MB limit applies to entire structured_output string, not per-field The implementation simply does JSON.stringify(result.structured_output) without any sanitization, so any valid JSON property name works (including hyphens like "test-result", as validated by integration tests). Addresses review comment: https://github.com/anthropics/claude-code-action/pull/683#discussion_r2539749593 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- base-action/action.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/base-action/action.yml b/base-action/action.yml index fec2cf5..c7ee853 100644 --- a/base-action/action.yml +++ b/base-action/action.yml @@ -73,15 +73,15 @@ inputs: default: "" json_schema: description: | - JSON schema for structured output validation. Claude must return JSON matching this schema - or the action will fail. Outputs are automatically set for each field. + JSON schema for structured output validation. Claude must return JSON matching this schema + or the action will fail. All fields are returned in a single structured_output JSON string. - Access outputs via: steps..outputs. + Access outputs via: fromJSON(steps..outputs.structured_output). Limitations: - - Field names must start with letter or underscore (A-Z, a-z, _) - - Special characters in field names are replaced with underscores - - Each output is limited to 1MB + - All fields are returned in a single structured_output JSON string + - Field names can use any valid JSON property name (including hyphens, special characters, etc.) + - The entire structured_output string is limited to 1MB required: false default: ""