For AI agents: the complete documentation index is available at https://open-spaced-repetition.github.io/ts-fsrs/ja-JP/llms.txt, the full documentation bundle is available at https://open-spaced-repetition.github.io/ts-fsrs/ja-JP/llms-full.txt, and this page is available as Markdown at https://open-spaced-repetition.github.io/ts-fsrs/ja-JP/guide/middleware/built-in.md.

組み込みポリシー

以下は ts-fsrs/middlewares と ts-fsrs のルートからエクスポートされています。

ミドルウェア動作
schedulerDesiredRetentionMiddleware間隔の計算前に設定の desiredRetention を適用します。範囲は (0, 1) です。
schedulerLearningStepsMiddlewareenableShortTerm が有効な場合に明示的な learningSteps と relearningSteps を適用し、learningStep を管理します。この設定にかかわらず、モデルによる間隔も含め、最終間隔が graduatingInterval(既定 1 日)未満なら Learning/Relearning に割り当てます。ステップを設定している場合、卒業と Review のカードの Hard、Good、Easy は少なくとも graduatingInterval を使い、allowModelOverride はより長いモデル間隔を現在のステップの代わりに使います。
schedulerFuzzingMiddlewareenableFuzz が有効な場合に間隔を分散します。cardId と復習回数を使うため結果を再現できます。createSchedulerFuzzingMiddleware() で範囲や乱数生成器を指定できます。
schedulerMaximumIntervalMiddleware日単位の間隔を maximumInterval 以下に制限します。呼び出しから戻る際、明示的な学習ステップはこの上限を上書きできます。
schedulerStatsMiddlewarereps と lapses を管理します。リセット時に消去するかは clearStatsOnForget で指定します。Review 状態のカードを Again と評価した場合に忘却を一回と数えます。
schedulerMonotonicIntervalMiddlewaremaximumInterval の範囲内で、評価ごとの日単位の間隔を順序付けます。上限に達すると同じ間隔になることがあります。
schedulerScheduledDaysMiddleware最終間隔を非負の scheduledDays としてカードに保存し、変更前の値を revlog に記録します。既定の fractionalDays: false では日数を切り捨て、一日未満のステップは 0 になります。true では 0.5 などの小数の日数を保持します。
schedulerLeechMiddleware忘却回数が正の leechThreshold の倍数に達するたびに、scheduleStatus を suspended にします。デフォルトの閾値 0 では無効です。カード選択時にこの状態を考慮するのはアプリケーションの役割です。
schedulerCostAdrMiddlewarecostAdrPolicy と goalCostWeight を使い、記憶状態と復習コストに応じて保持率を調整します。スケジューラの構成時は schedulerDesiredRetentionMiddleware の代わりに使用し、併用しないでください。

DefaultScheduler には最初の七つが含まれています。順序は目標保持率 → fuzzing → 統計 → scheduled days → 学習ステップ → 最大間隔 → 単調間隔です。Leech は独自の定義を組み立てる際に必要に応じて追加します。順序が重要な理由はライフサイクル、ミドルウェアの実行方法は概要を参照してください。

既成のスケジューラを使う場合はクイックスタート、必要なポリシーを組み合わせる場合はアーキテクチャを参照してください。