Repository navigation
[instructions] Sync instruction files with release 1.0.1 - #74807
Merged
pelikhan merged 1 commit intoNov 4, 2026
Merged
Conversation
Align OTLP, network defaults, prompt-expression compilation, Copilot permission scope, and PR fallback/credential guidance with current code and docs. Consolidate duplicated recompile and copilot-requests guidance. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
The documentation contains unresolved inaccuracies about OTLP environment mapping, exporter behavior, attribute interpolation, and credential precedence that could lead users to configure workflows incorrectly.
4 open issues
What changed in this PR
This documentation-only PR syncs gh-aw’s agent-facing instructions with recent compiler and runtime changes following v1.0.1.
Changes:
- Updates network defaults, prompt-expression rules, and Copilot authentication guidance.
- Expands OTLP configuration and safe-output behavior references.
- Consolidates repeated workflow-editing and recompilation guidance.
| File | Description |
|---|---|
.github/aw/workflow-editing.md |
Clarifies expression-related recompilation and removes repetition. |
.github/aw/workflow-constraints.md |
Corrects the scope of default network access. |
.github/aw/update-agentic-workflow.md |
Consolidates update rules and Copilot guidance. |
.github/aw/token-optimization-observability.md |
Uses map-form OTLP headers and links runtime controls. |
.github/aw/syntax-core.md |
Clarifies Copilot inference permissions and opt-out. |
.github/aw/syntax-agentic.md |
Expands OTLP options and marks the legacy Copilot flag deprecated. |
.github/aw/safe-outputs-management.md |
Documents shared PR checkout credential precedence. |
.github/aw/safe-outputs-content.md |
Documents fallback-issue labels and expiration. |
.github/aw/network.md |
Updates default and Linux distribution domain descriptions. |
.github/aw/create-agentic-workflow.md |
Links canonical Copilot inference guidance. |
.github/aw/context.md |
Clarifies malformed conditions and code-region handling. |
Review effort: Balanced (auto)
|
|
||
| Cross-repository pushes are supported via `target-repo` (and `head-repo`/`head-github-token` for fork-backed PRs) plus an `allowed-repos` allowlist. To trigger CI on pushed commits, use `github-token-for-extra-empty-commit` or set the magic secret `GH_AW_CI_TRIGGER_TOKEN`. Set `github-token-for-extra-empty-commit: none` to skip the extra empty commit and keep `GH_AW_CI_TRIGGER_TOKEN` out of the compiled lock file and manifest entirely. | ||
|
|
||
| **Shared checkout credential**: same-repository `create-pull-request` and `push-to-pull-request-branch` persist one git credential (precedence: `create-pull-request.github-token`, `push-to-pull-request-branch.github-token`, `safe-outputs.github-app` minted token, `safe-outputs.github-token`, default). Give both handlers the same token, ideally once at `safe-outputs.github-token` or `safe-outputs.github-app`. |
| - `workload-identity:` - Exchange a GitHub Actions OIDC token for a cloud access token before OTLP export. Only `provider: google` is currently supported; requires `audience:` (Google Workload Identity Provider resource name) and accepts optional `service-account:` to impersonate after STS token exchange. | ||
| - `headers:` - Comma-separated `key=value` HTTP headers included in every OTLP export request (e.g. `Authorization=Bearer <token>`). Injected as `OTEL_EXPORTER_OTLP_HEADERS`. Supports GitHub Actions expressions. | ||
| - `headers:` - Map of HTTP header names to values (e.g. `Authorization: ${{ secrets.OTLP_AUTH }}`) for the string `endpoint:` form; object/array endpoints carry their own `headers:`. Injected as `OTEL_EXPORTER_OTLP_HEADERS`. The comma-separated `key=value` string form is deprecated. | ||
| - `if-missing:` - `error` (default), `warn`, or `ignore` when endpoint/header values resolve empty at runtime (affects MCP gateway OTLP setup only). |
| - `headers:` - Comma-separated `key=value` HTTP headers included in every OTLP export request (e.g. `Authorization=Bearer <token>`). Injected as `OTEL_EXPORTER_OTLP_HEADERS`. Supports GitHub Actions expressions. | ||
| - `headers:` - Map of HTTP header names to values (e.g. `Authorization: ${{ secrets.OTLP_AUTH }}`) for the string `endpoint:` form; object/array endpoints carry their own `headers:`. Injected as `OTEL_EXPORTER_OTLP_HEADERS`. The comma-separated `key=value` string form is deprecated. | ||
| - `if-missing:` - `error` (default), `warn`, or `ignore` when endpoint/header values resolve empty at runtime (affects MCP gateway OTLP setup only). | ||
| - `attributes:` - Optional map of custom span attributes; values are static strings or `{{ <span-attribute> }}` templates. Exported to backends and masked in runner logs. |
| - `if-missing:` - `error` (default), `warn`, or `ignore` when endpoint/header values resolve empty at runtime (affects MCP gateway OTLP setup only). | ||
| - `attributes:` - Optional map of custom span attributes; values are static strings or `{{ <span-attribute> }}` templates. Exported to backends and masked in runner logs. | ||
| - `resource-attributes:` - Optional map of additional OTEL resource attributes appended to gh-aw/GitHub defaults. Values may be static strings or GitHub Actions expressions. Do not use `secrets.*` or `vars.*` here because resource attributes are exported to external observability backends and are not treated as secret values. | ||
| - Runtime controls (Actions variables, not frontmatter; recompile once to add the lookup): `OTEL_EXPORTER_OTLP_PROTOCOL` selects `http/json` (default) or `http/protobuf` (gRPC unsupported; per-signal `OTEL_EXPORTER_OTLP_TRACES_PROTOCOL`/`OTEL_EXPORTER_OTLP_LOGS_PROTOCOL` override it); `GH_AW_OTLP_LOGS_ENABLED=true` opts in to compact unified-session OTLP logs posted to `<endpoint>/v1/logs`, capped by `GH_AW_OTLP_LOGS_MAX_BYTES` (default `65536`). Manage the protocol with `gh aw env` key `default_otlp_protocol`. |
This was referenced Nov 4, 2026
pelikhan
deleted the
instructions-janitor/sync-v1.0.1-2026-11-04-06b751e61f967f94
branch
November 4, 2026 15:06
Contributor
Author
|
🎉 This pull request is included in a new release. Release: |
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.

