ADR-08: 窓をパーティション型と区間列型の二種に分ける
判断: 窓を、軸を余さず分割する「パーティション型」と、マーカーで切る「区間列型」の
二種の別演算子に分ける。同一の window に押し込めない。保証する性質(網羅か否か)で型を割る。
背景: 月のように軸を完全分割する窓と違い、「決算期ストリームで区切る」ようなマーカー型は、 マーカー間に要素ゼロの窓ができたり、最初のマーカー前・最後のマーカー後にどの窓にも属さない日が 残ったりする。月分割では起きなかった病理。これを曖昧に統一すると空窓と漏れの扱いが定まらない。
却下した案: 窓を一種類に統一する案。網羅性の有無を型で区別できず、自前暦の検証も書けないため却下。
帰結: パーティション型窓は「軸の網羅・無重複」が機械的に検査可能になる(不変条件 I5)。 自前暦の整合性検証者の不在(暗黙のテストオラクルが無い問題)を、この検査が部分的に補う。
追記(2026-08-17・ADR-48): 二種の別は保証する性質(I5=網羅・無重複)の別であり、演算子の 二本立て(within=窓名/segmentBy=マーカー)は生成・束ねの引数種別の別である。I5 検査が実効 被覆域上で立つ segmentBy 製窓列(実効パーティション・glossary 新設)は、受理の文脈(within の w・split の親と by:)ではパーティション型として扱う——gregorian.md §4.5「パーティション性は生成語 でなく検査で立つ」の一般化(split 側の締めは ADR-48)。