ArchyntArchynt.api
GitHub連携

マージされる前にアーキテクチャドリフトを止める

すべてのプルリクエストで、Archyntはベースコミットとヘッドコミットを分析し、両者の間の設計上の問題を比較し、結果を直接GitHubに公開します — 新しい循環依存やgod-serviceは、3スプリント後の不意打ちではなく、失敗するチェックとして現れます。

#482 — Ship inventory reservation from checkout
archynt/architecture · feature/inline-reservation → main
FAIL

New circular dependency: OrderService ↔ ShippingService

HIGH
ShippingService.java:88 — orderService.markShipped(orderId)

OrderController now depends on InventoryRepository directly

MEDIUM
OrderController.java:54 — inventoryRepository.reserve(...)
Resolved by this PR — PaymentService god-object coupling
GitHubのプルリクエストでアーキテクチャチェックの結果をコメントするArchyntボット

PRチェックの仕組み

01

GitHubがトリガー

pull_requestのwebhook(opened、synchronize、reopened)が自動的にチェックを開始します — ポーリングも、Archynt側からの手動トリガーも不要です。

02

diffではなくグラフを比較

ベースコミットとヘッドコミットの両方が完全なアーキテクチャグラフとして分析されます。チェックは生のコードdiffではなく、それぞれが生成する設計上の問題を比較します。

03

決定的な判定

新しい問題がなければPASS、PRがHIGH深刻度の問題を導入すればFAIL、それ以外はWARN — Archyntの他の部分で使われているのと同じ検出器で、LLMの呼び出しではありません。

04

GitHubネイティブなチェックラン

GitHub Appがリポジトリにインストールされていれば、結果はチェックラン(導入・解決された発見事項のmarkdown要約付き)として公開されます。

05

アプリなしでも動作

GitHub Appがなくても、設定済みのトークンがあれば結果はPRコメントとコミットステータスとして公開されます — ネイティブなチェックランのUIがないだけです。

06

プライベートリポジトリにも対応

GitHub Appのインストールトークンは分析用にプライベートリポジトリをクローンする際にも使われるため、別途認証情報は不要です。

自分のシステムで見る準備はできましたか?

分析を実行するか、直接組織のワークスペースに入ってください。