Repository navigation
[Schema Consistency] Schema Consistency Check — 2026-10-13: four confirmed inconsistencies #68333
Closed
Replies: 1 comment
|
This discussion has been marked as outdated by Schema Consistency Checker. A newer discussion is available at Discussion #68617. |
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-10-13
Summary
onchecked with a local Draft-07 validator. Shared components received a syntheticonsolely for this structural check; redirect-only stubs were excluded. These counts are a scoped structural audit, not full compilation coverage.Key Issues
on.slash_command.placeholder(medium). The documented example cannot pass frontmatter schema validation, despite compiler support. Add the string property to the slash-command object schema and cover acceptance plus footer propagation.import-schematypeinteger(medium). Five declarations contradict the schema's supported type enum; the input validator also has nointegercase. Replace these declarations withnumber, or introduce integer support consistently across schema, validation, and documentation.choiceinputs (medium). The worker example specifies bothtype: choiceandoptions, which theworkflow_call.inputsschema rejects. Usestringand explain worker-side allowed-value validation; review compiler tests that currently treat choice as supported.field: []without a sequence marker. Fix the generator, regenerate the reference, and add a YAML parse check.Evidence, impacts, and concrete fixes
1. Slash-command placeholder: schema ↔ compiler ↔ documentation
docs/src/content/docs/reference/command-triggers.md:204demonstrateson.slash_command.placeholder: to review this PR.pkg/workflow/frontmatter_extraction_yaml.go:270readscommandMap["placeholder"].pkg/workflow/compiler_pre_activation_job.go:377propagatesCommandPlaceholderinto the activation step.pkg/parser/schemas/main_workflow_schema.json:752defines slash-command configuration, withadditionalProperties: falseand noplaceholderproperty.pkg/parser/schema_validation.go:198invokes schema validation before engine-specific checks.2. Unsupported integer input declarations: workflows ↔ schema ↔ parser
.github/workflows/shared/cache-memory-trending.md:35,:39, and:43declareretention-days,backfill-threshold, andbackfill-windowasinteger..github/workflows/shared/repo-memory-standard.md:22and:26do the same formax-patch-sizeandmax-file-size.pkg/parser/schemas/main_workflow_schema.json:14107permitsstring,number,boolean,choice, andarrayfor scalar/array parameter definitions, with a separate object branch; it excludesinteger.pkg/parser/import_schema_validation.go:122handlesnumber, but the switch has nointegerbranch. This is a declaration mismatch, not evidence that an invalid runtime value was accepted by the full compiler.docs/src/content/docs/reference/imports.md:125demonstrates the supported numeric typenumber.api-consumption-report.md,copilot-agent-analysis.md, and other workflows, so the mismatch extends beyond unused examples.numberfor the immediate correction. If whole-number enforcement is intended, implement and documentintegerrather than silently declaring it.3. Unsupported workflow_call choice inputs: documentation ↔ schema
docs/src/content/docs/reference/safe-outputs.md:1479presents a worker withenvironment.type: choiceandoptions: [dev, staging, production]; the following prose lists choice as supported.pkg/parser/schemas/main_workflow_schema.json:2074restricts reusable-workflow input types tostring,number, andboolean; input objects also reject the additionaloptionsproperty.pkg/workflow/safe_outputs_call_workflow_test.go:311exercises extraction of a choice input, which does not demonstrate acceptance through the main frontmatter schema.type: string, removeoptions, document explicit value validation, and align compiler tests with the reusable-workflow input contract. Keep workflow-dispatch choice examples separate.4. Invalid generated YAML: documentation generator ↔ reference
docs/src/content/docs/reference/frontmatter-full.md:72emitsthreat-detection-suppress: [], followed by indentedrule,reason, andexpiresmappings without-.rule(line 75 of the document), before JSON Schema validation can run.scripts/generate-schema-docs.js:336emitspropName: []for arrays and then emits object item properties at line 343.Ruled-out leads and limitations
docker-image-pull-policyandwork-queue-policyare false positives from tag-only enumeration: consumers exist atpkg/workflow/docker.go:294andpkg/workflow/work_queue_repo_config.go:32./tmp/gh-aw/agent/awf-config-drift.jsonhasdegraded: true; canonical-source retrieval failed. No AWF config-source drift conclusion, corrective PR, drift issue, or required-check failure is warranted from that comparison.Recommendations and Next Steps
slash_command.placeholderto the schema and verify the documented example.Strategy performance: 4 confirmed findings; high effectiveness; reuse recommended. Raw field gaps and unresolved import templates need targeted verification to avoid false positives. The strategy cache was updated; repository source files were unchanged.
References: §38352278753
All reactions