Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 49 additions & 12 deletions scratchpad/layout.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
# GitHub Actions Workflow Layout Specification

> Auto-generated specification documenting patterns used in compiled `.lock.yml` files.
> Last updated: 2026-03-02
> Last updated: 2026-03-09

## Overview

This document catalogs all file paths, folder names, artifact names, and other patterns used across our compiled GitHub Actions workflows (`.lock.yml` files). It serves as a comprehensive reference for developers working with the gh-aw codebase.

**Statistics:**
- **Lock files analyzed**: 165
- **Lock files analyzed**: 166
- **Unique GitHub Actions**: 22
- **Artifact patterns**: 20
- **Job name patterns**: 21
- **File path references**: 36
- **Job name patterns**: 22
- **File path references**: 37

## GitHub Actions

Expand Down Expand Up @@ -90,6 +90,7 @@ Standard job names across compiled workflows:
| `unlock` | Workflow unlock | `agent` | Unlocks resources after agent execution |
| `upload_assets` | Asset upload | Safe-output jobs | Uploads generated assets to GitHub releases or storage |
| `post_to_slack_channel` | Slack notification | Safe-output jobs | Posts workflow results to Slack channel |
| `post_ace_link` | ACE link posting | Safe-output jobs | Posts ACE (Agentic Coding Experience) links to issues/PRs |
| `send_slack_message` | Slack message | Safe-output jobs | Sends individual Slack messages |
| `notion_add_comment` | Notion comment | Safe-output jobs | Adds comments to Notion pages |
| `search_issues` | Issue search | Various | Searches GitHub issues based on criteria |
Expand Down Expand Up @@ -124,6 +125,7 @@ Common file paths referenced in workflow files:
| `/tmp/gh-aw/repo-memory/campaigns` | Directory | Campaigns repo memory | Campaign-specific repository memory |
| `/tmp/gh-aw/mcp-config/logs/` | Directory | MCP config logs | MCP configuration logs |
| `/tmp/gh-aw/mcp-logs/` | Directory | MCP server logs | Model Context Protocol server logs |
| `/tmp/gh-aw/mcp-scripts/logs/` | Directory | MCP scripts logs | Logs from MCP scripts server execution |
| `/tmp/gh-aw/redacted-urls.log` | File | Redacted URLs log | Log of URLs that were redacted for security |
| `/tmp/gh-aw/safeoutputs/` | Directory | Safe outputs data | Safe output tool results and metadata |
| `/tmp/gh-aw/safeoutputs/assets/` | Directory | Safe outputs assets | Assets generated by safe-output tools |
Expand Down Expand Up @@ -186,29 +188,38 @@ const CheckSkipBotsStepID StepID = "check_skip_bots"
````go
const AWFProxyLogsDir = "/tmp/gh-aw/sandbox/firewall/logs"
const DefaultMCPGatewayPayloadDir = "/tmp/gh-aw/mcp-payloads"
const DefaultActivationJobRunnerImage = "ubuntu-slim"
````

### MCP Server IDs
````go
const SafeOutputsMCPServerID = "safeoutputs"
const SafeInputsMCPServerID = "safeinputs"
const AgenticWorkflowsMCPServerID = "agenticworkflows"
const SafeOutputsMCPServerID MCPServerID = "safeoutputs"
const MCPScriptsMCPServerID MCPServerID = "mcpscripts"
const AgenticWorkflowsMCPServerID MCPServerID = "agenticworkflows"
````
### Default Versions
````go
const DefaultCopilotVersion Version = "latest"
const DefaultCopilotDetectionModel ModelName = "gpt-5.1-codex-mini"
const DefaultClaudeCodeVersion Version = "latest"
const DefaultCodexVersion Version = "latest"
const DefaultGeminiVersion Version = "latest"
const DefaultGitHubMCPServerVersion Version = "v0.31.0"
const DefaultGitHubMCPServerVersion Version = "v0.32.0"
const DefaultFirewallVersion Version = "v0.23.0"
const DefaultMCPGatewayVersion Version = "v0.1.6"
const DefaultMCPGatewayVersion Version = "v0.1.8"
const DefaultPlaywrightMCPVersion Version = "0.0.68"
const DefaultPlaywrightBrowserVersion Version = "v1.58.2"
const DefaultMCPSDKVersion Version = "1.24.0"
const DefaultBunVersion Version = "1.1"
const DefaultNodeVersion Version = "24"
const DefaultPythonVersion Version = "3.12"
const DefaultGoVersion Version = "1.25"
const DefaultRubyVersion Version = "3.3"
const DefaultDotNetVersion Version = "8.0"
const DefaultJavaVersion Version = "21"
const DefaultElixirVersion Version = "1.17"
const DefaultHaskellVersion Version = "9.10"
const DefaultDenoVersion Version = "2.x"
````

### Container Images
Expand Down Expand Up @@ -255,6 +266,32 @@ const DefaultToolTimeout = 60 * time.Second
const DefaultMCPStartupTimeout = 120 * time.Second
````

### Feature Flags
````go
MCPScriptsFeatureFlag FeatureFlag = "mcp-scripts"
MCPGatewayFeatureFlag FeatureFlag = "mcp-gateway"
DisableXPIAPromptFeatureFlag FeatureFlag = "disable-xpia-prompt"
CopilotRequestsFeatureFlag FeatureFlag = "copilot-requests"
````

### Engine Names
````go
CopilotEngine EngineName = "copilot"
ClaudeEngine EngineName = "claude"
CodexEngine EngineName = "codex"
GeminiEngine EngineName = "gemini"
````

## Runners

GitHub Actions runner images used across compiled workflows:

| Runner | Description | Context |
|--------|-------------|---------|
| `ubuntu-latest` | Latest Ubuntu runner | Used by most agent and safe-output jobs |
| `ubuntu-slim` | Slim Ubuntu runner | Used for activation jobs (default activation runner) |
| `ubuntu-24.04-arm` | Ubuntu 24.04 ARM runner | Used for ARM-architecture builds |

## Usage Guidelines

### Artifact Naming
Expand Down Expand Up @@ -358,9 +395,9 @@ This specification is automatically maintained by the **Layout Specification Mai
4. Updates this document with findings
5. Creates a PR with the changes

**Last extraction run**: 2026-03-02
**Lock files analyzed**: 165
**Patterns documented**: 200+
**Last extraction run**: 2026-03-09
**Lock files analyzed**: 166
**Patterns documented**: 210+

---

Expand Down