Skip to content

ci: add advisory Arcade architecture analysis - #43

Draft
tuannx wants to merge 1 commit into
hoangtien2k3:mainfrom
tuannx:agent/add-arcade-architecture-analysis
Draft

ci: add advisory Arcade architecture analysis#43
tuannx wants to merge 1 commit into
hoangtien2k3:mainfrom
tuannx:agent/add-arcade-architecture-analysis

Conversation

@tuannx

@tuannx tuannx commented Jul 20, 2026

Copy link
Copy Markdown

What changed

  • add an advisory Arcade architecture analysis workflow for pull requests, main pushes, and manual runs
  • pin both the composite action and installed package to released version v0.1.1
  • analyze Java with the package-based recovery algorithm, upload the report, and store a default-branch baseline
  • keep secondary analyses disabled to reduce CI time and update one idempotent PR summary when write access is available

Why

This makes architectural drift visible alongside the existing build workflow without changing application behavior or introducing a merge threshold. Reviewers can inspect component and dependency changes as supporting evidence rather than treating a single score as a pass/fail gate.

The issues: write and pull-requests: write permissions are used only for the idempotent analysis comment. The action skips comments for forked pull requests, where GitHub does not grant a write token.

Impact

This is CI-only and advisory. It does not modify the Java build, production code, or deployment flow.

Validation

  • actionlint passed for the workflow
  • released arcade-agent[languages]==0.1.1 completed a local Java/package baseline against 138c63e3b04d
  • baseline recovered 944 entities, 2,167 dependency edges, and 14 components

The detailed baseline interpretation is included in a separate PR comment.

@coderabbitai

coderabbitai Bot commented Jul 20, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: a699716a-18b9-48a2-afbe-1a8a3638ce44

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@tuannx

tuannx commented Jul 20, 2026

Copy link
Copy Markdown
Author

Arcade baseline observation

I ran the released arcade-agent[languages]==0.1.1 locally against base commit 138c63e3b04d with language=java and the pkg recovery algorithm.

Signal Result
Entities 944
Dependency edges 2,167
Recovered components 14
Balanced Architecture Score 0.6853

The most actionable review prompt was a reported dependency cycle across Authservice, Commonlib, Media, and Rating. This should be validated against the intended service boundaries before opening a refactor issue.

The analyzer also reports repeated Controller, Service, and Repository patterns as scattered functionality. In a microservice repository those names are often intentional conventions, so I would not use the absolute smell count or score as a merge gate. The useful signal is the delta from the stored main baseline: new cycles, newly overloaded hubs, or worsening component boundaries introduced by a PR.

This workflow is therefore configured as an advisory check with reports and a baseline, not as a pass/fail quality gate.

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