Skip to content

chore: bump CodeBoarding version to 0.13.7 - #76

Merged
ivanmilevtues merged 1 commit into
mainfrom
release/action-0.13.7
Aug 7, 2026
Merged

chore: bump CodeBoarding version to 0.13.7#76
ivanmilevtues merged 1 commit into
mainfrom
release/action-0.13.7

Conversation

@ivanmilevtues

Copy link
Copy Markdown
Member

Update action default/code example to reference CodeBoarding 0.13.7.

@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: 0c4035ee84

ℹ️ 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".

Comment thread action.yml Outdated
Comment on lines 428 to 429
rm -rf "$OUTPUT_DIR"
mkdir -p "$OUTPUT_DIR" "$OUTPUT_DIR/health"

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 Preserve user-authored CodeBoarding configuration

Every sync run deletes the entire .codeboarding directory and reconstructs only generated artifacts before staging it. Repositories with .codeboarding/.codeboardingignore, health/.healthignore, health_config.json, or other user-authored configuration will therefore commit their deletion on the next sync, changing future analysis scope. Remove only owned generated files or restore the configuration files before staging.

Useful? React with 👍 / 👎.

Comment thread action.yml Outdated
Comment on lines +496 to +499
PR_URL="$(gh pr list --repo "$REPO" --head "$SYNC_PR_BRANCH" --base "$TARGET_BRANCH" --state open --json url --jq '.[0].url // empty' || true)"
if [ -z "$PR_URL" ]; then
gh pr create --repo "$REPO" --head "$SYNC_PR_BRANCH" --base "$TARGET_BRANCH" --title "$PR_TITLE" --body "CodeBoarding sync PR for ${TARGET_BRANCH}." >/dev/null 2>&1 || true
PR_URL="$(gh pr list --repo "$REPO" --head "$SYNC_PR_BRANCH" --base "$TARGET_BRANCH" --state open --json url --jq '.[0].url // empty' || true)"

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 Pass the push token to GitHub CLI

When sync_strategy=pull_request, these gh pr commands have no authentication environment variable: push_token exists only as a shell variable used in the Git remote URL. The checked gh help environment documentation identifies GH_TOKEN or GITHUB_TOKEN as the authentication variables, so on a normal hosted runner the list/create calls fail; because their errors are swallowed, the branch is pushed and committed=true is reported without opening the promised rolling PR.

Useful? React with 👍 / 👎.

Comment thread action.yml Outdated
Comment on lines +769 to +771
```mermaid
$(cat "${{ steps.review_render.outputs.diagram_md }}")
```

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 Build the review comment body before posting it

