Conversation
…ch JSON schema Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Fix schema validation mismatch for create_project title field
Fix create_project title field validation mismatch between schema and validation config
Jan 15, 2026
pelikhan
approved these changes
Jan 15, 2026
Contributor
|
@copilot merge main |
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Contributor
Author
Contributor
|
@copilot merge main, recompile |
mnkiefer
approved these changes
Jan 15, 2026
…lidation-mismatch
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Contributor
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fix create_project title field validation mismatch
Issue: CI Failure #21035582213 - Schema validation mismatch in create_project
Summary
Fixed inconsistency between
safe_outputs_tools.jsonandsafe_output_validation_config.gowhere thetitlefield forcreate_projectwas marked as optional in the tool schema but required in the validation config, causing validation failures for workflows using auto-generated titles.Plan
Required: truetoRequired: falsefor title field in create_projectRoot Cause
PR #10068 added
title-prefixconfiguration for auto-generating project titles when thetitleparameter is not provided. The implementation updated:pkg/workflow/js/safe_outputs_tools.json- Removedtitlefromrequiredarray (empty array)actions/setup/js/create_project.cjs- Added auto-generation logic usingtitle-prefixpkg/workflow/create_project.go- AddedTitlePrefixconfig fieldpkg/workflow/safe_output_validation_config.go:250still hadRequired: trueChanges Made
File:
pkg/workflow/safe_output_validation_config.goLine: 250
Change:
Required: true→Required: falseThis allows workflows to use
create_projectwithout an explicittitleparameter, relying on auto-generation from thetitle-prefixconfiguration (default: "Campaign") combined with issue context.Merge Details
Verification
✅ Schema Alignment Confirmed:
required: [](title is optional)Required: false(title is optional)✅ Tests Pass: All create_project related tests pass
✅ Code Formatting: Passed
✅ Main Branch Merged: Up to date with main (commit 4f28d82)
✅ Workflows Recompiled: Successfully recompiled 124 workflows
Impact
This fix allows workflows to create projects with auto-generated titles, as originally intended in PR #10068:
The workflow can now call
create_projectwithout a title parameter, and the system will automatically generate one based on the issue context.Original prompt
This section details on the original issue you should resolve
<issue_title>[CI Failure Doctor] Schema validation mismatch in create_project: title field inconsistency between safe_outputs_tools.json and safe_output_validation_config.go</issue_title>
<issue_description># 🏥 CI Failure Investigation - Run githubnext/gh-aw#21035582213
Summary
CI failed due to incomplete schema update in PR #10068. The
titlefield forcreate_projectwas made optional in the tool schema (safe_outputs_tools.json) but remains marked as required in the validation config (safe_output_validation_config.go), causing a validation mismatch.Failure Details
571d1543c057dea593da2c94b127f26311837251Root Cause Analysis
PR #10068 added a
title-prefixconfiguration feature to allow auto-generation of project titles when thetitleparameter is not provided. The implementation updated:✅
pkg/workflow/js/safe_outputs_tools.json- Removedtitlefromrequiredarray✅
actions/setup/js/create_project.cjs- Added auto-generation logic usingtitle-prefix✅
pkg/workflow/create_project.go- AddedTitlePrefixconfig field✅
pkg/workflow/safe_outputs_config_generation.go- Added title-prefix handling❌ MISSED:
pkg/workflow/safe_output_validation_config.goline 250 still hasRequired: truefor the title fieldThe Problem
This creates a mismatch:
Impact
Any workflow using
create_projectwithout an explicittitleparameter (relying on auto-generation) will fail runtime validation with an error like:This breaks the intended functionality of the title-prefix feature.
Recommended Fix
File:
pkg/workflow/safe_output_validation_config.goLine: 250
Change:
"create_project": { DefaultMax: 1, Fields: map[string]FieldValidation{ - "title": {Required: true, Type: "string", Sanitize: true, MaxLength: 256}, + "title": {Required: false, Type: "string", Sanitize: true, MaxLength: 256}, "owner": {Type: "string", Sanitize: true, MaxLength: 128}, // ... }, },Validation Steps:
make testto verify tests passmake agent-finishto ensure full validationPrevention Strategies
For Future Development
Rule: When changing a field's required status in any tool schema, ALWAYS update BOTH:
pkg/workflow/js/safe_outputs_tools.json(tool schema)pkg/workflow/safe_output_validation_config.go(validation config)These files must stay in sync. The validation config enforces what the tool schema declares.
Detection Pattern
Search for the pattern: "making X field optional" or "removing X from required"
When found, verify updates in:
AI Team Self-Improvement
Add to AGENTS.md or developer instructions:
Historical Context
This is a common pattern when adding "optional with auto-generation" features. Previous similar changes successfully updated both files. This appears to be an oversight rather than a systemic issue.
Pattern:
INCOMPLETE_SCHEMA_UPDATEFirst occurrence: Run githubnext/gh-aw#21035582213
Related failures: None found
Investigation Metadata
/tmp/gh-aw/cache-memory/investigations/2026-01-15-21035582213.json💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.