sync: update from private repo (0cddeaa)

This commit is contained in:
oss-sync
2026-06-04 00:34:55 +00:00
parent f5c7666f6b
commit 21be01b699
19 changed files with 1065 additions and 37 deletions
+3 -2
View File
@@ -57,8 +57,9 @@ AddSlide({
**title**: `{ title, subtitle?, author?, date? }`
**section**: `{ number?: "01", title }`
**bullets**: `{ title, bullets: string[], footnote? }`
**two-column**: `{ title, left: {heading?, bullets?, text?}, right: {...} }`
**bullets**: `{ title, bullets: Bullet[], footnote? }`
- `Bullet` = `string` または `{ text, bold?, bullets?: Bullet[] }``bullets` をネストするとサブ項目(インデント)になる。基本は文字列配列で十分
**two-column**: `{ title, left: {heading?, bullets?: Bullet[], text?}, right: {...} }`
**image-right** / **image-left**: `{ title, body: string | string[], image: { path, alt? } }`
**image-full**: `{ image: { path }, caption? }`
**table**: `{ title, headers: string[], rows: string[][], col_widths?: number[] }`
+8
View File
@@ -67,3 +67,11 @@ WebFetch がエラーを返した場合、以下の原則で `BrowseWeb` にリ
| `Just a moment...` 等 Cloudflare challenge | **する** — ブラウザで JS challenge を通過できる |
リトライ時は同じ URL を `BrowseWeb({ url: "..." })` に渡すだけでよい。`BrowseWeb` はジョブ内で Cookie・セッションを保持するので、複数回呼んでもログイン状態は引き継がれる。
## バイナリの扱い
WebFetch は取得 body の先頭 8KB を sniff し(magic byte / NUL / 不正 UTF-8 / 制御文字比率)、
バイナリと判定したら**コンテキストに展開せずブロック**する。Content-Type が欠落・詐称
(例: `.xls``text/plain`)していても実バイトで検出する。バイナリを処理したい場合は
`DownloadFile``input/` に保存し、`ReadExcel` / `ReadPdf` 等を使う。テキスト body は
5MB で打ち切られる(末尾に `[truncated: body exceeded 5MB]`)。