Skip to content

[architecture] Update architecture diagram - 2026-05-01#29488

Merged
pelikhan merged 1 commit intomainfrom
architecture-diagram-2026-05-01-694d3388bcba5815
May 1, 2026
Merged

[architecture] Update architecture diagram - 2026-05-01#29488
pelikhan merged 1 commit intomainfrom
architecture-diagram-2026-05-01-694d3388bcba5815

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot commented May 1, 2026

Updates scratchpad/architecture.md with the latest full-rebuild architecture diagram generated from analyzing all 22 packages in the repository.

Changes

  • Regenerated architecture diagram showing all 3 layers: entry points, core, utilities
  • Updated package reference table with descriptions and layer classifications
  • 24 packages documented (2 entry points, 8 core packages, 14 utility packages)

Related to architecture diagram issue created in this workflow run.

Generated by Architecture Diagram Generator · ● 880.5K ·

  • expires on May 8, 2026, 9:22 AM UTC

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions github-actions Bot added architecture diagram documentation Improvements or additions to documentation labels May 1, 2026
@pelikhan pelikhan marked this pull request as ready for review May 1, 2026 09:25
Copilot AI review requested due to automatic review settings May 1, 2026 09:25
@pelikhan pelikhan merged commit 21c4fb5 into main May 1, 2026
3 checks passed
@pelikhan pelikhan deleted the architecture-diagram-2026-05-01-694d3388bcba5815 branch May 1, 2026 09:25
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the repository architecture documentation by regenerating the package dependency diagram and refreshing the package reference table to reflect current layering (entry points, core, utilities).

Changes:

  • Regenerated the ASCII architecture diagram with three explicit layers.
  • Updated the package reference table to include entry points and additional packages with descriptions/layer classification.
  • Refined overview text to describe the layered organization.
Show a summary per file
File Description
scratchpad/architecture.md Refreshes the architecture ASCII diagram and the package reference table to reflect the current package set and layering.

Copilot's findings

Tip

Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comments suppressed due to low confidence (1)

scratchpad/architecture.md:49

  • In the diagram, the pkg/semverutil label is truncated to pkg/semverut, and this row also appears to be missing the closing right-side frame , breaking the ASCII diagram formatting.
│  │pkg/constants  │pkg/repoutil│  │pkg/semverut│  │ pkg/types  │  │pkg/typeutil│  │pkg/envutil  │
  • Files reviewed: 1/1 changed files
  • Comments generated: 4

# Architecture Diagram

