Task page Changes view: polish after #1003

クローズ
#1,016 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

関連するプルリクエストがすでにマージされています。

  • #1060 @usine-phildl による — マージ済み

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
35/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
github, react, typescript

調査の方向性

Start with the named entry points: changes.tsx, apps/server/src/http.ts, packages/github/src/files/files.ts, task.ts, harvestedAttemptChanges, and the two READMEs; inspect the review and tests for #1003 as well. The issue asks for a batch of UI, API, cache, model, and documentation follow-ups, with tests for GitHub 404, 422, and rate-limit responses. Done means every listed behavior is addressed and the related tests and copy are updated.

索引モデルが issue の本文から書いたものです。

説明

enhancement

Follow-ups from the review of #1003 (task page Changes view, #932), all P3; batch them in one PR.

  • "Checks: passed" and "Review: approved" stay visible when Compare is set to an attempt; they describe the PR head, not that attempt's commits. Hide or label them per selection.
  • With no recorded attempts, Compare is a dropdown with one option and is narrower than with attempts, so the layout shifts. Show plain text in that case.
  • The "Changes" disclosure uses the browser's default triangle while the file rows use chevron icons.
  • At phone width file paths are cut at the end ("src/transcript/reader/rea…"), hiding the file name. Truncate from the start or wrap.
  • apps/server/src/http.ts pullRequestFiles: GitHub 404 and 422 surface as 502 "GitHub returned HTTP status 404" (unknown commit, a force-pushed commit GitHub garbage-collected, an item that isn't a PR). Map them to a 404 envelope with a specific message; add tests for 404, 422 and rate limit.
  • packages/github/src/files/files.ts: a stale whole-PR selection returns 502 InvalidGitHubResponseError; a 409 describes the state.
  • Attempts that pushed nothing (base equals head) show in Compare with "No files changed"; filter them in harvestedAttemptChanges.
  • files.ts: exactly 300 compare files is flagged truncated; GitHub gives no total, so document it.
  • PRs polled before #1003 have no baseRefOid and show "Changes are available after…" until the PR changes; that copy isn't fact-first, and task.ts logs a warning on every task read for them (use debug, or refetch the payload once).
  • changes.tsx imports runtime values from @usine/github/files, which also defines the service and layer; a model-only subpath keeps server code out of the bundle.
  • The server files cache (128 entries, each up to 3,000 files with patches) has no byte bound.
  • The OpenAPI query parameter is named _tag, which leaks the discriminator into the public API.
  • apps/server/README.md and packages/orchestrator/README.md still say the range starts at the "first commit"; it starts at the recorded checkout base, and the whole-PR query needs base.
主要言語
TypeScript
スター
1
フォーク
0
平均マージ
3時間 23分
マージ済み PR(30日)
400

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

basaltbytes/usine のほかの issue

basaltbytes/usine の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。