Skip to content
Merged
Show file tree
Hide file tree
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
19,825 changes: 0 additions & 19,825 deletions .codeboarding/analysis.json

This file was deleted.

355 changes: 0 additions & 355 deletions .codeboarding/fingerprint.json

This file was deleted.

Binary file removed .codeboarding/static_analysis.pkl
Binary file not shown.
2 changes: 0 additions & 2 deletions .codeboarding/static_analysis.sha

This file was deleted.

36 changes: 0 additions & 36 deletions .github/workflows/codeboarding-sync.yml

This file was deleted.

30 changes: 0 additions & 30 deletions .github/workflows/codeboarding.yaml

This file was deleted.

65 changes: 65 additions & 0 deletions .github/workflows/codeboarding.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: CodeBoarding

on:
pull_request:
types: [opened, reopened, closed, synchronize]
issue_comment:
types: [created]
push:
branches: ['main']
workflow_dispatch:
inputs:
force_full:
description: 'Ignore the saved analysis and rebuild it from scratch (full analysis).'
type: boolean
required: false
default: false

# No workflow-level permissions: each job requests only what it needs (least
# privilege), so the default token starts with none.
permissions: {}

# Reviews queue per pull request, syncs per branch. Closing a pull request cancels its review.
concurrency:
group: codeboarding-${{ github.event.pull_request.number || github.event.issue.number || github.ref_name }}
cancel-in-progress: ${{ github.event_name == 'pull_request' && github.event.action == 'closed' }}

jobs:
review:
if: >
(github.event_name == 'pull_request' && github.event.action != 'closed' &&
github.event.pull_request.head.repo.full_name == github.repository) ||
(github.event_name == 'issue_comment' && github.event.issue.pull_request != null &&
startsWith(github.event.comment.body, '/codeboarding') &&
contains(fromJSON('["OWNER","MEMBER","COLLABORATOR"]'), github.event.comment.author_association))
runs-on: ubuntu-latest
timeout-minutes: 60
permissions:
contents: read # check out the repo + read the saved analysis (no writes in review mode)
pull-requests: write # post the architecture-diff PR comment
issues: write # the /codeboarding issue_comment trigger + comment API
id-token: write # mint a GitHub OIDC token for the free hosted tier (write is the only level for id-token)
actions: read # let a repeat review download the analysis an earlier run published, instead of re-deriving the whole PR
steps:
- uses: CodeBoarding/CodeBoarding-action@refactor/review-baseline-pipeline
with:
# CodeBoarding's free hosted tier. No secret to add: the run authenticates
# with the GitHub OIDC token that `id-token: write` above grants.
llm: hosted

sync:
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch'
runs-on: ubuntu-latest
timeout-minutes: 60
permissions:
contents: write # push the generated analysis to codeboarding/baseline
actions: read # continue from an analysis an earlier run published
id-token: write # identifies this repo to CodeBoarding's hosted tier
steps:
- uses: CodeBoarding/CodeBoarding-action@refactor/review-baseline-pipeline
with:
mode: sync
force_full: ${{ inputs.force_full || false }}
Comment on lines +61 to +62

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 Keep manual syncs targeted at main

When workflow_dispatch is launched with any branch other than main selected, omitting target_branch makes CodeBoarding use the event branch by default, whereas the deleted sync workflow explicitly passed target_branch: main. Consequently, a force-full or recovery run can analyze/sync the selected feature branch instead of refreshing the intended main baseline. The CodeBoarding input documentation confirms that target_branch defaults to the event branch; pass target_branch: main here or otherwise restrict dispatches to main.

Useful? React with 👍 / 👎.

# CodeBoarding's free hosted tier. No secret to add: the run authenticates
# with the GitHub OIDC token that `id-token: write` above grants.
llm: hosted
Loading