This is an automated AWF spec/compiler surfacing review (first run; 7-day window ending at 550af45). Three newly-introduced AWF capabilities/constraints are not yet surfaced in gh-aw docs or migration guidance. The sandbox one is the most urgent because the upgrade guide actively recommends a pattern that now fails compilation.
1. Conditional if: on imports (High)
A new if: property was added to import entries in main_workflow_schema.json (all 4 import variants: imports[] object form, imports[].with, and the nested uses object/with forms). It guards an entire import at runtime using experiments.<name> expressions (e.g. if: "experiments.strategy == 'eager'"). Steps and prompt content from the import are only active when the condition is true.
Surfacing status: Not documented. The object-form import field list in .github/aw/syntax-tools-imports.md (around lines 250-276) documents checkout:, env:, with:/inputs: but not if:. .github/aw/reuse.md has no if: on imports. .github/aw/experiments.md only warns against nesting {{#if experiments.<name> }} inside {{#runtime-import? }} blocks (line 314) — the new if: field is precisely the supported alternative for experiment-gating an import, so the warning now needs a pointer to it.
Tasks:
2. dangerously-disable-sandbox-agent feature flag now required for sandbox.agent: false (High)
Commit 0175f04b6 (#38205) changed pkg/workflow/sandbox_validation.go: previously sandbox.agent: false was allowed in non-strict mode (warning only); now it raises a hard validation error unless the feature flag is set:
features:
dangerously-disable-sandbox-agent: true
sandbox:
agent: false
New constant DangerouslyDisableSandboxAgentFeatureFlag in pkg/constants/feature_constants.go.
Surfacing status / migration risk: .github/aw/upgrade-agentic-workflows.md:105 currently advises "Replacing 'network.firewall' with 'sandbox.agent: false'" — following that guidance now produces a compile error. The flag is not mentioned in syntax-agentic.md (features: is listed generically at line 54) nor in the upgrade guide.
Tasks:
3. create_issue body minLength enforcement (Medium)
Commit 1db57bcf1 (#38114) added minLength: 20 to the create_issue body field in safe_outputs_tools.json (both pkg/workflow/js/ and actions/setup/js/) and the JS/Go validators. Workflows emitting issue bodies shorter than 20 chars now fail validation.
Surfacing status: Not documented in the safe-outputs docs (safe-outputs-content.md, etc.).
Tasks:
Evidence (commits, files, schema keys)
- Schema:
pkg/parser/schemas/main_workflow_schema.json — new if: on import entries (4 locations).
0175f04b6 — pkg/workflow/sandbox_validation.go, pkg/constants/feature_constants.go (DangerouslyDisableSandboxAgentFeatureFlag).
1db57bcf1 — pkg/workflow/js/safe_outputs_tools.json, actions/setup/js/safe_outputs_tools.json (minLength: 20), safe_outputs_validation_config.go, samples_validation.go.
- Docs checked:
.github/aw/syntax-tools-imports.md, reuse.md, experiments.md, syntax-agentic.md, upgrade-agentic-workflows.md, safe-outputs-*.md.
- Considered but not actioned:
c69bc59cd (dynamic checkout.repository — internal manifest move, marginal surfacing need), 402c2979b (error-hint UX only), plus internal/cosmetic commits (9449a1d18, 12d066797, d1c293e78, 550af45).
Feature IDs (tracked in repo-memory): imports.if-conditional, features.dangerously-disable-sandbox-agent, safe-outputs.create-issue-min-body.
Generated by 🧭 Daily AWF Spec Compiler Surfacing Review · 112.3 AIC · ⌖ 11.9 AIC · ⊞ 4.7K · ◷
This is an automated AWF spec/compiler surfacing review (first run; 7-day window ending at
550af45). Three newly-introduced AWF capabilities/constraints are not yet surfaced ingh-awdocs or migration guidance. The sandbox one is the most urgent because the upgrade guide actively recommends a pattern that now fails compilation.1. Conditional
if:on imports (High)A new
if:property was added to import entries inmain_workflow_schema.json(all 4 import variants:imports[]object form,imports[].with, and the nestedusesobject/with forms). It guards an entire import at runtime usingexperiments.<name>expressions (e.g.if: "experiments.strategy == 'eager'"). Steps and prompt content from the import are only active when the condition is true.Surfacing status: Not documented. The object-form import field list in
.github/aw/syntax-tools-imports.md(around lines 250-276) documentscheckout:,env:,with:/inputs:but notif:..github/aw/reuse.mdhas noif:on imports..github/aw/experiments.mdonly warns against nesting{{#if experiments.<name> }}inside{{#runtime-import? }}blocks (line 314) — the newif:field is precisely the supported alternative for experiment-gating an import, so the warning now needs a pointer to it.Tasks:
if:in the import object-form field list insyntax-tools-imports.md, including theexperiments.<name>form and runtime-gating semantics.reuse.mdand cross-link fromexperiments.mdline ~314 (replace/augment the anti-nesting warning with theif:field as the recommended approach).if:is gated as expected (verify coverage exists inpkg/workflow/).2.
dangerously-disable-sandbox-agentfeature flag now required forsandbox.agent: false(High)Commit
0175f04b6(#38205) changedpkg/workflow/sandbox_validation.go: previouslysandbox.agent: falsewas allowed in non-strict mode (warning only); now it raises a hard validation error unless the feature flag is set:New constant
DangerouslyDisableSandboxAgentFeatureFlaginpkg/constants/feature_constants.go.Surfacing status / migration risk:
.github/aw/upgrade-agentic-workflows.md:105currently advises "Replacing 'network.firewall' with 'sandbox.agent: false'" — following that guidance now produces a compile error. The flag is not mentioned insyntax-agentic.md(features:is listed generically at line 54) nor in the upgrade guide.Tasks:
upgrade-agentic-workflows.md:105to require thedangerously-disable-sandbox-agentfeature flag alongsidesandbox.agent: false.syntax-agentic.mdnear thesandbox.agent/features:discussion.network.firewall→sandbox.agent: falsealso injects the feature flag.3.
create_issuebody minLength enforcement (Medium)Commit
1db57bcf1(#38114) addedminLength: 20to thecreate_issuebodyfield insafe_outputs_tools.json(bothpkg/workflow/js/andactions/setup/js/) and the JS/Go validators. Workflows emitting issue bodies shorter than 20 chars now fail validation.Surfacing status: Not documented in the safe-outputs docs (
safe-outputs-content.md, etc.).Tasks:
create_issuebody in the safe-outputs reference docs.create-agentic-workflow.md/ report patterns so generated workflows produce sufficiently long bodies.Evidence (commits, files, schema keys)
pkg/parser/schemas/main_workflow_schema.json— newif:on import entries (4 locations).0175f04b6—pkg/workflow/sandbox_validation.go,pkg/constants/feature_constants.go(DangerouslyDisableSandboxAgentFeatureFlag).1db57bcf1—pkg/workflow/js/safe_outputs_tools.json,actions/setup/js/safe_outputs_tools.json(minLength: 20),safe_outputs_validation_config.go,samples_validation.go..github/aw/syntax-tools-imports.md,reuse.md,experiments.md,syntax-agentic.md,upgrade-agentic-workflows.md,safe-outputs-*.md.c69bc59cd(dynamiccheckout.repository— internal manifest move, marginal surfacing need),402c2979b(error-hint UX only), plus internal/cosmetic commits (9449a1d18,12d066797,d1c293e78,550af45).Feature IDs (tracked in repo-memory):
imports.if-conditional,features.dangerously-disable-sandbox-agent,safe-outputs.create-issue-min-body.