Skip to content

Add CodeBoarding architecture analysis - #1

Open
ivanmilevtues wants to merge 2 commits into
mainfrom
codeboarding/setup-action
Open

Add CodeBoarding architecture analysis#1
ivanmilevtues wants to merge 2 commits into
mainfrom
codeboarding/setup-action

Conversation

@ivanmilevtues

Copy link
Copy Markdown
Member

This PR adds the CodeBoarding GitHub Action via two workflows:

  • codeboarding-sync.yml: on every push to main, commits
    .codeboarding/analysis.json (your architecture baseline + readable docs). This is
    what the CodeBoarding viewer opens.
  • codeboarding.yml: on every pull request, posts an architecture-diff comment and
    uploads that PR’s analysis as a build artifact for the viewer’s PR diff.

Both are needed: sync produces the baseline; review diffs against it.

Sync delivery

Sync commits the generated baseline directly to main.

Works out of the box

Just merge it: the Action runs on the free tier, with no extra setup. The
id-token: write permission lets it identify your repo to CodeBoarding’s hosted LLM,
metered against a weekly limit for the repository owner.

Want more, or unmetered, usage?

The workflows already wire two repository secrets, so add whichever you have under
Settings → Secrets and variables → Actions and the next run picks it up (no YAML edit):

  • OPENROUTER_API_KEY: your own OpenRouter key (BYO key).
  • CODEBOARDING_LICENSE: a CodeBoarding paid plan (unmetered).

A key wins if both are set; the license is used only when no key is set; with neither,
the free tier runs with nothing configured. For a non-OpenRouter provider (Anthropic,
OpenAI, Google, AWS Bedrock, …) see the
provider list, or re-run
setup from your CodeBoarding dashboard and pick one.

Opened for you by CodeBoarding.

@github-actions

github-actions Bot commented Aug 17, 2026

Copy link
Copy Markdown

CodeBoarding review

Status: 1 changed component

See the full change in CodeBoarding.

graph LR
    n_CLI_Core_Authentication_Manager["CLI Core #38; Authentication Manager"]
    n_Python_Serverless_Runtime["Python Serverless Runtime"]
    n_Python_Package_Distribution_Utility["Python Package Distribution Utility"]
    n_Development_Server_Orchestrator["Development Server Orchestrator"]
    n_Rust_Runtime_Bridge["Rust Runtime Bridge"]
    n_Build_Utilities_Asset_Tracing["Build Utilities #38; Asset Tracing"]
    n_Framework_Integration_IPC_Proxy["Framework Integration #38; IPC Proxy"]
    n_Binary_Compilation_Analytics_Plugin["Binary Compilation #38; Analytics Plugin"]
    n_CLI_Core_Authentication_Manager -- "orchestrates local development lifecycle" --> n_Development_Server_Orchestrator
    n_CLI_Core_Authentication_Manager -- "queries project framework metadata" --> n_Framework_Integration_IPC_Proxy
    n_Python_Package_Distribution_Utility -- "manages runtime package versions" --> n_Python_Serverless_Runtime
    n_Development_Server_Orchestrator -- "invokes build and tracing logic" --> n_Build_Utilities_Asset_Tracing
    n_Development_Server_Orchestrator -- "routes traffic through local proxy" --> n_Framework_Integration_IPC_Proxy
    n_Rust_Runtime_Bridge -- "defines runtime execution metadata" --> n_Build_Utilities_Asset_Tracing
    n_Framework_Integration_IPC_Proxy -- "forwards requests via IPC" --> n_Python_Serverless_Runtime
    n_Framework_Integration_IPC_Proxy -- "forwards requests via IPC" --> n_Rust_Runtime_Bridge
    n_Binary_Compilation_Analytics_Plugin -- "provides compiled CLI binaries" --> n_CLI_Core_Authentication_Manager
    classDef added fill:#1f883d,stroke:#0b5d23,color:#ffffff;
    classDef modified fill:#bf8700,stroke:#7d4e00,color:#ffffff;
    classDef deleted fill:#cf222e,stroke:#82071e,color:#ffffff,stroke-dasharray:5 3;
    class n_CLI_Core_Authentication_Manager modified;
Loading

download artifacts · run 32032555848

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: aad6711068

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@@ -0,0 +1,50 @@
name: CodeBoarding sync

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Add the required empty changeset

This commit only adds non-package workflow configuration but includes no .changeset/*.md entry, so the repository's enforce-changeset job will reject the PR. Add a changeset with empty frontmatter and a brief description of the workflow update.

AGENTS.md reference: AGENTS.md:L43-L48

Useful? React with 👍 / 👎.


on:
pull_request:
types: [opened, reopened, ready_for_review, closed]

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Trigger review analysis when a PR is synchronized

When an author pushes additional commits to an already-open PR, GitHub emits synchronize, but that event type is omitted here. Consequently, the architecture comment and artifact remain based on the opening snapshot until someone manually invokes /codeboarding or reopens the PR; include synchronize so normal PR updates are analyzed.

Useful? React with 👍 / 👎.

permissions: {}

concurrency:
group: codeboarding-${{ github.event.pull_request.number || github.event.issue.number }}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Prevent unrelated comments from canceling queued analyses

Because this workflow-level concurrency group is applied to every issue_comment event before the job's command filter is evaluated, ordinary comments also enter the PR's group. GitHub retains only one pending run per concurrency group and replaces an older pending run with the newest one, so if an analysis is running, a queued /codeboarding request can be canceled by the next unrelated comment; apply concurrency only after filtering the command or isolate comment commands in a separate workflow.

Useful? React with 👍 / 👎.

Comment on lines +23 to +24
pull-requests: write # post the architecture-diff PR comment
issues: write # the /codeboarding issue_comment trigger + comment API

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Preserve review output for fork-originated PRs

For pull_request runs originating from forks, GitHub downgrades the GITHUB_TOKEN to read-only regardless of the requested write scopes here, so the action cannot use the configured comment API to create or update its architecture-diff comment on community PRs. Route the privileged commenting step through a safe trusted follow-up workflow or a GitHub App rather than relying on write permissions in the untrusted PR run.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant