[Schema Consistency] Backward Dependency Chain Tracing - Feb 17, 2026 #16318
Closed
Replies: 1 comment
-
|
This discussion was automatically closed because it expired on 2026-02-24T10:07:35.760Z.
|
Beta Was this translation helpful? Give feedback.
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.
-
Summary
Strategy: Backward Dependency Chain Tracing (NEW APPROACH)
Date: February 17, 2026
Findings: 8 categories analyzed, 2 CRITICAL documentation gaps discovered
Effectiveness: ⭐⭐⭐⭐⭐ VERY HIGH
This run used a novel reverse-engineering approach: analyzing compiled GitHub Actions YAML (.lock.yml files) to discover runtime features, then tracing backward to frontmatter fields and schema definitions to identify undocumented behaviors.
Critical Documentation Gaps
🚨 GitHub Context Injection System (HIGH PRIORITY)
What was discovered:
When
tools.githubis enabled (default), the compiler automatically injects 30+ GitHub context variables into the agent prompt via a hidden system:Auto-injected variables:
GH_AW_GITHUB_ACTOR(from$\{\{ github.actor }})GH_AW_GITHUB_REPOSITORY(from$\{\{ github.repository }})GH_AW_GITHUB_WORKSPACE(from$\{\{ github.workspace }})GH_AW_GITHUB_EVENT_ISSUE_NUMBER(from$\{\{ github.event.issue.number }})GH_AW_GITHUB_EVENT_DISCUSSION_NUMBER(from$\{\{ github.event.discussion.number }})GH_AW_GITHUB_EVENT_PULL_REQUEST_NUMBER(from$\{\{ github.event.pull_request.number }})GH_AW_GITHUB_EVENT_COMMENT_ID(from$\{\{ github.event.comment.id }})GH_AW_GITHUB_RUN_ID(from$\{\{ github.run_id }})GH_AW_GITHUB_EVENT_INPUTS_*(fromworkflow_dispatchinputs)GH_AW_GITHUB_EVENT_WORKFLOW_RUN_*(fromworkflow_runevents)How it works:
pkg/workflow/prompts/github_context_prompt.md\{\\{\#if $\{\{ github.actor }} }}ExpressionExtractorat compile time__GH_AW_GITHUB_ACTOR__pkg/workflow/unified_prompt_step.go:325-347Impact:
__GH_AW_GITHUB_*__placeholder format is never explainedtools.github(enabled by default)Recommendation:
tools.githubexplaining automatic context injectionGH_AW_GITHUB_*variables and their GitHub Actions sources\{\\{\#if}}→__PLACEHOLDER__→ substitution flowCode references:
pkg/workflow/prompts/github_context_prompt.md- embedded promptpkg/workflow/unified_prompt_step.go:325-347- injection logicpkg/workflow/expression_extraction.go- expression parser🚨 Multi-Job Workflow Architecture (HIGH PRIORITY)
What was discovered:
Simple frontmatter workflows are compiled into 6+ interdependent GitHub Actions jobs, but this architecture is completely undocumented.
Standard job structure:
Job purposes:
pre_activation: Validates comment source, checks bot status, filters by rolesdetection: Detects slash commands from issue/PR/discussion commentsactivation: Checks workflow timestamps, creates unified prompt, sets up contextagent: Runs AI engine (Claude/Copilot/Codex) with the compiled promptsafe_outputs: Processes MCP tool outputs (creates issues, PRs, discussions, etc.)update_cache_memory: Saves cache-memory state back to GitHub Actions cacheconclusion: Posts summary, adds reaction emojis, handles cleanupJob generation rules:
on: issue_comment→ generatespre_activation,detectionjobson: schedule→ skips detection, goes straight toactivationsafe-outputs:present → generatessafe_outputsjobcache-memory:present → generatesupdate_cache_memoryjobImpact:
Recommendation:
docs/src/content/docs/concepts/compilation.mdCode references:
pkg/workflow/compiler_activation_jobs.go- activation job generationpkg/workflow/detection_job.go- detection job generationpkg/workflow/safe_outputs_steps.go- safe-outputs job generationpkg/workflow/cache.go- cache-memory job generationMedium Priority Issues
View Agent CLI Flag Mapping Gap
Issue: Users don't understand how frontmatter configuration translates to agent CLI arguments
Example mappings discovered:
tools.bash: ["*"]→--allow-all-tools --allow-all-pathstools.bash: ["cat", "ls"]→--allowed-tools 'shell(cat),shell(ls),...'sandbox.agent: workspace→--add-dir "\$\{GITHUB_WORKSPACE}"engine.max-turns: 15→--max-turns 15engine.agent: "ci-cleaner"→--agent ci-cleaner(Copilot only)Compiled Copilot command:
Compiled Claude command:
claude \ --print \ --disable-slash-commands \ --no-chrome \ --max-turns 100 \ --mcp-config /tmp/gh-aw/mcp-config/mcp-servers.json \ --allowed-tools 'Bash,Edit,Glob,Grep,...' \ --debug-file /tmp/gh-aw/agent-stdio.log \ --verbose \ --permission-mode bypassPermissions \ --output-format stream-jsonRecommendation:
View Network Domain Allowlist Defaults
Issue: Default network domain allowlists vary by engine but are not documented
Defaults discovered in compiled YAML:
Claude engine includes:
anthropic.comapi.anthropic.comsentry.iostatsig.anthropic.comghcr.ioCodex engine includes:
openai.comapi.openai.comCopilot engine includes:
api.githubcopilot.comapi.business.githubcopilot.comtelemetry.enterprise.githubcopilot.comEnvironment variable pattern:
Recommendation:
allow-domainsandblock-domainsfrontmatter fields modify defaultsCode references:
pkg/workflow/domains.go- domain allowlist generationpkg/workflow/engine_network_hooks.go- network hook generationPositive Findings (Consistent)
✓ Model Override System -
GH_AW_MODEL_AGENT_*environment variables properly documented and working✓ Safe-Inputs/Safe-Outputs - Fields properly documented in schema
✓ Cache-Memory Variables -
GH_AW_CACHE_DIR,GH_AW_CACHE_DESCRIPTIONdocumented and working✓ Concurrency Field - Both string and object formats properly supported via oneOf
Strategy Performance
Methodology Rating: ⭐⭐⭐⭐⭐ VERY HIGH
Why this strategy was extremely effective:
Novel discoveries:
Should reuse: YES - Extremely effective for finding undocumented runtime behaviors and implicit architectural patterns
Next strategy suggestions:
Impact Assessment
tools.github(100% default)Recommendations Summary
High Priority
Document GitHub Context Injection System
docs/src/content/docs/reference/frontmatter.mdundertools.githubGH_AW_GITHUB_*variables and their GitHub Actions sourcesDocument Multi-Job Architecture
docs/src/content/docs/concepts/compilation.mdMedium Priority
Add CLI Flag Mapping Examples
Document Network Domain Defaults
Code References
GitHub context injection:
pkg/workflow/prompts/github_context_prompt.md:1-27- embedded prompt templatepkg/workflow/unified_prompt_step.go:325-347- context injection logicpkg/workflow/expression_extraction.go- expression parserMulti-job architecture:
pkg/workflow/compiler_activation_jobs.go- activation jobpkg/workflow/detection_job.go- detection jobpkg/workflow/safe_outputs_steps.go- safe-outputs jobpkg/workflow/cache.go- cache-memory jobAgent execution:
pkg/workflow/claude_engine.go:163- Claude CLI generationpkg/workflow/copilot_engine_execution.go:76- Copilot CLI generationpkg/workflow/codex_engine.go:137- Codex CLI generationReferences:
Beta Was this translation helpful? Give feedback.
All reactions