[Schema Consistency] 🔍 Schema Consistency Check - Cross-Schema Analysis (2025-10-25) #2361
Closed
Replies: 5 comments 3 replies
|
/plan point 1, 2, 3. Ignore other recommendations |
0 replies
|
/plan create issues for 1, 2, 3 |
1 reply
|
/plan generate item 1,2,3 |
1 reply
|
/plan generate issue for item 1,2,3 |
1 reply
|
This discussion was automatically closed because it was created by an agentic workflow more than 1 month ago. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
🔍 Schema Consistency Check - 2025-10-25
Summary
Critical Issues
1.⚠️ Container Pattern Mismatch Between Schemas
Severity: CRITICAL
Issue: The
containerfield has DIFFERENT regex patterns across schemas:mcp_config_schema.json:^[a-zA-Z0-9][a-zA-Z0-9/_.-]*$❌ (NO colon)included_file_schema.json:^[a-zA-Z0-9][a-zA-Z0-9/:_.-]*$✅ (colon allowed)main_workflow_schema.json:^[a-zA-Z0-9][a-zA-Z0-9/:_.-]*$✅ (colon allowed)Impact:
mcp_config_schema.jsonwould REJECT valid container images likeregistry:5000/myimagewhile other schemas accept them.Location:
pkg/parser/schemas/mcp_config_schema.json:24pkg/parser/schemas/included_file_schema.json:325Fix: Add
:to the character class in mcp_config_schema.json to match the other two schemas.2.⚠️ Missing entrypointArgs in included_file_schema.json
Severity: CRITICAL
Issue: The
entrypointArgsfield is:mcp_config_schema.json(lines 34-40)pkg/parser/mcp.go:74pkg/workflow/mcp-config.go:796-859docs/src/content/docs/guides/mcps.mdpkg/workflow/mcp_container_args_test.goincluded_file_schema.jsonstdio_mcp_tool definitionImpact: Included files using MCP servers cannot use
entrypointArgsaccording to schema validation, even though the parser and compiler fully support it.Also Missing:
headersandurlfieldsFix: Add
entrypointArgs,headers, andurlfields to the stdio_mcp_tool definition in included_file_schema.json to match mcp_config_schema.json.3.⚠️ Bash Tool Type Inconsistency
Severity: HIGH
Issue: The
bashtool accepts different types in different schemas:null | boolean | arraybash: trueandbash: falsenull | arrayonlyImpact:
bash: true, it would fail schema validationbash: trueas valid in examplesFix: Add boolean type to included_file_schema.json bash tool definition.
Schema Improvements Needed
4. Missing safe_job Definition in main_workflow_schema.json
Severity: MEDIUM
Issue:
safe_jobis defined inincluded_file_schema.json$defs but NOT inmain_workflow_schema.json$defs.Current $defs comparison:
Impact: Main workflow files cannot properly validate safe-outputs job definitions.
Fix: Add
safe_jobto main_workflow_schema.json $defs or use$refto reference it from included_file_schema.json.5. MCP Tool Definition Duplication
Severity: MEDIUM (Architectural)
Issue: The
stdio_mcp_toolandhttp_mcp_tooldefinitions are DUPLICATED across schemas with slight variations, causing them to drift apart (as seen in issues #1, #2, and #3 above).Impact:
Recommendation:
mcp_definitions_schema.json)$refto reference from all three schemasDocumentation Gaps
Well Documented ✅
entrypointArgs- Good examples in guides/mcps.mdNeeds Documentation⚠️
Positive Findings ✅
Consistent Definitions (Good!)
cache-memory tool types: Identical across both main and included schemas
boolean | null | object | arrayNetwork configuration: Consistent structure in MCP definitions across all schemas
Environment variable patterns: Same regex everywhere
^[A-Z_][A-Z0-9_]*$enforces uppercase with underscoresType handling in parser: No problematic type coercion found
[]anyto[]stringconversionsRecommendations
Immediate (Critical) 🔴
Fix container pattern in
pkg/parser/schemas/mcp_config_schema.json^[a-zA-Z0-9][a-zA-Z0-9/_.-]*$^[a-zA-Z0-9][a-zA-Z0-9/:_.-]*$Add entrypointArgs to
pkg/parser/schemas/included_file_schema.jsonheaders,urlfor completenessHigh Priority 🟡
Add boolean type to included_file_schema.json tools.bash definition
Add safe_job to main_workflow_schema.json $defs
Medium Priority 🟢
Refactor to shared schema file
pkg/parser/schemas/shared/mcp_definitions.json$reffrom all three schemasDocument schema context differences
Strategy Performance
Why This Strategy Is Effective:
Recommendation: Run this strategy every 3-4 analyses to catch schema drift before it causes runtime issues.
Next Steps
Files Analyzed
Schemas (3 files, 3940 total lines)
pkg/parser/schemas/main_workflow_schema.json(3159 lines)pkg/parser/schemas/included_file_schema.json(583 lines)pkg/parser/schemas/mcp_config_schema.json(198 lines)Implementation
pkg/parser/mcp.gopkg/parser/frontmatter.gopkg/workflow/mcp-config.gopkg/workflow/mcp_container_args_test.goDocumentation
docs/src/content/docs/guides/mcps.mddocs/src/content/docs/reference/frontmatter-full.mddocs/src/content/docs/reference/tools.mdAnalysis Date: 2025-10-25
Strategy: Cross-Schema Consistency & Type Analysis
Cache Updated:
/tmp/gh-aw/cache-memory/strategies.jsonDetailed Findings:
/tmp/gh-aw/cache-memory/findings_2025-10-25.mdAll reactions