Move ExecutionStatus and ITargetModel into the Fallout.Core.Execution namespace
メンテナーはふだん 2 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 64/100
- issue の種類
- リファクタリング
- 明瞭さ
- 明確に書かれている
- 活発さ
- 静か
- 技術スタック
- csharp
調査の方向性
まず src/Fallout.Core/Execution/ExecutionStatus.cs、src/Fallout.Core/Execution/ITargetModel.cs、tests/Fallout.Core.Specs/ArchitectureFitnessSpecs.cs から始め、次に migration step の recipe と RewriteCsFilesStep を読みます。namespace と architecture guard を更新し、tests/Fallout.Migrate.Specs に using と fully qualified rewrite のカバレッジ、および変更されていないファイルのケースを追加して、CHANGELOG.md に breaking change を記録します。すべての受け入れ基準を満たせば完了です。
索引モデルが issue の本文から書いたものです。
説明
Problem
ExecutionStatus and ITargetModel ship in Fallout.Core.dll but declare
namespace Fallout.Common.Execution (src/Fallout.Core/Execution/ExecutionStatus.cs:1,
src/Fallout.Core/Execution/ITargetModel.cs:3). Core is the innermost layer. A Core type
sitting under an outer layer's namespace inverts the layering in naming. Both types are
public, so correcting this breaks consumers and must ride a yearly major.
Outcome
Both types live under Fallout.Core.Execution. The architecture fitness test that guards
this rule has no exceptions left. Consumers upgrade by running fallout-migrate, without
hand-editing their own source.
Acceptance criteria
-
ExecutionStatusandITargetModeldeclarenamespace Fallout.Core.Execution. -
GrandfatheredNamespacesintests/Fallout.Core.Specs/ArchitectureFitnessSpecs.cs
is empty, and the filter that reads it is removed. -
fallout-migraterewrites the old namespace in consumer*.csfiles. The rule goes
intoRewriteCsFilesStep, the step that already covers*.cs— not a new step. See
the migration step recipe. -
tests/Fallout.Migrate.Specscovers that rewrite: theusingform, the fully
qualified form, and a file that must not be touched. -
CHANGELOG.mdrecords the break under the next yearly major. It gives the old and
new full type names and points atfallout-migrate.
Notes
The rule and the frozen exception list come from #586, which moved Fallout's constants into
Core. Breaking changes follow AGENTS.md rule 1. A shim cannot cover this rename: type
forwarders keep the full type name, and ExecutionStatus is an enum, so it cannot be
aliased. That makes the fallout-migrate rule the migration path, not an optional extra.
- 主要言語
- C#
- スター
- 172
- フォーク
- 21
- 平均マージ
- 4日 38分
- マージ済み PR(30日)
- 14
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
Fallout-build/Fallout のほかの issue
-
bug needs-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
Fallout-build/Fallout#729 ·
メンテナーはふだん 2 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
Fallout-build/Fallout#708 ·
メンテナーはふだん 2 日以内に返信
-
.\build.ps1 in its current state isn't capable for :add-package command対応中かも @ITaluone が 46 日前に担当しました。 オープンbug needs-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
Fallout-build/Fallout#670 ·
メンテナーはふだん 2 日以内に返信
-
CD enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
Fallout-build/Fallout#649 ·
メンテナーはふだん 2 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
Fallout-build/Fallout#630 · コメント 1 件 · リアクション 1 件 ·
メンテナーはふだん 2 日以内に返信
Fallout-build/Fallout の issue をすべて見る
似ている issue
-
track:release
難易度 2/5 1〜3時間 初心者へのやさしさ 80/100
-
[Bug] [Go] Ack returns nil when the server answers with a non-OK status対応中かも @leizhiyuan が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
apache/rocketmq-clients#1465 ·
メンテナーはふだん 2 日以内に返信
-
fix(testing): HeadlessTerminal disposes services synchronously対応中かも @zidad が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 69/100
RazorConsole/RazorConsole#388 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
starlinghq/starling#209 ·
メンテナーはふだん 1 日以内に返信