# IVSD capability 與 request：Evidence ledger

Server 證據取自既有唯讀勘查：`docs/vca-tools-server.md`，不連線操作或修改 `vca.vivotek.com`。CameraSimulator 是受控實驗工具，不能升格為 Server/native contract。

| ID | 類型 | Claim | Revision／Observed at | Path＋symbol／確認方式 |
|---|---|---|---|---|
| <a id="ivsd-cap-e1"></a>IVSD-CAP-E1 | Source | CameraSimulator 組成 model、height、tilt、zoomStep、LDC、corridor 與 optional abnormal inputs，再呼叫 WASM。 | `ShoushanZoo/CameraSimulator@53ff3e16a31d3a5f80736b7e5c5f5567149c015e` | `js/camera/SimulatorPipeline.js:19-60`；`js/smartvcaWasmClient.js:322-345` |
| <a id="ivsd-cap-e2"></a>IVSD-CAP-E2 | Source | 六類回傳 array 非空才建立 polygon 並加入 `fovAvailableMap`；空 array 直接不畫。 | `ShoushanZoo/CameraSimulator@53ff3e16a31d3a5f80736b7e5c5f5567149c015e` | `js/CameraDrawingHelper.js:257-320` |
| <a id="ivsd-cap-e3"></a>IVSD-CAP-E3 | Observed | WASM gate 是第三方 binary 的受控實驗；model name、SoC、解析度與幾何都可能讓 array 為空，SC9133 在此 build 的觀察只回 Human，Fall 掃描為 0／5280。 | `ShoushanZoo/CameraSimulator@09ec0d27867e6e63db9335a0952ba491d073198f` | `docs/wasm-capability-gates.md:1-21,32-161` |
| <a id="ivsd-cap-e4"></a>IVSD-CAP-E4 | Source＋Observed | Server 表單提供 model、package version、height、tilt、Corridor、條件式 LDC／focal；web layer 依 extrinsics 選 2D／3D，Node wrapper spawn native binary。 | `ShoushanZoo/CameraSimulator@a28167c07c35d0a0f407398373323121c6b455e9` | `docs/vca-tools-server.md:74-82,95-104,116-189` |
| <a id="ivsd-cap-e5"></a>IVSD-CAP-E5 | Source＋Observed | Server 輸出 H/V FOV、兩張 PNG，並以 stdout／exit bitmask 表達結果與 stereo warning。 | `ShoushanZoo/CameraSimulator@a28167c07c35d0a0f407398373323121c6b455e9` | `docs/vca-tools-server.md:84-93,196-205` |
| <a id="ivsd-cap-e6"></a>IVSD-CAP-E6 | Observed | 兩邊共用引擎但不是相同產品：Server 可選版本且輸出 PNG；CameraSimulator 是單一 WASM build 且輸出 polygons。 | `ShoushanZoo/CameraSimulator@a28167c07c35d0a0f407398373323121c6b455e9` | `docs/vca-tools-server.md:530-570` |
| <a id="ivsd-cap-e7"></a>IVSD-CAP-E7 | Source | Server 與 CameraSimulator 不一致時分別標為 Server observed 與 experimental tool observed，差異不得互相覆蓋。 | `ShoushanZoo/CameraSimulator@b971daf716d35996ecd20f287a2385decfcd8433` | `docs/superpowers/specs/2026-08-30-vpp-ivsd-doc-consolidation-design.md:39-46,72-80` |
| <a id="ivsd-cap-e8"></a>IVSD-CAP-E8 | Inference boundary | 逐點門檻、eSoc 精確對應與各類 min/max 尚未確定；不得以 ONNX 字串或未公開內部公式補完。 | `ShoushanZoo/CameraSimulator@09ec0d27867e6e63db9335a0952ba491d073198f` | `docs/wasm-capability-gates.md:173-210` |
| <a id="ivsd-cap-e9"></a>IVSD-CAP-E9 | Source | CameraSimulator 將 `corridorMode` 作為 installation mode、將 YAML `zoomVal` 作為離散 calibration ID，並在節點之間內插 calibration；`intrinsics_ldc.yml` 是 LDC 專用 path。這是 experimental JS fallback，不是 IVSD Server/native contract。 | `ShoushanZoo/CameraSimulator@ea842a4052a68a66ab321cd92ae72e4639b6b13b` | `js/camera/SimulatorPipeline.js:19-43`；`js/smartvcaWasmClient.js:322-345`；`js/utils/modelFlags.js:18-46`；`js/utils/lensZoom.js:6-54`；`js/cameraParamsLoader.js:167-320` |
| <a id="ivsd-cap-e10"></a>IVSD-CAP-E10 | Source | 預覽的 `idealFovx/idealFovy` 取自 WASM `buildDisplacementMap` 回傳的 border-expanded P′，並用於 Three.js projection；這是 CameraSimulator preview path。 | `ShoushanZoo/CameraSimulator@73b8fad8a37def621afac0274dcc53e5b101e2e8` | `js/smartvcaWasmClient.js:736-863`；`js/ui/displacementPreview.js:257-281` |
| <a id="ivsd-cap-e11"></a>IVSD-CAP-E11 | Source | Edge-Ray FOV 將 distorted image edge pixels 反投影為 camera rays，寫入 debug report；其取樣與 `len_fov_app` 的既有比較分開記錄。 | `ShoushanZoo/CameraSimulator@31a59885d05a2347a087124227a76dd2bd076057`；`ShoushanZoo/CameraSimulator@a28167c07c35d0a0f407398373323121c6b455e9` | `js/utils/edgeRayFov.js:146-227`；`js/cameraCalibration.js:160-172`；`docs/vca-tools-server.md:223-245` |
| <a id="ivsd-req-e1"></a>IVSD-REQ-E1 | Source＋Observed | 三個 endpoint 是 server-rendered HTML form：選 model、設定參數、執行 simulation。 | `ShoushanZoo/CameraSimulator@b70c744c32733daf3beb262f718b6ecc2ee9c9f4` | `docs/vca-tools-server.md:74-104` |
| <a id="ivsd-req-e2"></a>IVSD-REQ-E2 | Source | web layer 依 `extrinsics_num` 選 2D／3D form；2D 使用 tilt／條件式 LDC、corridor、focal/zoom，3D 使用 per-model height limits、zoom-in 1.0–1.8，多數無 tilt（SC8131／SC8132 例外）。 | `ShoushanZoo/CameraSimulator@b70c744c32733daf3beb262f718b6ecc2ee9c9f4` | `docs/vca-tools-server.md:95-157` |
| <a id="ivsd-req-e3"></a>IVSD-REQ-E3 | Source | Node wrapper 只做 routing、form、spawnSync、stdout／PNG／HTML；不做幾何計算。 | `ShoushanZoo/CameraSimulator@b70c744c32733daf3beb262f718b6ecc2ee9c9f4` | `docs/vca-tools-server.md:159-173` |
| <a id="ivsd-req-e4"></a>IVSD-REQ-E4 | Source＋Inference boundary | 既有勘查記錄 versioned `smartvca_simulator` CLI flags 與 optional abnormal arguments；3D form 到 native argv 逐欄映射未另行分證。 | `ShoushanZoo/CameraSimulator@b70c744c32733daf3beb262f718b6ecc2ee9c9f4` | `docs/vca-tools-server.md:175-189` |
| <a id="ivsd-req-e5"></a>IVSD-REQ-E5 | Source＋Observed | stdout／exit bitmask、`len_fov_app` 與 H/V FOV／PNG rendered result；`eFov_Fail`、stereo normal/warning、2D normal/fisheye 及 `eTilt_*` 決定 rendered result／示意圖語意。 | `ShoushanZoo/CameraSimulator@b70c744c32733daf3beb262f718b6ecc2ee9c9f4` | `docs/vca-tools-server.md:196-225` |
| <a id="ivsd-req-e6"></a>IVSD-REQ-E6 | Inference boundary | Server/native 是主要真實資料來源，本文件只使用既有唯讀證據，不推論 binary 公式。 | `ShoushanZoo/CameraSimulator@b971daf716d35996ecd20f287a2385decfcd8433`；`ShoushanZoo/CameraSimulator@a28167c07c35d0a0f407398373323121c6b455e9` | `docs/superpowers/specs/2026-08-30-vpp-ivsd-doc-consolidation-design.md:23-29,72-80`；`docs/vca-tools-server.md:159-225` |

## 操作護欄

- 2D／3D `/set_param` 是擇一路徑，不代表同次 request 同時送出兩組參數。
- 空 array 不等於永久不支援；非空也不等於產品支援承諾。
