日本語 · English(未訳)

ADR-14: Modified は「逆にする」ではなく「上位窓内に留める」。上位窓は明示引数

判断: Modified 修飾を「処理を逆にする」とは定義しない。「素の規約を適用した結果が、基準点の属する 指定された上位窓の外に出るなら、その窓の内側で逆方向の有効点を探索する」と定義する。 そして Modified は「どの上位窓を越えさせないか」を明示引数として要求する。

背景: Modified Following の実体は、まず Following で送り、その結果が上位窓(営業日では月)を 跨いだら Preceding に切り替えて同じ窓内に引き戻す、というもの。本質は方向反転ではなく 「上位窓の内側に留める」こと。方向反転はその制約から導かれる従にすぎない。「逆にする」と定義すると、 反転した先もまた無効だった場合(多重無効日)に規則が破綻する。正しくは「上位窓内で、最初に 送ろうとした方向と逆向きに、有効な点を探し続ける」=探索の向きの固定である。 軸非依存にした瞬間、「どの上位窓に留めるか(月か週か四半期か日か)」は暗黙に決まらず明示が要る。 これは錨解決で確立した「窓相対は明示必須」原則のロール規約への適用。

却下した案: Modified を「上位軸に影響が出るなら処理を逆にする」と定義する案。多重無効日で 破綻し、上位窓の指定が宙に浮くため却下。

帰結: 規約体系は「素の二規約(Following/Preceding)+ 上位窓を引数に取る Modified 修飾」で閉じる。

ModifiedFollowing(boundary=月)   # 営業日: 月をまたがない
ModifiedFollowing(boundary=日)   # DST/夜間バッチ: 日をまたがない(翌日へ押し出さない)

営業日にも DST にも、同じ規約が軸非依存で乗る。