For every successful review, message is an action input rather than a shell script, so $(cat "...") is posted literally instead of reading the diagram file. Additionally, diff_to_mermaid.py already writes a complete fenced ```mermaid block, while this input adds another fence around it. The sticky comment therefore cannot contain a valid rendered architecture diagram; pass the generated file through the action's path input or construct a body file first.

Useful? React with 👍 / 👎.

Comment thread action.yml Outdated
Comment on lines 281 to 283
if [ -z "${ACTIONS_ID_TOKEN_REQUEST_URL:-}" ] || [ -z "${ACTIONS_ID_TOKEN_REQUEST_TOKEN:-}" ]; then
echo "::error::Missing OIDC token. Add permissions: id-token: write." && exit 1
fi

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 Retain the documented non-OIDC credential path

Users following the documented llm_api_key/bring-your-own-provider setup commonly omit id-token: write, but this change removes that input and now unconditionally fails whenever the OIDC variables are absent. Those existing workflows receive an unexpected-input warning and then stop here before analysis, even though README still explicitly says OIDC can be omitted when an API key is supplied. Either restore direct-key handling or update the supported contract without breaking those runs.

Useful? React with 👍 / 👎.

Comment thread action.yml Outdated
Comment on lines +438 to +440
git config user.name "codeboarding-review[bot]"
git config user.email "codeboarding-review[bot]@users.noreply.github.com"
git add "$OUTPUT_DIR" 2>/dev/null || true

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 Stage the generated architecture document

The render step writes docs/development/architecture.md, but the commit step stages only .codeboarding. Consequently the architecture document is never included in either direct sync commits or rolling sync PRs; if it is the only meaningful change, the cached-diff check also exits as though nothing changed. Stage this file alongside the generated output directory.

Useful? React with 👍 / 👎.

Comment thread scripts/run_local.sh Outdated
Comment on lines +153 to +154
if [ "$NEED_FULL" = "true" ]; then
rm -rf "$HEAD_DIR" && mkdir -p "$HEAD_DIR"

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 the head checkout during local full fallback

In the local harness, HEAD_DIR is the registered worktree containing the PR source. When incremental analysis requests a full fallback, this deletes that checkout and recreates it using only analysis artifacts copied from the base output; run_full then analyzes HEAD_DIR, which no longer contains the head repository's code. Keep the checkout intact and use a separate output directory so fallback analyzes the requested head revision.

Useful? React with 👍 / 👎.

Comment thread action.yml Outdated
Comment on lines +165 to +167
echo "target_sha=$GITHUB_SHA" >> "$GITHUB_OUTPUT"
echo "target_branch=$REF_NAME" >> "$GITHUB_OUTPUT"
echo "checkout_ref=$GITHUB_SHA" >> "$GITHUB_OUTPUT"

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 the intended target for manual rolling syncs

The guard now hardcodes the sync target branch to github.ref_name. For a workflow_dispatch launched from a feature ref with sync_strategy=pull_request, this opens the rolling baseline PR into that feature branch rather than main; the removed workflow wiring explicitly targeted main for this dogfood scenario. Retain a configurable target branch or resolve manual rolling syncs to the intended default branch.

Useful? React with 👍 / 👎.

Comment thread action.yml
Comment on lines 442 to 446
if git diff --cached --quiet; then
echo "::notice::Generated architecture is unchanged; nothing to commit."
reconcile_stale_sync_pr
echo "files_written=${#new_md[@]}" >> "$GITHUB_OUTPUT"
echo "::notice::Generated architecture is unchanged."
echo "files_written=0" >> "$GITHUB_OUTPUT"
echo "committed=false" >> "$GITHUB_OUTPUT"
exit 0

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 Close obsolete rolling sync PRs on a no-op

With sync_strategy=pull_request, a no-op can occur after an earlier unmerged sync PR became obsolete—for example, source changes produced a baseline PR and were then reverted before that PR was merged. This early exit leaves the old sync branch and PR open, so it can still be merged and install a baseline that no longer represents the target branch. Reconcile or delete the machine-owned branch before returning when the freshly generated artifacts match the target.

Useful? React with 👍 / 👎.

Comment thread action.yml Outdated
Comment on lines +721 to +726
N_CHANGED="$(jq -r '.n_changed' "$META")"
TRUNCATED="$(jq -r '.truncated | ascii_downcase' "$META")"
echo "diagram_md=$DIAGRAM_OUT" >> "$GITHUB_OUTPUT"
echo "n_changed=$N_CHANGED" >> "$GITHUB_OUTPUT"
echo "truncated=$TRUNCATED" >> "$GITHUB_OUTPUT"
echo "rendered=true" >> "$GITHUB_OUTPUT"

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 Propagate the renderer's actual rendered status

The renderer emits rendered: false and writes an empty file when even its changed-only fallback cannot fit GitHub's limits or when there are no drawable components, but this step ignores that metadata and unconditionally exports rendered=true. Downstream steps then upload and post an empty Mermaid payload as if rendering succeeded. Read .rendered from diagram_meta.json and gate the comment on that value.

Useful? React with 👍 / 👎.

Comment thread action.yml Outdated

See the [setup guide](https://github.com/CodeBoarding/CodeBoarding-action#more-usage) for the exact workflow snippet.
**Hosted webview:** [open artifact](${{ steps.upload_review_artifact.outputs.artifact-url }})

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 Link to the hosted webview instead of the artifact page

A successful review labels this as a hosted webview but links directly to upload-artifact's artifact-url, which opens GitHub's artifact page/download rather than the CodeBoarding web application. The removed webview_base_url composition means users no longer get the promised interactive head-vs-base view, and unauthenticated viewers cannot access the artifact URL at all. Construct the hosted webview URL from the artifact metadata or describe this accurately as an artifact download.

Useful? React with 👍 / 👎.

@ivanmilevtues
ivanmilevtues force-pushed the release/action-0.13.7 branch from 0c4035e to 2e9c84f Compare August 7, 2026 09:03
@ivanmilevtues
ivanmilevtues merged commit 2e65430 into main Aug 7, 2026
2 checks passed
@ivanmilevtues
ivanmilevtues deleted the release/action-0.13.7 branch August 7, 2026 09:09
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