> Last updated: 2026-04-30 · Source: [🏗️ Architecture Diagram: Full rebuild — gh-aw package architecture (2026-04-30)](https://github.com/github/gh-aw/issues)
> Last updated: 2026-05-01 · Source: [Architecture Diagram Issue](https://github.com/github/gh-aw/issues)
Copy link

Copilot AI May 1, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The “Source” link points to the generic issues index rather than the specific architecture diagram issue for this update, which makes it hard to trace the generated diagram back to its source. Please link to the exact issue (or PR/run artifact) that produced this diagram.

Suggested change
> Last updated: 2026-05-01 · Source: [Architecture Diagram Issue](https://github.com/github/gh-aw/issues)
> Last updated: 2026-05-01 · Source: [Architecture Diagram Issue](https://github.com/github/gh-aw/issues/1234)

Copilot uses AI. Check for mistakes.
Comment on lines +42 to +52
│ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌──────────┐ │
│ │pkg/fileutil│ │pkg/gitutil │ │ pkg/logger │ │pkg/stringut│ │pkg/sliceutil │ pkg/tty │ │
│ │File path & │ │Git repo │ │Namespace │ │String │ │Slice helper│ │TTY detect│ │
│ │operations │ │operations │ │debug logs │ │utilities │ │functions │ │ │ │
│ └────────────┘ └────────────┘ └────────────┘ └────────────┘ └────────────┘ └──────────┘ │
│ │
│ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌──────────┐ │
│ │pkg/constants │pkg/repoutil│ │pkg/semverut│ │ pkg/types │ │pkg/typeutil│ │pkg/envutil │
│ │Shared consts │Repo slug & │ │Semver │ │Shared type │ │Type convert│ │Env var │ │
│ │& type aliases │URL helpers │ │primitives │ │definitions │ │utilities │ │utilities │ │
│ └────────────┘ └────────────┘ └────────────┘ └────────────┘ └────────────┘ └──────────┘ │
Copy link

Copilot AI May 1, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the diagram, the pkg/stringutil label is truncated to pkg/stringut and the row is missing the closing right border character, which breaks the ASCII box formatting and makes the package name inaccurate.

This issue also appears on line 49 of the same file.

Suggested change
│ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌──────────┐ │
│ │pkg/fileutil│ │pkg/gitutil │ │ pkg/logger │ │pkg/stringut│ │pkg/sliceutil │ pkg/tty │ │
│ │File path & │ │Git repo │ │Namespace │ │String │ │Slice helper│ │TTY detect│ │
│ │operations │ │operations │ │debug logs │ │utilities │ │functions │ │ │ │
│ └────────────┘ └────────────┘ └────────────┘ └────────────┘ └────────────┘ └──────────┘ │
│ │
│ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌──────────┐ │
│ │pkg/constants │pkg/repoutil│ │pkg/semverut│ │ pkg/types │ │pkg/typeutil│ │pkg/envutil │
│ │Shared consts │Repo slug & │ │Semver │ │Shared type │ │Type convert│ │Env var │ │
│ │& type aliases │URL helpers │ │primitives │ │definitions │ │utilities │ │utilities │ │
│ └────────────┘ └────────────┘ └────────────┘ └────────────┘ └────────────┘ └──────────┘ │
│ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌──────────┐ │
│ │pkg/fileutil│ │pkg/gitutil │ │ pkg/logger │ │pkg/stringutil│ │pkg/sliceutil │ pkg/tty │ │
│ │File path & │ │Git repo │ │Namespace │ │String │ │Slice helper │ │TTY detect│ │
│ │operations │ │operations │ │debug logs │ │utilities │ │functions │ │ │ │
│ └────────────┘ └────────────┘ └────────────┘ └────────────┘ └────────────┘ └──────────┘ │
│ │
│ ┌──────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐ │
│ │pkg/constants │pkg/repoutil│ │pkg/semverutil│ │ pkg/types │ │pkg/typeutil│ │pkg/envutil
│ │Shared consts │Repo slug & │ │Semver │ │Shared type │ │Type convert│ │Env var │ │
│ │& type aliases│URL helpers │ │primitives │ │definitions │ │utilities │ │utilities │ │
│ └──────────────┘ └────────────┘ └────────────┘ └────────────┘ └────────────┘ └────────────┘ │

Copilot uses AI. Check for mistakes.
│ │
│ ┌──────────────────────────┐ ┌──────────────────────────┐ ┌──────────────────────────┐ │
│ │ pkg/cli │──▶│ pkg/workflow │──▶│ pkg/parser │ │
│ │ Command implementations │ │ Workflow compiler engine │ │ Markdown/YAML frontmatter│ │
Copy link

Copilot AI May 1, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The pkg/parser description in the diagram runs into the right border (frontmatter│), which suggests the text exceeds the box width and breaks the ASCII alignment. Consider shortening/wrapping the text or widening the box so the border characters stay aligned.

Suggested change
│ │ Command implementations │ │ Workflow compiler engine │ │ Markdown/YAML frontmatter│
│ │ Command implementations │ │ Workflow compiler engine │ │ Markdown/YAML parsing │

Copilot uses AI. Check for mistakes.
| cmd/gh-aw | Entry Point | Main CLI binary (`gh aw` extension) |
| cmd/gh-aw-wasm | Entry Point | WebAssembly compilation target |
| pkg/cli | Core | Command implementations (compile, run, audit, logs, mcp, etc.) |
| pkg/workflow | Core | Workflow compiler engine — markdown→GitHub Actions YAML |
Copy link

Copilot AI May 1, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The workflow description uses inconsistent casing/spacing (markdown→GitHub Actions YAML) compared to the rest of the table (e.g., “Markdown …” with spaces). For consistency and readability, consider using “Markdown → GitHub Actions YAML”.

Suggested change
| pkg/workflow | Core | Workflow compiler engine — markdown→GitHub Actions YAML |
| pkg/workflow | Core | Workflow compiler engine — Markdown → GitHub Actions YAML |

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

architecture diagram documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants