Skip to content

Slack 経路の縮約: widget 直送モード削除と SLACK_IMAGE_MODE の 2 種化(link/off) #97

Description

@kosako

背景

アーキテクチャレビュー(2026-07-02)の削除提案。機能の引き算で維持コストを下げる。Codex との議論で合意済み。

PR-A: deliveryMode "slack-webhook"(ブラウザ → Slack 直送)の削除

  • widget/src/index.js:958-1053 の直送実装 ~90 行 + UI 分岐(171-183, 402-406)
  • README 自身が制約を列挙している: webhook URL がブラウザに露出 / 画像を送れない / no-cors で成否も取れない(README.md:264-274)
  • receiver mode が上位互換。receiver を立てない用途は download + onSubmit で代替可能
  • widget 側の Slack Block Kit 二重実装(監査 L-33)が丸ごと消える副次効果

PR-B: SLACK_IMAGE_MODE を 5 種(auto/link/block/upload/off)→ 2 種(link/off)に縮約

  • Slack file upload 経路だけで ~150 行(maybeUploadScreenshotToSlack / postSlackApi / uploadBinary、server/receive.js:1230-1383)+ block 判定 ~23 行
  • SVG screenshot は Slack の image block でほぼレンダリングされず、upload は SLACK_BOT_TOKEN + files:write 前提の重装備
  • Codex の「receiver が private URL の環境では upload に価値がある」という条件付き反対を受け、一度 link/off に畳み、実需要が出たら upload だけ戻す方針で合意
  • 既存設定の後方互換: 廃止 mode 値(auto/block/upload)は link に fallback + 起動時警告

受け入れ条件

  • README(日英)から該当機能の記述を削除/更新
  • 関連テスト・dist の同期更新
  • 削減行数の目安: 計 ~240 行

サイズ: S × 2(独立 PR)。他スライスの合間にいつでも入れられる。

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions