sync: update from private repo (2336949a)
CI / build-and-test (push) Canceled after 0s

This commit is contained in:
oss-sync
2026-09-17 11:29:31 +00:00
parent 28f74c4e37
commit 57702b4f34
2139 changed files with 321270 additions and 17494 deletions
+34 -1
View File
@@ -1,4 +1,4 @@
# カレンダーツール(AddCalendarEvent / ListCalendarEvents)
# カレンダーツール(AddCalendarEvent / ListCalendarEvents / DeleteCalendarEvent)
スペース別カレンダーに「予定」を読み書きするツール。予定は受動的なエントリで、
cron の定期タスク(`scheduled_tasks`)とは別概念(予定は実行しない)。
@@ -39,9 +39,42 @@ AddCalendarEvent({ title: "現地出張", date: "2026-07-10", end_date: "2026-07
範囲を省略すると全期間。結果は日付→時刻順(終日は各日の先頭)で返る。
## DeleteCalendarEvent
スペースの予定を id で 1 件削除する。
引数:
- `id`(必須): `ListCalendarEvents` が返す予定の id(正の整数)
**削除できるのは `created_by` が `agent` の予定だけ。**利用者が画面から入れた予定
(`created_by` = `user`。この列が無かった頃の古い行も `user` として扱われる)は、
id を渡されても削除せず `isError: true` を返す。
```
ListCalendarEvents({ from: "2026-07-01", to: "2026-07-31" })
// - 2026-07-01 10:00 「定例MTG」(id=12, agent)
// - 2026-07-03 (終日)「健康診断」(id=13, user)
DeleteCalendarEvent({ id: 12 }) // → 削除される
DeleteCalendarEvent({ id: 13 }) // → isError。利用者が作成した予定
```
返り値(`isError: true` のもの):
| 渡した id | 返る内容 |
|---|---|
| 利用者が作成した予定 | この予定は利用者が作成したため削除できません。削除できるのはエージェントが作成した予定(created_by=agent)だけです |
| 別スペースの予定 | 指定された id の予定はこのスペースに見つかりません |
| 存在しない・すでに削除済み | 指定された id の予定はこのスペースに見つかりません |
別スペースの id と存在しない id で**文面を同一にしている**のは意図的。文面が違うと、
その id の予定が他のスペースにあることを差分で漏らす。
## gotcha
- `date` / `from` / `to` は `YYYY-MM-DD`、`time` / `end_time` は `HH:MM` 厳守。形式違反はエラー。
- `end_time` は `time` なしには指定できない(終日の予定に終了時刻は持てない)。
- スペース未所属のタスクからは呼べない(`ctx.spaceId` 必須)。
- 予定はスペースの可視性に従う。イベント単独の可視性は持たない。
- `DeleteCalendarEvent` は利用者が作成した予定を消せない。一覧の行末に出る `agent` / `user` が判定に使われる値そのもの。
- 予定に紐づくリマインダーは予定と一緒に消える(予定の行に載っているため)。画面からの削除と同じ挙動。
- 予定の書き換えはツールとして用意していない(削除のみ)。