最小パッケージエイジによるインストールの挙動
Minimum Package Ageポリシーは、インストール可能になるまでにバージョンが存在していなければならない期間を設定します。例えば、最小エイジが24時間の場合、公開されてから24時間未満のバージョンは新しすぎると見なされます。
バージョンが新しすぎる場合の挙動は、インストールが特定バージョンを要求したか、最新バージョンを要求したかによって異なります。
特定バージョンが要求された場合
Section titled “特定バージョンが要求された場合”インストールが正確なバージョンを固定して指定している場合、Aikidoはその正確なバージョンを許可するか拒否するかしかできません。フォールバック先がないためです。
- バージョンが最小エイジを満たしている → インストールが許可されます。
- バージョンが新しすぎる → インストールがブロックされ、何が保留されたかを確認できるイベントが表示されます。
最新バージョンが要求された場合
Section titled “最新バージョンが要求された場合”インストールが最新バージョンを要求する場合、Aikidoにはフォールバックの余地があります。完全にブロックする代わりに、最小エイジを満たす最新のバージョンを返します。
- 最新バージョンが最小エイジを満たしている → 最新バージョンが返されます。
- 最新バージョンが新しすぎる → Aikidoは最小エイジを満たす最新のバージョンにフォールバックし、そのバージョンが代わりに返されます。
これにより、コミュニティによる検証がまだ行われていない新しすぎるバージョンを保留しつつ、インストールが機能し続けるようになっています。
flowchart TD A[Install request] --> B{Specific version<br/>or latest?}
B -- Specific version --> C{Meets minimum age?} C -- Yes --> D[Allowed] C -- No --> E[Blocked<br/>event shown]
B -- Latest --> F{Latest meets<br/>minimum age?} F -- Yes --> G[Latest version returned] F -- No --> H[Fall back to newest version<br/>that meets minimum age]
classDef block fill:#ffd6d6,stroke:#c0392b; classDef allow fill:#d6f5d6,stroke:#27ae60; class E block; class D,G,H allow;