n8n へ送る: 後回しにした小さな問題 4 件を修正 #3

Merged
yoshikazu merged 1 commits from fix/n8n-minor into main 2026-10-12 23:43:49 +00:00
Owner

概要

#2 のレビューで後回しにした小さな問題 4 件を直した。

# 問題 修正
1 タスク名を入力した直後に「送る」を押すと 1 回目のクリックが効かない (change で画面全体を作り直し、ボタンが差し替わっていた) 変わった行の入力欄と送信ボタンの表示 (n8SyncSend) だけを更新し、ボタンは作り直さない
2 チケット選択の番号をエスケープしていない esc() を通す
3 長さ 0 分・24 時間超の区間が一覧に出て、n8n に断られる make_blocks で problem (送れない理由) を付け、画面ではチェック不可・印を表示、n8n_send でもエラーにする
4 items に dict でない項目があると HTTP 500 その項目に「項目の形が不正です」のエラーを付けて返す

テスト

  • python -W error::ResourceWarning -m unittest discover -s tests -v → 47 件すべて PASS (新規 5 件。修正前に失敗することを確認済み。0 分の区間は修正前は実際に送られていた)
  • 検証用ポート 8799 で画面を確認: 修正前はタスク名・チェックの変更でボタンが差し替わることを再現。修正後は入力直後のクリックが送信まで届く、同じセッションへの伝播、件数の更新、送れない理由の表示とチェック不可、番号のエスケープを確認 (本物の n8n には送っていない)

🤖 Generated with Claude Code

## 概要 #2 のレビューで後回しにした小さな問題 4 件を直した。 | # | 問題 | 修正 | |---|---|---| | 1 | タスク名を入力した直後に「送る」を押すと 1 回目のクリックが効かない (change で画面全体を作り直し、ボタンが差し替わっていた) | 変わった行の入力欄と送信ボタンの表示 (`n8SyncSend`) だけを更新し、ボタンは作り直さない | | 2 | チケット選択の番号をエスケープしていない | `esc()` を通す | | 3 | 長さ 0 分・24 時間超の区間が一覧に出て、n8n に断られる | `make_blocks` で `problem` (送れない理由) を付け、画面ではチェック不可・印を表示、`n8n_send` でもエラーにする | | 4 | `items` に dict でない項目があると HTTP 500 | その項目に「項目の形が不正です」のエラーを付けて返す | ## テスト - `python -W error::ResourceWarning -m unittest discover -s tests -v` → 47 件すべて PASS (新規 5 件。修正前に失敗することを確認済み。0 分の区間は修正前は実際に送られていた) - 検証用ポート 8799 で画面を確認: 修正前はタスク名・チェックの変更でボタンが差し替わることを再現。修正後は入力直後のクリックが送信まで届く、同じセッションへの伝播、件数の更新、送れない理由の表示とチェック不可、番号のエスケープを確認 (本物の n8n には送っていない) 🤖 Generated with [Claude Code](https://claude.com/claude-code)
yoshikazu added 1 commit 2026-10-12 23:23:22 +00:00
- タスク名・チェックの変更で画面全体を作り直さない (直後のクリックが失われていた)
- チケット選択の番号もエスケープする
- 長さ 0 分・24 時間超の区間は送れない理由を付け、画面でも送信でも外す
- items に dict でない項目があっても 500 にせず、その項目のエラーにする

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
yoshikazu merged commit 401462eed0 into main 2026-10-12 23:43:49 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: yoshikazu/chktime#3