Overview
Follow-up sync for v1.0.1 (published 2026-10-27). Earlier syncs (#72907, #73154, #73470, #74248, #74457) covered changes through 2026-11-02, so this pass focuses on doc and code changes merged after #74248. It fixes four places where the instructions disagreed with the code, adds the newly shipped OTLP runtime controls, and removes repeated guidance. The total line count is unchanged (+27/−27).
Accuracy fixes
defaultspkg/workflow/data/ecosystem_domains.jsonworkflow-constraints.mdsaiddefaultscovers "core GitHub/Copilot/registry endpoints". It now covers only CA, JSON-schema, and stock Ubuntu hosts.network.mdrows fordefaultsandlinux-distrosupdated; third-party apt sources (PPA, packagecloud, snapcraft, Microsoft/Google repos) now needlinux-distros.context.mdclaimed{{#if}}inside fenced blocks is always verbatim. Malformed active conditions now fail compilation, and only invalid implicit conditions in code regions stay literal.workflow-editing.mdnow says adding or changing expressions or conditions in the body requires recompilation.features.copilot-requestspkg/cli/codemod_copilot_requests_feature.gopermissions.copilot-requests: write(migrated bygh aw fix).copilot-requests: writescopepermissionsschema enumcopilot/models). Added the Claude-on-Copilot compile warning and thecopilot-requests: noneopt-out.observability.otlpschema; #74594, #74599, #74729endpointforms, map-formheaders(string form deprecated),if-missing, andattributes. Added runtime controls:OTEL_EXPORTER_OTLP_PROTOCOL(http/protobuf), per-signal overrides,GH_AW_OTLP_LOGS_ENABLED,GH_AW_OTLP_LOGS_MAX_BYTES, anddefault_otlp_protocol. Examples switched to the non-deprecated map form.fallback-to-issueissues are labeledpull-request-fallbackand expire with the PR (default 7 days). Added the shared checkout-credential precedence for same-repocreate-pull-request+push-to-pull-request-branch.Duplication removed
copilot-requestsrecommendation:create-agentic-workflow.mdandupdate-agentic-workflow.mdnow point to the single canonical rule insyntax-core.mdinstead of restating it, wrongly scoped, in each.update-agentic-workflow.md: dropped the "Common Update Categories" section (it repeated the pointer toworkflow-editing.md) and two Validation Flow bullets that repeated the compile rule and the Final Message Rules.workflow-editing.md: merged two "body changes take effect on next run" sentences and two "always compile after any change" rules into one each.Before/after line counts (edited files)
syntax-agentic.mdsyntax-core.mdcontext.mdnetwork.mdworkflow-constraints.mdsafe-outputs-content.mdsafe-outputs-management.mdcreate-agentic-workflow.mdupdate-agentic-workflow.mdworkflow-editing.mdtoken-optimization-observability.mdAudit details
github.tokenfor Claude-on-Copilot workflows and warn whencopilot-requests: writeis missing #74242. Only Fail compilation on invalid prompt expressions and restore substitution #74689 was inspected at commit level; the rest were checked against the current tree..github/aw/*.mdfile is ≤ 400 lines.cli-commands.mdsits at exactly 400 and was not touched; extract a sub-file before adding anything to it.safe_outputs_config_types.goappears in the instruction files. Experimental labels match the code (merge-pull-requestis still experimental). Note thatpkg/workflow/safe_outputs_config.gohas been split intosafe_outputs_config_*.go; the janitor's required-review list should be updated.otel.mdstill describes JSON-only trace export. It is maintained by the dedicated weekly OTel reference workflow (Add weekly agent-facing OpenTelemetry reference workflow #74598), so it was left for that workflow's next run.steercomments.Next actions
safe_outputs_config.go→safe_outputs_config_types.go.otel.md.References: §41799817537
🤖 Generated with [Claude Code]((claude.com/redacted)