Skip to content

Conversation

mafreud
Copy link
Contributor

@mafreud mafreud commented Oct 4, 2025

  • Upgraded probot to version 14.0.2.
  • Updated @types/node to version 24.6.2.
  • Added new devDependencies: @vitest/coverage-v8, @vitest/ui, @vitest/utils, vite.
  • Updated nock to version 14.0.10 and smee-client to version 4.3.1.
  • Updated typescript to version 5.9.3 and vitest to version 3.2.4.

fix: add skipLibCheck to tsconfig.json for improved type checking performance

feat: add 'smee' to workspace settings in openci.code-workspace

Summary by CodeRabbit

  • チョア
    • 依存関係を更新(probot を含む)。古い開発依存を整理し、テスト/ビルド関連ツールを最新化。
    • Node エンジン要件は変更なし。
    • 一部のオーバーライド設定を削除し、解決戦略を簡素化。
  • ビルド/設定
    • TypeScript 設定を調整(型定義の検査をスキップ)し、開発ビルドの安定性と速度を改善。
  • 開発者体験
    • 開発環境のスペルチェック辞書を更新。

- Upgraded probot to version 14.0.2.
- Updated @types/node to version 24.6.2.
- Added new devDependencies: @vitest/coverage-v8, @vitest/ui, @vitest/utils, vite.
- Updated nock to version 14.0.10 and smee-client to version 4.3.1.
- Updated typescript to version 5.9.3 and vitest to version 3.2.4.

fix: add skipLibCheck to tsconfig.json for improved type checking performance

feat: add 'smee' to workspace settings in openci.code-workspace
Copy link

linear bot commented Oct 4, 2025

Copy link
Contributor

coderabbitai bot commented Oct 4, 2025

Walkthrough

  • openci-runner/github-apps/package.json: Probotを^14.0.2へ更新し、devDependenciesを全面更新・拡充。overridesを削除。Nodeエンジンは変更なし。
  • openci-runner/github-apps/tsconfig.json: compilerOptionsにskipLibCheck: trueを追加。
  • openci.code-workspace: cSpell.wordsに"smee"を追加。

Changes

