Skip to content

[awf-feature-surfacing] Surface recent AWF schema features in docs: regenerate frontmatter reference + document resource-attributes, normalize-closing-k [Content truncated due to length] #39914

Description

@github-actions

Summary

The daily AWF spec-compiler surfacing review found that several user-facing AWF schema capabilities merged in the last 7 days are not surfaced in the documentation. The root cause is that the auto-generated frontmatter reference is stale, plus a couple of features lack any hand-written coverage.

This is the first run of the surfacing reviewer (no prior state), so the diff window was built from the GitHub API over the last 7 days.

New schema features detected (last 7 days)

Feature (schema key) PR Surfacing status
observability.otlp.resource-attributes #39636 Gap — 0 doc mentions anywhere
safe-outputs.*.normalize-closing-keywords (create-issue / add-comment / create-pull-request) #39643 ⚠️ Gap — only in one experimental sample
repo-memory format-json #39540 ⚠️ Partial — only in repo-memory.md; missing from generated reference
report-failure-as-issue failure-category filtering #39721 ✅ Surfaced (safe-outputs reference)
create-discussion required-category #39640 ✅ Surfaced
array/object runner specs (runs-on-slim, safe-outputs.runs-on, detection runs-on) #39654 / #38965 ✅ Surfaced
cross-repo dispatch allowed-repos #39080 ✅ Surfaced (incl. ADR)
threat-detection max-ai-credits #38456 ✅ Surfaced (incl. ADR)

Core finding: generated frontmatter reference is stale

docs/src/content/docs/reference/frontmatter-full.md is auto-generated from the JSON Schema (make generate-schema-docsnode scripts/generate-schema-docs.js), but it is out of sync with the current schema. It documents every observability.otlp key except the newly added resource-attributes, and is also missing normalize-closing-keywords and format-json.

Evidence
  • Schema path confirmed present: properties/observability/properties/otlp/properties/resource-attributes in pkg/parser/schemas/main_workflow_schema.json.
  • Generated doc last regenerated at commit 69e4c042 (Support array/object runner specs for runs-on-slim and safe-outputs runner fields #39654, 2026-06-16); the generator header states: "This documentation is automatically generated from the JSON Schema."
  • Present/missing check against frontmatter-full.md:
    • MISSING: resource-attributes, normalize-closing-keywords, format-json
    • PRESENT: required-category, runs-on-slim, allowed-repos, max-ai-credits
  • Compiler implementation of resource-attributes: pkg/workflow/observability_otlp.go, pkg/workflow/compiler_orchestrator_workflow.go, pkg/workflow/frontmatter_types.go.

Follow-up tasks

1. Regenerate the schema-derived frontmatter reference — Priority: HIGH

Run make generate-schema-docs and commit the refreshed docs/src/content/docs/reference/frontmatter-full.md. This mechanically picks up resource-attributes, normalize-closing-keywords, and format-json. Consider a CI check that fails when the generated doc drifts from the schema, to prevent recurrence.

2. Document observability.otlp.resource-attributes in hand-written docs — Priority: HIGH

Feature (#39636): additional OTEL_RESOURCE_ATTRIBUTES entries appended to the standard gh-aw/GitHub resource attributes; values may be static strings or GitHub Actions expressions; must not use secrets.* / vars.* (exported to external tracing backends, not treated as secret). Add coverage to the observability section of .github/aw/syntax-agentic.md (already documents OTLP) and the relevant hand-written observability/audit reference, including the no-secrets safety note.

3. Document normalize-closing-keywords in canonical safe-outputs docs — Priority: MEDIUM

Feature (#39643): when true, strips backticks from recognized issue-closing keywords (e.g. `Closes #1`Closes #1) in body fields. Applies to create-issue, add-comment, and create-pull-request. Currently only referenced in docs/.../experimental/safe-outputs-samples.md. Add it to the canonical safe-outputs reference and the agent-facing .github/aw/safe-outputs-content.md.

4. Verify format-json survives regeneration — Priority: LOW

repo-memory format-json (#39540) is documented in repo-memory.md but absent from the generated reference; confirm task 1 restores it.

Notes

Generated by 🧭 Daily AWF Spec Compiler Surfacing Review ·

  • expires on Jun 24, 2026, 2:53 PM UTC-08:00

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions