slip-estimate-gap
一次対応
伝票画面で「差ありのみ」を押し、該当の確定伝票を開いて内訳のコマ別 / 料金項目別で見込みと確定の差がどこにあるかを見る。インバランスなら計画・30分電力量・単価のどれか(OCCTO が計画を受け付けていない、TSO が 30分電力量を訂正した、ICS 単価の改定)、JEPX なら清算書と自社約定(plan_action_exec の取りこぼし)、EPRX ならペナルティ・返還(見込みに無い)を疑う。相手方の誤りなら問い合わせ、自社側なら原因を記録してから resolve する
PagerDuty に出る文
インシデントの summary。<…> はそのとき埋まる値。workers/ops-monitor-batch/src/check-slip-estimate-gap.ts から抽出している。
- [<g.siteName>] 伝票の見込みとの差: <slipLabel(g)> <g.deliveryPeriodFrom.slice(0, 7)> <signedYen(g.gapYen)><ratio>
custom_details
インシデントが持つフィールド。コードが書く順。...helper() は 別モジュールがまとめて足すグループ。
...incidentTarget()envaggregator_codesegmentkinddelivery_period_fromdelivery_period_toconfirmed_yenestimate_yengap_yentolerance_yenslip_id
見ているのは、届いた確定伝票と、J-EMS が自社の記録から計算した見込み伝票(JEMS-0092)の差である。差が ¥1,000 と見込みの 3% の大きい方を超え、かつ確定・見込みとも実需給期間の末日まで揃っている(settled_through が期間末)ものだけを、伝票ごとに 1 回だけ発報する。判定は agg.ext_billing_slip_estimate_gap_view にあり、伝票画面の「差ありのみ」と同じ行を読む。
custom_details で見るのは次のもの。
gap_yen— 確定 − 見込み(受取を正)。負なら見込みより払いが多い、または受取が少ないconfirmed_yen/estimate_yen/tolerance_yen— 差の内訳と許容幅segment/kind/delivery_period_from— どの伝票か。伝票画面ではサイト・算定月・種別で開ける
伝票を開き、内訳のコマ別 / 料金項目別で差のあるコマや項目を見る。種別ごとの典型は次のとおり。
- インバランス — OCCTO が計画を受け付けていない(
occto_postの NG)、TSO が 30分電力量を訂正した、ICS 単価が改定された、損失率の推定がずれた - JEPX — 清算書にある約定が
plan_action_execに無い(取りこぼし、#3347) - EPRX — ペナルティ・返還は見込みに無いので、確定にあればそのまま差になる
差が相手方の誤りなら問い合わせる。自社側の記録の誤りなら直し、翌朝の見込み再計算(generate-ext-billing-estimate)で見込みが動くのを確認する。どちらでも、原因をインシデントに書いてから手で resolve する(この発報は自動で resolve しない)。
2026-09 の JEPX 確定は、09-30 がまだ精算されていない時点で作られ、09-30 の分だけ短かった(見込みとの差 3〜25%)。期間末まで揃っていない確定は判定しないので、この形では発報しない。