Cohort / File(s) Summary
GitHub Apps ツール/型設定
openci-runner/github-apps/package.json, openci-runner/github-apps/tsconfig.json
Probotを^14.0.2へバンプ。devDependenciesをVitest/Vite系・型・HTTPモック等で更新追加(@types/node, vitest, @vitest/*, vite, nock, smee-client, typescript)。overrides削除。tsconfigにskipLibCheck: true追加。
Workspace 設定
openci.code-workspace
cSpell辞書に"smee"を追加。

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Poem

ぴょんと跳ねて依存を整え
Probot十四、風は新し
型は軽く、テストは速く
smeeの綴りも忘れなし
草むらでViteがささやく――
「準備完了、走ろうCI!」

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed タイトルはpackage.jsonの依存関係とdevDependenciesの更新というプルリクの主要な変更点を正確かつ簡潔に表現しており、余計な情報も含んでいないため適切です。
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch op-292

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

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 582be8c and d61572a.

⛔ Files ignored due to path filters (1)
  • openci-runner/github-apps/package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (3)
  • openci-runner/github-apps/package.json (1 hunks)
  • openci-runner/github-apps/tsconfig.json (1 hunks)
  • openci.code-workspace (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: deploy-firebase-functions-dev
🔇 Additional comments (2)
openci.code-workspace (1)

80-80: LGTM!

smee-clientの依存関係更新に合わせて、スペルチェック辞書に"smee"を追加しています。変更は適切です。

openci-runner/github-apps/package.json (1)

19-27: 依存関係のバージョンはすべてnpm上に存在し、既知の脆弱性も確認されませんでした。

},
"dependencies": {
"probot": "^13.4.5"
"probot": "^14.0.2"
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

Probot 14.0.2への破壊的変更を確認してください。

Probotをv13からv14へのメジャーバージョンアップグレードしています。破壊的変更が含まれている可能性が高いため、以下を確認してください:

  • APIの変更による既存コードへの影響
  • 設定ファイルの変更要件
  • 非推奨機能の削除

以下のスクリプトでProbotのリリースノートと破壊的変更を確認できます:


🏁 Script executed:

#!/bin/bash
# Probot v14の破壊的変更とリリースノートを確認

# GitHubのリリースノートを取得
gh api repos/probot/probot/releases --jq '.[] | select(.tag_name | startswith("v14")) | {tag: .tag_name, name: .name, body: .body}' | head -50

# v13とv14の間の主な変更を検索
gh api graphql -f query='
{
  repository(owner: "probot", name: "probot") {
    releases(first: 20, orderBy: {field: CREATED_AT, direction: DESC}) {
      nodes {
        tagName
        name
        description
        createdAt
      }
    }
  }
}'

Length of output: 28458


メジャーバージョン14への移行対応を実施してください。

  • ESM専用化: package.jsonに "type": "module" を追加し、CommonJSの require()import に置換
  • TypeScript設定を更新: "module":"node16" / "moduleResolution":"node16"(またはTS5.9+で "node20")に変更
  • Webhook型定義を @octokit/openapi-webhooks-types-migration からインポート
  • REST API呼び出しを context.octokit.rest.* に変更
  • 内蔵Expressサーバーが削除されたため、必要に応じて express をインストールし独自サーバー設定へ移行
  • createNodeMiddleware()await付き非同期呼び出しに更新
  • デフォルトのリスニングホストが localhost になったため、必要時は HOST 環境変数または --host フラグを指定
  • 必要に応じて @sentry/nodeioredis を個別インストール
  • Node.jsの最低サポートバージョンを 20.18+ または 22+ に合わせ、engines フィールドを確認
🤖 Prompt for AI Agents
In openci-runner/github-apps/package.json around line 16, update the project to
be compatible with Probot v14: add "type": "module" to package.json and convert
all CommonJS require() usages to ES module imports; update tsconfig to use
"module":"node16" and "moduleResolution":"node16" (or "node20" if using TS
5.9+); switch webhook types to import from
@octokit/openapi-webhooks-types-migration; change REST calls to use
context.octokit.rest.*; install and configure express if you depended on the
built-in Express server and migrate server code accordingly; make
createNodeMiddleware() an awaited async call; ensure the default host behavior
is handled via HOST env or --host flag where needed; add @sentry/node and
ioredis to dependencies if used; and verify engines field requires Node 20.18+
or 22+.

Comment on lines +18 to +20
"forceConsistentCasingInFileNames": true,
// TODO(someone): remove this
"skipLibCheck": true,
Copy link
Contributor

@coderabbitai coderabbitai bot Oct 4, 2025

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

TODOコメントを明確化し、技術的負債として追跡してください。

skipLibCheck: trueは依存関係の型チェックをスキップするため、ビルド時間は改善されますが、依存関係の型エラーを隠蔽する可能性があります。大規模な依存関係更新時の一時的な回避策としては妥当ですが、TODOコメントが曖昧です。

以下の対応を推奨します:

  • TODOに担当者と期限を追加(例:TODO(mafreud, 2025-10-31): remove this after verifying all type definitions
  • または、この技術的負債を追跡するためのissueを作成

この技術的負債を追跡するissueの作成をお手伝いしましょうか?

🤖 Prompt for AI Agents
In openci-runner/github-apps/tsconfig.json around lines 18 to 20, the TODO
comment for "skipLibCheck": true is ambiguous—update the TODO to clearly track
this technical debt by adding an owner and a deadline (e.g., TODO(mafreud,
2025-10-31): remove this after verifying all type definitions) or replace the
inline TODO with a reference to a created issue (e.g., TODO: see ISSUE-1234) and
then create that issue describing why skipLibCheck was added, the verification
steps, and the planned removal timeframe so the debt is tracked and actionable.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@coderabbitai yes。issue作成をお願い。

Copy link
Contributor

Choose a reason for hiding this comment

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

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Create a GitHub issue to track the skipLibCheck technical debt

gh issue create \
  --title "技術的負債: tsconfig.jsonのskipLibCheckを削除する" \
  --body "## 概要
openci-runner/github-apps/tsconfig.jsonに\`skipLibCheck: true\`が追加されましたが、これは依存関係の型チェックをスキップするため、依存関係の型エラーを隠蔽する可能性があります。

## 背景
PR #465での大規模な依存関係更新時に、ビルド時間を改善するための一時的な回避策として追加されました。

## 対応内容
すべての型定義が正しいことを確認した後、この設定を削除する必要があります。

## 関連リンク
- PR: https://github.com/open-ci-io/openci/pull/465
- コメント: https://github.com/open-ci-io/openci/pull/465#discussion_r2403787258

cc: @mafreud" \
  --assignee mafreud

Length of output: 47


@mafreud issueを作成しました!

📝 Issue #466: 技術的負債: tsconfig.jsonのskipLibCheckを削除する

このissueには以下の情報が含まれています:

  • skipLibCheck: trueの追加背景と影響
  • 削除前に確認すべき内容
  • このPRとコメントへのバックリンク

担当者として設定されていますので、型定義の確認が完了したら対応をお願いします。

(ノ◕ヮ◕)ノ*:・゚✧

@mafreud mafreud merged commit a060eaf into develop Oct 4, 2025
6 checks passed
@mafreud mafreud deleted the op-292 branch October 4, 2025 06:24
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