[Schema Consistency] Schema Consistency Check - 2026-08-21 #54442
Closed
Replies: 1 comment
|
This discussion was automatically closed because it expired on 2026-08-22T05:37:30.066Z.
|
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 - 2026-08-21
🔍 Schema Consistency Check - 2026-08-21
Summary
Critical Issues
max-turn-cache-missesrejects expression values in the parser, but the schema/documentation position it as a configurable guardrail with frontmatter precedence.pkg/parser/schemas/main_workflow_schema.jsondefinesmax-turn-cache-missesasintegeronly with default5.pkg/workflow/frontmatter_types.go:331stores it as*int32, unlike neighboring templatable numeric fields.pkg/workflow/engine_config_parser.go:33-53explicitly treats GitHub Actions expression strings as0/ unset for integer-only fields.docs/src/content/docs/reference/glossary.md:956says imported/frontmatter precedence applies, but does not warn that expressions are unsupported while nearby fields do support them.max-tool-denials/max-turns; expression inputs silently degrade to default behavior instead of applying the intended value.tracker-idvalidation rules live in parser code but are only partially represented in schema/docs.pkg/workflow/frontmatter_extraction_metadata.go:97-124requires a string, trims whitespace, enforces length8..128, and restricts characters to[A-Za-z0-9_-].pkg/workflow/frontmatter_types.go:325is a plain string field.docs/src/content/docs/reference/frontmatter.md:616documents the allowed charset and length.Documentation Gaps
secret-maskingis present in schema/parser but missing from the concise frontmatter reference.pkg/workflow/frontmatter_types.go:393.pkg/workflow/secret_masking.goandpkg/workflow/redact_secrets.goprocess it.pkg/workflow/safe_outputs_config_types.go:177-180exposessecret-masking.steps.docs/src/content/docs/reference/frontmatter.mdhas no dedicatedsecret-maskingsection, while the generated full reference does mention it (frontmatter-full.md:20275).excluded-envis documented outside the main frontmatter reference but omitted from the concise frontmatter page.pkg/workflow/frontmatter_types.go:448.pkg/workflow/awf_env.go:167-170always excludes listed names from the agent container.docs/src/content/docs/reference/frontmatter-full.md:20483-20489anddocs/src/content/docs/reference/glossary.md:1513-1523describe it.excluded-envsection despite covering nearby top-level config fields likecheck-for-updates,strict, andtracker-id.Schema Improvements Needed
Add explicit schema constraints for
tracker-idto match compiler validation:type: stringminLength: 8maxLength: 128pattern: ^[A-Za-z0-9_-]+$Clarify
max-turn-cache-missessupport boundaries:Parser Updates Required
max-turn-cache-missesuse the same templatable integer pathway asmax-tool-denials,max-turns, andtimeout-minutesif runtime expression support is intended.Workflow Violations
used_in_workflowsdiff includes several non-schema keys such ascapabilities,repo,https, andtitle, but targeted verification shows at least some are false positives from workflow body content rather than real frontmatter keys:.github/workflows/smoke-aider.mdcontainscapabilities:in body text, not frontmatter..github/workflows/shared/copilot-agent-analysis-history.mdcontainsrepo:in a query example, not frontmatter..github/workflows/shared/mcp/grafana.mdandsentry.mdcontainhttps:lines from example URLs, not top-level frontmatter.Non-Authoritative Warning
/tmp/gh-aw/agent/awf-config-drift.jsonis markeddegraded: true.Recommendations
tracker-idso editors catch invalid values before compilation.max-turn-cache-missesUX mismatch by either supporting templated expressions or documenting/rejecting them clearly.secret-maskingandexcluded-envindocs/src/content/docs/reference/frontmatter.md.schema-diff.jsonso body YAML/examples are excluded fromused_in_workflows.Strategy Performance
Next Steps
tracker-idmax-turn-cache-missesexpression supportsecret-maskingandexcluded-envAll reactions